Python 2/3 implementation of XMPP (RFC3920, RFC3921).
Documentation: http://xmpppy.sf.net/
Source Code: https://github.com/xmpppy/xmpppy
Status:
This library has been written to be compliant with RFC3920 and RFC3921.
Using pip
, you can install the package with:
pip install xmpppy --upgrade
Regularly, the module is used as a library, like:
import xmpp jabberid = "[email protected]" password = "secret" receiver = "[email protected]" message = "hello world" def main(): jid = xmpp.protocol.JID(jabberid) connection = xmpp.Client(server=jid.getDomain(), debug=True) connection.connect() connection.auth(user=jid.getNode(), password=password, resource=jid.getResource()) connection.send(xmpp.protocol.Message(to=receiver, body=message)) if __name__ == "__main__": main()
The package also installs a command line program called xmpp-message
.
Its synopsis is:
xmpp-message --debug \ --jabberid [email protected] --password secret \ --receiver [email protected] --message 'hello world'
You can also put your credentials into an ~/.xsend
file, like:
[email protected] PASSWORD=secret
and then invoke xmpp-message
omitting the --jabberid
and --password
options, like:
xmpp-message --receiver [email protected] --message 'hello world'
The canonical documentation is hosted at https://xmpppy.github.io/ and http://xmpppy.sourceforge.net/.
For learning about how to use this module, please have a look at these spots within the code base.
- The
xmpp-message
program, located atxmpp/cli.py
, for sending a single XMPP message. - The other programs within the
doc/examples
directory. - The docstrings within the library itself.
If you have any questions about xmpppy usage or you have found a bug or want to share some ideas - you are welcome to join us on the issue tracker or on the xmpppy-devel mailing list.