@mangar2/mqttservice v1.2.1
Abstract
Library module to communicate with the mqtt broker . It includes Publish to send messsages to the broker and OnPublish to receive messages published by the broker
Contents
Meta
File | mqttservice.js |
Abstract | Library module to communicate with the mqtt broker . It includes Publish to send messsages to the broker and OnPublish to receive messages published by the broker |
Author | Volker Böhm |
Copyright | Copyright ( c ) 2020 Volker Böhm |
License | This software is licensed under the GNU LESSER GENERAL PUBLIC LICENSE Version 3 . It is furnished "as is" , without any support , and with no warranty , express or implied , as to its usefulness for any purpose . |
Callback definitions
ProcessMessage
ProcessMessage Parameters
Name | Type | Description | |
---|---|---|---|
message | Object | the message received | |
qos | 0, 1, 2 | the quality of service information | |
dup | 0, 1 | flag signaling duplicates |
Class OnPublish
new OnPublish(listenerPort, logSettings, qos2PubrelTimeoutInSeconds)
Creates a new server receiving messages Supports registering a callback with on ( 'publish' , ( payload , qos ) = > { } ) called for each received message
OnPublish Parameters
Name | Type | Description | |
---|---|---|---|
listenerPort | number | port to listen on | |
logSettings | Object | logging settings | |
qos2PubrelTimeoutInSeconds | number | time to delete qos2 related packageid´s from the qos2 queue . This will happen , if a pubrel does not follow the publish call for a this amount of seconds |
OnPublish Members
Name | Type | description |
---|---|---|
logFilter | LogFilter | Logging filter |
port | number | Port the server uses , only defined after listen has been called ! |
OnPublish Methods
close
close ()
Closes all connections
listen
listen ()
Starts to listen and wait for input
on
on (event, callback)
Sets a callback . Usually , there is no need to set anything here
on Parameters
Name | Type | Description | |
---|---|---|---|
event | string | event name , supported 'publish' | |
callback | ProcessMessage | callback to be called , to process messages received |
Class PublishMessage
new PublishMessage(host, port, configuration)
Creates a client for publishing messages
Example
//Publish the message with topic /a/a, value 1, reason "test", QoS 0, retain 0:
const publish = new PublishMessage('myhost', 10000, { retry: 60 })
result = await publish.publish(publishtoken, new Message("/a/a", 1, "test"), 0, 0);
PublishMessage Parameters
Name | Type | Description | |
---|---|---|---|
host | string | host name ( or ip ) | |
port | number | port number | |
configuration | Object | configuration options |
configuration properties
Name | Type | Attribute | Default | Description | |
---|---|---|---|---|---|
retry | number | optional | 60 | amount of retries to send a message |
PublishMessage Methods
close
async close ()
Closes the connection to the broker
publish
async publish (token, message, qos, retain, version)
Publishes a message with a defined quality of service automatically generating an id
publish Parameters
Name | Type | Description | |
---|---|---|---|
token | string | connection token | |
message | Object | message to publish . | |
qos | number | 0 , 1 , 2 quality of service | |
retain | boolean | True , if message shall be retained for future subscriptions | |
version | string, undefined | interface version , supports 0 . 0 and 1 . 0 ( default ) |
publish throws
Type | Description |
---|---|
string | on any connection error |