PyXMPP is a Python XMPP (RFC 3920,3921) implementation, including some of the well-known extensions. It is based on libxml2 -- fast and fully-featured XML parser.
PyXMPP provides most core features of the XMPP protocol and several JSF-defined extensions. PyXMPP provides building blocks for creating Jabber clients and components. Developer uses them to setup XMPP streams, handle incoming events and create outgoing stanzas (XMPP "packets").
For PyXMPP you will need:
- Python. Python 2.6 required.
- libxml2. Recent release (>=2.6.11) with python bindings is required. Additionally, all development files for libxml2 (usually in separate libxml2-devel package) are recommended for compilation of PyXMPP for best performance. PyXMPP 1.0 was tested with libxml2-2.7.6.
- dnspython. PyXMPP 1.0 was tested with version 1.6.0.
To make sure you have all the requirements listed above or to prepare limited (without the binary extension) build of PyXMPP you may want to run:
python configure.py
You may manually pick the limited or full build of PyXMPP by editing the build.cfg file.
To build the package just invoke:
python setup.py build
To install it:
python setup.py install
If you had some older version of PyXMPP it is better to uninstall it (delete pyxmpp subdirectory os your site-packages directory) before installing this one or things may not work correctly.
You may also try:
make
and:
make install
instead.
PyXMPP was written and is maintained by Jacek Konieczny <jajcus@jajcus.net>.
To report bugs or request features use the GitHub interface.
For discussion you may join the PyXMPP mailing list.
Current source code is available via GitHub at: https://github.com/Jajcus/pyxmpp
PyXMPP is free software, licenced under the GNU LGPL. See the COPYING file for details.