350 srv_send(s, (char *)"212 Devices json list follows:"); |
350 srv_send(s, (char *)"212 Devices json list follows:"); |
351 payload = xstrcpy((char *)"["); |
351 payload = xstrcpy((char *)"["); |
352 for (device = Config.devices; device; device = device->next) { |
352 for (device = Config.devices; device; device = device->next) { |
353 if (comma) |
353 if (comma) |
354 payload = xstrcat(payload, (char *)","); |
354 payload = xstrcat(payload, (char *)","); |
355 payloadu = device_json(device, false); |
355 payloadu = device_json(device); |
356 payload = xstrcat(payload, payloadu); |
356 payload = xstrcat(payload, payloadu); |
357 comma = true; |
357 comma = true; |
358 free(payloadu); |
358 free(payloadu); |
359 payloadu = NULL; |
359 payloadu = NULL; |
360 } |
360 } |
371 snprintf(vbuf, 63, "%d", device->subdevice); |
371 snprintf(vbuf, 63, "%d", device->subdevice); |
372 payload = xstrcat(payload, device->address); |
372 payload = xstrcat(payload, device->address); |
373 payload = xstrcat(payload, (char *)"-"); |
373 payload = xstrcat(payload, (char *)"-"); |
374 payload = xstrcat(payload, vbuf); |
374 payload = xstrcat(payload, vbuf); |
375 payload = xstrcat(payload, (char *)"\",\"metric\":"); |
375 payload = xstrcat(payload, (char *)"\",\"metric\":"); |
376 payloadu = device_json(device, true); |
376 payloadu = device_json(device); |
377 payload = xstrcat(payload, payloadu); |
377 payload = xstrcat(payload, payloadu); |
378 free(payloadu); |
378 free(payloadu); |
379 payloadu = NULL; |
379 payloadu = NULL; |
380 payload = xstrcat(payload, (char *)"}"); |
380 payload = xstrcat(payload, (char *)"}"); |
381 srv_send(s, (char *)"213 Device json record follows:"); |
381 srv_send(s, (char *)"213 Device json record follows:"); |