-
Notifications
You must be signed in to change notification settings - Fork 1.4k
client
The primary method of instantiating MqttClient
is through
the factory method mqtt.createClient
or
mqtt.createSecureClient
for a tls secured client.
It is possible to instantiate MqttClient
using
new MqttClient(...)
, but it requires the user to generate
their own underlying stream (such as a net.Socket
). Thus,
it is recommended that the factory methods be used
The MqttClient
class represents a client connection to an
MQTT broker over an arbitrary transport method (TCP, UDP,
TLS etc.). It makes heavy use of MqttConnection
(see:
MqttConnection).
MqttClient
automatically handles the following:
- Regular server pings
- QoS flow
- Default arguments to
MqttConnection
methods
Instantiate a new instance of MqttClient
-
streamBuilder
is a function that returns a subclass of theStream
class that supports theconnect
event. Typically anet.Socket
. -
options
is the client connection options (see: MqttConnection#connect). Defaults:-
keepalive
:10
-
clientId
:'mqttjs'_ + crypto.randomBytes(16).toString('hex')
-
protocolId
:'MQIsdp'
-
protocolVersion
:3
-
encoding
:'utf8'
(set to'binary'
for receiving binary payloads)
-
Publish a message
-
topic
is the topic to publish to,String
-
message
is the message to publish,Buffer
orString
-
options
is the options to publish with, including:-
qos
qos level -
retain
retain flag
-
-
callback
callback fired when the QoS handling completes
Subscribe to a topic or topics
-
topic
is aString
topic to subscribe to or anArray
of topics to subscribe to. -
options
is the options to subscribe with, including:-
qos
qos subscription level
-
-
callback
-function(err, granted)
callback fired on suback where:-
err
a subscription error -
granted
is an array of{topic, qos}
where:-
topic
is a subscribed to topic -
qos
is the granted qos level on it
-
-
Unsubscribe from a topic or topics
-
topic
is aString
topic or an array of topics to unsubscribe from -
callback
fired on unsuback
Close connection - send a disconnect packet and close the underlying stream
function() {}
Emitted on successful connection (i.e. connack rc=0)
function(topic, message, packet) {}
Emitted when the client recieves a publish packet
-
topic
topic of the received packet -
message
payload of the received packet -
packet
received packet, as used in MqttConnection