No! Primate Mutation!

    @mangar2/mqttservice

    1.2.0 • 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

    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

    Install

    npm i @mangar2/mqttservice

    DownloadsWeekly Downloads

    5

    Version

    1.2.0

    License

    LGPL-3.0-or-later

    Unpacked Size

    23.8 kB

    Total Files

    7

    Last publish

    Collaborators

    • mangar2