.. OTR bot documentation master file, created by sphinx-quickstart on Mon Mar 28 11:05:17 2016. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. Welcome to OTR bot's documentation! =================================== The bot exists of four modules: - The :doc:`otrbot` module that runs an XMPP client that communicates with peers, to teach them how to enable and verify OTR connections. - The :doc:`otrplugin` module that enables the use of OTR with SleekXMPP. - A :doc:`statemachine` that executes actions and handles events. - A Learning Tools Interoperability (LTI) interface to be able to start talking with the OTR bot from a Learning Management System (LMS). Quick Start ----------- - It is recommended to start by creating a `virtualenv` environment for the bot. The bot uses external python libraries that are fixed on a certain version. The easiest way to ensure that nothing else on your system breaks when installing these dependencies, is by using a virtual environment. - Install python-dev in order to be able to install all dependencies. On debian-based systems, run `apt-get install python-dev`. - Run `pip install -r requirements.txt` to fulfill all python requirements. - By default, the environment in `settings/env.py` is set to production. This means it searches for `production.py` in the settings folder. Alter this environment, or the `production.py` file: - The `XMPP_ACCOUNTS` dictionary should at least contain one valid jabber account. Its JID should be the key, its value a dictionary with the contents 'password', 'private_key', 'SSL', 'port' and 'allow_plain_text'. - Enter the JID of one of the accounts in `XMPP_ACCOUNTS` in `XMPP_DEFAULT_ACCOUNTS`. This is the default account to start the bot with. If you don't have a default account, always start the bot with the --jid flag. - Start the bot by running `./bot.py runclient`. Run `./bot.py runclient --help` for information on the available arguments. Other subcommands are available as well. Run `python bot.py --help` for more information. .. toctree:: :caption: Table of Contents :maxdepth: 2 otrbot translations otrplugin statemachine lti utils colourlog settings/index exceptions Indices and tables ================== * :ref:`genindex` * :ref:`modindex` * :ref:`search`