bmsd/nodes.c

changeset 695
cfe232710027
parent 686
ca1fbb3bd3db
child 703
faeede125639
--- a/bmsd/nodes.c	Sun May 24 12:12:34 2020 +0200
+++ b/bmsd/nodes.c	Thu May 28 14:23:14 2020 +0200
@@ -180,10 +180,38 @@
 
     msg = xstrcpy((char *)"{\"node\":\"");
     msg = xstrcat(msg, edge_node);
-    msg = xstrcat(msg, (char *)"\",\"group\":\"");
+    msg = xstrcat(msg, (char *)"\",\"group_id\":\"");
     msg = xstrcat(msg, group_id);
     msg = xstrcat(msg, (char *)"\",\"online\":");
     msg = xstrcat(msg, node->online ? (char *)"1":(char *)"0");
+    msg = xstrcat(msg, (char *)",\"interval\":");
+    snprintf(buf, 73, "%d", node->interval);
+    msg = xstrcat(msg, buf);
+    if (node->hardwaremake) {
+	msg = xstrcat(msg, (char *)",\"hardwaremake\":\"");
+	msg = xstrcat(msg, node->hardwaremake);
+	msg = xstrcat(msg, (char *)"\"");
+    }
+    if (node->hardwaremodel) {
+	msg = xstrcat(msg, (char *)",\"hardwaremodel\":\"");
+	msg = xstrcat(msg, node->hardwaremodel);
+	msg = xstrcat(msg, (char *)"\"");
+    }
+    if (node->os) {
+	msg = xstrcat(msg, (char *)",\"os\":\"");
+	msg = xstrcat(msg, node->os);
+	msg = xstrcat(msg, (char *)"\"");
+    }
+    if (node->os_version) {
+	msg = xstrcat(msg, (char *)",\"os_version\":\"");
+	msg = xstrcat(msg, node->os_version);
+	msg = xstrcat(msg, (char *)"\"");
+    }
+    if (node->firmware) {
+	msg = xstrcat(msg, (char *)",\"firmware\":\"");
+	msg = xstrcat(msg, node->firmware);
+	msg = xstrcat(msg, (char *)"\"");
+    }
     msg = xstrcat(msg, (char *)",\"lastseen\":\"");
     mytime = localtime(&node->lastseen);
     snprintf(buf, 73, "%04d-%02d-%02d %02d:%02d:%02d",
@@ -200,11 +228,13 @@
     	snprintf(buf, 64, "%.1f", node->humidity);
     	msg = xstrcat(msg, buf);
     }
-    msg = xstrcat(msg, (char *)",\"ip\":\"");
+    msg = xstrcat(msg, (char *)",\"net_ifname\":\"");
+    msg = xstrcat(msg, node->net_ifname);
+    msg = xstrcat(msg, (char *)"\",\"net_address\":\"");
     msg = xstrcat(msg, node->net_address);
     msg = xstrcat(msg, (char *)"\"");
     if (node->net_rssi != 0) {
-    	msg = xstrcat(msg, (char *)",\"rssi\":");
+    	msg = xstrcat(msg, (char *)",\"net_rssi\":");
     	snprintf(buf, 64, "%d", node->net_rssi);
     	msg = xstrcat(msg, buf);
     }

mercurial