ember-mqttjs

1.4.0 • Public • Published

ember-mqttjs CI

Ember async service for connecting to mqtt broker through mqttjs library.

Compatibility

  • Ember.js v3.24 or above
  • Ember CLI v3.24 or above
  • Node.js v12 or above

Installation

ember install ember-mqttjs

Usage

You have to import this service in your route or controller or component or service js class:

import { inject as service } from '@ember/service';
...
@service mqtt;

connect(host, [username], [password]): RSVP.Promise

Connect to the mqtt host and register a listener to the mqtt-message event:

this.mqtt.connect('wss://test.mosquitto.org:8081').then( () => {
    // Do stuff on connection established
});
this.mqtt.on('mqtt-message', (sTopic, sMessage) => {
    // Do stuff with topic and message parameters
});

subscribe(topic): RSVP.Promise

this.mqtt.subscribe('presence').then( (oGranted)=>{
    // Do stuff after succesfully subscription to mqttTopic
});

oGranted is an array of {topic, qos} where:

  • topic: is a subscribed to topic
  • qos: is the granted QoS level on it

publish(topic, message): RSVP.Promise

this.mqtt.publish('presence', 'Hello').then( () => {
    // Do stuff after successfully published message
});

unsubscribe(topic): RSVP.Promise

this.mqtt.unsubscribe('presence').then( (oGranted)=>{
    // Do stuff after succesfully unsubscription to mqttTopic
});

mqtt-message [topic, message]: Event

New mqtt message received.

this.mqtt.on('mqtt-message', (sTopic, sMessage) => {
    // Do stuff with topic and message parameters
});

mqtt-connected: Event

Connected event.

mqtt-disconnected: Event

Disconnected event.

mqtt-error: Event

Error event.

mqtt-reconnect: Event

Fired when mqtt starts a reconnection

mqtt-close: Event

Closed connection event.

mqtt-offline: Event

Fired when mqtt goes offline.

Contributing

See the Contributing guide for details.

License

This project is licensed under the MIT License.

Dependencies (3)

Dev Dependencies (36)

Package Sidebar

Install

npm i ember-mqttjs

Weekly Downloads

38

Version

1.4.0

License

MIT

Unpacked Size

11 kB

Total Files

9

Last publish

Collaborators

  • davideferre