2017-05-25, 06:23 PM
MyBB JSXC
What is this?
MyBB JSXC is a chat system completely embedded in MyBB, it’s based on the XMPP/Jabber protocol. You can run your own instance of eJabberd, use an external hosted Jabber instance or just use an experimental integrated xmpp script without needing any Jabber server at all.
The chat design is completely variable and can easy changed with templates.
eJabberd is already supported via an Rest API, it's get fully integrated in MyBB, the user accounts are synchronized and the users will not need a Jabber Client. They will just register on your MyBB page and they will automatically get their chat account.
They are also able to use external clients.
Your community now is able to be more familiar and stay in contact at any time. For example: from their phone, or from the page itself.
Main key features
- OTR - Off-the-Record Messaging - End-to-end encrypted communication
- Uninterrupted - Browse the page without interrupting the chat
- File transfer - send and receive files
- Video Calls - secured by SRTP - without plugin (planned)
- Audio Calls - secured by SRTP - without plugin (planned)
- MUC - Multi User Chat Rooms
- Localization - I18next, define the default language, the chat automatic detect which language is needed for each client
- Notifications - Don't miss a single message, audio notifications (different sounds, mozilla firefox/google chrome push notification
- Responsive - Use JSXC on every device (PC, Smartphone, Tablet)
- Emoticons - Use smiles on phone, page, external clients
- Multi-Tab - Browse your sites as usual no matter if you open the page in more than one tab
- Screen sharing - Give support if needed
- Offline Messages - Don't miss a message if you are offline
- Chat State Notifications - Define your own online status
- vCard-Based Avatars
- Message Delivery Receipts
- Delayed Delivery
- The /me Command
- Message Archive Management
- Template System - Easy to customize
Supported Web Servers
- Apache
- lighttpd
- Nginx
Supported Locales
- Arabish (not finished)
- Deutsch (complete)
- English (complete)
- Spanish (complete)
- Französisch (complete)
- Ungarisch (nearly completed)
- Italienisch (nearly completed)
- Niederländisch (complete)
- Polnisch (complete)
- Portugiesisch (complete)
- Rumänisch (complete)
- Russisch (newly completed)
- Türkisch (complete)
- Chinesisch (complete)
Supported XMPP/Jabber Servers
- eJabberd via Rest API
Planed Support for XMPP/Jabber Servers to be added in future
- Prosody (credits to Lunorian)
What integration features are finished
- Automatic register jabber account after confirm registration in MyBB
- supporting instant registration
- supporting email verification
- supporting random password registration
- supporting email/admin verification
- admin creating user
- supporting instant registration
- Password syncron between MyBB and chat account
- when user reset password in MyBB
- when user change password in UserCP
- when admin change password in ACP
- when user reset password in MyBB
- Chat with external clients
- Automatic login to chat
- when users login into MyBB
- when users come back on page and stay logged in is active in MyBB
- when users login into MyBB
- Automatic logout when user logout from MyBB
- Synchronized chat on all clients and MyBB
- Advanced logging feature in ACP disable/normal/debug levels supported
What integration features are in dev
- Synchronize Avatar in chat with MyBB Avatar
- Synchronize MyBB Buddy with Rooster Contacts
- Admin managed Rooster Groups with Contact list sharing
- Admin managed MUC Rooms
Time for preview
ACP Settings
The basic options where you setup your xmpp server or even the interlan experimental server.
The eJabberd API settings where you enable the API and define the log level.
The eJabberd API functions can enabled and disabled one by one.
The ICE Server / Stun/TURN API settings for WebRTC NAT support.
The settings for the screen sharing function, with detailed instructions for the needed plugin.
CSP filter options for securing the client.
The log file view for the xmpp api (currently in dev and logs are not parsed)
The Chat in action
Adding a contact independently from Buddy system.
Contact request received.
Rooster is toggleable via side bar and button.
The Rooster on the right side is toggled in, the chat show the approve that the message is received and readed.
The Rooster menu including options per client and MUC support.
The user to user chat page/MyBB intern.
The chat even works with an external client, in this example Pidgin, other clients possible for example on Android/IPhone, PC Win/Linux/Mac.
Showing the vCard-Based support for avatar and status informations.
Chat based options and features, OTR, Authentication, Clearing History, Sending File, Screen Sharing.
Different possible ways to start a OTR secured encryption.
- Manually verifying the fingerprint of both parties' keys
- Providing a question to which only your contact knows the answer
- Entering a secret you agreed on offline
Supplement
I am working hard on the implementation of jsxc in MyBB. I hope you enjoy the preview. When i finish up the planned feature integrations i will publish this plugin and are free for improvements. So leave some suggestions and feedback. Thx for your time.