Ich möchte via JsonMod MQTT-Werte in entsprechende Readings packen. Leider kommen offenbar manchmal leere Werte und die Readings verschwinden dann. In der Dokumentation zu JsonMod wird das AttributonEmptyResponse erwähnt nur leider kann ich das nicht aufrufen. FHEM und die Module sind aktuell.
Das List des Device ist folgendes:
Internals:
API_LAST_MSG 200
API_LAST_RES 1744533000.86364
DEF https://api.ecowitt.net/api/v3/device/real_time?application_key=XXX&api_key=YYY8&mac=ZZZ&call_back=all
FUUID 67f68377-f33f-fd73-79eb-2f91fd9f6f8ef7ca
NAME eco_json_2
NEXT 2025-04-13 10:40:00
NR 289
SOURCE https://api.ecowitt.net/api/v3/device/real_time?application_key=XXX8&api_key=YYY8&mac=ZZZ&call_back=all (200)
STATE T: ew_ind_tmp°C H: ew_ind_hum%
SVN 28481 2024-02-05 22:14:33 UTC
TYPE JsonMod
eventCount 15
CONFIG:
IN_REQUEST 0
SOURCE https://api.ecowitt.net/api/v3/device/real_time?application_key=XXX8&api_key=YYY8&mac=ZZZ&call_back=all
SECRET:
OLDREADINGS:
READINGS:
2025-04-13 10:30:00 statEw_ind_humDay Min: 55 Avg: 58 Max: 58
2025-04-12 23:59:55 statEw_ind_humDayLast Min: 55 Avg: 58 Max: 61 (since: 2025-04-11_23:50:00 )
2025-04-13 10:30:00 statEw_ind_humHour Min: 57 Avg: 57 Max: 58
2025-04-13 09:59:55 statEw_ind_humHourLast Min: 57 Avg: 58 Max: 58
2025-04-13 10:30:00 statEw_ind_humMonth Min: 55 Avg: 58 Max: 61 (since: 2025-04-11_23:50:00 )
2025-04-13 10:30:00 statEw_ind_humYear Min: 55 Avg: 58 Max: 61 (since: 2025-04-11_23:50:00 )
2025-04-13 10:30:00 statEw_ind_tmpDay Min: 18.2 Avg: 18.3 Max: 18.5
2025-04-12 23:59:55 statEw_ind_tmpDayLast Min: 18.2 Avg: 18.3 Max: 18.7 (since: 2025-04-11_23:50:00 )
2025-04-13 10:30:00 statEw_ind_tmpHour Min: 18.2 Avg: 18.4 Max: 18.5
2025-04-13 09:59:55 statEw_ind_tmpHourLast Min: 18.3 Avg: 18.3 Max: 18.5
2025-04-13 10:30:00 statEw_ind_tmpMonth Min: 18.2 Avg: 18.3 Max: 18.7 (since: 2025-04-11_23:50:00 )
2025-04-13 10:30:00 statEw_ind_tmpYear Min: 18.2 Avg: 18.3 Max: 18.7 (since: 2025-04-11_23:50:00 )
helper:
_98_statistics StatDevice_MinMax
Attributes:
devStateStyle style="text-align:right"
interval 0,10,20,30,40,50 * * * *
readingList single (jsonPath('$.data.indoor.humidity.value'), 'ew_ind_hum', 0);
single(round(jsonPath('$.data.pressure.absolute.value') * 33.864, 1), 'ew_ind_prs', 0)
single (
round(
(jsonPath('$.data.pressure.absolute.value') * 33.864) *
pow((1 - (0.0065 * 540) / ((jsonPath('$.data.indoor.temperature.value') - 32) * 5/9 + 273.15)), -5.257)
, 1), 'ew_rel_prs', 0);
single (round ((jsonPath('$.data.indoor.temperature.value')-32)*5/9,1), 'ew_ind_tmp', 0)
room ecowitt
stateFormat T: ew_ind_tmp°C H: ew_ind_hum%
userattr eco_json_1 eco_json_1_map structexclude
Vielleicht kannst du die Station auch direkt lokal auslesen: https://forum.fhem.de/index.php?msg=1315799