首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从node-red-contrib-tasmota JSON获取Zigbee设备信息

从node-red-contrib-tasmota JSON获取Zigbee设备信息
EN

Stack Overflow用户
提问于 2020-09-23 18:49:01
回答 1查看 457关注 0票数 0

我刚刚开始在Sonarr Zigbee桥上使用Tasmota,并试图解释它吐出的数据。下面是一个例子:

代码语言:javascript
复制
{
  "ZbReceived": {
    "0x11FE": {
      "Device": "0x11FE",
      "Name": "DoorContact",
      "Power": 1,
      "Endpoint": 1,
      "LinkQuality": 147
    }
  }
}

如何在不知道/使用设备号(“0x11Fe”)的情况下对此处的信息进行寻址-例如,我想要获取设备名称、电源设置等。

我希望我可以做一些像ZbReceived1.Name这样的事情,但这不起作用。

有什么建议吗?

EN

回答 1

Stack Overflow用户

发布于 2020-09-24 02:01:04

您要查找的是Object.keys()函数(docs)

代码语言:javascript
复制
var devices = Object.keys(msg.payload);
var name = msg.payload[devices[0]].Name;
var power = msg.payload[devices[0]].Power;

Object.keys(obj)将所有键的数组返回到JSON对象中(一层深),因此,因为我们知道msg.payload中只有一个键,所以可以在插槽0中访问它(数组总是从0开始索引)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64026295

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档