ThingsBoard文档

ThingsBoard平台使用文档。

Enrichment

Enrichment节点用于更新入站消息的元数据。

用户组属性
支持TB版本2.0

image

此节点查找消息发起者实体的客户并将客户属性或最新遥测数据添加到消息元数据中。

管理员可以配置原始属性名称和元数据属性名称之间的映射关系。

如果选中节点的Latest Telemetry配置复选框则节点将通过配置密钥获取最新遥测,否则将获取服务端作用域的相关属性。

image

出站消息元数据将包含已配置的属性。

可以通过’metadata.temperature‘模板获取其它节点属性。

允许以下消息发起者类型: Customer,User,Asset,Device

如果找到不支持的原始发起者类型则会引发错误。

如果没有对发起者分配客户实体则使用Failure链否则使用Success链。

在下一面教程中你可以看到使用该节点的真实示例:

设备属性
支持TB版本2.0

image

此节点查找消息发起者实体的相关设备并将属性(client\shared\server)和最新的遥测值添加到消息元数据中。

元数据中的属性前缀

  • shared属性 -> shared_
  • client属性 -> cs_
  • server属性 -> ss_
  • telemetry -> 无前缀

例如shared属性版本将以名称”shared_version”添加到元数据中。

client属性使用”cs_“前缀。

server属性使用”ss_“前缀。

最新遥测数据不带前缀添加到消息元数据中。

在”Device relations query”配置中管理员可以选择所需的Directionrelation depth level;还可以使用所需的Device types配置Relation type

image

如果找到多个相关实体则仅第一个实体用于属性Enrichment节点其他实体将被丢弃。

如果未找到相关实体则使用Failure链否则是Success链。

如果找不到属性或遥测则不会将其添加到消息元数据中并且仍会通过Success链进行路由。

出站消息元数据将仅包含配置的属性。

可以通过’metadata.temperature‘模板获取其它节点属性。

注意: 从TB版本2.3.1开始如果出站消息中至少一个选定的密钥,则规则节点可以启用/禁用报告Failure

image

发起者属性
支持TB版本2.0

image

在消息元数据中添加消息发起者属性(client\shared\server)和最新的遥测值。

元数据中的属性前缀

  • shared属性 -> shared_
  • client属性 -> cs_
  • server属性 -> ss_
  • telemetry -> 无前缀

例如shared属性版本将以名称”shared_version”添加到元数据中。

client属性使用”cs_“前缀。

server属性使用”ss_“前缀。

最新遥测数据不带前缀添加到消息元数据中。

image

出站消息元数据将仅包含配置的属性。

可以通过’>metadata.cs_temperature‘模板获取其它节点属性。

Note: 从TB版本2.3.1开始如果出站消息中至少一个选定的密钥则规则节点可以启用/禁用报告Failure

image

在下一面教程中你可以看到使用该节点的真实示例:

发起者字段
支持TB版本2.0.1

image

此节点获取消息发起者实体的字段值并将其添加到消息元数据中。

管理员可以配置字段名称和元数据属性名称之间的映射关系。

如果指定的字段不是消息发起者实体字段的一部分它将被忽略。

image

允许以下消息发起者类型: Tenant, Customer, User, Asset, Device, Alarm, Rule Chain

如果发现不支持的发起者类型则使用Failure链否则使用Success链。

如果没有找到字段值则不会将其添加到消息元数据中而是通过成功链进行路由。

出站消息元数据将只包含已配置的属性。

可以通过’metadata.devType‘模板获取其它节点属性。

关联属性
支持TB版本2.0

image

节点查找消息发起者实体的相关实体并将属性或最新遥测数据添加到消息元数据中。

管理员可以配置原始属性名称和元数据属性名称之间的映射关系。

在”Relations query”配置中管理员可以选择所需的Directionrelation depth level

还可以使用必需的关系类型和实体类型配置Relation filters

如果选中节点的Latest Telemetry配置复选框则节点将通过配置密钥获取最新遥测,否则将获取服务端作用域的相关属性。

image

如果找到多个相关实体只使用第一个实体Enrichment属性的其他实体则被丢弃。

如果未找到相关实体则使用Failure链否则使用Success链。

出站邮件元数据将包含已配置的属性

可以通过’>metadata.tempo‘模板获取其它节点属性。

在下一面教程中你可以看到使用该节点的真实示例:

租户属性
支持TB版本2.0

image

此节点查找消息发起者实体的租户并将租户属性或最新遥测值添加到消息元数据中。

管理员可以配置原始属性名称和元数据属性名称之间的映射关系。

选中Latest Telemetry复选框则节点将获取已配置密钥的最新遥测否则使用Node将获取服务器作用域属性.

image

出站消息元数据将包含已配置的属性。

可以通过’>metadata.tempo‘模板获取其它节点属性。

允许以下消息发起者类型: Tenant,Customer,User,Asset,Device,Alarm,Rule Chain

如果找到了不支持的原始发起者类型则会引发错误。

如果发起者尚未分配租户实体则使用Failure链否则Success链。

发起者遥测
支持TB版本2.1.1

image

将在节点配置中选择的特定时间范围内的消息发起者遥测数据添加到消息元数据中。

image

遥测数据添加到不带前缀的消息元数据中。

规则节点具有三种获取模式:

  • FIRST: 从数据库中检索最接近时间范围开始的遥测

  • LAST: 从最接近时间范围末尾的数据库中检索遥测

  • ALL: 在指定时间范围内从数据库检索所有遥测.

image

如果选择获取模式FIRSTLAST则出站消息元数据将包含JSON元素(key/value)否则选定的获取模式ALL则遥测将作为数组获取。

注意:

规则节点可以将记录的限制大小提取到数组中:1000个记录

该数组将包含带有时间戳和值的JSON对象。

注意:

间隔的结尾必须始终小于间隔的开头

如果选中Use metadata interval patterns复选框则规则节点将使用元数据中的Start Interval和End Interval模式。

自UNIX时代(January 1, 1970 00:00:00 UTC)以来,模式单位以毫秒为单位设置。

image

  • 如果消息元数据中不存在任何模式则出站消息将通过failure链进行路由。

  • 如果任何模式的数据类型无效则出站消息还将通过failure链进行路由。

出站消息元数据将包含已配置的遥测字段(如果存在且属于所选范围)。

如果找不到属性或遥测则不会将其添加到消息元数据中并且仍会通过Success链进行路由。

可以通过’JSON.parse(metadata.temperature)‘模板获取其它节点遥测。

注意: 从TB 2.3版开始当选择Fetch mode: ALL时规则节点可以选择遥测采样顺序。

image

在下一面教程中你可以看到使用该节点的真实示例:

租户详细信息
支持TB版本2.3.1

image

此节点将字段从租户详细信息添加到消息正文或元数据

选中Add selected details to the message metadata复选框则现有字段将添加到消息元数据中而不是消息数据中。

image

选定的详细信息将添加到带有前缀:tenant_元数据中。

出站消息将包含已配置的详细信息。

可以通过以下模板获取其他节点的详细信息:

  • metadata.tenant_address

  • msg.tenant_address

如果发起者尚未分配租户实体则使用Failure链否则Success链。

客户详细信息
支持TB版本2.3.1

image

规则节点将客户详细信息中的字段添加到消息正文或元数据。

选中Add selected details to the message metadata复选框则现有字段将添加到消息元数据中而不是消息数据中。

image

选定的详细信息将添加到带有前缀:customer_元数据中。

出站邮件将包含已配置的详细信息(如果存在)。

可以通过以下模板获取其他节点的详细信息:

  • metadata.customer_email

  • msg.customer_email

允许以下消息发起者类型: Asset,Device,Entity View

如果找到了不支持的原始发件人类型则会引发错误。

如果未分配发起者客户实体Failure链则使用Success链。