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 |