UNPKG

smithtek-node-red-tools

Version:

Set of tools for the Mako PLC, or any PLC

53 lines (45 loc) 1.64 kB
module.exports = function (RED) { var vm = require("vm"); function TestNode(config) { RED.nodes.createNode(this, config); this.var1 = config.var1; this.var2 = config.var2; this.var3 = config.var3; this.var4 = config.var4; this.var5 = config.var5; this.var6 = config.var6; this.var7 = config.var7; this.var8 = config.var8; this.var9 = config.var9; this.var10 = config.var10; var node = this; this.on('input', function (msg) { var payload = msg.payload; var label = Object.keys(payload)[0]; var out1 = this.var1; var out2 = this.var2; var out3 = this.var3; var out4 = this.var4; var out5 = this.var5; var out6 = this.var6; var out7 = this.var7; var out8 = this.var8; var out9 = this.var9; var out10 = this.var10; var outputList = [out1, out2, out3, out4, out5, out6, out7, out8, out9, out10]; var outputMessage = []; for (var i = 0; i < 10; i++) { if (label === outputList[i]) { msg.payload = payload[label].value; outputMessage.push(msg); } else { outputMessage.push(null); } } // send the outputMessage array node.send(outputMessage); }); } RED.nodes.registerType("splitter", TestNode); RED.library.register("functions"); };