设备端资源包文件 (人脸库,音频库,图片资源等) 更新方案——实践类
设备端资源包文件更新方案
1.背景
当物联网设备分布在全球各地运行时,常常有更新设备上的资源包的需求,比如刷脸设备上的人脸库资源,算法模型,语音播报设备上的语音模板资源。而我们派一位工作人员出差去设备现场更新,成本往往很高。此时借助 IoT 技术的力量,在云端动动手指,轻松实现设备资源包更新是最理想的方案。
2.架构方案
云端更新设备端资源文件的完整交互过程:
1.后台业务服务器发布资源到 OSS 存储
2.后台业务服务器生成带有 STS.Token 的资源访问 url
3.业务服务器下行资源包文件更新指令到设备端
Topic 为 xxx/xxx/user/resource/update
Payload 包含文件 id,md5 值,访问 uri
4.设备订阅了资源更新 topic,接收到更新指令
5.设备从 OSS 获取到新资源包,应用到本地程序中
6.设备上报资源更新结果
Topic 为 xxx/xxx/user/resource/update/response
Payload 包含文件 id,resultCode
7.业务服务器从规则引擎获取设备更新结果
8.业务服务器对失败设备做重试推送
3.开发实践
为了实现上述理想,我们需要前期投入在服务端和设备端的研发工作。
3.1 服务端
在服务端生成访问 OSS 的临时 STS Token 的业务逻辑
编写下行指令的 Pub 逻辑
配置规则引擎,接收设备响应结果的业务逻辑
上传资源文件到 OSS 的业务逻辑
3.2 设备端
设备访问 OSS 资源文件的能力
订阅资源更新指令的 Topic
上报资源更新执行结果的逻辑
4.总结
至此,我们可以悠闲的坐在办公室,享受咖啡和空调了。
物联网平台产品介绍详情:https://www.aliyun.com/product/iot/iot_instc_public_cn
阿里云物联网平台客户交流群
评论