目录
准备工作
1、启动iotkit-parent后台项目
2、启动iot-console-web前端项目
第一步:创建产品
先确定待接入的设备是属于哪个产品:
如果没有需要的产品就新建,这里以插座为例。
为插座这个产品定义功能,比如信号强度、开关:
第二步:启动MQTT组件
查看MQTT端口:
第三步:准备MQTT连接参数
参考《输入密码 · 奇特物联》的”网关连接和注册“节,准备好连接参数:
MQTT地址:后台程序运行的IP,比如程序和设备都跑在本机就可以用 127.0.0.1
MQTT端口:”MQTT标准协议组件“中配置的端口号,如:1883
MQTT clientId:
格式:productKey_deviceName_model
其中productKey来自”第一步“中的productKey字段:cGCrkK7Ex4FESAwe
deviceName为设备唯一标识符,需要确保在同一个产品保持唯一,可以用设备的SN号、IMEI、MAC、或手动指定(如:TEST01)
model为设备的型号,没要求直接指定(如:m1)
组成的clientId:cGCrkK7Ex4FESAwe_TEST01_m1
MQTT userName:使用上面的deviceName,即:TEST01
MQTT password:使用”产品密钥“和clientId组合后的md5值,产品密钥固定为:xdkKUymrEGSCYWswqCvSPyRSFvH5j7CU
md5生成工具:http://www.jsons.cn/md5/s/
生成的password为: 9ce07cf69b2a7b05504c25d8d435e767
第四步:使用mqtt客户端模拟设备
新建连接:
连接:
刷新设备列表:
可以看到自动创建了一个叫"TEST01"的设备
订阅主题:
订阅topic:/sys/cGCrkK7Ex4FESAwe/TEST01/c/#
topic组成格式:/sys/productKey/deviceName/c/#
刷新设备列表:
设备变成在线
第五步:设备数据上报
属性上报:
按《MQTT协议》填写topic和payload:
现在用”第一步“产品中的信号强度和开关上报
填写并发送:
payload可以填一个属性也可以同时填多个属性
topic: /sys/cGCrkK7Ex4FESAwe/TEST01/s/event/property/post payload: { "id":"1", "method":"thing.event.property.post", "params":{ "rssi":20, "powerstate":0 } }
打开设备详细->日志
可以看到上报的记录
多上报到几次数据查看历史数据:
除了属性上报,类似还可以做事件上报等,具体参考物模型和协议文档。
第六步:指令下发到设备
在可写属性上点击”可写“
设置需要下发的属性值:
mqtt客户端收到设置的值:
除了属性设置,类似还可以做服务调用、配置下发、属性获取等,具体参考物模型和协议文档。
第七步:使用真实设备接入
第一次接入需要严格按照上述步骤完成模拟接入验证,再使用真实设备进行开发。
若出现问题时可以用模拟设备作为参考进行排查。