@@ -19,8 +19,8 @@ interval:
1919 # https://github.com/ajfriesen/ESPHome-AirGradient/blob/main/air-gradient-open-air.yaml
2020 # https://arduinojson.org/v7/assistant
2121 body : !lambda |
22- String jsonString;
23- StaticJsonDocument<1024> doc;
22+ std::string jsonString;
23+ JsonDocument doc;
2424
2525 doc["wifi"] = id(wifi_dbm).state;
2626
@@ -36,17 +36,17 @@ interval:
3636 // Uptime in minutes as the boot value
3737 doc["boot"] = to_string(round(id(device_uptime).state/60));
3838
39- JsonObject channels = doc.createNestedObject( "channels");
39+ JsonObject channels = doc[ "channels"].to<JsonObject>( );
4040
41- JsonObject channels_1 = channels.createNestedObject( "1");
41+ JsonObject channels_1 = channels[ "1"].to<JsonObject>( );
4242 channels_1["pm01"] = to_string(id(pm_1_0).state);
4343 channels_1["pm02"] = to_string(id(pm_2_5).state);
4444 channels_1["pm10"] = to_string(id(pm_10_0).state);
4545 channels_1["pm003Count"] = to_string(id(pm_0_3um).state);
4646 channels_1["atmp"] = to_string(id(temp).state);
4747 channels_1["rhum"] = to_string(id(humidity).state);
4848
49- JsonObject channels_2 = channels.createNestedObject( "2");
49+ JsonObject channels_2 = channels[ "2"].to<JsonObject>( );
5050 channels_2["pm01"] = to_string(id(pm_1_0_2).state);
5151 channels_2["pm02"] = to_string(id(pm_2_5_2).state);
5252 channels_2["pm10"] = to_string(id(pm_10_0_2).state);
@@ -57,10 +57,7 @@ interval:
5757 // Serialize the JSON document into the string
5858 serializeJson(doc, jsonString);
5959
60- // Convert String to std::string
61- std::string stdJsonString(jsonString.c_str());
62-
63- return stdJsonString;
60+ return jsonString;
6461
6562
6663switch :
0 commit comments