A Python XMPP logging handler
Project description
This is a Python library for logging to XMPP destinations using OTR (Off-the-Record Messaging) encryption.
Features
OTRv2
Pure python (no libotr dependency)
Log to multiple destinations
Optionally check log destinations’ OTR fingerprints
Example
from otrxmpplogger import OTRXMPPLogger import logging import time log = logging.getLogger() privkey = open('.otrprivkey', 'r').read() handler = OTRXMPPLogger( 'bradass87@jabber.ccc.de/datadiode', 'supersecret', [ ( 'mendax@jabber.wikileaks.org', '33eb6b01c97ceba92bd6b5e3777189c43f8d6f03' ), 'esnowden@chat.nsa.gov' ], privkey ) log.addHandler(handler) log.debug('setting up OTR') # Trigger OTR setup time.sleep(3) # Give OTR a little while to go active log.critical('@6 is a rat!')
Notes
XMPP invitations are not handled
It seems to take roughly 3 seconds to set up an OTR session. Messages logged before the session is ready may be lost.
Dependencies
xmpppy (>= 0.4.1)
pure-python-otr (>= 1.0.0)
otrxmppchannel (>= 1.0.3)
Donations
If you found this software useful and would like to encourage its maintenance and further development, please consider making a donation to the Bitcoin address 13RrGMM1YUduzSrw5BhE7BXFGPtBDQYnpQ.
License
This is free and unencumbered public domain software. For more information, see http://unlicense.org/ or the accompanying UNLICENSE file.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.