Wohnung B/status/switch:0
1. Werte aus dem Payload auswählen
Klicke einzelne Felder an, die du als Extractor übernehmen möchtest. Mehrfachauswahl möglich. Schon konfigurierte Pfade sind grün markiert.
| $.id | numeric | 0 | |
| $.source | text | HTTP_in | |
| $.output | bool | true | |
| $.apower | numeric | 1.4 | |
| $.voltage | numeric | 231.2 | |
| $.freq | numeric | 50.0 | |
| $.current | numeric | 0.023 | |
| $.pf | numeric | 0.26 | |
| $.aenergy.total | numeric | 17316.423 | |
| $.aenergy.by_minute[0] | numeric | 23.583 | |
| $.aenergy.by_minute[1] | numeric | 23.537 | |
| $.aenergy.by_minute[2] | numeric | 23.537 | |
| $.aenergy.minute_ts | numeric | 1779404880 | |
| $.ret_aenergy.total | numeric | 0.0 | |
| $.ret_aenergy.by_minute[0] | numeric | 0.0 | |
| $.ret_aenergy.by_minute[1] | numeric | 0.0 | |
| $.ret_aenergy.by_minute[2] | numeric | 0.0 | |
| $.ret_aenergy.minute_ts | numeric | 1779404880 | |
| $.temperature.tC | numeric | 56.6 | |
| $.temperature.tF | numeric | 133.9 |
2. Konfiguration
Letzter Payload
{
"id": 0,
"source": "HTTP_in",
"output": true,
"apower": 1.4,
"voltage": 231.2,
"freq": 50.0,
"current": 0.023,
"pf": 0.26,
"aenergy": {
"total": 17316.423,
"by_minute": [
23.583,
23.537,
23.537
],
"minute_ts": 1779404880
},
"ret_aenergy": {
"total": 0.0,
"by_minute": [
0.0,
0.0,
0.0
],
"minute_ts": 1779404880
},
"temperature": {
"tC": 56.6,
"tF": 133.9
}
}
Test-Ergebnis
Ähnliche Topics
3. Daten-Browser
| Sub-Key | Art | Einheit | Faktor | Werte (Roh) | 15-Min | Erste | Letzte | |
|---|---|---|---|---|---|---|---|---|
| numeric | ||||||||
| text | – | – |
| Zeit | Wert |
|---|---|
Keine Daten im gewählten Zeitraum.
Letzte Roh-Nachrichten
Direkter Blick in raw_cache für dieses Topic. Klick auf eine
Zeile öffnet den vollen Payload im Viewer.
| Zeit | QoS | Status | Payload |
|---|---|---|---|
4. Wert-Labels
Optional: ordne gespeicherten Zahlen lesbare Texte zu (z.B. 161 → "Bereit").
Die Labels werden in der Daten-Tabelle & Charts angezeigt — die Speicherung selbst bleibt
rein numerisch.
| Wert | Label | |
|---|---|---|
Extractor-Schema & Tricks
Pfad-Syntax
$ · $.foo.bar · $.arr[0] · $.arr[*] (nur in iter)
value_map — Text in 0/1 (oder beliebig) umwandeln
Für Statuswerte wie "online"/"offline" oder true/false:
[
{
"path": "$.presence_state",
"sub_key": "",
"kind": "numeric",
"factor": 1,
"on_change": true,
"value_map": { "online": 1, "offline": 0 }
}
]
Lookup case-insensitive. Für Boolean-Payloads kannst du auch {"true":1,"false":0} nutzen
(direkte true/false-Werte werden ohnehin automatisch zu 1/0 gemappt).
Mehrere Topics → ein Kurzname (logisches Mergen)
Zwei oder mehr physische MQTT-Topics dürfen denselben Kurznamen haben.
Die Werte landen in values_numeric/values_text mit jeweils eigener
topic_id, aber die spätere Data-API kann sie zu einer Zeitserie vereinen
(SELECT … WHERE topic_id IN (SELECT id FROM topics WHERE short_name=…)).
Beispiel: fritz_guardian/device/<MAC>/online und .../offline beide auf
Kurzname baer_iphone_presence mit obigem value_map → eine durchgehende 0/1-Linie.
Pro-Extractor Storage-Override
[
{ "path": "$.power", "sub_key": "power",
"kind": "numeric", "factor": 100,
"storage_mode": "15min", "aggregation": "mean" },
{ "path": "$.energy_total", "sub_key": "energy_total",
"kind": "numeric", "factor": 1,
"storage_mode": "all" }
]
Power als Mittelwert pro 15-Min-Bucket, Energie als jeder geänderte Zählerstand.
Iteration über Listen
[
{ "iter": "$.devices[*]", "iter_key": "$.mac",
"path": "$.presence_state", "sub_key": "{iter_key}.status",
"kind": "numeric", "value_map":{"online":1,"offline":0},
"on_change": true }
]
Für jeden Eintrag in devices[] wird ein Sub-Key wie
C6:99:0D:F0:6F:C6.status angelegt.