[BS] Real time chat

xF2 Add-on [BS] Real time chat 1.5.0

No permission to download

Better integration with AI Bots​

Support for private messages: Now if a bot is contacted in a chat with the /pm command, it also replies to private messages (in chat).
(Tuning) Respond in PM only: If this option is enabled, bot messages will be visible only to the author of the trigger message.

Better integration with AI Bots​

(Tuning) Streaming mode: if this option is enabled, the bot will type a message in real time, as in the web version of ChatGPT.
Fixed: Bot's typing status is now displayed until the bot sends a message.
Bot settings for chat have been moved to a collapsible block.

Updated design 🪄

A new user-friendly design has been implemented. Now it is convenient to use the chat from any screens. The new design also attracts with its modernity and simplicity.

Integration with AI Bots 🤖

Now you can chat with bots based on ChatGPT in live mode right on your forum.
Flexible permissions for groups are included for this feature.

Improved chat history 🕖

In history, the design has been updated. Now it is more readable.
Now the message link redirects to the desired chat history page and highlights the message. This will bring clarity, as the user will be able to see the context in which he was mentioned.

Fix issues 🐞

Recently used emojies were not remembered.

Description updated ✅

New screenshots have been added - I recommend that you take a look.
Updated add-on setup guide.
Option to load messages after page load to reduce page load time
PHP 8.0+ compatibility
The minimum PHP version for this version to work is 7.4
Changes:
  • Updated dependencies
  • XF 2.2 compatible

To upgrade to this version, you must have XF 2.2+.
  • Like
Reactions: milivoje
.fixed:
  • File chat renamed to chat_cli to fix 404 error with full friendly URL
Note: After uploading new version run this commands in forum root:
Code:
php chat stop
rm -rf chat
php chat_cli start -d
.changes:
  • Refactored chat server runner
  • Now supports sessions cache and any session storages
  • Added copyright to header
  • сhat_start.php file replaced by chat file
    • Now to manage the chat server you need to access the chat file
      • php chat start -d
      • php chat stop
      • php chat restart
      • php chat reload
      • php chat status
      • php chat connections
    • To work correctly, you need to stop the old chat server using the command php chat_start.php stop and run new chat server using the command php chat start -d.
    • chat_start.php file can be deleted
  • Dependencies updated
  • Development mode in options (for export your commands)
Fixed:
  • ErrorException: Template error: Template public:search_result_chat_message is unknown
  • The ability to view other people's private messages
  • Notifications mentioning yourself in your messages
More about update: https://devsell.io/resources/bs-real-time-chat.11/update/30/
  • Like
Reactions: zendy
.fixed:
  • Call to undefined BS\RealTimeChat\LongPoll\Communication::in()
  • File workerman.log removed from hashes.json
  • Now you can't start chat server if communication type is not WebSocket
.changes:
  • Added a new type of server communication with the client. Long polling.
    • This type is a bit slower than web sockets, but the chat will still be in real time.
    • This type does not require additional configuration. You just need to specify the maximum duration of the request.
      • I advise you to set 15-25 seconds.
    • This type loads the server more than web sockets.
    • There is the possibility of developing new adapters for the exchange of information between users (for example, redis or memcache instead of a database)
  • Added style properties for some elements
  • Updated depencies
You can see how working a new long polling type here: https://demo.devsell.io/
More about long polling: https://www.pubnub.com/blog/http-long-polling/
More about update: https://devsell.io/resources/bs-real-time-chat.11/update/27/
.changes:
  • Fixed error Template admin:widget_def_options_real_time_chat is unknown
    • Duplicate code moved to getMessageBody function