您可以使用规则引擎,将物联网平台数据转发到消息队列(RocketMQ)中存储,以实现消息从设备、物联网平台、RocketMQ到应用服务器之间的全链路高可靠传输能力。本文以物模型数据上报Topic为例,介绍流转消息数据的完整流程。
前提条件
- 已确认当前物联网平台实例及所在地域支持将数据转发到消息队列RocketMQ。
支持的实例 支持的地域 企业版实例:基础型(MQTT)、标准型和尊享型 - 华东2(上海)
- 华北2(北京)
- 华南1(深圳)
- 新加坡
- 日本(东京)
公共实例 - 华东2(上海)
- 新加坡
- 日本(东京)
- 德国(法兰克福)
- 美国(硅谷、弗吉尼亚)
- 已创建数据源DataSource,并添加物模型数据上报Topic。具体步骤,请参见添加待流转的数据源。
- 已创建消息队列(RocketMQ)实例和用于接收数据的Topic。RocketMQ使用方法,请参见RocketMQ快速入门。
重要
- 目前,RocketMQ实例所在地域必须与当前物联网平台实例所在地域保持一致。存量的跨地域实例下数据流转配置不受影响,仍可继续正常流转数据。
- 仅支持将数据流转到RocketMQ 4.x版本实例的Topic中。
使用说明
目前,新版和旧版云产品流转功能均支持将数据流转到消息队列RocketMQ。旧版云产品流转使用示例,请参见数据转发到消息队列RocketM(旧版)。
创建数据目的
- 登录物联网平台控制台。
- 在实例概览页面,选择目标环境,找到对应的实例,单击实例ID或备注名称。
重要 目前仅华东2(上海)、 华北2(北京)、华南1(深圳)、新加坡、 日本(东京)地域开通了实例服务。其他地域,请跳过此步骤。
- 在左侧导航栏,选择 。
- 可选:在云产品流转页面,单击右上角体验新版,进入新版功能页面。
说明 如果您已执行过此操作,再次进入 云产品流转页面,会直接进入新版功能页面。
- 单击数据目的页签,然后单击创建数据目的。
- 在创建数据目的对话框,输入数据目的名称,例如DataPurpose,按照以下参数说明,完成配置,然后单击确定。
配置并启动解析器
- 创建解析器,例如DataParser。具体操作,请参见创建解析器。
- 在解析器详情页面,关联数据源。
- 在配置向导的数据源下,单击关联数据源。
- 在弹出的对话框中,单击数据源下拉列表,选择已创建的数据源DataSource,单击确定。
- 在解析器详情页面,关联数据目的。
- 在解析器详情页面,单击解析器。
- 在脚本输入框,输入解析脚本。脚本编辑方法,请参见脚本示例。
函数参数说明,请参见函数列表。
//通过payload函数,获取设备上报的消息内容,并按照JSON格式转换。 var data = payload("json"); //直接流转物模型上报数据。 writeMq(1000, data, "调试");
- 单击调试,根据页面提示,选择产品和设备,输入Topic和Payload数据,验证脚本可执行。
参数示例如下:
运行结果如下,表示脚本执行成功。
- 单击发布。
- 回到云产品流转页面的解析器页签,单击解析器DataParser对应的启动按钮,启动解析器。
- 在RocketMQ控制台,查看是否成功接收到消息。