0.2.5 • Published 11 years ago

ejabberd v0.2.5

Weekly downloads
2
License
-
Repository
github
Last release
11 years ago

node-ejabberd

nodejs bridge to ejabberd

##Limitations Essentially, what this module can do is just talk to ejabberdclt command, edit ejabberd.cfg file.

So if you don't have the permission to run ejabberdclt and to read/write in /etc/ejabberd config directoty, this module wont works for you.

On unix-like sytems, this means, you must have the root permission to use this module or to run the application that required this moduel.

In the simple words, you are fully reponsed to make sure this module can tale to ejabberd.

Passed tests on those OSes

  • ubuntu 12.04

Directory and files

###Config directory structure

.
|-- ejabberd.cfg
|-- includes
|   |-- vhost1.cfg
|   `-- vhost2.cfg

###Sample of included vhost config file

{host_config, "vhost1.example.com",[{acl, admin, {user, "admin", "vhost1.example.com"}}]}.

Getting Started

Install the module with: npm install ejabberd

Documentation

Before use this module, You need those knowledge.

  • Promise based API

    Any value return from a public api is a promise object.

    More precie, it is follow the Promise/A+ specification, and implemented in a nodejs module called Q.

    I highly recommened to read the speicification and documents of aboves, if you are new to promise.

  • Basic knowledge about ejabberd and its configuration is also required

###API

See API

Examples

var Ejabberd = require('ejabberd');
var e = new Ejabberd('/etc/ejabberd/');

var host = 'chat.example.com';
var config = {host: host};

// Add a virtual host to ejabberd's configuration then restart server
var p1 = e.addVhost(host, config);

p1.then(  // This return a promise
  // success
  function() {
  },
  // error
  function(err) {
  }
);

var username = 'Lorem';
var password = 'secret';

// Register a new use
var p2 = e.register(username, host, password);

p2.then(  // This is also a promise
  // success
  function() {
  },
  // error
  function(err) {
  }
);

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using grunt.

Release History

  • 2013/1/03: 0.1.0

    Initial release

License

Copyright (c) 2012 wiredcraft
Licensed under the MIT license.

0.2.5

11 years ago

0.2.4

11 years ago

0.2.3

11 years ago

0.2.2

11 years ago

0.2.1

11 years ago

0.2.0

11 years ago

0.1.7

11 years ago

0.1.6

11 years ago

0.1.6-alpha3

11 years ago

0.1.6-alpha2

11 years ago

0.1.6-alpha1

11 years ago

0.1.6-alpha

11 years ago

0.1.5

11 years ago

0.1.4

11 years ago

0.1.3

11 years ago

0.1.2

11 years ago

0.1.1

11 years ago

0.1.0

11 years ago