快速开始

快速开始

MQTT Broker就选择EMQ作为示范。比如有1个温度传感器(1Machine1个移动设备,1个电脑,一个服务器(3Machine),都可以得到或者显示温度传感器的温度值,需要先通过MQTT协议subscribe(订阅)一个比如叫temperaturetopic(主题)如下:

mqtt 2

图中移动设备,服务器,电脑需要先通过EMQ subscribe一个叫temperaturetopic,当温度传感器publish温度数据,三个设备就可以收到了。

温度传感器

mosquitto

mosquitto是一个开源broker,并且支持MQTTv3.1,支持客户端的验证。mosquitto包括服务端和客户端。

mosquitto_pub客户端可发布一条消息到指定主题:

mosquitto_pub [-d] [-h hostname] [-i client_id] [-I client id prefix] [-p port number] [-q message QoS] [--quiet] [-r] { -f file | -l | -m message | -n | -s} [-u username [-P password] ] [ --will-topic topic [--will-payload payload] [--will-qos qos] [--will-retain] ] -t message-topic

sub_client客户端订阅一个或多个主题的消息:

mosquitto_sub [-c] [-d] [-h hostname] [-i client_id] [-I client id prefix] [-k keepalive time] [-p port number] [-q message QoS] [--quiet] [-v] [ -u username [-Ppassword] ] [ --will-topic topic [--will-payload payload] [--will-qos qos] [--will-retain] ] -t message topic ...