规则引擎问题

最近更新时间:2020-06-18 15:25:54

什么是规则引擎,它的作用是什么?

规则引擎是处理设备上报消息并转发腾讯云其他组件的后台模块。它能够基于 Topic,消息内容对消息进行过滤,并提取出指定的字段组装成新的消息转发给腾讯云组件。由腾讯云组件提供消息的存储,计算等任务。

转发的消息格式要求有哪些?

目前使用规则引擎转发的消息格式支持 JSON 与二进制,JSON 格式的数据支持筛选过滤,二进制格式只能透传转发。

控制台上规则引擎转发至其它云产品后的消息格式是怎样的?

使用规则引擎转发至其它云产品的消息,是由控制台对设备端上报的 Payload 消息进行的 JSON 封装,封装后的 Payload 字段的含义为设备端上报的 Payload 消息,控制台会按照转发场景的不同对其有不同的处理:

  • 转发到 CMQ/Ckafka 时,此时会对封装后的 Payload 字段进行 Base64 编码,提取正确的数据时需对这部分内容进行 Base64 解码。
  • 转发到第三方服务(http forwad)时,此时会对设备原始上报的 Payload 消息进行判断。若为 JSON 格式则会进行透传,若为二进制格式则会对内容进行 Base64 编码。

控制台上配置了规则引擎转发其它云产品,但是转发没有生效怎么办?

可以通过物联网通信控制台的云日志,查看消息转发的日志,确认消息的转发情况。
消息转发失败的常见原因一般有以下几种:

  • 消息体格式与创建产品定义的数据格式不匹配。
  • 消息的 Topic 书写有误,与规则中配置的 Topic 不一致。
  • 规则中填写的转发信息有误,导致规则引擎转发失败。