An XMPP Server written in Python. Examples are available here. This project is currently in an alpha state and under active development. The core supports TLS, SASL, Resource Binding, and Sessions. The rudimentary chat-server example has been successfully tested against Pidgin clients (e.g. Adium, Proteus, etc.).
The XMPP server is using on tornado, lxml, and python-sasl. Before you can install it, make sure you have these prerequisites installed. To install the tornado and lxml:
sudo easy_install setuptools pycurl==7.16.2.1 simplejson lxml sudo easy_install -f http://www.tornadoweb.org/ tornado
Since lxml and pycurl have C dependencies, it may be simpler to use a package management system if it's available for your OS. Using MacPorts, for example:
sudo port install py26-setuptools py26-curl py26-simplejson py26-lxml sudo easy_install -f http://www.tornadoweb.org/ tornado
To install python-sasl:
git clone git://github.com/thisismedium/python-sasl.git cd python-sasl python setup.py build sudo python setup.py install
To check out and install python-xmpp-server:
git clone git://github.com/thisismedium/python-xmpp-server.git cd python-xmpp-server python setup.py build sudo python setup.py install
Test your setup by running an example:
python examples/ping-pong.py
If you are going to hack on python-xmpp-server, you can use python
setup.py develop
instead of python setup.py install
to create an
egg-link to the git repository.