Requirements ============ - Twisted >= 8.0.1: - Twisted Core - Twisted Conch (for idavoll-http) - Twisted Web (for idavoll-http) - Twisted Web2 (for idavoll-http) - Twisted Words - uuid.py (Python 2.5 std. lib. or http://pypi.python.org/pypi/uuid) - Wokkel >= 0.3.1 (http://wokkel.ik.nu/) - simplejson (for idavoll-http) - A Jabber server that supports the component protocol (XEP-0114) For the PostgreSQL backend, the following is also required: - PostgreSQL - pyPgSQL Installation ============ Idavoll uses setuptools for package building and installing, and is also available through the Python Package Index (pypi). The easiest way to install idavoll is: easy_install idavoll This will pull down the dependencies, if needed, except for the Twisted packages. To building from source run: python setup.py build Then, to install run the following, possibly as root: python setup.py install See the setuptools documentation for further information on changing installation locations. Configuration ============= Idavoll uses Twisted's twistd command for running its services. Starting with Twisted 2.5.0, twistd supports running Twisted Application Plugins directly, without the use of mktap. In Twisted 8.1.0, the use of mktap for configuration is deprecated. These instructions will not cover the use of mktap anymore, but you can use TAC files to store a configuration, as described near the end of this document. Idavoll provides two types of storage for the backend: a memory-based storage facility, which is volatile, and a persistent storage facility using PostgreSQL. By default, the memory backend is used. For using the PostgreSQL backend, create a database (for example named pubsub) like so: createdb pubsub psql pubsub 127.0.0.1 5347 secret and restart jabberd. Unlike jabber 2.x, you can only have one component per port, so the port number may need to be changed. For other server implementations, please refer to its documentation on how to interact with server side components using the protocol defined in JEP-0114. Then, you can start Idavoll with: twistd idavoll --rport=5347 --jid=pubsub.localhost --secret=secret This uses the (default) memory based backend. Using TAC files to store a configuration ======================================== Apart from the provided TAPs that can be run with twistd, you can also create a configuration file that can be used by twistd to start up Idavoll. You can find an example in doc/examples/idavoll.tac, which can be run using: twisted -y idavoll.tac