由于物联网设备上报数据时需要一个设备 ID 来唯一标识自己,所以需要一套 ID 下发方案。
量产需求
- 控制屏获取设备 ID (即腾讯云 MQTT 用到的设备名),写入本地,并缓存
- 屏上要能线上这个 ID,方便现场人员查看。用于设备维护,生产测试
- 小程序通过蓝牙获取控制屏的设备 id,用于拉取设备传感器历史数据
TODO
- [x] TCP 获取新设备 ID 的接口
- [x] 更新协议文档
- [x] 生成随机 Id,并写入数据库
- [ ] MQTT 客户端订阅主题也需要账号密码?是的 https://cloud.tencent.com/document/product/634/32546
- [ ] 腾讯云新建设备 API
方案一
控制屏上开机时判断是否有设备 ID,没有的话,调用服务器接口,拉取一个设备 ID,本地保存。
前置条件:
- 需要设备插入 4G 卡
方案二
上位机从服务端拉取一个设备 ID,写入设备。
前置条件:
- 一台能联网的上位机
- 上位机软件
方案三
小程序蓝牙连接设备,判断是否已经有设备 ID,如果没有,由小程序从服务端拉取一个设备 ID,通过蓝牙写入设备。
前置条件:
- 一台能使用小程序的手机,且可以联网
设备 ID (设备名)
uint32 0 to 4,294,967,295,但是不能为 0.
MQTT 客户端订阅主题也需要账号密码
https://cloud.tencent.com/document/product/634/32546
如果用的是密钥认证,其中的 username 的最后一部分是个时间戳,虽然腾讯云后台添加设备会自动生成这个,但是是有时效性的,需要设备端能自己按照算法生成。如果设备端不支持,也只能服务端生成,再下发给客户端了。
微信关注我哦 👍
我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式