NEWS
[Aufruf] Logitech Harmony 1.0.0 GitHub Version
-
Gibt nun eine 0.9.6, da die Dependencies geupdated wurden, musste intern auch etwas geändert werden.
Zusätzlich habe ich die Dependencies exakt auf die aktuell funktionierende Version festgelegt, da der Developer des Harmony Bibliothek wohl teilweise intern noch am umsortieren ist und somit die keine inkompatible Version installiert werden kann. Somit kann ich in Ruhe testen, bevor ich die Abhängigkeiten hoch schraube und es bei den Nutzern nicht läuft.
-
Super Sache, freue mich auf den PR.
Ich weiß nicht, ob du schon was am Life-Cycle verändert hast, meine letze Version hatte die Anwesenheit des Hubs ja über discovery gelöst. Das ist leider generell ein Problem, da es oft vorkommen kann, dass z. B. ein Router plötzlich Multicast Traffic filtert und der Hub somit nicht mehr gefunden wird (Multicast spam wirkt sich negativ auf WLAN aus). Ich wollte das immer anders lösen und discovery nicht mehr nutzen aber bin nie dazu gekommen.
So richtig sinnvoll ist discovery eigtl. nur um Hubs und deren IPs einmalig aufzuspüren, für alles andere ist es zu unzuverlässig. Und auch das funktioniert je nach Netzwerkkonfiguration nicht, obwohl der Hub ansonsten erreichbar wäre.
-
Ich weiß nicht, ob du schon was am Life-Cycle verändert hast, meine letze Version hatte die Anwesenheit des Hubs ja über discovery gelöst. Das ist leider generell ein Problem, da es oft vorkommen kann, dass z. B. ein Router plötzlich Multicast Traffic filtert und der Hub somit nicht mehr gefunden wird (Multicast spam wirkt sich negativ auf WLAN aus). Ich wollte das immer anders lösen und discovery nicht mehr nutzen aber bin nie dazu gekommen.
So richtig sinnvoll ist discovery eigtl. nur um Hubs und deren IPs einmalig aufzuspüren, für alles andere ist es zu unzuverlässig. Und auch das funktioniert je nach Netzwerkkonfiguration nicht, obwohl der Hub ansonsten erreichbar wäre. `
Hi,
ich habe an der Logik bislang nichts verändert, außer dass man eine Whitelist nutzen kann, wobei dass ja letzendlich auch nur davon abhält, dass sich der Adapter mit anderen Hubs nicht verbindet.
Ansonsten hat es sich auf das aktualisieren der Dependencies beschränkt + Nutzung von Javascript ES6. Welchen Ansatz hast du dir denn vorgestellt gehabt als Alternative zu Discovery? Ich habe mich bislang nur sehr oberflächlich in die Logik des Adapters rein gedacht.
beste Grüße
fox
-
Das ist wirklich schwierig und im Prinzip hilft nur Trial & Error. Vielleicht hilft ein regelmäßiger Ping, aber auch das garantiert nicht, dass die XMPP Verbindung noch aufgebaut ist.
Discovery -> Hub sendet regelmäßig Multicast Broadcasts ins Netzwerk, kommt eine gewisse weile keiner an, glaubt der Adapter, dass der Hub nicht mehr erreichbar ist. Das kann stimmen, muss es aber wie gesagt nicht.
Ping -> Ist der Hub pingbar? Das würde zumindest garantieren, dass er im Netzwerk und erreichbar ist. Allerdings sagt ein erfolgreicher Ping nichts darüber aus, ob eine XMPP Verbindung hergestellt werden kann bzw. ob eine vorher hergestellte Verbindung noch aktiv ist.
Ich weiß nicht, wie sich neuere Versionen des Hubs und der XMPP-Lib verhalten, beim erstellen der letzten Version war das größte Problem, dass der Hub die XMPP-Verbindung mehr oder weniger heimlich beendet hat während der Adapter davon nichts mitbekommen hat.
Was der Adapter bewerkstelligen können sollte:
Immer, wenn der/ein Hub im Netzwerk aktiv ist, sollt eine Verbindung aufgebaut werden. Disconnects der XMPP- und Netzwerkverbindung (Hub-Neustarts, Netzwerkunterbrechungen) sollten erkannt werden und möglichst schnell eine neue Verbindung aufgebaut werden.
-
Das ist wirklich schwierig und im Prinzip hilft nur Trial & Error. Vielleicht hilft ein regelmäßiger Ping, aber auch das garantiert nicht, dass die XMPP Verbindung noch aufgebaut ist.
Discovery -> Hub sendet regelmäßig Multicast Broadcasts ins Netzwerk, kommt eine gewisse weile keiner an, glaubt der Adapter, dass der Hub nicht mehr erreichbar ist. Das kann stimmen, muss es aber wie gesagt nicht.
Ping -> Ist der Hub pingbar? Das würde zumindest garantieren, dass er im Netzwerk und erreichbar ist. Allerdings sagt ein erfolgreicher Ping nichts darüber aus, ob eine XMPP Verbindung hergestellt werden kann bzw. ob eine vorher hergestellte Verbindung noch aktiv ist.
Ich weiß nicht, wie sich neuere Versionen des Hubs und der XMPP-Lib verhalten, beim erstellen der letzten Version war das größte Problem, dass der Hub die XMPP-Verbindung mehr oder weniger heimlich beendet hat während der Adapter davon nichts mitbekommen hat.
Was der Adapter bewerkstelligen können sollte:
Immer, wenn der/ein Hub im Netzwerk aktiv ist, sollt eine Verbindung aufgebaut werden. Disconnects der XMPP- und Netzwerkverbindung (Hub-Neustarts, Netzwerkunterbrechungen) sollten erkannt werden und möglichst schnell eine neue Verbindung aufgebaut werden. `
Schon mal danke für die Infos und Anregungen. Falls ich mal Zeit + Lust habe, werde ich etwas rumprobieren.
beste Grüße
fox
-
Update aus Github von 0.9.3 auf MacOS funktionierte reibungslos.
Danke fürs Entwickeln!
Pix
-
Auch gerade installiert und wird jetzt ausgiebig getestet.
Vielen Dank für deine Mühe!
-
Zumindest bei mir läuft die 0.9.6 seit ein paar Tagen absolut fehlerfrei und ohne eine einzige Logmeldung.
-
Hallo zusammen…..
Habe gerade das Update auf 0.96 gemacht. Werde das ganze mal beobachten und berichten wenn was nicht rund läuft.
Gruß Markus
Gesendet von unterwegs mit Tapatalk
-
Man kommt mittlerweile auch auf die 0.9.6, indem man den Adapter einfach von GitHub installiert über das Dropdown. Muss also nicht mehr extra von meinem Repo gezogen werden, da die Änderungen nun auch in pmant's Repo sind.
-
Genau, ich warte noch etwas ab und dann pushe ich es auch auf npm.
-
Ich hatte gehofft, dass die neue Version nun auch bei mir läuft. Leider nicht.
Mein ioBroker läuft auf einem Raspberry Pi der sowohl per LAN (192.168.1.0) als auch über WLAN (192.168.3.0) verbunden ist. Beide Netzwerke sind unterschiedliche VLANs. Man kann von VLAN 1 auf Geräte im VLAN 3 zugreifen, nicht jedoch umgekehrt. Mein Harmony-Hub hängt im VLAN 3 (192.168.3.0).
Leider findet der Adapter den Hub nicht, auch wenn ich dessen IP per Hand hinzufüge (und den Adapter danach neu starte). User und Passwort sind immer deaktiviert.
Kann man da was machen (außer den Hub in das andere VLAN zu hängen)?
-
Derzeit leider nicht. Müsste in etwa dieses Issue sein: https://github.com/Pmant/ioBroker.harmony/issues/20
Ich denke, das sollte selbst mit dem Discovery Modul möglich sein. Der Harmony Adapter ist bei mir nicht so hoch priorisiert, wenn mich die Langeweile überkommt, werde ich es mir gerne mal anschauen.
-
Schade.
Wenn ich das Netzwerkkabel abhänge, der Raspi also nur über WLAN läuft, findet er den Hub. Doch wenn das Kabel wieder an ist, ist auch die Kommunikation wieder weg. Mir würde es reichen, wenn man die Netzwerkschnittstelle ('eth0' bzw. 'wlan0') auswählen könnte.
-
@WaJoWi:Schade. `
Installiere mal von meinem GitHub: https://github.com/foxriver76/ioBroker.harmony
dann Upload des Adapters und anschließend in den Einstellungen Discovery-Subnetz konfigurieren. Evtl bringts das.
-
Hallo,
danke für deine Mühe. Habe mich riesig gefreut, dass jemand den Fehler beheben will.
Aber ich kann leider nichts gutes berichten. Bei mir springt der Adapter nach dem Update immer von rot auf grün schnell hin und her. Bei mir wird aber beim Verlassen vom Haus, WLAN und Stromzufuhr ausgeschaltet. Seitdem spinnt der Adapter. Da gabs vorher solche Probleme nicht. Die alte Version lief zwar nicht immer aber die 0.9.6 läuft jetzt leider gar nicht mehr. Muß wieder downgraden aber hoffe dir hilft das Log weiter
host.ubuntu 2018-10-13 21:43:35.597 info Restart adapter system.adapter.harmony.0 because enabled
host.ubuntu 2018-10-13 21:43:35.597 error instance system.adapter.harmony.0 terminated with code 0 (OK)
host.ubuntu 2018-10-13 21:43:35.597 error Caught by controller[0]: at endReadableNT (_stream_readable.js:974:12)
host.ubuntu 2018-10-13 21:43:35.597 error Caught by controller[0]: at Socket.emit (events.js:185:7)
host.ubuntu 2018-10-13 21:43:35.597 error Caught by controller[0]: at emitNone (events.js:91:20)
host.ubuntu 2018-10-13 21:43:35.597 error Caught by controller[0]: at Socket.socket.on (/opt/iobroker/node_modules/@harmonyhub/discover/dist/responseCollector.js:39:22)
host.ubuntu 2018-10-13 21:43:35.597 error Caught by controller[0]: at ResponseCollector.emit (events.js:188:7)
host.ubuntu 2018-10-13 21:43:35.597 error Caught by controller[0]: at emitOne (events.js:96:13)
host.ubuntu 2018-10-13 21:43:35.597 error Caught by controller[0]: at Explorer.handleResponse (/opt/iobroker/node_modules/@harmonyhub/discover/dist/explorer.js:77:18)
host.ubuntu 2018-10-13 21:43:35.596 error Caught by controller[0]: at Explorer.emit (events.js:188:7)
host.ubuntu 2018-10-13 21:43:35.596 error Caught by controller[0]: at emitOne (events.js:96:13)
host.ubuntu 2018-10-13 21:43:35.596 error Caught by controller[0]: at Explorer.discover.on.hub (/opt/iobroker/node_modules/iobroker.harmony/harmony.js:195:36)
host.ubuntu 2018-10-13 21:43:35.596 error Caught by controller[0]: TypeError: Cannot read property 'length' of undefined
harmony.0 2018-10-13 21:43:35.581 error uncaught exception: Cannot read property 'length' of undefined
harmony.0 2018-10-13 21:43:34.216 info [DISCOVER] searching for Harmony Hubs…
harmony.0 2018-10-13 21:43:34.216 debug Schedule restart: 3 20 * * *
harmony.0 2018-10-13 21:43:34.216 info starting. Version 0.9.6 in /opt/iobroker/node_modules/iobroker.harmony, node: v6.14.1
host.ubuntu 2018-10-13 21:43:33.597 info instance system.adapter.harmony.0 started with pid 25106
host.ubuntu 2018-10-13 21:43:32.582 info Restart adapter system.adapter.harmony.0 because enabled
-
Hallo,
danke für deine Mühe. Habe mich riesig gefreut, dass jemand den Fehler beheben will.
Aber ich kann leider nichts gutes berichten. Bei mir springt der Adapter nach dem Update immer von rot auf grün schnell hin und her. Bei mir wird aber beim Verlassen vom Haus, WLAN und Stromzufuhr ausgeschaltet. Seitdem spinnt der Adapter. Da gabs vorher solche Probleme nicht. Die alte Version lief zwar nicht immer aber die 0.9.6 läuft jetzt leider gar nicht mehr. Muß wieder downgraden aber hoffe dir hilft das Log weiter
host.ubuntu 2018-10-13 21:43:35.597 info Restart adapter system.adapter.harmony.0 because enabled
host.ubuntu 2018-10-13 21:43:35.597 error instance system.adapter.harmony.0 terminated with code 0 (OK)
host.ubuntu 2018-10-13 21:43:35.597 error Caught by controller[0]: at endReadableNT (_stream_readable.js:974:12)
host.ubuntu 2018-10-13 21:43:35.597 error Caught by controller[0]: at Socket.emit (events.js:185:7)
host.ubuntu 2018-10-13 21:43:35.597 error Caught by controller[0]: at emitNone (events.js:91:20)
host.ubuntu 2018-10-13 21:43:35.597 error Caught by controller[0]: at Socket.socket.on (/opt/iobroker/node_modules/@harmonyhub/discover/dist/responseCollector.js:39:22)
host.ubuntu 2018-10-13 21:43:35.597 error Caught by controller[0]: at ResponseCollector.emit (events.js:188:7)
host.ubuntu 2018-10-13 21:43:35.597 error Caught by controller[0]: at emitOne (events.js:96:13)
host.ubuntu 2018-10-13 21:43:35.597 error Caught by controller[0]: at Explorer.handleResponse (/opt/iobroker/node_modules/@harmonyhub/discover/dist/explorer.js:77:18)
host.ubuntu 2018-10-13 21:43:35.596 error Caught by controller[0]: at Explorer.emit (events.js:188:7)
host.ubuntu 2018-10-13 21:43:35.596 error Caught by controller[0]: at emitOne (events.js:96:13)
host.ubuntu 2018-10-13 21:43:35.596 error Caught by controller[0]: at Explorer.discover.on.hub (/opt/iobroker/node_modules/iobroker.harmony/harmony.js:195:36)
host.ubuntu 2018-10-13 21:43:35.596 error Caught by controller[0]: TypeError: Cannot read property 'length' of undefined
harmony.0 2018-10-13 21:43:35.581 error uncaught exception: Cannot read property 'length' of undefined
harmony.0 2018-10-13 21:43:34.216 info [DISCOVER] searching for Harmony Hubs…
harmony.0 2018-10-13 21:43:34.216 debug Schedule restart: 3 20 * * *
harmony.0 2018-10-13 21:43:34.216 info starting. Version 0.9.6 in /opt/iobroker/node_modules/iobroker.harmony, node: v6.14.1
host.ubuntu 2018-10-13 21:43:33.597 info instance system.adapter.harmony.0 started with pid 25106
host.ubuntu 2018-10-13 21:43:32.582 info Restart adapter system.adapter.harmony.0 because enabled `
Nach dem Installieren eines Adapters von GitHub, muss dieser zwingend geuploadet werden.
-
Installiere mal von meinem GitHub: https://github.com/foxriver76/ioBroker.harmony
dann Upload des Adapters und anschließend in den Einstellungen Discovery-Subnetz konfigurieren. Evtl bringts das. `
Und wie es das bringt!Vielen Dank, damit kann ich den Adapter endlich auch verwenden.
-
@WaJoWi:Vielen Dank, damit kann ich den Adapter endlich auch verwenden. `
Top, freut mich.
-
Also bei mir macht der leider immer noch die gleichen Probleme. Erst läuft er und nach undefinierter Zeit geht die Verbindung mit dem Host verloren. Dann hilft meist nur Instanz entfernen, iobBroker neustarten und dann wieder installieren.
Benutzer zur Zeit folgende Versionen
ioBroker admin 3.4.7
js-controller 1.4.2
Harmony Adapter 0.9.6
Habt ihr noch eine Idee?