MQTT - 设置 MQTT 客户端与 Broker 通信
MQTT 的简介
MQTT (Message Queuing Telemetry Transport),它是为IBM和Eurotech共同制定出来的protocol,在MQTT的官网可以看到它对MQTT的介绍:所以它是为了IOT而设计的protocol,它是基于TCP/IP的协定,并且透过publish/subscribe的方式做资料传送与接收
其中它有几个元素
Publisher: 它通常是带有sensor的装置(Ex. Ameba),经由网路上传到MQTT-Broker,其中MATT-Broker是带有MQTT service的资料库
Subscriber: 它通常是可以观看讯息的装置,如笔电,手机等
Topic: 讯息的内容由Topic来分类,比如说Topic可以是PM2.5, 或是Temperature, 而手机可以选择想要接收的Topic
材料准备
AmebaD [AMB21 / AMB22 / AMB23 / BW16] x 1
范例说明
“File” → “Examples” → “AmebaMQTTClient” →
“MQTT_Basic”
其中mqttServer就是MQTT-broker的位置,这边使用“iot.eclipse.org” 是IBM 的eclipse 提供的MQTT sandbox,供开发者测试MQTT
clientId用来让MQTT-broker辨识连上线的装置
publishTopic是发布的主题,例子里是“outTopic”, 而其它有subscribe “outTopic” 的装置可以接收这份讯息。
publishPayload是发布的内容
subscribeTopic是对MQTT-broker注册要倾听的topic
打开它之后,点选左边的Connection的“+”,并在填入这些栏位
Connection Name: 用来辨识这笔连线,可以任意填
Hostname: 这边填入MQTT-Broker的server位置, “iot.eclipse.org”
Client ID: 它预设会随机给你一个ID,我们可以使用预设的ID