You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Thingsboard CE规则链跨节点元数据丢失,报警值显示NULL

问题分析与解决

问题原因

你的ComparaDistancia节点直接返回了布尔值return (metadata.porcentaje < metadata.umbral);,但Thingsboard的脚本节点需要返回包含msg、metadata和result的标准对象,才能将修改后的metadata传递给后续节点。直接返回布尔值时,系统不会保留你设置的metadata.porcentaje和metadata.umbral,导致后续节点读取到null。

修复代码

将ComparaDistancia节点的代码修改为:

metadata.porcentaje = (3800 - (msg.data_distance - 700)) / 38;
metadata.umbral = 35;
// 返回标准节点输出对象,保留msg和metadata,用result传递路由判断结果
return {
    msg: msg,
    metadata: metadata,
    result: metadata.porcentaje < metadata.umbral
};

验证逻辑

修改后,当result为true时,规则链会走“True”分支进入CreaMsgTgmOk节点,此时metadata.porcentaje已被正确传递,生成的消息就能显示计算出的百分比值。

内容的提问来源于stack exchange,提问作者Edu Gimeno

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 16:53:21