This working group is for developers and other interested parties wishing to learn & create integrating applications between Drupal and XMPP. XMPP, formerly known as Jabber, is a well-established XML protocol for instant messaging, and is used to power Google Chat, Facebook Chat, and other similar features.

However, chat is just the beginning, and as web developers become more familiar with the protocol, new applications for the nearly instantaneous communication between clients are being created and extended, such as games and VOIP. Most web clients integrating XMPP services use Ajax long pulls (aka Comet) for communication, which allow servers to push information to the browser, a feat normally not easily allowed with standard HTML and JavaScript.

Please read the wiki at Setting up an XMPP server for use with Drupal for more information about XMPP.

In IRC: #drupal-xmpp (until gdo uses XMPP at least...)

smichel's picture

Developer to assist with DXMPP implementation | imbee

Employment type: 

Looking for some help testing and debugging the DXMPP and ejabber setup.

Only those with experience using these technologies. We are a Drupal 6.x site, and are using ejabberd on a dedicated server. Display of connected friends is not shown consistently or accurately. We are not using MUC now, though we want to once this is settled.

Interested parties contact me with a summary of experience with these modules and Drupal itself. I will provide a detailed list of symptoms and some test accounts we can work with.

Read more
benjamin_dk's picture

Chat Software for (Non-Profit) Youth Counselling

Cyberhus.dk is a Danish 100% non-profit organisation founded in 2004 as a partner charity under the youth charity, Ungdommens Vel (Youth Welfare). The website is built as a “virtual house” that offers online counseling for vulnerable children and teens (age 12-18). Counseling is undertaken mainly by volunteer chat-counselors, all with relevant educational backgrounds.

We are planning a redesign of our chat software and have agreed to ask the Open Source Community for guidance and help in the planning and development of this software.

Read more
ifuyivara's picture

XMPP for data synchronization.


We are developing a drupal site that needs to logs users activity from an external source. Imagine thousands (more than 800,000) users.

Read more
drtrueblue's picture

Integrating XMPP for a chat server and IM features.

Greetings expert developers. I've been a drupal hobbyist for about one year and am quite hooked. Recently I decided it would be valuable to enhance my site with the addition of chat room and IM features. After some research and predictable frustrations, I came to the conclusion that going with XMPP might be the best practice for my use case. My site is dedicated to improving world-wide quality of life and promoting peace. It is my understanding there is a sizable learning curve with XMPP.

Read more
islevegan's picture

XMPP in drupal. Is it really that difficult?

Might one be able to use jabber.org for xmpp resources in drupal?

I'd love to do that. :-)

I just read through the following article. Is all this complication really necessary? At some point there is mention of this solution being not very secure. Hmm, that does not inspire confidence.

Surely there is a better way?


I've done a little apache configuration but even the first instruction has me lost.

"Edit your main site file and include the following information inside of a location block:"

Read more
tyabut's picture

Connecting to GTalk

Hi everyone.

Read more
darklrd's picture

DXMPP GSoC 2010 Project

Hello everyone!

Read more
srjosh's picture

Ejabberd Database connections?

Hey guys.
I have a general ejabberd question to which I am unable to find an answer. When I installed it on my (mac osx) development environment, and get everything configured, it runs well. I can log into the dev site with DXMPP running, using two different clients, and chat back and forth. Very happy!

However, for some reason, ejabberd creates 10 mysql connections to the localhost mysql server, and leaves them open. Forever.

Read more
aaron's picture

IRC room for #drupal-xmpp now open!

I've made a request for Druplicon to start logging there as well: #drupal-xmpp.

Read more
darklrd's picture

Need a co-mentor for working on DXMPP as part of GSoC 2010

Hello everyone,
I am going to work on DXMPP as part of Google Summer of Code 2010. I already had a discussion with aaron and he is ready to be my mentor for the same. Is anyone interested to be my co-mentor? Any suggestions will be highly appreciated. My project proposal is here - http://groups.drupal.org/node/60218.

Read more
aaron's picture

Serving crossdomain.xml with mod_http_fileserver

I'm attempting to set up a crossdomain.xml to be served at http://example.com:5280/crossdomain.xml. I currently am using:

{mod_http_fileserver, [{docroot, "/var/www"},
                  {content_types, [{".xml", "text/xml"}]}]},


{5280, ejabberd_http, [
{request_handlers, [{["xmpp-httpbind"],
{[], mod_http_fileserver}

Read more
aaron's picture

How to make registration more secure for DXMPP?

As is stated at http://groups.drupal.org/node/59163 : "changed registration_timeout to unlimited. Default is 600 seconds. The server should wait 5 minutes before they can register a second new user. Together with open registering this is really a security problem, a hacker can register milliens of new user in a short time!"

Read more
aaron's picture

http pre-binding?

I'm trying to set up http pre-binding but am having difficulties.

Firstly, if I send

<body content='text/xml; charset=utf-8' hold='1' rid='3775588' to='xmpp.example.com' route='http://xmpp.example.com:5280/http-bind/' ver='1.6' wait='60' ack='1' xml:lang='en' xmlns='http://jabber.org/protocol/httpbind'/>

I receive

ejabberd2.0.1unix/linux 2.6.26

Read more

Setting up an XMPP server for use with drupal

Some terms and explanations used in this guide:



  • Term = Definition
  • JID = Jabber ID (The user id originally created for the Jabber IM client)
  • roster = A list of "Friends" connected to your JID
  • stanza = A fixed number of lines of verse forming a unit of a poem. In XMPP a fixed number of data send in packets?
  • disco = Discovery of the services delivered by this XMPP server.
  • MUC = Multi User Chat, or group chat.
  • Read more
    kvantomme's picture

    XMPP and Drupal developers' round table

    2010-03-26 17:00 - 19:00 Europe/Brussels
    Event type: 
    User group meeting

    Recently a lot of people started are working concurrently on XMPP and Drupal integration. So I thought it would be a good idea to share our ideas
    so we can work on top of a common platform.

    We are going to have the meeting on Dimdim. You can join the event at http://my.dimdim.com/all/openlearninglabs/default/

    Some background information for the talk can be found at

    Read more
    ijab's picture

    integrate iJab, an AJAX XMPP web chat client into Drupal

    I have written a module, which is my first Drupal module to integrate iJab into Drupal. I think I do in a very different way from XMPPFramework for I know very little about Drupal. (I hope somebody could implment users-sync, roster-sync and etc. in XMPPFramework)

    If anybody is interested with this module, please go to http://drupal.ijab.im to experience it and I want to know where I can put the module.

    Read more
    aaron's picture

    Subscriptions don't work

    So I created a ticket in the DXMPP queue that I'm hoping to get some eyes on.

    Basically, DXMPP registers users from the web server, and uses User Relationships to track a user's roster. Then on a user's page load, it sets a flag in Drupal.settings to add the users to their roster and subscribe via XMPP. After this is done, an AJAX call goes back to Drupal to keep things synchronized. Same on unsubscribe.

    Read more
    aaron's picture

    XMPP Themable Client?

    I'm looking for a Drupal XMPP client that utilizes the theme layer. The XMPP Framework seems fairly well developed, but that is a glaring omission there from what I can tell. Any other options? Is there any work in that direction? Should I just contribute my own plug-in for that module?

    On a related note, what XMPP servers do folks recommend?


    Read more
    Subscribe with RSS Syndicate content