Logitech Harmony Hub

Begonnen von der-Lolo, 07 August 2013, 14:17:16

Vorheriges Thema - Nächstes Thema

fhem_olsi

ZitatDu kannst ja gerne weiter editieren aber, wenn dann halt (wieder) mal was nicht klappt: daran denken, dass es damit zu tun haben könnte...
Mach' ich.

ZitatGut theoretisch hier:...
Dann evtl.: ...
Ansonsten: ...
Danke.

Gruß, Wolfgang

fhem_olsi

#1951
So, das Problem ist mittlerweile diskutiert, aufgeklärt und gelöst.
Siehe hier: https://forum.fhem.de/index.php?topic=133405.0

Zusammenfassung: In beiden Fällen ist das Modul "37_harmony.pm" die Ursache!
Die weiter o.g. Warnung "PERL WARNING: Use of uninitialized value in pattern match (m//) at ./FHEM/37_harmony.pm line 1765." läßt sich beseitigen durch Auskommentieren der Zeilen 1765 - 1767:
1764      my $domain = "svcs.myharmony.com";
1765  #   if( $hash->{discoveryinfo}{discoveryServerUri} =~ m'https://([^/]+)' ) {
1766  #     $domain = $1;
1767  #   }

und die Fehlermeldung "Der Befehl "[" ist entweder falsch geschrieben oder konnte nicht gefunden werden." läßt sich beseitigen durch Auskommentieren der Zeile 23:
Zitat22    {
23   #   $harmony_isFritzBox = int( qx( [ -f /usr/bin/ctlmgr_ctl ] && echo 1 || echo 0 ) )  if( !defined($harmony_isFritzBox) );
24    }
Hier handelt es sich tatsächlich um einen Fehler im Modul 37_harmony.pm, denn unter Windows quittiert das OS den Aufruf der System-Funktion
"qx( [ -f /usr/bin/ctlmgr_ctl ] && echo 1 || echo 0 )"
mit einer Fehlermeldung: '"Der Befehl "[" ...'.

Der Aufruf "{ -f ...]" funktioniert nur unter Linux und nicht unter Windows. Hierfür müßte die Zeile 23 entsprechend abgefangen werden...

Gruß, Wolfgang

fhem_olsi

Auf Hinweis von JoWiemann sollte auch die Variable $harmony_isFritzBox initialisiert werden. Die Änderungen müßten demnach so aussehen:
19    my $harmony_isFritzBox = 0;    # und nicht "= undef";
20    sub
21    harmony_isFritzBox()
22    {
23   #   $harmony_isFritzBox = int( qx( [ -f /usr/bin/ctlmgr_ctl ] && echo 1 || echo 0 ) )  if( !defined($harmony_isFritzBox) );
24    }

elmer

Meine Zugangsdaten haben sich geändert für den Hub. Kann ich die bei Fhem neu eintragen oder muss ich das Gerät neu anlegen?

tomcat.x

Hast Du statt Neuanlegen (mit define) schon probiert, das mit defmod zu machen? Da bleibt in er Regel alles erhalten. Und da es jetzt ohne die neuen Zugangsdaten eh nicht funktioniert, kann eigentlich auch nichts schief gehen.
FHEM: 6.1 auf Raspi 3, Raspbian (Buster), Perl v5.28.1
Sender/Empfänger: 2 x CULv3, Duofern Stick, HM-MOD-RPI-PCB
Gateways: FRITZ!Box 6591 (OS: 7.57), Trädfri, ConBee 2,  piVCCU, OpenMQTTGateway
Sensoren/Aktoren: FRITZ!DECT, FS20, FHT, HMS, HomeMatic, Trädfri, DuoFern, NetAtmo