ejabberd is an instant messaging server that allows users to transfer presence and status information between users connected to servers and supports real-time communications between them.
Features:
- (Mostly) XMPP-compliant
- Web-based administration
- Load balancing: can run in a cluster of machines
- Fault-tolerance: database can be replicated and stored on multiple nodes (nodes can be added or replaced on the fly)
- SSL/TLS support
- Multi-User Chat (MUC/conference)
- IRC transport
- Jabber user directory, based on users vCards
- Service discovery