GLOBALE EINSTELLUNG
Um die Konfiguration des Homebridge-deconz Plugins vorzunehmen, muss man nicht mehr in der config.json via Homebridge-Config-UI-X Weboberfläche Anpassungen vornehmen (wie beim alten Homebridge-Hue Plugin), sondern kann Änderungen über die "Dynamic Configuration" zukünftig mittels CURL Befehle machen.
Anleitung:
CURL Befehle wie hier angegeben: https://github.com/ebaauw/home…iki/Dynamic-Configuration werden in der Konsole eingegeben. Wahlweise via SSH auf den Pi mittels "Terminal" Dienstprogramm am Mac oder via der Konsole auf der Weboberfläche der Homebridge/Config-UI-X.
Das allgemeine Vorgeplänkel bzw. die Beschreibung mal frei Schnauze ins Deutsche übersetzt:
Zitat
Homebridge deCONZ kann während des laufenden Betriebs konfiguriert werden. Hierfür stellt Homebridge deCONZ eine Konfigurations-API bereit. Dies ist eine REST-API, auf die aus Sicherheitsgründen nur von dem Server aus zugegriffen werden kann, auf dem Homebridge ausgeführt wird.
Vorbereitung:
Ich hab das json Tool vom Homebridge-lib nicht extra installiert, hilft aber bei der Darstellung, daher werden die Befehle auf der Seite mit | json am Schluss eingegeben, damit der Output in der Konsole direkt im schön lesbaren json Format dargestellt wird.
Ansonsten einfach ohne | json eingeben und die Ausgabe der Befehle schnell kopieren und auf https://jsonlint.com validieren, dann sieht man es in "schön".
Schritte:
1. Port der Configuration API herausfinden
Homebridge neustarten um an den zufälligen Port der API zu kommen. Beim Start das Homebridge Protokoll beobachten, irgendwo steht beim Neustarten am Anfang eine Zeile mit:
[deCONZ] ui server: listening on http://127.0.0.1:61167/
2. Erreichbarkeit der API prüfen
per SSH auf den Pi verbinden, alternativ über das Terminal der Homebridge Weboberfläche
Anchließend curl -s http://127.0.0.1:61167/ping (Natürlich mit deinem Port) eingeben und damit prüfen ob die API überhaupt erreichbar/ansprechbar ist, dann sollte idealerweise als Antwort "pong" kommen.
3. Mit dem Homebridge-deconz Plugin verbundene Gateways anzeigen
Jetzt lassen wir uns alle mit dem Plugin verbundenen Gateways anzeigen (die meisten werden nur eins haben) um an die Bridge/Gateway ID zu kommen
curl -s http://127.0.0.1:61167/gateways
{
"pi5": {
"config": {
"apiversion": "1.16.0",
"bridgeid": "00212EFFFF03D4A7",
"datastoreversion": "93",
"devicename": "ConBee II",
"factorynew": false,
"mac": "dc:a6:32:6f:81:2c",
"modelid": "deCONZ",
"name": "pi5",
"replacesbridgeid": null,
"starterkitid": "",
"swversion": "2.19.3"
},
"host": "pi5",
"id": "00212EFFFF03D4A7"
}
}
Alles anzeigen
4. Konfiguration des Gateways aufrufen
Die ID an den zuvor genutzten CURL Befehl dranhängen, damit wir mit der ID das konkrete Gateway ansprechen:
curl -s http://127.0.0.1:61167/gateways/00212EFFFF03D4A7 und eingeben, dann kommt die aktuelle Konfiguration für das Gateway:
{
"id": "00212EFFFF03D4A7",
"manufacturer": "dresden elektronik",
"model": "deCONZ / ConBee II",
"name": "pi5",
"settings": {
"autoExpose": {
"groups": false,
"lights": true,
"schedules": false,
"sensors": true
},
"brightnessAdjustment": 100,
"expose": true,
"heartrate": 30,
"logLevel": 2,
"periodicEvents": true,
"restart": false,
"search": false,
"unlock": false
}
}
Alles anzeigen
5. Einstellungen an der Konfiguration vornehmen
Dann z.B. das logLevel anpassen, geht über:
curl -s -X PUT -d '{"logLevel": 1}' http://127.0.0.1:61167/gateways/00212EFFFF03D4A7/settings
6. Einstellungen prüfen (optional)
Dann anschließend zur Überprüfung noch mal den Befehl aus Schritt 4 eingeben, ob die Einstellung übernommen wurde. Dann sollte nun das Loglevel mit 1 drin sein:
Das wars auch schon.
EINSTELLUNG PRO GERÄT
Ergänzend zu meiner vorherigen Anleitung, wer nicht global die Einstellungen für das ganze Gateway vornehmen will sondern für ein einzelnes Gerät, der muss folgende Schritte durchführen.
Im Folgenden Beispiel will ich das LogLevel meiner Flur Leuchte anpassen, da mir das Gerät mein Homebridge Log vollschreibt bei jeder Statusänderung:
[29/10/2023, 08:59:52] [deCONZ] Flur Leuchte: On: changed to false (from true)
[29/10/2023, 09:00:45] [deCONZ] Flur Leuchte: On: changed to true (from false)
[29/10/2023, 09:01:08] [deCONZ] Flur Leuchte: On: changed to false (from true)
[29/10/2023, 09:02:24] [deCONZ] Philips Hue Dimmschalter V2 Battery: Battery Level: set to 96% (from 97%)
[29/10/2023, 09:04:23] [deCONZ] Flur Leuchte: On: changed to true (from false)
[29/10/2023, 09:04:38] [deCONZ] Fenster Schlafzimmer: Contact Sensor State: set to 0 (from 1)
[29/10/2023, 09:05:13] [deCONZ] Flur Leuchte: On: changed to false (from true)
[29/10/2023, 09:05:20] [deCONZ] Flur Leuchte: On: changed to true (from false)
[29/10/2023, 09:06:02] [deCONZ] Flur Leuchte: On: changed to false (from true)
[29/10/2023, 09:06:54] [deCONZ] Flur Leuchte: On: changed to true (from false)
[29/10/2023, 09:07:14] [deCONZ] Flur Leuchte: On: changed to false (from true)
[29/10/2023, 09:07:23] [deCONZ] Philips Hue Dimmschalter V2 Battery: Battery Level: set to 97% (from 96%)
[29/10/2023, 09:17:41] [deCONZ] Flur Leuchte: On: changed to true (from false)
[29/10/2023, 09:18:07] [deCONZ] Flur Leuchte: On: changed to false (from true)
[29/10/2023, 09:18:09] [deCONZ] Flur Leuchte: On: changed to true (from false)
[29/10/2023, 09:18:44] [deCONZ] Flur Leuchte: On: changed to false (from true)
[29/10/2023, 09:18:44] [deCONZ] Flur Leuchte: On: set to true (from false)
[29/10/2023, 09:18:54] [deCONZ] Flur Leuchte: Brightness: set to 58% (from 81%)
[29/10/2023, 09:18:54] [deCONZ] Flur Leuchte: On: set to false (from true)
[29/10/2023, 09:19:41] [deCONZ] Flur Leuchte: Brightness: changed to 81% (from 58%)
[29/10/2023, 09:19:41] [deCONZ] Flur Leuchte: On: changed to true (from false)
[29/10/2023, 09:20:20] [deCONZ] Flur Leuchte: On: changed to false (from true)
[29/10/2023, 09:21:38] [deCONZ] Flur Leuchte: On: changed to true (from false)
[29/10/2023, 09:21:57] [deCONZ] Flur Leuchte: On: changed to false (from true)
[29/10/2023, 09:22:45] [deCONZ] Flur Leuchte: On: changed to true (from false)
[29/10/2023, 09:23:08] [deCONZ] Flur Leuchte: On: changed to false (from true)
[29/10/2023, 09:23:24] [deCONZ] Flur Leuchte: On: changed to true (from false)
[29/10/2023, 09:24:00] [deCONZ] Flur Leuchte: On: changed to false (from true)
[29/10/2023, 09:30:17] [deCONZ] Flur Leuchte: On: changed to true (from false)
[29/10/2023, 09:30:33] [deCONZ] Flur Leuchte: On: changed to false (from true)
Alles anzeigen
1. Liste der Accessoires anzeigen
Nachdem man die BridgeID seiner Gateways abgerufen hat (siehe meine vorherige Anleitung), zeigt man sich nun mit /accessories alle Accessoires an:
curl -s http://127.0.0.1:41699/gateways/00212EFFFF0405D7/accessories
2. Das Accessory raussuchen, dessen Einstellungen man anpassen will
Von der Liste der Accessories (am besten kopieren und auf jsonlint.com in "schön" validieren) sich das entsprechende Accessory raussuchen und die Accessory ID (erste Zeile) kopieren:
,
"00178801092CCA12": {
"manufacturer": "Philips",
"model": "5633030P9",
"name": "Flur Leuchte",
"resources": [
"/lights/2"
],
"type": "lights",
"zigbee": true
},
Alles anzeigen
3. Aktuellen Einstellungen des Accessory anzeigen
Accessory ID an den vorhierigen CURL Befehl anhängen:
curl -s http://127.0.0.1:41699/gateways/00212EFFFF0405D7/accessories/00178801092CCA12
Ausgabe:
{
"id": "00178801092CCA12",
"manufacturer": "Philips",
"model": "5633030P9",
"name": "Flur Leuchte",
"resources": [
"/lights/2"
],
"settings": {
"expose": true,
"logLevel": 2,
"serviceName": "Light",
"wallSwitch": false
},
"type": "lights",
"zigbee": true
}
Alles anzeigen
4. Einstellung vornehmen
Das LogLevel steht aktuell auf 2 (Standard-Wert). Um Einstellungen an den "settings" vorzunehmen setzen wir an den vorherigen CURL Befehl noch /settings hinten dran und fügen davor den PUT Befehl ein, der das Loglevel auf 0 setzt:
curl -s -X PUT -d '{"logLevel": 0}' http://127.0.0.1:41699/gateways/00212EFFFF0405D7/accessories/00178801092CCA12/settings
Dadurch sollten nun keine Einträge mehr von dem Gerät "Flur Leuchte" im Homebridge Log landen.
Mit "logLevel": 0 werden nun nur noch Meldungen vom Typ fatal, error und warning ausgegeben. Info Meldungen wie z.B. Bewegungserkennungen, Statusänderungen (von true auf false und andersrum) werden nun nicht mehr ins Log geschrieben.
Weitere Informationen zu den Log Meldungen: