第 3-2 课:功能设计

本文介绍了IotHub的指令下发系统设计,包括业务系统通过API向设备发送指令,设置指令过期时间,离线指令处理及设备回复功能。在DeviceSDK端,讨论了主题规划、消息去重和指令回复的实现细节,而在IotHub Server端,阐述了API接口设计和指令回复通知业务系统的方式。
摘要由CSDN通过智能技术生成

这一节我们来设计 IotHub 的下行数据处理功能。

功能设计

Maque IotHub 的指令下发系统有以下一些功能。

  1. 业务系统可以通过 IotHub Server API 提供的接口向指定的设备发送指令,指令可以包含任意格式的数据,比如字符串和二进制数据。
  2. 指令可设置过期时间,过期的指令将不会被执行。
  3. 业务系统可在设备离线时下发指令,设备在上线以后可以接收到离线时由业务系统下发的指令。
  4. 设备可以向业务系统回复指令的执行结果,IotHub 会把设备的回复通知到业务系统,通知包括:哪个设备回复了哪条指令,回复的内容是什么。

DeviceSDK 端实现

主题规划

和上行数据处理一样, IotHub 会把指令的元数据放在主题名中,为了接收下发的指令,设备将订阅以下的主题:

cmd/:ProductName/:DeviceName/:CommandName/:Encoding/:RequestID/:ExpiresAt

这个主题的第一层级代表的是指令的类别,目前固定为 cmd,代表普通的下行指令,后面我们还会看到其他类型的指令。后面的各个层级代表一种指令的元数据,下面把这些元数据的意义都解释下:

  • Pr
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sufish

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值