【问题标题】:NodeRed switch to DevicesNodeRed 切换到设备
【发布时间】:2021-05-06 14:50:47
【问题描述】:

功能

function subscribeParser(statesArr){

  let deviceDict = {}

  for (var i in statesArr){
    deviceDict[statesArr[i].address] = statesArr[i].value
  }
    
  msg.payload = deviceDict
  return msg
}

return subscribeParser(msg.payload)

函数后的对象

我需要能够切换到此对象(键)上的设备。

【问题讨论】:

  • 不清楚你在这里问什么。您是否要将消息分解为(在这种情况下)2 条单独的消息以发送到不同的“设备”节点? (函数节点内也不需要function,没有它会更容易阅读。

标签: node-red


【解决方案1】:

如果我明白你在这里问什么,最简单的选择就是完全废弃该功能。

假设输入msg.payload是一个对象数组,形式如下:

{address: "ZWayVDev_zway_16-0-38", value: 0}

然后将功能节点替换为拆分节点,只需切换节点,然后在msg.payload.address 上工作以选择您想要的输出。

例子:

[{"id":"aeab1550.629388","type":"inject","z":"da4bbfa6.799c2","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"[{\"address\":\"ZWayVDev_zway_15-0-38\",\"value\":1},{\"address\":\"ZWayVDev_zway_14-0-37\",\"value\":0}]","payloadType":"json","x":180,"y":180,"wires":[["76785d86.657d54"]]},{"id":"76785d86.657d54","type":"split","z":"da4bbfa6.799c2","name":"","splt":"\\n","spltType":"str","arraySplt":1,"arraySpltType":"len","stream":false,"addname":"","x":380,"y":200,"wires":[["f33fded1.6d67e"]]},{"id":"f33fded1.6d67e","type":"switch","z":"da4bbfa6.799c2","name":"","property":"payload.address","propertyType":"msg","rules":[{"t":"eq","v":"ZWayVDev_zway_15-0-38","vt":"str"},{"t":"eq","v":"ZWayVDev_zway_14-0-37","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":600,"y":220,"wires":[["9a1e8f0d.714f4"],["866fe81d.c2ed48"]]},{"id":"9a1e8f0d.714f4","type":"debug","z":"da4bbfa6.799c2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":780,"y":180,"wires":[]},{"id":"866fe81d.c2ed48","type":"debug","z":"da4bbfa6.799c2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":800,"y":260,"wires":[]}]

【讨论】:

    猜你喜欢
    • 2012-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-02
    • 2017-08-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多