MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。
MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)。其在,通过卫星链路通信传感器、偶尔拨号的医疗设备、智能家居、及一些小型化设备中已广泛使用。
登录阿里云平台网址:https://help.aliyun.com/product/30520.html 并要注册与认证, 注册与认证,注册与认证。重要的事情说三遍
直接上图,清晰明了
产品名称根据自己情况填写
单击查看产品详情
点击蓝色方框
设备名称根据自己情况填写
依次添加属性
发布上线
通过上面的配置后, 才有了下面的 添加设备
DeviceName的名字可以随意起
{
“ProductKey”: “gqe6BM9224e”, //注意每一个人的都不一样
“DeviceName”: “TESTDEVICE01”, //你自己起的名字
“DeviceSecret”: “c6af7073d61c45826f63f02345c9d540”
}
根据官方给出的信息记得出下面的信息,并留备用 第一个注意是你的: 公钥.iot…
Broker Address:gqe6BM9224e.iot-as-mqtt.cn-shanghai.aliyuncs.com
Broker Port :1883
Client ID :gqe6BM9224e.TEST为了安全不宜展示p=2524608000000|】
点击下载Password生成小工具,生成密码 (以前要用 现在选用 )
https://files.alicdn.com/tpsservice/88413c66e471bec826257781969d1bc7.zip
最终可以记录User Name与password 现在阿里云已经自动生成了 看上图
User Name:TESTDEVICE01&gj64h3QCehC
password:F04E282D9E92364B9C67AB2B946E6EACF0BEEBF1
使用MQTT.fx模拟为客户机,通过MQTT.fx来与阿里云进行通信。MQTT.fx工具下载网址:https://www.jensd.de/apps/mqttfx/1.7.1/?spm=a2c4g.11186623.0.0.17b673a87YcqGK
选择下面版本,安装之后并安装
Broker Address:gqe6BM9224e.iot-as-mqtt.cn-shanghai.aliyuncs.com
打开MQTT服务器,获取属性上报与属性设置 这个软件如同客户端是用来连接服务器的,里面的参数 对应填入即可
属性上报:/sys/gqe6BM9224e/ d e v i c e N a m e / t h i n g / e v e n t / p r o p e r t y / p o s t 属 性 设 置 : / s y s / g q e 6 B M 9224 e / {deviceName}/thing/event/property/post 属性设置:/sys/gqe6BM9224e/ deviceName/thing/event/property/post属性设置:/sys/gqe6BM9224e/{deviceName}/thing/service/property/set
//根据自己的设备名,填入属性信息即可
属性上报:/sys/gqe6BM9224e/TESTDEVICE01/thing/event/property/post
属性设置:/sys/gqe6BM9224e/TESTDEVICE01/thing/service/property/set
根据自己的信息来。
点击上报: /sys/gqe6BM9224e/${deviceName}/thing/event/property/post
上报信息:
{
“method”:“thing_service.property.set”,
“id”:“gqe6BM9224e.TESTDEVICE01|securemode=2,signmethod=hmacsha256,timestamp=2524608000000|”,
“params”: {
“CurrentTemprature”:20.0,
“CurrentHumidity”:60.0,
“switch_led_r”:1,
“switch_led_g”:1,
“switch_led_b”:0
},
“version”:“1.0.0”
}
填入上报信息:
{
“method”:“thing_service.property.set”,
“id”:“00001”, //可变的id
“params”: {
“CurrentTemprature”:20.0,
“CurrentHumidity”:60.0,
“switch_led_r”:1,
“switch_led_g”:1,
“switch_led_b”:0
},
“version”:“1.0.0”
}