小白 解析thingsboard 规则链节点

目录

1、filter(筛选器)节点内容

1. Alarm Status Filter(报警状态过滤器)

2. Check Fields Presence(检查字段存在性过滤器)

3. Check Relation Presence(检查关系存在性过滤器)

4. Entity Type Filter(实体类型过滤器)

5. Message Type Filter(消息类型过滤器)

6. Originator Type Filter(发起者类型过滤器)

7. Script Filter(脚本过滤器)

8. GPS Geofencing Filter(GPS 地理围栏过滤器)

9. Compare Values Filter(值比较过滤器)

10. Date Filter(日期过滤器)

11. Key - Value Filter(键值过滤器)

12. Regex Filter(正则表达式过滤器)

13. Simple Switch Filter(简单切换过滤器)

2、Attributes(属性集)节点, 用于获取不同实体(如客户、租户、设备等)的属性、数据或执行特定计算

1. calculate delta

2. customer attributes

3. customer details

4. fetch device credentials

5. originator attributes

6. originator fields

7. originator telemetry

8. related device attributes

9. related entity data

10. tenant attributes

11. tenant details

3、Transformation(变换)节点, 用于消息处理、数据转换、逻辑定制等操作

1. change originator(变更消息源)

2. copy key-value pairs(复制键值对)

3. deduplication(去重)

4. delete key-value pairs(删除键值对)

5. json path(JSON 路径解析)

6. rename keys(重命名键)

7. script(脚本处理)

8. split array msg(拆分数组消息)

9. to email(发送邮件)

4、Action(动作)节点, 涵盖实体关联、警报管理、数据处理、存储等多种功能

. assign to customer(分配给客户)

2. calculated fields(计算字段)

3. clear alarm(清除警报)

4. copy to view(复制到视图)

5. create alarm(创建警报)

6. create relation(创建关系)

7. delay (deprecated)(延迟,已弃用)

8. delete attributes(删除属性)

9. delete relation(删除关系)

10. device profile(设备配置文件)

11. device state(设备状态)

12. generator(生成器)

13. gps geofencing events(GPS 地理围栏事件)

14. log(日志)

15. math function(数学函数)

16. message count(消息计数)

17. push to edge(推送到边缘)

18. rest call reply(REST 调用回复)

19. rpc call reply(RPC 调用回复)

20. rpc call request(RPC 调用请求)

21. save attributes(保存属性)

22. save time series(保存时间序列)

23. save to custom table(保存到自定义表)

24. synchronization end(同步结束)

5、External(外部)节点, 用于集成外部服务、消息队列、通信协议及通知功能

一、云服务集成节点

二、消息队列与协议节点

三、通知发送节点

6、Flow (流)控制节点, 具有特定流程控制与功能处理

1. acknowledge(确认)

2. checkpoint(检查点)

3. output(输出)

4. rule chain(规则链)

7、附图

1、filter

2、Attributes

3、Transformation

4、Action

5、External

6、Flow


1、filter(筛选器)节点内容

1. Alarm Status Filter(报警状态过滤器)

  • 用途:根据报警的状态来筛选消息,只允许特定状态的报警消息通过。
  • 配置:在节点配置界面指定允许通过的报警状态,如 “Active(活动)”“Cleared(已清除)”“Acknowledged(已确认)” 等。
  • 应用场景:当你需要对不同状态的报警进行不同处理时,例如只对活动状态的报警发送通知,就可以使用该节点过滤掉非活动状态的报警消息。

2. Check Fields Presence(检查字段存在性过滤器)

  • 用途:检查消息或其元数据中是否存在指定的字段。
  • 配置:可配置要检查的消息字段名称和元数据字段名称,还能选择是否要求所有指定字段都存在。若开启此选项,则所有字段都需存在;若关闭,至少存在一个指定字段即可。
  • 应用场景:当消息处理逻辑依赖于某些特定字段的存在时,可使用该节点筛选出包含这些字段的消息。

3. Check Relation Presence(检查关系存在性过滤器)

  • 用途:检查消息发起者与其他实体之间是否存在特定关系。
  • 配置:配置关系的方向(从发起者或到发起者)以及关系类型。
  • 应用场景:在基于实体间关系进行消息筛选的场景中使用,例如只有与特定资产存在关联的设备消息才能通过。

4. Entity Type Filter(实体类型过滤器)

  • 用途:依据消息中实体的类型(如设备、资产、客户等)来筛选消息。
  • 配置:在节点配置界面选择要过滤的实体类型。
  • 应用场景:当需要对不同类型的实体消息进行不同处理时,比如对设备和资产的消息分别进行不同的处理流程,可使用此节点。

5. Message Type Filter(消息类型过滤器)

  • 用途:根据消息的类型来筛选消息。
  • 配置:在节点配置中定义允许的传入消息类型集合。系统有预定义的消息类型,如 “Post attributes(属性上报)”“Post telemetry(遥测数据上报)”“RPC request(远程过程调用请求)” 等,也支持自定义消息类型。
  • 应用场景:针对不同类型的消息执行不同的操作,例如对属性上报消息和遥测数据上报消息采取不同的处理方式。

6. Originator Type Filter(发起者类型过滤器)

  • 用途:根据消息发起者的实体类型来筛选消息。
  • 配置:在节点配置中定义允许的传入消息的发起者实体类型集合。
  • 应用场景:当需要对不同发起者类型的消息进行不同处理时,例如区分设备发起的消息和资产发起的消息。

7. Script Filter(脚本过滤器)

  • 用途:使用自定义的 JavaScript 脚本对传入消息进行复杂的条件评估。
  • 配置:编写的 JavaScript 函数接收 msg(消息负载)、metadata(消息元数据)和 msgtype(消息类型)三个输入参数,脚本需返回一个布尔值。若返回 true,消息通过 true 链发送;若返回 false,则通过 false 链发送。
  • 应用场景:当需要进行复杂的条件判断,而其他过滤器无法满足需求时,可编写自定义的 JavaScript 脚本实现灵活的消息筛选。

8. GPS Geofencing Filter(GPS 地理围栏过滤器)

  • 用途:根据设备的 GPS 坐标判断其是否位于预设的地理围栏内。
  • 配置:先在 ThingsBoard 界面定义地理围栏区域,包括围栏的名称、类型(圆形、多边形)、中心坐标和半径(或多边形的顶点坐标)等,然后在规则链编辑器中配置节点属性,输入设备 ID、地理围栏 ID 以及触发条件(进入、离开或两者)等参数。
  • 应用场景:在物联网应用中对设备进行地理定位监控,例如当车辆进入或离开特定区域时触发相应操作。

9. Compare Values Filter(值比较过滤器)

  • 用途:比较消息或元数据中的某个值与设定值,根据比较结果筛选消息。
  • 配置:指定要比较的字段、比较操作符(如大于、小于、等于、不等于等)以及比较值。
  • 应用场景:当需要根据消息中的某个数值与特定值的比较结果来决定消息流向时,例如当温度值高于某个阈值时触发后续操作。

10. Date Filter(日期过滤器)

  • 用途:根据消息中的日期字段筛选消息,可筛选出特定日期范围或满足特定日期条件的消息。
  • 配置:指定要检查的日期字段、日期比较条件(如在某个日期之后、在某个日期之前、在某个日期范围内等)以及具体日期。
  • 应用场景:在处理与时间相关的数据时,例如只处理特定时间段内的消息。

11. Key - Value Filter(键值过滤器)

  • 用途:基于消息或元数据中的键值对进行筛选。
  • 配置:指定要检查的键、值以及比较操作符(如等于、包含、不包含等)。
  • 应用场景:当需要根据消息中的特定键值对来筛选消息时,例如只处理包含特定属性和对应值的消息。

12. Regex Filter(正则表达式过滤器)

  • 用途:使用正则表达式对消息或元数据中的文本字段进行匹配筛选。
  • 配置:指定要检查的字段和正则表达式模式。
  • 应用场景:当需要对文本数据进行复杂的模式匹配筛选时,例如筛选出包含特定格式字符串的消息。

13. Simple Switch Filter(简单切换过滤器)

  • 用途:根据消息的某个属性值或条件将消息路由到不同的输出链。
  • 配置:定义不同的条件和对应的输出链。例如,可以设置当某个属性值等于特定值时,消息走一个输出链;当该属性值不等于该特定值时,消息走另一个输出链。
  • 应用场景:当需要根据简单的条件对消息进行分流处理时使用。

2、Attributes(属性集)节点, 用于获取不同实体(如客户、租户、设备等)的属性、数据或执行特定计算

1. calculate delta

  • 内容:计算属性值的变化量(差值)。
  • 用法:通常用于对比同一属性前后值的变化,例如分析设备两次上报数据的差异,辅助判断设备状态变化。

2. customer attributes

  • 内容:获取 客户(Customer)实体 的属性(如客户端属性、共享属性等)。
  • 用法:当规则链需要基于客户相关属性(如客户等级、配置参数)进行处理时,通过此节点提取客户属性。

3. customer details

  • 内容:获取 客户实体的详细信息,如客户名称、描述、关联资产等元数据。
  • 用法:用于需要客户完整信息的场景,例如根据客户类型路由消息或记录客户相关日志。

4. fetch device credentials

  • 内容:获取 设备的凭证信息(如访问令牌、密钥等)。
  • 用法:在设备认证、权限验证场景中,通过此节点获取设备凭证,验证设备身份合法性。

5. originator attributes

  • 内容:获取 消息源实体(Originator,如设备、资产)的属性
  • 用法:若消息由某设备或实体触发,通过此节点提取该实体的属性,用于后续逻辑判断(如根据设备属性决定消息处理流程)。

6. originator fields

  • 内容:获取 消息源实体的字段数据,可能包括实体的基础元数据字段。
  • 用法:提取消息源实体的特定字段(如实体 ID、类型),辅助规则链的路由或数据处理。

7. originator telemetry

  • 内容:获取 消息源实体的遥测数据
  • 用法:用于实时分析消息源实体上报的遥测数据(如设备温度、电量),支撑数据处理、警报触发等逻辑。

8. related device attributes

  • 内容:获取 关联设备的属性
  • 用法:当规则链涉及多个关联设备时,通过此节点提取关联设备的属性,例如协同处理多个设备的联动逻辑。

9. related entity data

  • 内容:获取 关联实体的数据(不限于设备,可能是资产、客户等)。
  • 用法:用于处理多实体关联场景,提取关联实体的属性、遥测等数据,实现复杂业务逻辑(如资产 - 设备联动分析)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/75739.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PgVectore的使用

PgVectore的使用 一、PgVector的安装 参照博客:https://blog.csdn.net/u012953777/article/details/147013691?spm1001.2014.3001.5501 二、PgVector的使用 1、创建表与插入数据​ ​​定义向量字段​​: CREATE TABLE items (id SERIAL PRIMARY …

python爬虫爬取淘宝热销(热门)男装商品信息(课程设计;提供源码、使用说明文档及相关文档;售后可联系博主)

TOC 本文仅为记录学习轨迹,如有侵权,联系删除 一、环境说明 使用前必须检查以下环境 (1)python编译环境 (2)python脚本执行所需要的库,具体看代码(main.py)import导入的部分库 &a…

C++ 排序(1)

以下是一些插入排序的代码 1.插入排序 1.直接插入排序 // 升序 // 最坏&#xff1a;O(N^2) 逆序 // 最好&#xff1a;O(N) 顺序有序 void InsertSort(vector<int>& a, int n) {for (int i 1; i < n; i){int end i - 1;int tmp a[i];// 将tmp插入到[0,en…

计算机视觉图像处理基础系列:滤波、边缘检测与形态学操作

计算机视觉图像处理基础系列&#xff1a;滤波、边缘检测与形态学操作 一、前言二、滤波&#xff1a;图像的精细化处理​2.1 滤波基础概念​2.1.1 滤波的本质​2.1.2 图像噪声来源与类型​ 2.2 线性滤波​2.2.1 均值滤波​2.2.2 高斯滤波​ 2.3 非线性滤波​2.3.1 中值滤波​ 三…

第八课:在SD中安装拓展插件

3种拓展安装方式教学 点击Extensions安装方式 经由内置列表查询安装&#xff0c;打开Available&#xff0c;输入链接&#xff0c;点击Load from:&#xff0c;然后筛选后点击Install通过链接安装&#xff0c;复制代码仓库地址&#xff0c;github/gitee&#xff0c;输入Install …

tomcat的web三大组件Sciidea搭建web/maven的tomcat项目

文章目录 1. web项目的搭建1. 创建web项目2.修改web.xml版本3.添加servlet、jsp依赖4.servlet示例&#xff08;使用注解&#xff09;5.配置tomcat6.添加artifact7.部署8.启动tomcat、访问9.打war包10.部署到tomcat 2.maven的项目搭建1.创建项目图解 2.tomcat启动方式图解idea打…

ZKmall开源商城多云高可用架构方案:AWS/Azure/阿里云全栈实践

随着企业数字化转型的加速&#xff0c;云计算服务已成为IT战略中的核心部分。ZKmall开源商城作为一款高性能的开源商城系统&#xff0c;其在多云环境下的高可用架构方案备受关注。下面将结合AWS、Azure和阿里云三大主流云平台&#xff0c;探讨ZKmall的多云高可用架构全栈实践。…

【代码模板】如何用FILE操作符打开文件?fopen、fclose

#include "stdio.h" #include "unistd.h"int main(int argc, char *argv[]) {FILE *fp fopen("1.log", "wb");if (!fp) {perror("Failed open 1.log");return -1;}fclose(fp); }关于权限部分参考兄弟篇【代码模板】C语言中…

Airflow+Spark/Flink vs. Kettle

在迁移亿级&#xff08;单表超过1.3亿&#xff09;结构化数据&#xff08;达梦→星环&#xff09;的场景下&#xff0c;Airflow&#xff08;结合分布式计算框架&#xff09;的综合效果优于Kettle&#xff0c;以下是详细对比与方案建议&#xff1a; 一、核心对比&#xff1a;Air…

多电机显示并排序

多电机显示并排序 要实现根据后端传递过来的驱动电机数据的数量来显示不同数量的数据列表&#xff0c;我们可以使用 Vue 的 v-for 指令来遍历 driveMotorData 数组&#xff0c;并为每个驱动电机生成一个数据列表。这样&#xff0c;无论后端传来多少个驱动电机的数据&#xff0…

图漾相机——C#语言属性设置

文章目录 前言1.示例程序说明2.SDK API功能介绍2.1 ListDevice 枚举设备2.2 Open 打开相机2.3 OpenDeviceByIP 通过IP打开设备2.4 Close 关闭设备2.5 DeviceStreamEnable 取流使能2.6 DeviceStreamFormatDump 取流分辨率2.7 DeviceStreamFormatConfig 取流分辨率配置2.8 Device…

thinkphp8.0上传图片到阿里云对象存储(oss)

1、开通oss,并获取accessKeyId、accessKeySecret <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><tit…

跳跃连接(Skip Connection)与残差连接(Residual Connection)

1. 跳跃连接&#xff08;Skip Connection&#xff09;的基本概念 跳跃连接是一种在深度神经网络中广泛应用的技术&#xff0c;它允许信息在网络中跨层直接传递。在传统的神经网络里&#xff0c;每一层的输出仅仅是前一层输出经过特定变换后的结果。而在具备跳跃连接的网络中&a…

【硬件视界9】网络硬件入门:从网卡到路由器

🌟引言: 专栏:《硬件视界》 【硬件视界8】电源供应器(PSU):计算机的“心脏“ 在数字化高速发展的今天,网络已成为我们日常生活和工作中不可或缺的基础设施。而支撑这一基础设施的核心要素,便是各种各样的网络硬件设备。从连接计算机到网络的网络适配器,到负责数据转发与…

最小生成树理论

1. 基本定义 生成树&#xff1a;在一个连通无向图中&#xff0c;一个生成树是包含所有顶点且边数为 n−1&#xff08;n为顶点数&#xff09;的无环连通子图。 最小生成树&#xff1a;在所有生成树中&#xff0c;边权和最小的那一棵树。也就是说&#xff0c;若每条边有一个非负…

STM32 HAL库 CANFD配置工具

用法说明&#xff1a; 该工具适用于STM32HAL库&#xff0c;可一键生成CANFD的HAL库配置代码。计算依据为HAL库&#xff0c;并参考ZLG标准。 软件界面&#xff1a; 仓库地址&#xff1a; HAL CANFD Init Gen: 适用于STM32控制器的HAL库 版本说明&#xff1a; V1.2.0 &#x…

【11408学习记录】考研英语长难句解析 | 语法拆分+写作模板+真题精讲(附高分秘籍)

2025.04.05 英语语法总结——长难句并列句并列连词并列句的省略 写作书信写作第二段注意 第三段落款 每日一句词汇第一步&#xff1a;辨别第二步&#xff1a;断开第三步&#xff1a;简化 英语 语法总结——长难句 长难句有两个特点&#xff1a;长、难。 之所以又长又难就是因…

实用的alias别名命令——比2=1+1简单的基础命令

目录 alias命令的用处alias命令的写法让alias别名永久存在的办法下篇预告 alias命令的用处 别名&#xff0c;就是linux系统中的命令的别称&#xff0c;而alias命令&#xff0c;可以显示linux系统当前设定的全部别名&#xff0c;当然&#xff0c;也可以自己定义一个别名。 ali…