#include #include "Tiny.h" bool buildSensorJson(unsigned long value, JsonDocument& jsonDoc) { JsonObject sensor = jsonDoc.createNestedObject("sensor"); sensor["id"] = ID(value); float voltage = (float)GET_VCC(value) / 1000; JsonObject diagnostic = sensor.createNestedObject("diagnostic"); if (voltage != 0) { diagnostic["voltage"] = voltage; } else { diagnostic["voltage"] = ""; } switch (GET_TYPE(value)) { case SensorType::GENERIC: sensor["value"] = GET_VALUE(value); break; case SensorType::TEMPERATURE: sensor["temperature"] = (float)GET_TEMP(value) / 10; break; case SensorType::HUMIDITY: sensor["humidity"] = (float)GET_HUMIDITY(value) / 10; break; case SensorType::CONTACT: sensor["state"] = GET_STATE(value) ? "ON" : "OFF"; break; default: return false; } return true; }