我是靠谱客的博主 淡定枫叶,最近开发中收集的这篇文章主要介绍第 4-13 课:设备影子——服务端实现,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

这一节我们来设计和实现 IotHub 设备影子服务端的功能

服务端需要对设备影子进行存储,在业务系统修改设备影子时,需要将设备影子同步到设备端,同时还需要处理来自于设备的设备影子同步消息来将设备端的数据同步到数据库中。

最后服务端还要提供接口供业务系统查询和修改设备影子。

存储设备影子

我们在 Device 模型里新增一个字段shadow来保存设备的影子,一个空的设备影子应该是:

{
    "state":{},
    "metadata":{},
    "version":0
}

我们按照这个来设置这个字段的默认值:

//IotHub_Server/models/device.js
const deviceSchema = new Schema({
    ...
    shadow:{
        type: String,
        default: JSON.stringify({
            "state":{},
            "metadata":{},
            "version":0
        })
    }
})

下发设备影子相关的指令

IotHub 需要向设备发送两种设备影子相关的指令,一个是更新影子,这里使用指令名$update_shadow,另外一个是成功更新设备影子后,对设备的回复信息,这里使用指令名$shadow_reply。发送这两条指令使用 IotHub 指令下发的通道就可以了。

设备端发送影子相

最后

以上就是淡定枫叶为你收集整理的第 4-13 课:设备影子——服务端实现的全部内容,希望文章能够帮你解决第 4-13 课:设备影子——服务端实现所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(79)

评论列表共有 0 条评论

立即
投稿
返回
顶部