检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
SDK使用指南(C) IoT Device SDK(C)提供设备接入华为云IoT物联网平台的C版本的SDK,提供设备和平台之间通讯能力,以及设备服务、网关服务、OTA等高级服务,并且针对各种场景提供了丰富的demo代码。相关集成指导请参考IoT Device SDK(C)使用指南。 使用说明
查询设备属性 功能介绍 设备的产品模型中定义了物联网平台可向设备下发的属性,应用服务器可调用此接口向设备发送指令用以查询设备的实时属性, 并由设备将属性查询的结果同步返回给应用服务器。 注意:此接口适用于MQTT设备,暂不支持NB-IoT设备。 调用方法 请参见如何调用API。 URI
指导请参见端云互通组件开发指南。 IoT Device SDK Tiny可以运行于无linux操作系统的设备,也可以被模组集成,但是不提供网关服务。 使用说明 适配了LiteOS/LINUX/MACOS/freertos,可以通过修改SDK来适配其他环境。 若是要在不同模组的情况下,可见SDK开发板移植清单。
(FQDN)。使用自定义域名,用户可以管理自己的服务器证书,例如用于签署证书的根证书颁发机构 (CA)、签名算法、以及证书的生命周期。 使用场景 自己管理服务器证书的根证书颁发机构 (CA)、签名算法、以及证书的生命周期等。 出于品牌推广目的向客户公开公司自己的域名。 迁移场景继承自己原有的域名和服务器证书。 使用限制
用于设备按产品模型中定义的格式将属性数据上报给平台。 设备消息上报 用于设备将自定义数据上报给平台,平台将设备上报的消息转发给应用服务器或华为云其他云服务上进行存储和处理。 网关批量属性上报 用于网关设备将多个子设备的属性数据一次性上报给平台。 业务流程 设备接入前,需创建产品(可通过控制台创建或者使用应用侧API创建产品)。
查询产品 功能介绍 应用服务器可调用此接口查询已在物联网平台的创建的指定产品模型详细信息,包括产品模型的服务、属性、命令等。 调用方法 请参见如何调用API。 URI GET /v5/iot/{project_id}/products/{product_id} 表1 路径参数 参数
Object 设备扩展信息。用户可以自定义任何想要的扩展信息,如果在创建设备时为子设备指定该字段,将会通过MQTT接口“平台通知网关子设备新增“将该信息通知给网关。 表6 AuthInfoRes 参数 参数类型 描述 auth_type String 参数说明:鉴权类型。注意:不填写a
行业协议接入 支持通过边缘网关接入Modbus、OPCUA,可通过行业协议插件方式支持行业协议接入。 设备接入鉴权 支持一机一密,X.509证书等鉴权方式。 泛协议接入 提供开源SDK和技术框架,需用户自行部署云网关完成TCP协议转换,或部署协议驱动到边缘网关。 设备管理 设备全生命周期管理
参数说明:设备代理名称 proxy_devices Array of strings 参数说明:代理设备组,组内所有设备共享网关权限,即组内任意一个网关下的子设备可以通过组里任意一个网关上线然后进行数据上报。 effective_time_range EffectiveTimeRangeResponseDTO
物联网平台支持批量注册设备吗? 物联网平台支持通过应用服务器调用创建批量任务接口,或者在控制台上批量注册设备。下面介绍如何在控制台上批量注册设备。 访问设备接入服务,单击“立即使用”进入设备接入控制台。 选择并进入您的实例,在左侧导航栏,单击“ 设备 > 所有设备”。 单击“批量
物联网平台支持设备数据上报和设备命令下发,但若要将两者联动起来,一般需要由应用服务器实现对应逻辑。 设备接入服务提供规则引擎功能,平台上简单几步操作即可实现数据上报特定数据时平台自动下发指定命令,减少应用服务器开发工作量。 示例场景 本示例为设备自带的温度传感器上报的温度大于80度时,平台自动下发命令关闭设备。
功能介绍 用户可以通过该接口创建隧道(WebSocket协议),应用服务器和设备可以通过该隧道进行数据传输。 该API接口在基础版不支持。 该API调用后平台会向对应的MQTT/MQTTS设备下发隧道地址及密钥,同时给应用服务器也返回隧道地址及密钥,设备可以通过该地址及密钥创建WebSocket协议连接。
Object 设备扩展信息。用户可以自定义任何想要的扩展信息,如果在创建设备时为子设备指定该字段,将会通过MQTT接口“平台通知网关子设备新增“将该信息通知给网关。 表4 AuthInfoRes 参数 参数类型 描述 auth_type String 参数说明:鉴权类型。注意:不填写a
数据转发至Kafka存储 场景说明 对于设备上报的数据,可以选择让平台将设备上报数据推送给应用服务器,由应用服务器进行保存;还可以选择让平台将设备上报数据转发给分布式消息服务(Kafka),由Kafka进行存储。 本示例为将所有设备上报的数据转发至Kafka存储。 购买Kafka实例
task_mode 否 String 参数说明:批量任务的模式,当前只支持网关模式,当task_type为firmwareUpgrade,softwareUpgrade支持该参数。软固件升级的场景下,若升级的设备为某个网关的子设备,则平台下发获取版本信息通知和平台下发升级通知将携带tas
数据转发至OBS长期存储 场景说明 对于设备上报的数据,可以选择让平台将设备上报数据推送给应用服务器,由应用服务器进行保存;还可以选择让平台将设备上报数据转发给对象存储服务(OBS),由OBS进行存储。 本示例为将所有设备上报的数据转发至OBS存储。 创建OBS桶 登录华为云官方网站,访问对象存储服务。
将设备上报的二进制码流解码成JSON格式的数据,发送给应用服务器。 将应用服务器响应的JSON格式数据编码成二进制码流,下发给设备。 命令下发流程 图2 命令下发编解码插件流程 在命令下发流程中,有两处需要用到编解码插件: 将应用服务器下发的JSON格式数据编码成二进制码流,下发给设备。
物联网平台向设备侧下发配置通知。物联网平台为用户提供远程配置功能,用户可以在不中断设备运行的情况下,远程更新设备的系统参数、运行参数等配置信息。例如:Windows的收银台机器,需要通过远程配置修改一些系统参数;车联网中的T-BOX,需要通过远程配置修改设备侧的一些数据上报频率等。 Topic 下行:
设备消息上报 接口说明 用于设备将自定义数据上报给平台,平台将设备上报的消息转发给应用服务器或华为云其他云服务上进行存储和处理。 URI 请求方法 POST URI /v5/devices/{device_id}/sys/messages/up 传输协议 HTTPS 请求参数 名称
task_mode String 参数说明:批量任务的模式,当前只支持网关模式,当task_type为firmwareUpgrade,softwareUpgrade支持该参数。软固件升级的场景下,若升级的设备为某个网关的子设备,则平台下发获取版本信息通知和平台下发升级通知将携带tas