Converse.js
Converse.js implements an XMPP based instant messaging client in the browser.
It's used by collective.xmpp.chat, which is a Plone instant messaging add-on.
The ultimate goal is to enable anyone to add chat functionality to their websites, regardless of the server backend.
Currently this is not yet 100% the case, as the code makes ajax calls to the (Plone) backend to fetch user info.
Features
- Manually or automically subscribe to other users.
- Accept or decline contact requests
- Chat status (online, busy, away, offline)
- Custom status messages
- Typing notifications
- Third person messages (/me )
- Multi-user chat in chatrooms
- Chatroom Topics
- vCard support
A screencast of (a very old version of) Converse.js in action via collective.xmpp.chat can be seen here.
Dependencies
It depends on quite a few third party libraries, including strophe.js, backbone.js and require.js.
Licence
Converse.js is released under both the MIT and GPL licenses.