Logitech Harmony Hub Modul [Testversion]

Ich habe wieder auf die Stable Version des Moduls gewechselt, den Logitech Hub ein paar Minuten vom Strom getrennt und nochmals per App und auch per Software versucht den Roku zu finden - leider immer noch erfolgslos!

Was mich immer noch wundert, das das andere Modul welches ich getestet habe reibungslos funktioniert, was ist da anders?

das ist allerdings merkwürdig, unterscheiden sich die Hubs von Logitech von der Hardware??

Hi,

sollen sie eigentlich nicht. Merkwürdig ist allerdings das der Hub vom SmartKeyboard nicht mit der Desktopversion von MyHarmony konfiguriert werden kann. Das könnte man aber auch erreichen indem man dem Hub spezielle Seriennummern verpasst.

@Fonzo,
hast Du was geändert? Statt SSDP Roku heißt es jetzt SSDP Harmony und es wurde kein WebHook angelegt.

Ralf

Wenn ich Zeit finde kann ich ja mal schauen ob ich da Unterschiede finde.

Also mein Debug-fenster sieht so aus

Einen Transmit konnte ich ausmachen

14.07.2020, 19:40:23 | TRANSMIT [239.255.255.250:1900] | NOTIFY * HTTP/1.1<CR><LF>HOST: 239.255.255.250:1900<CR><LF>CACHE-CONTROL: max-age=300<CR><LF>LOCATION: http://192.168.178.121:42450/<CR><LF>NT: upnp:rootdevice<CR><LF>USN: uuid:05b827b3f1d4be2311ecf48726868615::upnp:rootdevice<CR><LF>NTS: ssdp:alive<CR><LF>SERVER: Roku/1.0 UPnP/1.1<CR><LF>Content_Length: 0<CR><LF><CR><LF>

Das wäre ja auch schlecht wenn IP-Symcon gar nichts schicken würde ;-). Das Problem ist das entweder etwas mit dem Notify nicht stimmt oder aber das Rätsel warum der ein oder andere Harmony Hub das dann erkennt ein anderer Harmony Hub aber wieder nicht.

wie bekomme ich das raus?

14.07.2020, 19:40:23 |           SendNotify | NOTIFY * HTTP/1.1<CR><LF>HOST: 239.255.255.250:1900<CR><LF>CACHE-CONTROL: max-age=300<CR><LF>LOCATION: http://192.168.178.121:42450/<CR><LF>NT: upnp:rootdevice<CR><LF>USN: uuid:05b827b3f1d4be2311ecf48726868615::upnp:rootdevice<CR><LF>NTS: ssdp:alive<CR><LF>SERVER: Roku/1.0 UPnP/1.1<CR><LF>Content_Length: 0<CR><LF><CR><LF>

Hallo,
anbei meine aktuellen Debugs aus IP-Syncom (vielleicht findet hier jemand was auffälliges…):

Logitech Harmony

Multcast-Socket:

Server-Socket

Mir ist schon seit längerem aufgefallen, das wenn ich die Instanzkonfiguration des Client Socket (Harmonyhub) längere Zeit geöffnet habe, ein leichtes Aufblitzen (oder flimmern) am Monitor feststellen kann. Als ob im Hintergrund irgendetwas schaltet, und das kann ich auch nur bei dieser Instanz feststellen.

Gruß Yansop.

Hallo nochmals,

hat das aufblitzen des Monitors evtl… mit folgenden Meldungen zu tun?
Der ClientSocket öffnet den Socket und in der gleichen Sekunde schließt der ServerSocket die Verbindung??

Hallo,

da ich eine neue Aktion in meiner Harmony erstellt habe, wollte ich seit langem mal wieder die Aktionen auslesen, da ich die Aktion in IPS brauche. Leider bekomme ich eine Fehlermeldung sobald ich aus Setup Harmony klicke und es wird kein neues Skript mit der Aktion unter LogitechHarmony/Geräte/Logitech/ (IP-Adresse)/Aktivitäten angelegt.

Hoffe, es kann jemand mit der Fehlermeldung etwas anfangen😉

Grüße

Mit dem Bild selber kann man leider nichts anfangen. Das einzige was man daraus entnehmen kann, dass Du mit der alten Legacy Konsole arbeitest. Welche Version von IP-Symcon nutzt Du denn zur Zeit? Du solltest die Pro Konsole oder zumindest die Web Konsole nutzten.
Ansonsten kann man nur näher auf die Ursache schließen wenn Du das Debug Fenster des Splitters öffnest und dann nochmals auf den Button drückst. Dann sollte irgendwas im Debug Fenster stehen, daraus kann man dann zumindest eher Rückschlüsse ziehen, was bei Dir die Ursache für die Fehlermeldung sein könnte.

Ich habe IPS5.4 installiert.

Über die Pro Konsole scheint es geklappt zu haben. Bekomme aber noch eine Hinweismeldung. Kann ich diese ignorieren?

Grüße

Schaue ich mir an, danke für den Hinweis.

Hallo,

schön wäre wenn man die Keepalive (alle 50sec.) in das Modul einbauen würde,
so wäre kein ständiges schliessen und öffnen des Sockets mehr notwendig.
Diese neu öffnen des Sockets verursacht bei mir des öfteren das zB. die Steckdose nicht geschaltet wird wenn ich die falsche Sekunde erwische.

Das Logfile wäre auch „aufgeräumter“ :slight_smile:

No more commands after connection timeout on harmony · Issue #215 · homebridge/homebridge · GitHub
https://svn.fhem.de/fhem/trunk/fhem/FHEM/37_harmony.pm (Zeile 1952)

KeepAlive XMPP Ping.
Ich habe die PING() Funktion versucht mal anzupassen. (Zeile 962)

    public function Ping()
    {
        $id = $this->GetValue("HarmonyIdentity");
        $this->XMPP_Send("<iq type='get' id='ping-' . $id . '><ping xmlns='urn:xmpp:ping'/></iq>");
    }

Jedoch scheint dies nicht die gesuchte „ID“ zu sein.

Ich habe ein Script Ereignis alle 30 Sekunden laufen

<?php
HarmonyHUB_Ping(13530); #Harmony Splitter Instanz

und bekomme im Logfile dann ein:

12.08.2020 22:39:30 | 12439 | WARNING | Client Socket        | Fehler beim Lesen: End of file

EDIT:
$id, scheint einfach ein hochzählender Counter zu sein.
Was mir nicht klar ist, ob die Remote-ID in der XMPP_Send Funktion automatisch mitgesendet wird ?

EDIT2:
XMPP_Send beinhaltet keine RemoteID (die in Zeile 805 gar nicht ausgelesen wird),
jedoch keine Ahnung ob die RemoteID bei der XMPP Ping überhaupt benötigt wird

Fragen über Fragen :slight_smile:

Hi,
ich habe oft, sehr oft wenn ich eine Aktion per Alexa starte, einen Fehler bei der IO Instanz mit der Folge das, je nach Einstellung, bis zu 1 Minute kein Befehl mehr gesendet werden kann. Ich benutze in mindestens einem Zimmer praktisch permanent eine Neeo die an IPS sendet was dann den Hub steuert so das es in diesem Fall oft vorkommt.

Mit Hilfe des Kern-Moduls Event habe ich mir einen Workaround gebastelt.

In Event Control richte ich einen neuen Event für die Harmony IO Instanz ein und lasse es auf folgendes Script zeigen:


<?php
// Wenn Fehler
if ($_IPS['STATUS'] >= 200){
// Bei Bedarf mitloggen 40785 ist eine Bool Variable 
    if (GetValue(40785)) IPS_LogMessage("SZ2 IO Error ", $_IPS['STATUS']); 
// Bis zu 5 Versuche
    $count = 0;
    while ($count++ < 5){
// IO-Instanz vom Hub schließen
        IPS_SetProperty(52329, "Open", false);
        IPS_ApplyChanges(52329);
// 50usec warten könnte aber auch unnötig sein
        IPS_Sleep(50);
// IO-Instanz vom Hub öffnen
        IPS_SetProperty(52329, "Open", true);
        IPS_ApplyChanges(52329);
        $instance = IPS_GetInstance(52329);
        if ($instance['InstanceStatus'] < 200) break; 
    }
// Bei Bedarf mitloggen 40785 ist eine Bool Variable 
    if (GetValue(40785)) IPS_LogMessage("SZ2 IO count ", $count);
}
?>

Mit diesem kleinen Script konnte ich keine Hänger mehr feststellen. Im Log standen diverse IO-Fehler die in der selben Sekunde aber behoben wurden.

Ich hoffe es hilft auch anderen Benutzern.

Ralf

Hallo seit dem neuen Update 5.5 funktioniert SSDP Harmony nicht mehr im folgende Fehler kommen beim Starten:


06.10.2020 19:44:35 | 00000 | MESSAGE | ModuleLoader         | Lade Harmony Hub Bibliothek...
06.10.2020 19:44:35 | 00000 | MESSAGE | ModuleLoader         | # HarmonyConfigurator geladen
06.10.2020 19:44:35 | 00000 | MESSAGE | ModuleLoader         | # HarmonyDevice geladen
06.10.2020 19:44:35 | 00000 | MESSAGE | ModuleLoader         | # HarmonyRokuEmulator geladen
06.10.2020 19:44:35 | 00000 | MESSAGE | ModuleLoader         | # HarmonyfakeRoku geladen
06.10.2020 19:44:35 | 00000 | MESSAGE | ModuleLoader         | # HarmonyHub geladen
06.10.2020 19:44:35 | 00000 | MESSAGE | ModuleLoader         | # HarmonyDiscovery geladen
06.10.2020 19:44:35 | 00000 | MESSAGE | ModuleLoader         | # SSDPHarmony geladen

06.10.2020 19:44:45 | 47530 | MESSAGE | HarmonyRokuEmulator  | Erstelle...
06.10.2020 19:44:45 | 47530 | MESSAGE | HarmonyRokuEmulator  | Entferne...
06.10.2020 19:44:45 | 47530 | ERROR   | InstanceManager      | Kann Schnittstellen-Instanz nicht erstellen: <br />
<b>Warning</b>:  InstanceInterface is not available in <b>C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\Harmony Hub\module.php</b> on line <b>1411</b><br />
<br />
<b>Fatal error</b>:  Uncaught TypeError: strpos() expects parameter 1 to be string, bool given in C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\Harmony Hub\module.php:1412
Stack trace:
#0 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\Harmony Hub\module.php(1412): strpos(false, '![CDATA[')
#1 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\Harmony Hub\module.php(1398): HarmonyHub->GetHarmonyConfig()
#2 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\Harmony Hub\module.php(1377): HarmonyHub->GetHarmonyConfigJSON()
#3 C:\ProgramData\Symcon\scripts\__generated.inc.php(2559): HarmonyHub->GetAvailableAcitivities()
#4 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\Harmony fakeRoku\module.php(315): HarmonyHUB_GetAvailableAcitivities(55973)
#5 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\Harmony fakeRoku\module.php(415): HarmonyRokuEmulator->GetHubActivities(55973)
#6 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\Harmony fakeRoku\module.php(22): Harmony in <b>C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\Harmony Hub\module.php</b> on line <b>1412</b><br />


06.10.2020 19:44:45 | 35068 | MESSAGE | HarmonyDevice        | Erstelle...

06.10.2020 19:44:45 | 21312 | MESSAGE | HarmonyDevice        | Erstelle...

06.10.2020 19:44:45 | 25932 | MESSAGE | HarmonyDevice        | Erstelle...
06.10.2020 19:44:45 | 37178 | MESSAGE | HarmonyDevice        | Erstelle...

06.10.2020 19:44:45 | 52305 | MESSAGE | SSDPHarmony          | Erstelle...

06.10.2020 19:44:45 | 55973 | MESSAGE | HarmonyHub           | Erstelle...

06.10.2020 19:44:47 | 35708 | MESSAGE | Server Socket        | Eingehende Verbindung...
06.10.2020 19:44:47 | 52305 | ERROR   | FlowHandler          | Kann Daten nicht zur Instanz #52305 weiterleiten: <br />
<b>Warning</b>:  InstanceInterface is not available in <b>C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php</b> on line <b>158</b><br />
<br />
<b>Fatal error</b>:  Uncaught TypeError: Argument 3 passed to SSDPHarmony::SendSearchResponse() must be of the type int, bool given, called in C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php on line 326 and defined in C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php:235
Stack trace:
#0 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php(326): SSDPHarmony->SendSearchResponse('192.168.178.8', 55902, false)
#1 C:\Windows\System32\-(3): SSDPHarmony->ReceiveData('{"DataID":"{7A1...')
#2 {main}
  thrown in <b>C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php</b> on line <b>235</b><br />

06.10.2020 19:44:47 | 52305 | ERROR   | FlowHandler          | Kann Daten nicht zur Instanz #52305 weiterleiten: <br />
<b>Warning</b>:  InstanceInterface is not available in <b>C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php</b> on line <b>158</b><br />
<br />
<b>Fatal error</b>:  Uncaught TypeError: Argument 3 passed to SSDPHarmony::SendSearchResponse() must be of the type int, bool given, called in C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php on line 326 and defined in C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php:235
Stack trace:
#0 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php(326): SSDPHarmony->SendSearchResponse('192.168.178.8', 55902, false)
#1 C:\Windows\System32\-(3): SSDPHarmony->ReceiveData('{"DataID":"{7A1...')
#2 {main}
  thrown in <b>C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php</b> on line <b>235</b><br />

06.10.2020 19:44:49 | 52305 | ERROR   | FlowHandler          | Kann Daten nicht zur Instanz #52305 weiterleiten: <br />
<b>Warning</b>:  InstanceInterface is not available in <b>C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php</b> on line <b>158</b><br />
<br />
<b>Fatal error</b>:  Uncaught TypeError: Argument 3 passed to SSDPHarmony::SendSearchResponse() must be of the type int, bool given, called in C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php on line 326 and defined in C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php:235
Stack trace:
#0 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php(326): SSDPHarmony->SendSearchResponse('192.168.178.12', 64279, false)
#1 C:\Windows\System32\-(3): SSDPHarmony->ReceiveData('{"DataID":"{7A1...')
#2 {main}
  thrown in <b>C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php</b> on line <b>235</b><br />


06.10.2020 19:44:55 | 00000 | ERROR   | KernelMT             | InstanzManager: Fehler bei Instanz #52305, Meldung IPS_KERNELSTARTED: <br />
<b>Warning</b>:  InstanceInterface is not available in <b>C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php</b> on line <b>158</b><br />
<br />
<b>Fatal error</b>:  Uncaught TypeError: Argument 1 passed to SSDPHarmony::SendNotify() must be of the type int, bool given, called in C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php on line 180 and defined in C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php:194
Stack trace:
#0 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php(180): SSDPHarmony->SendNotify(false)
#1 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php(124): SSDPHarmony->TimerNotify()
#2 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php(65): SSDPHarmony->IOChangeState(102)
#3 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php(95): SSDPHarmony->ApplyChanges()
#4 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php(85): SSDPHarmony->KernelReady()
#5 C:\Windows\System32\-(3): SSDPHarmony->MessageSink(0, 0, 10001, Array)
#6 {main}
  thrown in <b>C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php</b> on line <b>194</b><br />

06.10.2020 19:44:55 | 10048 | MESSAGE | Client Socket        | Einstellungen gespeichert
06.10.2020 19:44:55 | 10048 | MESSAGE | Client Socket        | Schließe Socket...
06.10.2020 19:44:55 | 10048 | MESSAGE | Client Socket        | Öffne Socket...
06.10.2020 19:44:55 | 52305 | ERROR   | FlowHandler          | Kann Daten nicht zur Instanz #52305 weiterleiten: <br />
<b>Warning</b>:  InstanceInterface is not available in <b>C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php</b> on line <b>158</b><br />
<br />
<b>Fatal error</b>:  Uncaught TypeError: Argument 3 passed to SSDPHarmony::SendSearchResponse() must be of the type int, bool given, called in C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php on line 326 and defined in C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php:235
Stack trace:
#0 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php(326): SSDPHarmony->SendSearchResponse('192.168.178.12', 64280, false)
#1 C:\Windows\System32\-(3): SSDPHarmony->ReceiveData('{"DataID":"{7A1...')
#2 {main}
  thrown in <b>C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php</b> on line <b>235</b><br />
 
06.10.2020 19:45:01 | 52305 | ERROR   | FlowHandler          | Kann Daten nicht zur Instanz #52305 weiterleiten: <br />
<b>Warning</b>:  InstanceInterface is not available in <b>C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php</b> on line <b>158</b><br />
<br />
<b>Fatal error</b>:  Uncaught TypeError: Argument 3 passed to SSDPHarmony::SendSearchResponse() must be of the type int, bool given, called in C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php on line 326 and defined in C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php:235
Stack trace:
#0 C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php(326): SSDPHarmony->SendSearchResponse('192.168.178.12', 63251, false)
#1 C:\Windows\System32\-(3): SSDPHarmony->ReceiveData('{"DataID":"{7A1...')
#2 {main}
  thrown in <b>C:\ProgramData\Symcon\modules\.store\fonzo.ipsymconharmony\SSDP\module.php</b> on line <b>235</b><br />




gruß Stefan

Hallo Leute, Hallo @Fonzo,

Das Modul ist top allerdings raubt mir ein Fehler den Nerv.
Immer wieder wird der Hub blockiert, dann ist die Instanz gestört und der Hub ist auch nicht mehr mit der Fernbedienung zu erreichen. Der Zustand dauert ca 1 Minute, dann ist alles wieder normal.
Der Fehler tritt erst seit Nutzung des Moduls auf. Also irgendwas läuft da noch nicht ganz sauber.
Wie kriegen wir die Kuh vom Eis. Der WAF ist dadurch auch sehr eingeschränkt.
Würde mich über Hilfe freuen.

Gesendet von meinem SM-G975F mit Tapatalk

Hi,
wenn die Instanz blockiert ist sollte die Fernbedienung nicht blockiert sein da es über Funk und nicht Netzwerk geht. Ist die LED am Hub rot wenn es nicht mehr geht?

Ralf

Werde ich Beobachten. Melde mich wieder.