Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
A full blown XMPP server based on https://github.com/node-xmpp/node-xmpp with modules
JavaScript
Tree: 7b1f7881a4

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
bin
lib
modules
test
.gitignore
LICENSE
README.markdown
config.default.js
package.json
xmpp-server.js

README.markdown

xmpp-server

A full XMPP server using node-xmpp, with some modules. Feel free to fork this and configure all the modules you need in server.js This server uses Redis as its datastore.

Installation

Beware : this project is really early stage... There are a lot of things to fix :) Install it for fun or for help... but probably not for profit just yet!

  1. First, you need nodejs installed. Pre-compiled packages exist for Unix (Linux, BSD, Mac OS X) as explained in these instructions. Skip to 2. if you already have a working Node.JS environment.

  2. Then, you need npm installed. As in step 1, follow these instructions or skip to 3.

  3. Install redis (used to store the data). apt-get install redis-server should work just fine on most Ubuntus and Debians. On MacOS X redis can be installed e.g. with Homebrew: brew install redis

  4. Install xmpp-server, finally. With package manager npm:

npm install -g xmpp-server

Running

TODO : automate this with a script that asks the right questions to the user when starting.

First, create a config file and place it at /etc/xmpp-server/config.js that includes the following (tls support is optional. You can follow the instructions there to create the key and certificate, and then uncomment the tls lines.):

    
    exports.config = {
        port: 5222, 
        domain: 'localhost',
        //tls: {
        //    keyPath: '/etc/xmpp-server/tls/localhost-key.pem',
        //    certPath: '/etc/xmpp-server/tls/localhost-cert.pem'
        //}
    }
    

Then, run the server:

xmpp-server /etc/xmpp-server/config.js

Trying

There is a server running at ouvre-boite.com. You can certainly create an account there, but don't leave any valuable belongings as they will be trashed every couple hours :)

TODO

  • In-band registration
  • C2S
  • TLS
  • Digets Auth
  • Roster
  • Presence
  • Pass on global configuration to modules.

Dependencies

Something went wrong with that request. Please try again.