shellies/Wohnung F/info
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.
| $.wifi_sta.connected | bool | true | |
| $.wifi_sta.ssid | text | baer-net | |
| $.wifi_sta.ip | text | 192.168.179.55 | |
| $.wifi_sta.rssi | numeric | -67 | |
| $.cloud.enabled | bool | false | |
| $.cloud.connected | bool | false | |
| $.mqtt.connected | bool | true | |
| $.time | text | ||
| $.unixtime | numeric | 0 | |
| $.serial | numeric | 1 | |
| $.has_update | bool | false | |
| $.mac | text | 58BF25D8B215 | |
| $.cfg_changed_cnt | numeric | 0 | |
| $.actions_stats.skipped | numeric | 0 | |
| $.mode | text | white | |
| $.input | numeric | 0 | |
| $.total_power | numeric | 0.0 | |
| $.lights[0].ison | bool | true | |
| $.lights[0].source | text | http | |
| $.lights[0].has_timer | bool | false | |
| $.lights[0].timer_started | numeric | 0 | |
| $.lights[0].timer_duration | numeric | 0 | |
| $.lights[0].timer_remaining | numeric | 0 | |
| $.lights[0].mode | text | white | |
| $.lights[0].brightness | numeric | 6 | |
| $.lights[0].transition | numeric | 0 | |
| $.lights[0].power | numeric | 0.0 | |
| $.lights[0].overpower | bool | false | |
| $.lights[1].ison | bool | true | |
| $.lights[1].source | text | http | |
| $.lights[1].has_timer | bool | false | |
| $.lights[1].timer_started | numeric | 0 | |
| $.lights[1].timer_duration | numeric | 0 | |
| $.lights[1].timer_remaining | numeric | 0 | |
| $.lights[1].mode | text | white | |
| $.lights[1].brightness | numeric | 6 | |
| $.lights[1].transition | numeric | 0 | |
| $.lights[1].power | numeric | 0.0 | |
| $.lights[1].overpower | bool | false | |
| $.lights[2].ison | bool | true | |
| $.lights[2].source | text | http | |
| $.lights[2].has_timer | bool | false | |
| $.lights[2].timer_started | numeric | 0 | |
| $.lights[2].timer_duration | numeric | 0 | |
| $.lights[2].timer_remaining | numeric | 0 | |
| $.lights[2].mode | text | white | |
| $.lights[2].brightness | numeric | 6 | |
| $.lights[2].transition | numeric | 0 | |
| $.lights[2].power | numeric | 0.0 | |
| $.lights[2].overpower | bool | false | |
| $.lights[…] | array | (4 Elemente) | |
| $.meters[0].power | numeric | 0.0 | |
| $.meters[0].is_valid | text | true | |
| $.meters[0].overpower | bool | false | |
| $.meters[0].timestamp | numeric | 0 | |
| $.meters[0].counters[0] | numeric | 0.0 | |
| $.meters[0].counters[1] | numeric | 0.0 | |
| $.meters[0].counters[2] | numeric | 0.0 | |
| $.meters[0].total | numeric | 0 | |
| $.meters[1].power | numeric | 0.0 | |
| $.meters[1].is_valid | text | true | |
| $.meters[1].overpower | bool | false | |
| $.meters[1].timestamp | numeric | 0 | |
| $.meters[1].counters[0] | numeric | 0.0 | |
| $.meters[1].counters[1] | numeric | 0.0 | |
| $.meters[1].counters[2] | numeric | 0.0 | |
| $.meters[1].total | numeric | 0 | |
| $.meters[2].power | numeric | 0.0 | |
| $.meters[2].is_valid | text | true | |
| $.meters[2].overpower | bool | false | |
| $.meters[2].timestamp | numeric | 0 | |
| $.meters[2].counters[0] | numeric | 0.0 | |
| $.meters[2].counters[1] | numeric | 0.0 | |
| $.meters[2].counters[2] | numeric | 0.0 | |
| $.meters[2].total | numeric | 0 | |
| $.meters[…] | array | (4 Elemente) | |
| $.inputs[0].input | numeric | 0 | |
| $.inputs[0].event | text | ||
| $.inputs[0].event_cnt | numeric | 0 | |
| $.update.status | text | unknown | |
| $.update.has_update | bool | false | |
| $.update.new_version | text | ||
| $.update.old_version | text | 20230913-131259/v1.14.0-gcb84623 | |
| $.ram_total | numeric | 50936 | |
| $.ram_free | numeric | 36532 | |
| $.fs_size | numeric | 233681 | |
| $.fs_free | numeric | 159134 | |
| $.uptime | numeric | 2 |
2. Konfiguration
Letzter Payload
{
"wifi_sta": {
"connected": true,
"ssid": "baer-net",
"ip": "192.168.179.55",
"rssi": -67
},
"cloud": {
"enabled": false,
"connected": false
},
"mqtt": {
"connected": true
},
"time": "",
"unixtime": 0,
"serial": 1,
"has_update": false,
"mac": "58BF25D8B215",
"cfg_changed_cnt": 0,
"actions_stats": {
"skipped": 0
},
"mode": "white",
"input": 0,
"total_power": 0.0,
"lights": [
{
"ison": true,
"source": "http",
"has_timer": false,
"timer_started": 0,
"timer_duration": 0,
"timer_remaining": 0,
"mode": "white",
"brightness": 6,
"transition": 0,
"power": 0.0,
"overpower": false
},
{
"ison": true,
"source": "http",
"has_timer": false,
"timer_started": 0,
"timer_duration": 0,
"timer_remaining": 0,
"mode": "white",
"brightness": 6,
"transition": 0,
"power": 0.0,
"overpower": false
},
{
"ison": true,
"source": "http",
"has_timer": false,
"timer_started": 0,
"timer_duration": 0,
"timer_remaining": 0,
"mode": "white",
"brightness": 6,
"transition": 0,
"power": 0.0,
"overpower": false
},
{
"ison": true,
"source": "http",
"has_timer": false,
"timer_started": 0,
"timer_duration": 0,
"timer_remaining": 0,
"mode": "white",
"brightness": 6,
"transition": 0,
"power": 0.0,
"overpower": false
}
],
"meters": [
{
"power": 0.0,
"is_valid": "true",
"overpower": false,
"timestamp": 0,
"counters": [
0.0,
0.0,
0.0
],
"total": 0
},
{
"power": 0.0,
"is_valid": "true",
"overpower": false,
"timestamp": 0,
"counters": [
0.0,
0.0,
0.0
],
"total": 0
},
{
"power": 0.0,
"is_valid": "true",
"overpower": false,
"timestamp": 0,
"counters": [
0.0,
0.0,
0.0
],
"total": 0
},
{
"power": 0.0,
"is_valid": "true",
"overpower": false,
"timestamp": 0,
"counters": [
0.0,
0.0,
0.0
],
"total": 0
}
],
"inputs": [
{
"input": 0,
"event": "",
"event_cnt": 0
}
],
"update": {
"status": "unknown",
"has_update": false,
"new_version": "",
"old_version": "20230913-131259/v1.14.0-gcb84623"
},
"ram_total": 50936,
"ram_free": 36532,
"fs_size": 233681,
"fs_free": 159134,
"uptime": 2
}
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.