Hallo himself
Ich bin gerade dabei deine Erkenntnisse nachzustellen, jedoch habe ich eine Frage:
Welche IP hast du eingetragen ? die von SHNG oder von der Bridge?
Danke
Ankündigung
Einklappen
Keine Ankündigung bisher.
Support Thread für das hue2 Plugin
Einklappen
X
-
weiteres Update: Ich habe die ip manuell in dem discover_bridges.py script gesetzt (bei discovery methode mdns):
Code:ip = '192.168.178.137' #socket.gethostbyname(service.server)
Vielleicht hilft es ja jemanden.
Einen Kommentar schreiben:
-
Hier ein kurzes Update: ich habe die betreffenen Zeilen in der __init__.py auskommentiert. Jetzt startet das plugin, findet aber die bridge nicht. Log sagt folgendes:
Code:2022-09-15 18:40:33 ERROR plugins.hue2 discover_bridges: Exception in discover_bridges(): [Errno -2] Name or service not known 2022-09-15 18:40:51 ERROR plugins.hue2 discover_bridges: Exception in discover_bridges(): [Errno -2] Name or service not known
@jonny7792 magst du mal schauen ob das Verhalten bei dir das gleiche ist? Danke!
Einen Kommentar schreiben:
-
Hallo zusammen,
habe das gleiche Problem wie Jonny. Error bei Autodiscover ohne gesetzte IP Adresse:
Code:2022-09-14 12:41:56 ERROR lib.plugin Plugin 'hue2' from section 'HUE2' exception: 'ip' > Traceback (most recent call last): > File "/usr/local/smarthome/lib/plugin.py", line 162, in __init__ > plugin_thread = PluginWrapper(smarthome, plugin, classname, classpath, args, instance, self.meta, self._configfile) > File "/usr/local/smarthome/lib/plugin.py", line 629, in __init__ > exec("self.plugin.__init__(smarthome{0}{1})".format("," if len(arglist) else "", argstring)) > File "<string>", line 1, in <module> > File "/usr/local/smarthome/plugins/hue2/__init__.py", line 135, in __init__ > if self.bridge['ip'] != self.bridge_ip: > KeyError: 'ip'
Interessant ist es wenn ich die korrekte IP Adresse in der plugin.yaml hinterlege. Das Web IF funktioniert dann. Ich finde aber keine Bridge (Laut Doku funktioniert der Discover Modus nur wenn keine IP gesetzt ist).
Code:2022-09-14 13:13:28 ERROR plugins.hue2 Bridge 'ecb5fa9e9b53' returned exception QhueException: 4 -> method, GET, not available for resource, / 2022-09-14 13:13:28 WARNING plugins.hue2 Bridge '' is treated as unconfigured
Code:2022-09-14 13:26:30 ERROR lib.plugin Plugin 'hue2' from section 'hue2' exception: HTTPConnectionPool(host='192.168.178.10', port=80): Max retries exceeded with url: /description.xml (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f8787
Alfons
Einen Kommentar schreiben:
-
Hallo zusammen
ich wollte gerne meine HUE v1 auf die v2 Updaten jedoch bekomme ich das Plugin nicht mal zum laufen.
Angaben zum System:
SmartHomeNG Version:v1.9.2-master (cc57a0ad) in /usr/local/smarthome (tags/v1.9.2)
Betriebssystem: Debian GNU/Linux 11 (bullseye)
Python Version:3.9.2 final (/usr/bin/python3)
HUE Info aus dem LOG
Code:2022-09-12 09:35:11 ERROR lib.plugin Plugin 'hue2' from section 'hue' exception: 'ip' > Traceback (most recent call last): > File "/usr/local/smarthome/lib/plugin.py", line 162, in __init__ > plugin_thread = PluginWrapper(smarthome, plugin, classname, classpath, args, instance, self.meta, self._configfile) > File "/usr/local/smarthome/lib/plugin.py", line 629, in __init__ > exec("self.plugin.__init__(smarthome{0}{1})".format("," if len(arglist) else "", argstring)) > File "<string>", line 1, in <module> > File "/usr/local/smarthome/plugins/hue2/__init__.py", line 135, in __init__ > if self.bridge['ip'] != self.bridge_ip: > KeyError: 'ip'
Einen Kommentar schreiben:
-
Ich glaube, wir haben etwas aneinander vorbeigeredet.
Nochmal von vorn: in der Doku zum Hue2 Plugin, Kapitel Verwendung von stucts steht: <zitatAnfang>
[...]
Das hat die selbe Wirkung, als hätte man ohne Struktur Template folgende Item-Konfiguration vorgenommen:
Code:test_leuchte: name: Vorlage-Struktur für eine Hue Leuchte type: foo hue2_resource: light onoff: type: bool hue2_resource: ..:. hue2_id: ..:. hue2_function: on level: type: num hue2_resource: ..:. hue2_id: ..:. hue2_function: bri hue: type: num hue2_resource: ..:. hue2_id: ..:. hue2_function: hue sat: type: num hue2_resource: ..:. hue2_id: ..:. hue2_functione: sat ct: type: num hue2_resource: ..:. hue2_id: ..:. hue2_function: ct
In diesem Codebeispiel gibt es nach meinem Verständnis 2 Fehler:
1. beim Item test_leuchte fehlt das Attribut+Parameter hue2_id: 3
2: beim (Sub-)Item sat ist das Attribut hue2_functione angegeben. Es sollte hue2_function heißen (ohne das e)
Zudem war bei mir das Beispiel nicht lauffähig, da hue2_function: on nicht funktionierte. Nach dem Ergänzen der Hochkommas (-> hue2_function: 'on') läuft es.
=> Vorschlag daher, diese 3 Punkte im oben zitierten Codebeispiel aus der Doku zu ändern, damit es copy+paste lauffähig ist.
Unabhängig davon ist halt die Frage, ob man nicht empfiehlt alle String-Parameter in Hochkommas anzugeben, um Probleme (Namens-Kollision?) wie bei "on" zu vermeiden
=> daher der Vorschlag mit dem Codebeispiel in Post 88, welches alle drei Probleme lösen würde und Verwirrung durch optionale/notwendige Hochkommas möglichst vermeidet.Zuletzt geändert von dafra; 08.05.2022, 22:48.
Einen Kommentar schreiben:
-
Zitat von dafra Beitrag anzeigenalso mindestens das 'e' für bei der Funktion "sat" muss weg
Zitat von dafra Beitrag anzeigendie hue2_id: 3 für das item test_leuchte muss hin
Übrigens: Die mit dem Plugin mitkommenden structs haben alle Angaben für die Funktion ohne Anführungszeichen. Und ja, die nutze ich seit vielen Monaten und sie funktionieren.
Einen Kommentar schreiben:
-
Bei mir funktioniert es seit langem auch ohne die Änderung.
Außer bei on konnte ich die Hochkommas auch weglassen - es hat immer noch funktioniert. Allerdings finde ich es persöhnlich besser, wenn man in einem Tutorial einen "robusten" Stil pflegt und den User nicht mit yaml Eigenheiten konfrontiert. Daher der Vorschlag es wie beschrieben in die Doku zu übernehmen. Aber nur meine Meinung.
Welche Version von ruamel.yaml hast Du installiert?
Code:[smarthome@SmartHomeNG ~]$ pip show ruamel.yaml Name: ruamel.yaml Version: 0.16.7 Summary: ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order Home-page: https://bitbucket.org/ruamel/yaml Author: Anthon van der Neut Author-email: a.van.der.neut@ruamel.eu License: MIT license Location: /home/smarthome/.local/lib/python3.8/site-packages
Zuletzt geändert von dafra; 06.05.2022, 22:29.
Einen Kommentar schreiben:
-
Bei mir funktioniert es seit langem auch ohne die Änderung.
Eine Frage dazu: Welche Version von ruamel.yaml hast Du installiert?
Einen Kommentar schreiben:
-
Zu Punkt 1: Wäre dann jemand so nett, das Code-Beispiel im Kapitel Verwedenung von Structs in der Doku zu fixen? Folgender Code funktioniert bei mir:
[...] Das hat die selbe Wirkung, als hätte man ohne Struktur Template folgende Item-Konfiguration vorgenommen:
Code:test_leuchte: name: Vorlage-Struktur für eine Hue Leuchte type: foo hue2_resource: light hue2_id: 3 onoff: type: bool hue2_resource: ..:. hue2_id: ..:. hue2_function: 'on' level: type: num hue2_resource: ..:. hue2_id: ..:. hue2_function: 'bri' hue: type: num hue2_resource: ..:. hue2_id: ..:. hue2_function: 'hue' sat: type: num hue2_resource: ..:. hue2_id: ..:. hue2_function: 'sat' ct: type: num hue2_resource: ..:. hue2_id: ..:. hue2_function: 'ct'
Einen Kommentar schreiben:
-
Zu Punkt 1: Das ist eine Spezialität von YAML in der eingesetzten Version. Da wurden/werden einige Strings speziell ausgewertet. Das wird erst verschwinden, wenn SmartHomeNG auf eine neuere Version von YAML umstellt:
ZU Punkt 2: Das geht mir genauso. Ich habe den Steller des PR Requests gebeten die Doku zu ergänzen.
Einen Kommentar schreiben:
-
Hallo Martin,
erst einmal super vielen Dank für Deine Mühen und das neue Hue2 Plugin! Ich habe es momentan nur auf meinem Test-System (SHng 1.9.0 / image von OA@Pi4) installiert, aber es zeichnet sich jetzt schon ab dass alles sehr viel runder läuft. Auch die Konfig über die grafische Oberfläche ist sehr viel zugänglicher!
Zwei Punkte sind mir jedoch aufgefallen:
wie im Vorgänger-Post schon angemerkt, braucht das Schalten Hochkommas, also
Code:hue2_function: on
Code:hue2_function: 'on'
Bei 'bri', 'hue' und 'sat' ist es hingegen egal, ob in den Items mit oder ohne Hochkommas angegeben wird (weitere Funktionen habe ich nicht ausprobiert). IMHO sollte das im plugin gefixt werden.
Zudem gibt es in der hue2 Docu noch nen typo im Beispiel zu sat, dort steht:
hue2_functione: sat
Zweiter Punkt: Mir erschließt sich aus der Doku nicht, wie die Funktion dpt3-dim genutzt werden kann. Hat da jemand ein Beispiel?
Einen Kommentar schreiben:
-
so funktioniert es jetzt endlich:
Code:Stehle: name: Stehle hue2_id: 1 hue2_resource: light # struct: hue2.light AnAus: type: bool hue2_resource: light hue2_id: 1 hue2_function: 'on' sim: track dimmen: type: num hue2_resource: light hue2_id: 1 cache: 'on' hue2_function: bri sim: track
Einen Kommentar schreiben:
-
lt. Dokumentation ist "hue2_resource: light" der default.
mit den structs bin ich vor einiger Zeit schon reingefallen, habe 'leider' keine bunten HUE Lampen.
Code:2022-02-16 12:59:04 WARNING plugins.hue2 poll_bridge_lights: Function ct not supported by light '1' (item 'EG.Wohnen.Licht.Stehle.ct') 2022-02-16 12:59:04 WARNING plugins.hue2 poll_bridge_lights: Function colormode not supported by light '1' (item 'EG.Wohnen.Licht.Stehle.colormode') 2022-02-16 12:59:04 WARNING plugins.hue2 poll_bridge_lights: Function effect not supported by light '1' (item 'EG.Wohnen.Licht.Stehle.effect') 2022-02-16 12:59:04 WARNING plugins.hue2 poll_bridge_lights: Function hue not supported by light '1' (item 'EG.Wohnen.Licht.Stehle.hue') 2022-02-16 12:59:04 WARNING plugins.hue2 poll_bridge_lights: Function sat not supported by light '1' (item 'EG.Wohnen.Licht.Stehle.sat') 2022-02-16 12:59:04 WARNING plugins.hue2 poll_bridge_lights: Function xy not supported by light '1' (item 'EG.Wohnen.Licht.Stehle.xy') 2022-02-16 12:59:04 WARNING lib.item.item Item EG.Wohnen.Licht.Stehle.xy: value "" does not match type list. Via hue2 None
Einen Kommentar schreiben:
-
Zitat von whe Beitrag anzeigeneine böse Falle war schon, dass im Webif keine Items angezeigt wurden; da muss man bei jedem sub-item die hue2_id eintragen
Und: Bei Deinen Item Definitionen fehlt jeweils das Attribut hue2_resource
Die Verwendung der mit dem hue2 Plugin kommenden structs nimmt Dir dieses übrigens ab
Ansonsten hilft auch ein Blick in die Dokumentation des Plugins: www.smarthomeng.de/user/plugins/hue2/user_doc.html
Einen Kommentar schreiben:
Einen Kommentar schreiben: