Thingsboard-在规则链中拆分消息

问题描述

我需要规则链中有一个“脚本节点”才能返回多个消息。 我正在研究两个不同的项目,在两个项目中我都需要此功能。 例如,因为我需要调用动态数量的API请求。 使用node-red,我可以通过使用“ split”节点来获得这种效果,但是Thingsboard没有类似的节点。

我找到了一种以这种方式工作的“技巧解决方案”:

  1. 我创建一个消息数组作为“脚本节点”的输出
  2. 输出将传播到N个相似节点的集合,并且每个节点将仅处理数组的第i条消息

对于生产环境来说,这显然不是一个好的解决方案,因为它会生成大量无用的消息,并且由于存在可以同时处理的预定义最大消息数(= N)

我正在使用Thingsboard Community Edition

任何建议将不胜感激:)

解决方法

Thingsboard(v3.2.1) 的新版本已经发布,包括对

的支持

添加了在转换脚本节点中返回数组的功能

https://thingsboard.io/docs/reference/releases/#v321-january-26-2021

就我而言,我已经聚合了遥测数据,我需要将其拆分并创建多个具有不同时间戳的条目。效果很好。你只需要从转换脚本节点返回数组。

注意:在用于测试脚本的“测试转换器功能”屏幕中,我无法正确测试并且仍然收到错误 wrong result type: ARRAY 或类似错误。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...