TaigaChat Pro - Realtime chat/shoutbox [Deleted]

Bots are cool and XenForo could use some, but I think that's way outside the scope of this add-on and would probably be more suited to being its own add-on. If you want Luke to build you a bot, you should probably start by offering money to pay for the time it would take to work such a major add-on.

I agree that an autoreply system is beyond the scope of this add-on. The way I see it, TaigaChat is designed to be efficient, without bloat. Optional features that result in extra database queries should be kept to separate add-ons; otherwise, large sites like ours would be unable to run TaigaChat.

@Luke F, is there any chance that you may eventually offer some sort of simple caching functionality that's not file-based? We have many servers, and synchronizing frequently written files between them generally doesn't work out that well. Here are some ideas:
  1. Offer the ability to return a JSON response for /taigachat/list.json that depends only on the timestamp of the last update, not on the permissions of the user, much the same way as the HTML file works. This would allow us to provide much more efficient caching within Nginx, as we wouldn't have to split the cache based on session ID. This may already be the case; I haven't checked. It's not ideal, though, because the cache isn't invalidated on all servers when someone posts a new message.
  2. Provide a lightweight wrapper around the HTML file cache that performs a single query to ensure the file is up-to-date. You could skip loading XenForo and just get the database credentials from the config file. Not the most portable/extensible solution, and it still hits the database, but it would work with multiple servers.
  3. Implement an alternative caching mechanism using something such as memcache, Redis, or Elasticsearch. Elasticsearch would probably be ideal, since large XenForo sites usually already have a cluster running. memcache would be the most efficient, and it's easy to configure a simple memcached server, but sites are less likely to already be using it. In any case, it would be ideal if XenForo weren't used in this process, because loading it makes enough queries to put significant strain on the database.
Unfortunately, XenForo's data registry is rather inefficient, and it tends to eat up a lot of bandwidth when there are many requests to /taigachat/list.json. I don't think there's an easy way to utilize XenForo's framework without this overhead. It's been a limiting factor for us, as we're trying to avoid ultra-high-end networking between our database servers and our web servers.

Normally we maintain our own patches for add-ons to implement such optimizations, but I figured I'd throw the idea on here since other sites are likely to benefit.
 
Last edited:
I have some problems with my Taigachat Pro (current version - I use XF 1.3). As an admin I
  • cannot prune the shoutbox
  • cannot change the MOTD . When I click on the MOTD message on top of the shoutbox I receive an error message saying "you do not have permission"
But I've set permissions for admins and I also can edit taigachat in my ACP. What can I do @Luke F ?

Thank you for a short reply, rhodes
 
Latest version: some small issue:

The url link button, the cursor is not centered between the tags, it is in the tag, so you need to manually move it over or else you get non working line of text
 
Latest version: some small issue:

The url link button, the cursor is not centered between the tags, it is in the tag, so you need to manually move it over or else you get non working line of text

That is intentional, as raw URLs will be linked automatically, it is assumed that the only reason a user would want to use the URL bbcode button would be to add a URL with a custom title/text. When adding a url with that syntax, the most natural thing to type/paste first is the url itself, hence the cursor is placed just after =

Hi @Luke F,

What would cause this?

Looks like a javascript error (check the F12 console) or an issue with templates not being merged/reverted after updating

I have some problems with my Taigachat Pro (current version - I use XF 1.3). As an admin I
  • cannot prune the shoutbox
  • cannot change the MOTD . When I click on the MOTD message on top of the shoutbox I receive an error message saying "you do not have permission"
But I've set permissions for admins and I also can edit taigachat in my ACP. What can I do @Luke F ?

Thank you for a short reply, rhodes

Check with the permission analyzer in the admin CP that something is not overriding your admin permission
 
Looks like a javascript error (check the F12 console) or an issue with templates not being merged/reverted after updating
How do I check the F12 console? We have a bare bones server installation.

I'm pretty sure it's not a template issue, all templates have been merged after updating.
 
Got this error log:
Code:
Server Error Log

Error Info
ErrorException: Undefined index: last_update - library/Dark/TaigaChat/Helper/Global.php:134
Generated By: Lift, Yesterday at 6:53 PM

Stack Trace
#0 /library/Dark/TaigaChat/Helper/Global.php(134): XenForo_Application::handlePhpError(8, 'Undefined index...', '/home/nginx/dom...', 134, Array)
#1 /library/Dark/TaigaChat/ViewPublic/TaigaChat/Edit.php(9): Dark_TaigaChat_Helper_Global::processMessagesForView(Array, Object(WidgetFramework_XenForo_View1))
#2 /library/XenForo/ViewRenderer/Abstract.php(227): Dark_TaigaChat_ViewPublic_TaigaChat_Edit->renderJson()
#3 /library/XenForo/ViewRenderer/Json.php(88): XenForo_ViewRenderer_Abstract->renderViewObject('Dark_TaigaChat_...', 'Json', Array, 'dark_taigachat_...')
#4 /library/XenForo/FrontController.php(605): XenForo_ViewRenderer_Json->renderView('Dark_TaigaChat_...', Array, 'dark_taigachat_...', NULL)
#5 /library/XenForo/FrontController.php(158): XenForo_FrontController->renderView(Object(XenForo_ControllerResponse_View), Object(XenForo_ViewRenderer_Json), Array)
#6 /index.php(13): XenForo_FrontController->run()
#7 {main}

Request State
array(3) {
  ["url"] => string(41) "/chat/505160/edit"
  ["_GET"] => array(1) {
    ["/chat/505160/edit"] => string(0) ""
  }
  ["_POST"] => array(6) {
    ["message"] => string(186) "[color=#6495ED]ito masarap ngayong tag ulan, nakakapaglaway  [img]https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcTVAFemCprAHLlQzxxDY1_wDaqfQ42cMZCCB69qjchHhL2BoBOtdA[/img][/color]"
    ["_xfToken"] => string(8) "********"
    ["isJavascript"] => string(1) "1"
    ["_xfRequestUri"] => string(6) "/chat/"
    ["_xfNoRedirect"] => string(1) "1"
    ["_xfResponseType"] => string(4) "json"
  }
}
 
Question: let's say there is a section where you can only view your own thread in it, besides admins. If you have the thread feature on for the shoutbox, will the thread appear in the shoutbox for everyone? And if so, is there a way to have it so only certain sections' threads appear in the shoutbox?
 
Question: let's say there is a section where you can only view your own thread in it, besides admins. If you have the thread feature on for the shoutbox, will the thread appear in the shoutbox for everyone? And if so, is there a way to have it so only certain sections' threads appear in the shoutbox?
Only if you've set the Shoutbox to see the forum from the point of view of a user that has the ability to see that forum. Otherwise it will only show what a guest can see. Look for this setting in the options. You can create a new user account and set that user's permissions if you want more customized control over this.

@Luke F : After using this for a while, I have a request. The editing of posts is very difficult due to horizontal scrolling. Can we increase the edit window's size in a future update, so that it is a textarea with multiple lines and a scrollbar (up-down)?
 
Got this error log:
Code:
Server Error Log

Error Info
ErrorException: Undefined index: last_update - library/Dark/TaigaChat/Helper/Global.php:134
Generated By: Lift, Yesterday at 6:53 PM

Stack Trace
#0 /library/Dark/TaigaChat/Helper/Global.php(134): XenForo_Application::handlePhpError(8, 'Undefined index...', '/home/nginx/dom...', 134, Array)
#1 /library/Dark/TaigaChat/ViewPublic/TaigaChat/Edit.php(9): Dark_TaigaChat_Helper_Global::processMessagesForView(Array, Object(WidgetFramework_XenForo_View1))
#2 /library/XenForo/ViewRenderer/Abstract.php(227): Dark_TaigaChat_ViewPublic_TaigaChat_Edit->renderJson()
#3 /library/XenForo/ViewRenderer/Json.php(88): XenForo_ViewRenderer_Abstract->renderViewObject('Dark_TaigaChat_...', 'Json', Array, 'dark_taigachat_...')
#4 /library/XenForo/FrontController.php(605): XenForo_ViewRenderer_Json->renderView('Dark_TaigaChat_...', Array, 'dark_taigachat_...', NULL)
#5 /library/XenForo/FrontController.php(158): XenForo_FrontController->renderView(Object(XenForo_ControllerResponse_View), Object(XenForo_ViewRenderer_Json), Array)
#6 /index.php(13): XenForo_FrontController->run()
#7 {main}

Request State
array(3) {
  ["url"] => string(41) "/chat/505160/edit"
  ["_GET"] => array(1) {
    ["/chat/505160/edit"] => string(0) ""
  }
  ["_POST"] => array(6) {
    ["message"] => string(186) "[color=#6495ED]ito masarap ngayong tag ulan, nakakapaglaway  [img]https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcTVAFemCprAHLlQzxxDY1_wDaqfQ42cMZCCB69qjchHhL2BoBOtdA[/img][/color]"
    ["_xfToken"] => string(8) "********"
    ["isJavascript"] => string(1) "1"
    ["_xfRequestUri"] => string(6) "/chat/"
    ["_xfNoRedirect"] => string(1) "1"
    ["_xfResponseType"] => string(4) "json"
  }
}

That shouldn't be able to happen under normal conditions, are you getting it repeatedly or could it have happened during an update?

Only if you've set the Shoutbox to see the forum from the point of view of a user that has the ability to see that forum. Otherwise it will only show what a guest can see. Look for this setting in the options. You can create a new user account and set that user's permissions if you want more customized control over this.

@Luke F : After using this for a while, I have a request. The editing of posts is very difficult due to horizontal scrolling. Can we increase the edit window's size in a future update, so that it is a textarea with multiple lines and a scrollbar (up-down)?

Yep I will increase this in a future update, definitely not ideal as it is now
 
Only if you've set the Shoutbox to see the forum from the point of view of a user that has the ability to see that forum. Otherwise it will only show what a guest can see. Look for this setting in the options. You can create a new user account and set that user's permissions if you want more customized control over this.

@Luke F : After using this for a while, I have a request. The editing of posts is very difficult due to horizontal scrolling. Can we increase the edit window's size in a future update, so that it is a textarea with multiple lines and a scrollbar (up-down)?

I appreciate the response but this sounds a bit confusing :S
 
@seabeds - Sorry, I will try to make it more clear.

Log in as admin and go to Home > Options> Taigachat Pro

When "Forum activity display" is set to "Show new threads and replies" or "Show new threads only" and "Forum activity permissions user" is set to 0 (which is default), only the topics that guests can see will appear in the Shoutbox forum activity. If this is fine for you, you do not need to do anything else.

If you want to customize what threads appear in the shoutbox (for example, if you have a forum that members can only see when logged in, but you want those that forum's posts to appear in the shoutbox, too), you can set a user ID in the "Forum activity permissions user" box. The Shoutbox will "see" the forum activity through the eyes of that user. I recommend creating a new user account for the Shoutbox to use (I just call mine "Shoutbox"), and entering its user ID here. You can then set the Shoutbox account's forum permissions to see only the forums that you want to show in the shoutbox. On my forum, I also use this same account to post the logs to the forum.
 
Back
Top Bottom