检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
withCredential(auth) // 标准版/企业版:需自行创建Region对象,基础版:请使用IoTDARegion的region对象,如"withRegion(IoTDARegion.CN_NORTH_4)"
该场景主要描述的是设备可以通过MQTT协议与物联网平台进行交互,用户可以在控制台产品详情中自定义Topic,通过应用侧接口或控制台创建数据转发规则,把设备上报的消息转发给其他华为云服务,供应用侧用户主动去消费。 核心知识点:产品模型、消息上报、消息下发、MQTT协议、数据转发规则、自定义Topic。 最佳实践参考:使用自定义Topic管理室内空调
参数说明:转发DIS服务消息内容。当channel为DIS_FORWARDING时,必填。 obs_forwarding 否 ObsForwarding object 参数说明:转发OBS服务消息内容。当channel为OBS_FORWARDING时,必填。 amqp_forwarding 否 AmqpForwarding
fx(默认是64位操作系统,如果是32位操作系统,单击此处下载 MQTT.fx ),安装MQTT.fx工具。 打开 MQTT.fx 客户端程序,单击“设置”。 填写 Connection Profile 相关信息和 General 信息。其中General 信息可以用工具默认的参数配置。 填写
设备影子-查看alarm属性 我们把alarm属性修改为0: 图7 设备影子-属性配置alarm 查看设备侧日志,看到设备收到属性设置,alarm被修改为0: 命令下发 设置命令监听器用来接收平台下发的命令,在回调接口里,需要对命令进行处理,并上报响应。 在CommandSample例子中实
图3 数据转发-M2M_SQL语句示例 关于SQL的设置,详情可见:SQL语句。 设置转发目标。单击“添加”,设置转发目标为“设备”,Topic为:“$topic()”(转发后Topic不变),ttl设置为5分钟(数据缓存5分钟)。设置完成后单击“确定”。 图4 新建转发目标-转发至设备
发。 在创建数据转发规则的第二步,可以添加转发到的目标,包括设置转发后的Topic、缓存时间等。若使用M2M,请将转发目标设置为“设备”,按照业务具体填写参数后单击“确定”。 图4 新建转发目标-转发至设备 表2 设置转发目标-参数说明 参数说明 转发目标 下拉选择转发目标,在设备间消息通信中,请选择为“设备”。
直接进行下发,下发成功后接口返回DELIVERED,失败返回FAILED;如果消息在平台默认时间内(1天)还没有下发给设备,则平台会将消息设置为超时,状态为TIMEOUT。另外应用可以订阅消息的执行结果,平台会将消息结果推送给订阅的应用。 created_time String
me,clientId,password,以及证书信息,函数urn)不变时,当缓存结果存在时,将直接使用缓存结果,建议在调试时设置为false,生产时设置为true,避免频繁调用函数。 响应参数 状态码: 201 表4 响应Body参数 参数 参数类型 描述 authorizer_id
选择“软件升级”页签,单击“新建任务”按钮,进入新建软件升级任务页面。 图1 软固件升级-新建软件升级任务 设置“任务信息”,填写任务名称、执行时间、启用重试。 启用重试后,可以设置重启次数和重启间隔。重启次数建议设置为2次,重启间隔设置为5分钟,即设备升级失败后,隔5分钟后会进行升级重试。 图2 新建软件升级任务-基本信息
规则详情-数据转发规则 单击"详情"(如果没有规则请先创建规则)进入规则详情页面后切换到"设置转发目标"页签。 图3 转发目标-进入设置转发目标 单击"添加"进入"添加转发目标"页面,设置转发目标为"MQTT推送消息队列",单击“预置服务接入凭证”预置接入凭证密钥(access_
自己的AT通道,实现稍有不同,可以参考模组厂家的特殊说明。 AT指令 说明 AT+HMVER 获取华为SDK的版本信息 AT+HMCON 设置MQTT协议连接参数 AT+HMDIS 关闭和华为IoT平台连接 AT+HMPUB 发送MQTT数据到指定TOPIC +HMREC 模组接收到的数据通过该方式传递给外部MCU
fx(默认是64位操作系统,如果是32位操作系统,单击此处下载 MQTT.fx ),安装MQTT.fx工具。 打开 MQTT.fx 客户端程序,单击“设置”。 填写 Connection Profile 相关信息和 General 信息。其中General 信息可以用工具默认的参数配置。 填写
设备影子-查看alarm属性 我们把alarm属性修改为0: 图7 设备影子-属性配置alarm 查看设备侧日志,看到设备收到属性设置,alarm被修改为0: 命令下发 设置命令监听器用来接收平台下发的命令,在回调接口里,需要对命令进行处理,并上报响应。 在CommandSample例子中实
如果您开通了多个到期日不同的设备接入实例,可以将到期日统一设置到一个日期,便于日常管理和续费。 图6展示了用户将两个不同时间到期的资源,同时续费一个月,并设置“统一到期日”后的效果对比。 图6 统一到期日 更多关于统一到期日的规则请参见如何设置统一到期日。 父主题: 续费
me,clientId,password,以及证书信息,函数urn)不变时,当缓存结果存在时,将直接使用缓存结果,建议在调试时设置为false,生产时设置为true,避免频繁调用函数。 create_time String 在物联网平台查询自定义鉴权的时间。格式:yyyyMMdd
M2M/”开头的数据。 设置转发到的目标。请将转发目标设置为“设备”,Topic填写“$topic()”(表示转发的Topic不变,按原本Topic下发),单击“确定”。 图10 新建转发目标-转发至设备 启动规则。单击页面中央的“启动规则”,完成规则设置。 图11 启动规则-转发至设备
远程配置-远程配置页面 在远程配置任务界面,输入任务名称,选择执行时间,配置超时时间和重试策略。 启用重试后,可以设置重启次数和重启间隔。重启次数建议设置为2次,重启间隔设置为5分钟(最大重启次数为5次,最大重启间隔为1440分钟),即设备远程配置失败后,隔5分钟后会进行远程配置重试。
如果插件下载失败,则部署失败的原因如下: 同类消息的(例如:两种数据上报的消息)messageId的值设置重复或在消息中的位置不一致。 messageId的数据类型设置为非int型。 存在字段的默认值设置为非16进制数。 存在字段名字设置为java关键字,比如type、int等 解决方法 插件如果可以成功下载
删除、设备更新设置为数据来源。当数据来源选择“设备”时,不支持快速配置。 设备属性:将归属在某个资源空间下的设备上报给平台的属性值设置为数据来源。单击右侧的“快速配置”勾选需要转发的产品、属性、服务等数据。 设备消息:将归属在某个资源空间下的设备上报给平台的消息设置为转发目标。单