新闻中心
PRESS CENTER概述
对接收到的消息进行处理的JavaScript代码,我们称之为函数。
输入消息存储在命名为msg的对象中,供JavaScript代码调用。通常情况下,msg的有效消息存储在msg.payload属性中。函数可以返回一个或多个消息对象(对应一个或多个输出端口),也可以为了停止流程什么都不返回。
输入
msg #输入消息对象 |
输出
msg #输出消息对象 |
功能
返回一个消息
要将消息传递给下一个节点,请使用:return msg
返回多个消息
要将消息传递给下面多个节点,请使用:return [msg1,null,msg3...],null表示不发送任何消息
日志输出
使用一下功能输出日志信息和输出错误(不需要调试节点):
node.log("Log message")
node.warn("Warning")
node.error("Error")
示例
1. 发送一条消息
2. 发送多条消息
3. 异步发送消息
4. 打印事件信息
5. 处理错误信息
6. 存储全局变量
7. 显示状态信息
8. 引用第三方库
概述
收到消息后,将消息按照设定的规则,发送到相应的输出端口(“switch......case1...case2...”)。可以设置为只匹配一个规则就停止继续匹配(break)。
输入
msg.payload #有效消息 |
输出
msg.payload #规则匹配后的有效输出 |
示例
1规则输出
将msg.payload值按照大于0,等于0,小于0的规则分别输出:
2. 匹配所有规则
将msg.payload值按照小于10,大于-10匹配所有规则,那么0既满足小于10也满足大于-10会输出两次:
3. 匹配第一条规则后就停止
将msg.payload值按照小于10,大于-10匹配第一条规则后就停止,那么0满足小于10后即停止匹配,只输出一次:
4. 根据数据类型选择输出
5. 使用JSONata表达式设置规则
6. 使用JSONata表达式设置属性
7. 根据正负值重构消息序列
8. 根据Topic路由消息
9. 对象处理单一属性
在EG网关中,大多数节点(如Modbus读取、PLC节点)采集的数据通常以对象形式输出。本示例演示如何从中提取特定点位的数据并进行判断。
对象数据格式如下:data1,data2分别为该对象的一个属性。
示例:取data1的值进行条件判断,小于等于1和大于1分别触发不同的流程。