b7d45e176b
Added the relevant section in INSTALL about queues and daemons to get the plugin runnig. Made resource required, as otherwise XMPPHP will send invalid from JIDs in it's stanzas. For example when my configuration didn't had the resource part, outbound stanzas looked like this: <message from="gnusocial@example.de/" to="flow@example.de" type='chat'> <body> User "flow" on GNU Social has said that your XMPP/Jabber/GTalk screenname belongs to them. … </body> </message> Note the '/' at the end of the from attribute, without an actual XMPP resource. But according to RFC6122 2.1 "every allowable portion of a JID MUST NOT be zero bytes in length". Causing a jid-malformed response from the server. Also, it's nice to know that debug=true will print out all sent and received stanzas, which helped me to debug the problem. Furthermore I add a note that if the XMPP services uses DNS SRV records, 'host' has to be configured (in cases where service host != xmpp domain). |
||
---|---|---|
.. | ||
extlib/XMPPHP | ||
lib | ||
locale | ||
README | ||
XmppPlugin.php |
The XMPP plugin allows users to send and receive notices over the XMPP/Jabber/GTalk network. Installation ============ add "addPlugin('xmpp', array('setting'=>'value', 'setting2'=>'value2', ...);" to the bottom of your config.php The daemon included with this plugin must be running. It will be started by the plugin along with their other daemons when you run scripts/startdaemons.sh. See the section "Queues and daemons" in INSTALL for more about queuing and daemons. Settings ======== user*: user part of the jid server*: server part of the jid resource*: resource part of the jid port (5222): port on which to connect to the server encryption (true): use encryption on the connection host (same as server): host to connect to. Usually, you won't set this. debug (false): log extra debug info (e.g. sent/recv XMPP stanzas) public: list of jid's that should get the public feed (firehose) * required default values are in (parenthesis) Note that setting 'host' is required if the XMPP service is configured with DNS SRV records, since the XMPPHP does currently not support SRV lookups. Example ======= addPlugin('xmpp', array( 'user'=>'update', 'resource'=>'social, 'server'=>'identi.ca', 'password'=>'...', 'public'=>array('bob@aol.com', 'sue@google.com') ));