Skip to content

Links2004/mqtt-eventemitter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mqtt-eventemitter (mqtt-ee)

npm version

MQTT with EventEmitter API and callback support

Goal

using MQTT with a EventEmitter based API. with out the need to handle subscribing. and the addition of callback support to other mqtt-eventemitter clients.

examples

see: examples dir

simple events
const mqtt_ee = require('mqtt-eventemitter');
const mqtt_server_url = 'mqtt://test.mosquitto.org';

// first client
mqtt_ee(mqtt_server_url).then(function init(node) {
    setInterval(function() {
        // MQTT topic foo/bar
        node.emit('foo::bar', 'arg1', new Date());
    }, 2000);
});
const mqtt_ee = require('mqtt-eventemitter');
const mqtt_server_url = 'mqtt://test.mosquitto.org';
// second client
mqtt_ee(mqtt_server_url).then(function init(node) {
    // MQTT topic foo/bar
    node.on('foo::bar', function(arg1, date){
        console.log('arg1', arg1);
        console.log('date', date);
    });
});
callback events
const mqtt_ee = require('mqtt-eventemitter');
const mqtt_server_url = 'mqtt://test.mosquitto.org';

// first client
mqtt_ee(mqtt_server_url).then(function init(node) {
    setInterval(function() {
        // MQTT topic foo/bar
        node.emit('foo::bar', 'arg1', function(date) {
            console.log('callback called with', date);
        });
    }, 2000);
});
const mqtt_ee = require('mqtt-eventemitter');
const mqtt_server_url = 'mqtt://test.mosquitto.org';
// second client
mqtt_ee(mqtt_server_url).then(function init(node) {
    // MQTT topic foo/bar
    node.on('foo::bar', function(arg1, cb){
        console.log('arg1', arg1);
        cb(new Date())
    });
});

About

eventemitter for mqtt

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published