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.
Unfortunately, the lack of time is slowly killing this project. If you feel like saving it, please, go ahead, message us and we'll set you up as the owner!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!
-
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.
-
Then, you need npm installed. As in step 1, follow these instructions or skip to 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
-
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 registrationC2STLS- Digets Auth
- Roster
- Presence
- Pass on global configuration to modules.