DJabberd

High-performance, low-overhead, everything-is-a-plugin extensible Jabber/XMPP server
Download

DJabberd Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Freeware
  • Price:
  • FREE
  • Publisher Name:
  • Brad Fitzpatrick
  • Publisher web site:
  • http://danga.com/
  • Operating Systems:
  • Mac OS X
  • File Size:
  • 94 KB

DJabberd Tags


DJabberd Description

High-performance, low-overhead, everything-is-a-plugin extensible Jabber/XMPP server DJabberd is a high-performance, scalable, extensible Jabber/XMPP server framework. While it comes with an example server, it's really a set of classes for you to build your own Jabber server without understanding Jabber. Instead of working with XML and protocol-specific details, you subclass parts and work with sane objects and data structures and let DJabberd do all the ugly work.Consider DJabberd the mod_perl/qpsmtpd/Perlbal/Plagger of the XMPP world. Everything is a plugin. The framework lets you override the behavior of:· Authentication· Authorization· Roster Storage· Automatic roster population· Presence lookup· Message delivery· Internode communication· ...· everything elseOr you can just choose mix and match behaviors from other CPAN modules: mix LDAP auth with SQLite storage with Spread inter-node communication with LDAP roster-population.You can even have multiple plugins per hook, in any order. Also, rather than implementing the hooks directly, the framework comes with simple objects you can subclass which further eases the use of the async plugin system.Internode-communication lets you just scale out, providing both load balancing and high availability in your Jabber farm. Because good Jabber clients will quietly reconnect on TCP connection failure, you can even do rolling code upgrades without users noticing. As an admin, you're free to choose which internode communication method to use or you can write your own, specific to your application (assuming you're integrating this into an application).The DJabberd core aims to be fully XMPP 1.0 compliant, as well as supporting common pre-XMPP standards. To name the obvious ones, DJabberd supports:· s2s (Server to Server), but may be optionally disabled· XMPP StartTLS support· Pre-XMPP SSL-on-separate-port support What's New in This Release: · SARTAK caught a typo in BotContext.pm where a qr was used in a place that obviously should have been qq. · "use bytes" in Connection.pm, which reportedl fixes UTF-8 corruption in rosters (Aleksey Luzin ) · If an explicit configuration file location is given to djabberd, don't fall back on the built-in default locations. If the user wanted the defaults, he wouldn't have used the --conffile option. · Allow the location of the log4perl configuration file to be set via a command-line argument to djabberd. (Jakob Burkhart ) · Correct support for re-using an S2S connection for multiple source domains. (Adrian Ulrich ) · Jacob Burkhart : Fix memory leak when using SSL · Michael Scherer : more helpful error messages in logs after dialback failure (shows hosts in question) · Piers Harding : Fix bug where server wasn't including a "from" attribute in IQ responses. · Multiple resources of the same local JID are now made aware of one another via presence stanzas as required by the spec. · don't leak UDP sockets on DNS SRV lookup timeouts · handle improper SSL disconnects without spinning CPU · Updated DJabberd::Component::Example which uses the correct API. The previous example didn't actually work anymore. · Add POD for DJabberd::Agent, DJabberd::Component and a bunch of other related modules. · Make bots automatically accept roster subscription requests.


DJabberd Related Software