物接入(IoT Hub)是面向物联网领域开发者的全托管云服务,通过主流的物联网协议(如MQTT)通讯,可以在智能设备与云端之间建立安全的双向连接,快速实现物联网项目。物接入分为设备型(原物管理)和数据型两种项目类型。设备型适用于基于设备的物联网场景;数据型适用于基于数据流的物联网场景。
设备型项目
适用场景
适用基于设备的物联网场景,以物影子作为设备在云端的映像,帮助开发者聚焦业务。
特性概述
- 提供设备模型构建工具,快速建立以设备为核心的物联网应用
- 无需关心协议细节,无缝对接时序数据库TSDB、物可视等产品
- 支持设备在线状态、权限、反控及OTA远程升级等丰富特性
数据型项目
适用场景
无设备概念或深度依赖数据流的场景,需使用者有较强的软硬件开发能力
特性描述
- 支持自定义 Topic,需对协议有较好了解
- 需开发者搭配规则引擎或自行处理数据流转及存储
物接入IoT Hub的项目,每一个项目代表一个完整的物接入 endpoint。项目有设备型和数据型两种类型。
物影子
物影子反映物理世界中的一个物(设备),是物在云端的『影子』或『数字双胞胎』。运行时,物将监控值上报给物影子,物影子会用一个 json 文档存储设备的最后一次上报的状态,您可以直接通过MQTT或HTTP访问。同时,物影子也提供反控功能。
物模型
物模型由一个或多个属性构成,您可以用他来表示一类(或同一型号的一批)设备。基于物模型可以创建物影子。
MQTT
MQTT(Message Queuing Telemetry Transport)是一个基于二进制消息的客户端服务端架构的发布/订阅(Publish/Subscribe)模式的消息传输协议,最早由IBM提出的,如今已经业界通行规范,更符合机器与机器的通信(M2M)以及物联网环境(IoT)。
用户(thing)
表示物接入IoT Hub 的用户,用户可以在每个endpoint项目中创建一个或多个用户thing。
身份(principal)
principal即身份,是一个抽象概念,表示连接用户(thing)的身份,基于身份可以对用户进行权限管理。每个用户thing可以绑定一个身份principal,每个身份principal拥有一个策略policy。
策略(policy)
策略,表示每个身份对于对应用户所具备的权限,可以为身份principal设置对应的策略policy,一个principal对应一个policy。
权限(permission)
权限,表示对策略policy、主题topic所拥有的能力。为每一个policy设置一组权限permission,其中包括主题topic,和对该主题的操作权限operation。
主题(topic)
每一个策略policy都需要指定一个主题topic,在进行使用物接入服务之前,需要先为我们即将开展的订阅发布信息创建一个主题名称,该主题应用于MQTT客户端。topic规则允许字符串可以带一个通配符”#”,例如“temperature/#”就是匹配前缀是temperature的所有topic;单独的“#”表示匹配所有topic。
操作权限(operation)
对topic的操作权限。目前基于MQTT协议,IoT Hub 支持创建发布 Publish 和订阅 Subscribe 两种权限。
设备端可以通过集成 Edge-SDK或开源的 MQTT client ,与其对应物影子连接,进行消息收发来实现设备数据上报及反控。
同时,可与其他产品协作,完成历史数据存储化展示等需求。