From f3cbda43d15d30605e9927c5a767f87132e7c302 Mon Sep 17 00:00:00 2001 From: Ziver Koc Date: Mon, 27 May 2024 01:41:37 +0200 Subject: [PATCH] Some bugfixes --- .../hal-zigbee/resources/web/zigbee_network.tmpl | 8 ++++---- .../plugin/zigbee/page/api/ZigbeeApiEndpoint.java | 13 ++++++++----- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/plugins/hal-zigbee/resources/web/zigbee_network.tmpl b/plugins/hal-zigbee/resources/web/zigbee_network.tmpl index 44ad2855..d20d0cb6 100644 --- a/plugins/hal-zigbee/resources/web/zigbee_network.tmpl +++ b/plugins/hal-zigbee/resources/web/zigbee_network.tmpl @@ -40,10 +40,10 @@ var links = []; data.forEach(node => { - nodes.add({"id": node.address, "name": node.address}); - nodes.neighbours.forEach(neighbour => { - links.add({"source": node.address, "target": neighbour}) - } + nodes.push({"id": node.address, "name": node.address}); + node.neighbors.forEach(neighbor => { + links.push({"source": node.address, "target": neighbor}) + }) }); const Graph = ForceGraph() diff --git a/plugins/hal-zigbee/src/se/hal/plugin/zigbee/page/api/ZigbeeApiEndpoint.java b/plugins/hal-zigbee/src/se/hal/plugin/zigbee/page/api/ZigbeeApiEndpoint.java index 62366daf..f5b3e680 100644 --- a/plugins/hal-zigbee/src/se/hal/plugin/zigbee/page/api/ZigbeeApiEndpoint.java +++ b/plugins/hal-zigbee/src/se/hal/plugin/zigbee/page/api/ZigbeeApiEndpoint.java @@ -39,20 +39,23 @@ public class ZigbeeApiEndpoint extends HalApiEndpoint { for (ZigBeeNode node : controller.getNodes()) { DataNode zigbeeNode = new DataNode(DataNode.DataType.Map); + root.add(zigbeeNode); zigbeeNode.set("address", node.getIeeeAddress().toString()); zigbeeNode.set("logicalType", node.getLogicalType().toString()); DataNode powerNode = new DataNode(DataNode.DataType.Map); - powerNode.set("currentPowerMode", node.getPowerDescriptor().getCurrentPowerMode().toString()); - powerNode.set("currentPowerSource", node.getPowerDescriptor().getCurrentPowerSource().toString()); - powerNode.set("powerLevel", node.getPowerDescriptor().getPowerLevel().toString()); + zigbeeNode.set("powerDescriptor", powerNode); + if (node.getPowerDescriptor() != null) { + powerNode.set("currentPowerMode", node.getPowerDescriptor().getCurrentPowerMode().toString()); + powerNode.set("currentPowerSource", node.getPowerDescriptor().getCurrentPowerSource().toString()); + powerNode.set("powerLevel", node.getPowerDescriptor().getPowerLevel().toString()); + } DataNode neighborsNode = new DataNode(DataNode.DataType.List); + zigbeeNode.set("neighbors", neighborsNode); for (NeighborTable neighbor : node.getNeighbors()) { neighborsNode.add(neighbor.getExtendedAddress().toString()); } - - zigbeeNode.set("neighbors", neighborsNode); } return root;