新聞中心
PRESS CENTER概述
對接收到的消息進行處理的JavaScript代碼,我們稱之為函數(shù)。
輸入消息存儲在命名為msg的對象中,供JavaScript代碼調用。通常情況下,msg的有效消息存儲在msg.payload屬性中。函數(shù)可以返回一個或多個消息對象(對應一個或多個輸出端口),也可以為了停止流程什么都不返回。
輸入
msg #輸入消息對象 |
輸出
msg #輸出消息對象 |
功能
返回一個消息
要將消息傳遞給下一個節(jié)點,請使用:return msg
返回多個消息
要將消息傳遞給下面多個節(jié)點,請使用:return [msg1,null,msg3...],null表示不發(fā)送任何消息
日志輸出
使用一下功能輸出日志信息和輸出錯誤(不需要調試節(jié)點):
node.log("Log message")
node.warn("Warning")
node.error("Error")
示例
1. 發(fā)送一條消息
2. 發(fā)送多條消息
3. 異步發(fā)送消息
4. 打印事件信息
5. 處理錯誤信息
6. 存儲全局變量
7. 顯示狀態(tài)信息
8. 引用第三方庫
概述
收到消息后,將消息按照設定的規(guī)則,發(fā)送到相應的輸出端口(“switch......case1...case2...”)。可以設置為只匹配一個規(guī)則就停止繼續(xù)匹配(break)。
輸入
msg.payload #有效消息 |
輸出
msg.payload #規(guī)則匹配后的有效輸出 |
示例
1規(guī)則輸出
將msg.payload值按照大于0,等于0,小于0的規(guī)則分別輸出:
2. 匹配所有規(guī)則
將msg.payload值按照小于10,大于-10匹配所有規(guī)則,那么0既滿足小于10也滿足大于-10會輸出兩次:
3. 匹配第一條規(guī)則后就停止
將msg.payload值按照小于10,大于-10匹配第一條規(guī)則后就停止,那么0滿足小于10后即停止匹配,只輸出一次:
4. 根據(jù)數(shù)據(jù)類型選擇輸出
5. 使用JSONata表達式設置規(guī)則
6. 使用JSONata表達式設置屬性
7. 根據(jù)正負值重構消息序列
8. 根據(jù)Topic路由消息
9. 對象處理單一屬性
在EG網(wǎng)關中,大多數(shù)節(jié)點(如Modbus讀取、PLC節(jié)點)采集的數(shù)據(jù)通常以對象形式輸出。本示例演示如何從中提取特定點位的數(shù)據(jù)并進行判斷。
對象數(shù)據(jù)格式如下:data1,data2分別為該對象的一個屬性。
示例:取data1的值進行條件判斷,小于等于1和大于1分別觸發(fā)不同的流程。