@mangar2/mqttservice

1.2.1 • Public • Published

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

Dependents (1)

Package Sidebar

Install

npm i @mangar2/mqttservice

Weekly Downloads

2

Version

1.2.1

License

LGPL-3.0-or-later

Unpacked Size

24.2 kB

Total Files

7

Last publish

Collaborators

  • mangar2