# HG changeset patch # User Goffi # Date 1457516498 -3600 # Node ID 6662cc9519cce7ed3e29d241d74172b76951a743 # Parent b76cbf59772b62b5a1ecee75e922d55ccec99d39 updated INSTALL file diff -r b76cbf59772b -r 6662cc9519cc INSTALL --- a/INSTALL Fri Mar 04 11:26:07 2016 +0100 +++ b/INSTALL Wed Mar 09 10:41:38 2016 +0100 @@ -1,15 +1,16 @@ Requirements ============ -- Twisted >= 8.0.1: +- Python 2.7.x +- Twisted >= 15.2.0: - Twisted Core - Twisted Words -- uuid.py (Python 2.5 std. lib. or http://pypi.python.org/pypi/uuid) -- Wokkel >= 0.5.0 (http://wokkel.ik.nu/) -- A Jabber server that supports the component protocol (XEP-0114), - and, to enable the micro-blogging feature, the Namespace Delegation - (XEP-0355) and Privileged Entity (XEP-0356) protocols. We recommend - using Prosody. +- Wokkel >= 0.7.1 (http://wokkel.ik.nu/) +- A XMPP server that supports the component protocol (XEP-0114), + and, to enable the micro-blogging feature, Namespace Delegation (XEP-0355) + and privileged entity (XEP-0356) are needed. + We recommend using Prosody with mod_privilege and mod_delegation modules. +- SàT backend (http://repos.goffi.org/sat) is currently needed for MAM and RSM handling For the PostgreSQL backend, the following is also required: @@ -36,10 +37,7 @@ Configuration ============= -sat_pubsub 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. +sat_pubsub uses Twisted's twistd command for running its services. Idavoll, on which sat_pubsub is based, provides two types of storage for the backend: a memory-based storage facility, which is volatile, and a persistent storage facility @@ -52,8 +50,9 @@ psql pubsub < sat_pubsub/db/pubsub.sql -Your Jabber server must also be configured to accept component connections and, -to enable the micro-blogging feature, remote roster management. See below for details. +Your XMPP server must also be configured to accept component connections and, +to enable the micro-blogging feature, privileged entity and namespace delegation. +See below for details. Running sat_pubsub @@ -70,7 +69,7 @@ twistd --help -When the service starts, it will connect to the Jabber server at the local +When the service starts, it will connect to the XMPP server at the local machine using the component protocol, and assumes the JID 'pubsub'. This assumes a couple of defaults which can be overridden by passing parameters to the twistd plugin. You can get an overview of the parameters and their defaults @@ -81,39 +80,49 @@ In particular, the following parameters will be of interest: --jid: The Jabber ID the component will assume. - --rport: the port number of the Jabber server to connect to - --secret: the secret used to authenticate with the Jabber server. + --rport: the port number of the XMPP server to connect to + --secret: the secret used to authenticate with the XMPP server. For example: - twistd sat_pubsub --jid=sat-pubsub. --secret= + twistd sat_pubsub --jid=sat-pubsub. --secret= You may also want to provide the --verbose flag to see the traffic flow, for example to debug the configuration. Below some specifics for the Prosody XMPP server implementation. -Running sat_pubsub with Prosody +Running sat_pubsub with Prosody =============================== To enable the micro-blogging feature with Prosody XMPP server, you need -the delegation and privilege plugins: +the mod_delegation and privileged_entity plugins. +Check if the mod_delegation and mod_privilege plugins are already +in your Prosody installation: - https://modules.prosody.im/mod_delegation.html - https://modules.prosody.im/mod_privilege.html + cd prosody/plugins + ls mod_delegation.lua + ls mod_privilege.lua -Your prosody.cfg.lua file needs to look a bit like that: +If you can't see it, download them from http://modules.prosody.im: + + wget http://hg.prosody.im/prosody-modules/raw-file/tip/mod_delegation/mod_delegation.lua + wget http://hg.prosody.im/prosody-modules/raw-file/tip/mod_privilege/mod_privilege.lua -[...] -modules_enabled = { - [...] - "delegation"; - "privilege"; -} -[...] -VirtualHost "" +Edit the prosody.cfg.lua file to add this module: + + modules_enabled = { + [...] + "delegation"; + "privilege"; + [...] + } + +In your VirtualHost, add this lines: + +VirtualHost "" privileged_entities = { - ["sat-pubsub."] = { + ["sat-pubsub."] = { roster = "get"; message = "outgoing"; }, @@ -121,21 +130,21 @@ delegations = { ["urn:xmpp:mam:1"] = { filtering = {"node"}; - jid = "sat-pubsub."; + jid = "sat-pubsub."; }, ["http://jabber.org/protocol/pubsub"] = { - jid = "sat-pubsub."; + jid = "sat-pubsub."; }, } -Component "sat-pubsub." - component_secret = "" - modules_enabled = {"delegation", "privilege"} +Also add these two lines at the end of the file, adapting them to your XMPP server +domain (virtual host) and selecting a password of your choice: -Of course, you have to replace and with the good -values. + Component "sat-pubsub." + component_secret = "" + modules_enabled = {"delegation", "privilege"} -For a more complete installation and configuration of Prosody to be used -with sat_pubsub, please report yourself to the Salut à Toi wiki: +For a more complete installation and configuration of Prosody to be used with +sat_pubsub, please report yourself to the Salut à Toi wiki: -http://wiki.goffi.org/wiki/Libervia/en#XMPP_server \ No newline at end of file +http://wiki.goffi.org/wiki/Libervia/en#XMPP_server