thomascube / roundcube-converse.js-xmpp-plugin

XMPP plugin for Roundcube Webmail based on converse.js

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Roundcube Converse.js XMPP plugin

This is XMPP plugin for Roundcube Webmail based on converse.js. This is very much a work in progress.

Requirements

  • BOSH support in XMPP server or BOSH connection manager
  • Plaintext auth in BOSH. This currently doesn't support other auth methods
  • (optional) BOSH proxy in web server, to avoid crossdomain issues
  • (recommended) XMPP server set to broadcast incoming messages to all resources. See notes below.

Installation

  • cd your_roundcube_dir/plugins
  • git clone https://github.com/priyadi/roundcube-converse.js-xmpp-plugin converse
  • cd converse
  • cp config.inc.php.dist config.inc.php
  • vi config.inc.php (make necessary adjustments)
  • cd your_roundcube_dir/
  • vi config/main.inc.php (add 'converse' to $rcmail_config['plugins'])
  • done!

Notes

This plugin creates a new XMPP session on each page rendering in order to support multiple active window. To avoid confusion it is recommended to have the XMPP server broadcast incoming messages to all resources.

  • Openfire: "route.all-resources: true"
  • Prosody: "ignore_presence_priority = true"

Development

The plugin has a complete and minified version of the converse.js library with all its dependencies included. For development, you can pull converse.js as a git submodule and include the scripts and style sheets directly from there.

  1. Load the converse.js submodule:

    cd cd your_roundcube_dir/plugins/converse
    git submodule init && git submodule update
    
  2. Set $rcmail_config['converse_xmpp_devel_mode'] = true; in this plugins config file.

Credits

About

XMPP plugin for Roundcube Webmail based on converse.js

License:Other


Languages

Language:JavaScript 87.6%Language:PHP 10.0%Language:CSS 2.4%