@mangar2/connect
v1.3.2
Published
connects and subscribes to a broker
Downloads
48
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 |
