检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
设备连接成功后,在物联网平台可以看到设备处于在线状态。 图6 设备模拟器连接成功 图7 设备在线 光照强度数据上报 使用MQTT.fx工具向物联网平台上报光照强度数据。
连接成功后,打印“connect success”,同时在控制台可看到设备已在线。 图7 设备列表-设备在线 属性上报 属性上报是指设备主动向平台上报自己的属性(该示例代码已实现自动定时上报功能,可参考下一节在iot平台查看设备上报的数据内容),更多信息请参考设备属性上报。
前提条件 设备使用的是linux操作系统; 设备上已安装SSH Server 应用; 设备已集成物联网平台官方SDK(IoT Device SDK C v1.1.1及以后版本),请参考(IoT Device SDK(C)使用指南); 设备已在线。
例如:某子设备通过网关接入到物联网平台,子设备状态为在线状态,如果此时网关与物联网平台断开连接,则网关不能上报子设备的状态到物联网平台,该子设备的状态会一直显示在线。 6.网关调用批量属性上报接口上报子设备的数据,接口里的参数填写网关和子设备的相关设备信息。
图1 设备列表-设备离线 启动程序后,按F12进入调试界面console栏中日志显示如下: 图2 日志显示连接成功 平台上显示设备状态变为在线 图3 设备列表-设备在线 如果连接失败,需要在重连回调函数中实现退避重连,代码样例如下: function reConnect() {
使用mqtt.fx工具模拟设备真实建链,在控制台查看设备处于在线状态,Broker Address填平台接入地址,选择“总览 > 接入信息”,端口使用8883端口。 图4 设备建链 图5 设备列表-设备在线 父主题: MQTT(S)协议-自定义模板鉴权
未开通则访问设备接入服务,单击“免费试用”或单击“价格计算器”购买并开通该服务。 已开通Kafka服务。未开通则访问Kafka服务,单击“立即购买”后开通该服务。 已开通数据湖探索服务。未开通则访问数据湖探索服务,单击“立即购买”后开通该服务。
IOTDA.014016表示设备不在线;IOTDA.014112表示设备没有订阅topic。 error_msg 否 String 参数说明:异常信息说明,包含设备不在线和设备没有订阅topic说明。
在软/固件升级时,可以在“执行详情”的任务列表中查看错误描述,常见错误描述如下: 表1 软固件升级错误描述 失败原因 原因解释 处理建议 Device Abnormal is not online 设备未在线 请检查设备侧是否在线。
图2 设备列表-设备在线 上报设备消息,参考样例代码,在建立连接后,指定Topic上报消息。
立即下发:不管设备是否在线,平台收到命令后立即下发给设备。如果设备不在线或者设备没收到指令则下发失败。 缓存下发:物联网平台在收到命令后先缓存,等设备上线或者设备上报属性时再下发给设备,如果单个设备存在多条缓存命令,则进行排队串行下发。
各命令状态之间的转换如下图所示: 图6 命令状态转换图 MQTT设备下发消息状态 等待:MQTT设备不在线,物联网平台会将消息进行缓存,此时任务状态为“等待”状态。
选择触发设备状态: 上线:设备由离线状态转变为在线状态。 下线:设备由在线状态转变为离线状态。 上下线:设备状态发生变更。 状态持续时长:设备状态发生变更后,新状态的持续时长,单位:分钟,可选0-60分钟。 执行动作 单击“添加动作”,设置在规则触发后,需要执行的动作。
数据解析转换 在线开发编解码插件,对设备数据进行数据解析和格式转换。 命令下发 支持以同步方式向在线设备下发命令,NB场景支持异步方式下发命令,详细请参见命令下发。
链接 其他 科技汽车在线平台协议 用于汽车在线平台24小时实时定位。在使用汽车在线定位平台查看车辆的时候,平台上显示是实时定位信息,可用于个人及单位查找车辆。
图4 向导式极速体验-选择设备演示包 根据界面提示,单击“下载设备演示包”并解压,执行huaweicloud-iot-device-quickstart.exe,您会发现设备状态从“未激活”变为“在线”,并且temperature等属性已有上报值,说明设备已成功接入平台。
您也可以使用模拟器模拟设备上报数据,操作方法请参考在线开发MQTT协议的智慧路灯。 登录OBS管理控制台,单击桶名称进入桶管理页面后,在“对象”页面可以查看到设备上报的数据。 图5 OBS服务查询上报数据 您也可以使用OBS的API(获取对象内容)进行文件读取。
以下是一些适用于包年/包月计费模式的业务场景: 稳定业务需求:对于长期运行且资源需求相对稳定的业务,如企业官网、在线商城、博客等,包年/包月计费模式能提供较高的成本效益。
单击“Connect”,设备鉴权成功后,在物联网平台“所有设备”界面可以看到设备处于在线状态。 图3 设备列表-设备在线 上报数据 参考设备属性上报接口文档,使用MQTT.fx工具向物联网平台上报数据。
您也可以使用模拟器模拟设备上报“batteryLevel”小于20的数据,操作方法请参考在线开发MQTT协议的模拟智慧路灯。 您还可以使用虚拟设备进行在线调试,上报“batteryLevel”小于20的数据。