MongooseIM platform
DOCUMENTATION HAS MOVED
All things change, and so does our documentation. During our effort to create a user-friendly configuration file, we also went through all existing docs, and ended up changing templates, looks, colours, and whatnot, and had to move to github pages for extended functionality. This site will not be updated, and in the future it will be completely removed. Please refer to our latest documentation at https://esl.github.io/MongooseDocs/latest/
- Home: http://github.com/esl/MongooseIM
- Product page: https://www.erlang-solutions.com/products/mongooseim.html
- Documentation: https://esl.github.io/MongooseDocs/
Get to know MongooseIM
MongooseIM is a robust and efficient chat (or instant messaging) platform aimed at large installations.
Designed for enterprise, it is fault-tolerant, can utilise the resources of multiple clustered machines, and easily scales for more capacity by simply adding a box or VM.
MongooseIM can accept client sessions over vanilla XMPP, REST API and SSE, as well as Websockets, and BOSH (HTTP long-polling).
As a platform, MongooseIM includes several server-side (backend) and client-side (frontend) components. We provide a test suite, metrics, a load testing platform, and a monitoring server. We recommend third-party, open source client libraries for XMPP and REST API.
MongooseIM is brought to you by Erlang Solutions.
MongooseIM platform components
Server-side components
We offer a set of server-side components:
- WombatOAM is a powerful monitoring platform that comes with a dedicated MongooseIM plugin
- Test suite - here are some useful tools to test and validate your XMPP servers:
- MongooseICE: is a STUN and TURN server written for traversing NATs and relaying streams
- MongoosePush: is a flexible push notification server with APNS and FCM support
Client-side components
- XMPP client libraries - we recommend the following client libraries:
- iOS, Objective-C: XMPPframework
- Android, Java: Smack
- Web, JavaScript: Stanza.io, Strophe.js
- REST API client libraries - we recommend following client libraries:
Download packages
For a quick start just download:
- The pre-built packages that suit your platform (Ubuntu, Debian, CentOS, and macOS)
- The Docker image: https://hub.docker.com/r/mongooseim/mongooseim/ (source code repository: https://github.com/esl/mongooseim-docker)
Public testing
Check out our test results:
- Continuous integration: https://travis-ci.org/esl/MongooseIM
- Code coverage: https://codecov.io/gh/esl/MongooseIM
- Continuous Load Testing: http://tide.erlang-solutions.com/
- Load test history:
Versions
See the documentation for the latest releases:
When developing new features/modules, please make sure you add basic documentation to the doc/
directory, and add a link to your document in doc/README.md.
Participate!
Suggestions, questions, thoughts? Contact us directly:
- Raise a GitHub issue: https://github.com/esl/MongooseIM/issues
- Email us at mongoose-im@erlang-solutions.com
- Follow our Twitter account: https://twitter.com/MongooseIM
- Like our Facebook page: https://www.facebook.com/MongooseIM/
- Subscribe to our mailing list at https://groups.google.com/d/forum/mongooseim-announce to receive no more than two montly emails as well as access to the free and open archives.