mqtt 1.1.4 copy "mqtt: ^1.1.4" to clipboard
mqtt: ^1.1.4 copied to clipboard

mqtt dart client library

Mqtt #

This is an mqtt client written in DART. It can be used in the browser (over websocket) or the VM (over socker or websocket).

See http://mqtt.org/ for details on mqtt protocol

Usage #

Create a connection over websocket: var mqttCnx = new MqttConnectionIOWebSocket.setOptions("ws://127.0.0.1/8080");

Create a connection over socket: var mqttCnx = new MqttConnectionIOSocket.setOptions(host:127.0.0.1, port: 8083);

Create mqtt client: MqttClient c = new MqttClient(mqttCnx, clientID: "MyClientID", qos: QOS_1);

Set a will (must be done before connecting to the broker): c.setWill("MyWillTopic", "MyWillPayload", QOS_1, 0);

Connect to broker: c.connect(onConnectionLost) .then( (c)=> onConnected(c) ) .catchError((e) => print("Error: $e"), test: (e) => e is SocketException)
.catchError((mqttErr) => print("Error: $mqttErr") );

Publish a message: c.publish("MyTopic", "MyMessage", 1, QOS_1, 0) .then( (m) => print("Message ${m.messageID} published"); );

Subscribe to a topic: c.subscribe("MyTopic", QOS_1, onMessage) .then( (s) => print("Subscription done - ID: ${s.messageID} - Qos: ${s.grantedQoS}") );

Unsubscribe: c.unsubscribe("MyTopic", s.messageID) .then( (u) => print("Unsubscribed from subscription ${u.messageID}") );

Disconnect: c.disconnect();

VM Example #

See mqtt_sub for a sample mqtt publish and mqtt_pub for a sample subscribe. Available options can be displayed through: > dart mqtt_sub.dart -h > dart mqtt_pub.dart -h

Web Example #

See Mqtt_web for a sample web page connecting, subscribing and publishing mqtt messages

Testing #

Testing was done using the mosquitto broker (http://mosquitto.org/). A mosquitto test server is available at http://test.mosquitto.org/.

Websocket testing was done throught mqtt_ws_bridge.dart.

2
likes
20
pub points
49%
popularity

Publisher

unverified uploader

mqtt dart client library

Repository (GitHub)
View/report issues

License

BSD-2-Clause (LICENSE)

Dependencies

args, ini, test

More

Packages that depend on mqtt