@mangar2/connect
v1.3.2
Published
connects and subscribes to a broker
Downloads
7
Maintainers
Readme
Abstract
Provides functions to connect to the ( http based ) yaha mqtt broker
Contents
Meta
| | | | --- | --- | | File | connect.js | | Abstract | Provides functions to connect to the ( http based ) yaha mqtt 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 . |
Class Connect
new Connect(clientId, brokerHost, brokerPort, listenerPort)
Organises connections to broker This is part of the http based mqtt broker . Use this class to connect/disconnect and subscribe/unsubscribe to the broker All functions are based on async/promises
Example
let connect = new Connect("/connect/test", "127.0.0.1", 9001, 9002);
result = await connect.connect(CLEAN);
Connect Parameters
| Name | Type | Description |
| ---------- | ------------ | ----------------- |
| clientId
| string
| id of this client | |
| brokerHost
| string
| hostname ( or ip ) of the broker | |
| brokerPort
| number
| port of the broker | |
| listenerPort
| number
| port to listen for published messages from broker | |
Connect Members
| Name | Type | description |
| ------------ | ------------ | ------------ |
| isConnected
| boolean
| True , if the client is connected |
| token
| Object.<send:string, receive:string>
| Gets/Sets send and receive token |
Connect Methods
close
async close ()
Closes the connection to the broker
connect
async connect (clean, version, keepAlive) => {Object}
Connects to the broker
connect Parameters
| Name | Type | Attribute | Default | Description |
| ---------- | ------------ | ------------ | ------------ | ----------------- |
| clean
| boolean
| | | true , if a disconnect shall clean any connection information | |
| version
| string
| optional | '1 . 0' | interface version ( 0 . 0 or 1 . 0 ) | |
| keepAlive
| number
| optional | 600000 | time in milliseconds the broker will keep the connection without receiving calls | |
connect returns
| Type | Description |
| ---- | ----------- |
| Object
| payload returned from connect request |
connectAndSubscribe
async connectAndSubscribe (clean, topics, version, keepAlive) => {Object}
First connect , then subscribe
connectAndSubscribe Parameters
| Name | Type | Attribute | Default | Description |
| ---------- | ------------ | ------------ | ------------ | ----------------- |
| clean
| boolean
| | | true , if a disconnect shall clean any connection information | |
| topics
| Object
| | | topics to subscribe to { topic1 : QoS1 , topic2 : QoS2 , . . . } | |
| version
| string
| optional | '1 . 0' | interface version ( 0 . 0 or 1 . 0 ) | |
| keepAlive
| number
| optional | 600000 | time in milliseconds the broker will keep the connection without receiving calls | |
connectAndSubscribe returns
| Type | Description |
| ---- | ----------- |
| Object
| combined result from connect and subscribe |
disconnect
async disconnect (version) => {Object}
Disconnects from the broker
disconnect Parameters
| Name | Type | Attribute | Default | Description |
| ---------- | ------------ | ------------ | ------------ | ----------------- |
| version
| string
| optional | '1 . 0' | interface version ( 0 . 0 or 1 . 0 ) | |
disconnect returns
| Type | Description |
| ---- | ----------- |
| Object
| empty object |
on
on (event, callback)
Sets a callback .
on Parameters
| Name | Type | Description |
| ---------- | ------------ | ----------------- |
| event
| string
| event name ( not case sensitive ) for the callback | |
| callback
| function
| ( parameter ) | |
on throws
| Type | Description |
| ---- | ----------- |
| Error
| if the event is not supported |
| Error
| if the callback is not 'function' |
pingreq
async pingreq () => {boolean}
Sends a ping request to signal the client is alive
pingreq returns
| Type | Description |
| ---- | ----------- |
| boolean
| true on success |
subscribe
async subscribe (topics, version) => {Object}
Subscribe to the broker
subscribe Parameters
| Name | Type | Attribute | Default | Description |
| ---------- | ------------ | ------------ | ------------ | ----------------- |
| topics
| Object
| | | topics to subscribe to { topic1 : QoS1 , topic2 : QoS2 , . . . } | |
| version
| string
| optional | '1 . 0' | interface version ( 0 . 0 or 1 . 0 ) | |
subscribe returns
| Type | Description |
| ---- | ----------- |
| Object
| payload returned from subscribe request |
unsubscribe
async unsubscribe (topics, version) => {Object}
Unsubscribes from the broker
unsubscribe Parameters
| Name | Type | Attribute | Default | Description |
| ---------- | ------------ | ------------ | ------------ | ----------------- |
| topics
| Array
| | | topics to unsubscribe [ topic1 , topic2 , . . . ] | |
| version
| string
| optional | '1 . 0' | interface version ( 0 . 0 or 1 . 0 ) | |
unsubscribe returns
| Type | Description |
| ---- | ----------- |
| Object
| empty object |