Hallo zusammen,
ich habe leider ein Problem mit dem einbinden des Google Kalenders.
Ich habe schon einige Forenbeiträge hier gelesen aber leider keine Lösung gefunden.
Ich habe libwww-perl installiert und bekomme über wget mit meinem google pfad auch an die ICS Datei.
Folgende Meldung bekomme ich aber im Log:
Calendar Kalender_Haus: Wakeup
Calendar Kalender_Haus: Updating;
HTTPUtils url=<hidden>
Calendar Kalendar_Haus: Could not retrieve file at URL
Calendar Kalendar_Haus: Checking times
Hat vllt jemand eine Idee woran das liegen könnte?
Grüße & Danke
Ariane
Hallo,
kannst Du bitte den relevanten Teil des Logs posten, nachdem Du die Geschwätzigkeit mit attr global verbose 5 an den oberen Anschlag gedreht hast?
Danke
Boris
Hey,
das was im Log mit verbose 5 zu sehen ist, hatte ich oben gepostet:
Calendar Kalender_Haus: Wakeup
Calendar Kalender_Haus: Updating;
HTTPUtils url=<hidden>
Calendar Kalendar_Haus: Could not retrieve file at URL
Calendar Kalendar_Haus: Checking times
Mehr ist in bezug auf den kalender leider nicht zu finden im Log.
Grüße & Danke
Ariane
Moin,
was hälst du davon uns mal an deienr verwendeten Hardware teilhaben zu lassen?
Also nicht das ich ein Stück möchte davon aber es wäre vielleicht interessant worauf bei dir FHEM läuft.
Daher bitte auch dieses durchlesen:
http://forum.fhem.de/index.php/topic,16311.0.html (http://forum.fhem.de/index.php/topic,16311.0.html)
Danke.
Das Log darf gerne 3 oder 4 Zeilen vor deinem vermuteten relevanten Teil beginnen und ruhig auch 3 oder 4 Zeilen länger sein.
Derjenige der die Info haben möchte um dir helfen zu können filtert dann schon was er braucht.
Ganz schlecht ist es allerdings
- selbst zu filtern wenn man nicht weiß was benötigt wird
- das ganze Logfile zu posten.
Grüße
P.S.: Über dem Textfeld hat es "Tags" - Logfileeinträge machen sich optisch ganz gut in den Zitat-Tags - der Übersichtlichkeit zuliebe ;)
Hi,
danke für deine Hinweise, ich habe das mal nach bestem Gewissen ergänzt.
Jetzt nochmal das Log mit ein paar mehr Infos:
Zitat
2014.10.02 09:31:41 5: Cmd: >define NiemandZuhauseFensterOffen notify (WZ_Terassenfenster|BAD_Fenster|AZ_Fenster|KU_Fenster) {if (ReadingsVal("AtHome","Status",99) == 0){DebianMail('hausdoer@@googlemail.com','Fenster offen ','@')}}<
2014.10.02 09:31:41 5: Cmd: >define NiemandZuhauseAZFensterNochOffen notify AtHome {if( (ReadingsVal("AZ_Terassenfenster","state","nix") eq "opened") || (ReadingsVal("BAD_Fenster","state","nix") eq "opened") || (ReadingsVal("KU_Fenster","state","nix") eq "opened") || (ReadingsVal("WZ_Terassenfenster","state","nix") eq "opened")){fhem("set androidTablet ttsSay Achtung, es ist mindestens ein Fenster offen.")}}<
2014.10.02 09:31:41 5: Cmd: >define RegenWarnung at +*00:02:00 {if (ReadingsVal("AtHome","Status",99) == 1 && ((index(ReadingsVal("Wetter","condition",""), "Regen") != -1 || index(ReadingsVal("Wetter","condition",""),"Schauer") != -1 || index(ReadingsVal("Wetter","condition",""),"Gewitter") != -1))) {fhem("set StatusLight HSV 240,100,20;set StatusLight HSV 120,100,10 10 q;set StatusLight HSV 240,100,20 10 q;set StatusLight HSV 120,100,20 10 q;set StatusLight HSV 240,100,20 10 q;set StatusLight HSV 120,100,20")}}<
2014.10.02 09:31:41 5: Cmd: >define Kalender_Haus Calendar ical url https://www.google.com/calendar/ical/ariane.doer%40googlemail.com/private-*********/basic.ics 14440<
2014.10.02 09:31:41 4: Calendar Kalender_Haus: Wakeup
2014.10.02 09:31:41 4: Calendar Kalender_Haus: Updating...
2014.10.02 09:31:41 4: HttpUtils url=<hidden>
2014.10.02 09:31:41 1: Calendar Kalender_Haus: Could not retrieve file at URL
2014.10.02 09:31:41 4: Calendar Kalender_Haus: Checking times...
2014.10.02 09:31:41 5: Cmd: >define Urlaub_dummy dummy<
2014.10.02 09:31:41 5: Cmd: >attr Urlaub_dummy room Kalender<
2014.10.02 09:31:41 5: Cmd: >attr Urlaub_dummy setList ja nein<
2014.10.02 09:31:41 5: Cmd: >attr Urlaub_dummy webCmd ja:nein<
<
Danke für eure Hilfe!
Ariane
Hallo,
mich irritiert, dass uns HttpUtils nicht sagt, warum es die Datei nicht herunterladen kann.
Ich teste das gelegentlich durch und melde mich wieder, wenn es etwas dazu berichten gibt.
Grüße
Boris
Ich behaupte mal ganz spontan, dass Dir die perl-ssl-Library (bei Debian das Paket libio-socket-ssl-perl ) fehlt. Hast Du eigentlich von allen perl-Modulen die aktuellen Versionen installiert? Auf welcher Plattform Du das Ganze machst, wissen wir übrigens immer noch nicht.
Grüße aus Serbien.
Ich hatte nach den Infos aus einem anderen Thread libwww-perl installiert. Prüfe nachher zuhause aber nochmal ob das von dir genannte Paket korrekt installiert ist.
Zitat von: betateilchen am 02 Oktober 2014, 11:09:42
Ich behaupte mal ganz spontan, dass Dir die perl-ssl-Library (bei Debian das Paket libio-socket-ssl-perl ) fehlt. Hast Du eigentlich von allen perl-Modulen die aktuellen Versionen installiert?
Guter Hinweis, Udo!
Ariane, schau mal bei den Konsole-Meldungen nach Perl-Fehlern. Wie man das macht? fhem.pl fhem.cfg auf der Konsole aufrufen.
Grüße
Boris
Danke euch, ich teste das heute abend und melde mich dann nochmal!
Hallo,
da bin ich wieder.
Ich habe beides probiert, leider erfolglos:
Zitatsudo apt-get install libio-socket-ssl-perl
libio-socket-ssl-perl ist schon die neueste Version.
Zitatsudo perl fhem.pl fhem.cfg
brachte 2 kleine Fehler in meiner Utilsdatei, die ich behoben habe - es werden nun keiner Fehler mehr ausgegeben, aber das machte leider keinen Unterschied.
Perl läuft aktuell in Version 5.14 - Macht es Sinn hier auf eine neuere Version zu wechseln?
Danke & Grüße
Ariane
Hallo,
ich hatte ein ähnliches Problem hinter einem Proxy. Das habe ich kürzlich gefixt. Bist Du auf der neuesten Version?
Wenn nein, Update und schauen, ob das Problem noch existiert.
Falls ja, kannst Du bitte mal in 57_Calendar.pm die Zeilen 898 bis 901 durch
if(!defined($ics)) {
Log3 $hash, 1, "Calendar " . $hash->{NAME} . ": Could not retrieve file at URL";
return 0;
}
if("$ics" eq "") {
Log3 $hash, 1, "Calendar " . $hash->{NAME} . ": Got empty file";
return 0;
}
ersetzen und den Output aus dem Log wieder posten?
Ich verwende Perl 5.14.2, die neueste, die es für Raspian gibt.
Grüße
Boris
Hallo Boris,
den aktuellsten Stand hatte ich schon, habe ich auch nochmal mit update check verifiziert.
Die Änderung des Codes bringt nicht viel Änderung im Log:
Zitat
2014.10.02 19:56:39 5: Cmd: >define Kalender_Haus Calendar ical url https://www.google.com/calendar/ical/ariane.doer%40googlemail.com/private-***/basic.ics 14440<
2014.10.02 19:56:39 5: Loading ./FHEM/57_Calendar.pm
2014.10.02 19:56:39 4: Calendar Kalender_Haus: Wakeup
2014.10.02 19:56:39 4: Calendar Kalender_Haus: Updating...
2014.10.02 19:56:39 4: HttpUtils url=<hidden>
2014.10.02 19:56:41 1: Calendar Kalender_Haus: new - Could not retrieve file at URL
2014.10.02 19:56:41 4: Calendar Kalender_Haus: Checking times...
2014.10.02 19:56:41 5: Cmd: >define Urlaub_dummy dummy<
Das "new" habe ich ergänzt um sicher zu gehen das er den Code angezogen hat.
Grüße
Ariane
Danke, Ariane.
Bitte füge nun einmal oberhalb von Zeile 883
my $ics;
die Zeile
my $errmsg= "";
ein und ändere etwas darunter die Zeile mit dem Blocking Get in
($errmsg, $ics)= HttpUtils_BlockingGet( { url => $url, hideurl => 1, timeout => 10, } );
und das Logging bei ca. Zeile 906 wie folgt:
Log3 $hash, 1, "Calendar " . $hash->{NAME} . ": Could not retrieve file at URL. $errmsg";
HttpUtils loggt wohl nicht mehr die Fehler wie zum Zeitpunkt der Programmierung des Kalendermoduls sondern gibt sie dem Aufrufer zurück. Das werten wir jetzt mal im Kalendermodul aus und schauen, was HttpUtils uns als Grund angibt.
Grüße
Boris
Ok, er kommt scheinbar nicht zu google:
Zitat2014.10.02 21:12:29 1: Calendar Kalender_Haus: Could not retrieve file at URL. <hidden>: Can't connect to https://www.google.com:443:
2014.10.02 21:12:29 4: Calendar Kalender_Haus: Checking times...
Das heißt wohl das er mit SSL doch nicht klar kommt?
Hallo Ariane,
wir haben HttpUtils gesprächiger gemacht bei SSL-Fehlern (siehe http://forum.fhem.de/index.php/topic,27565.0.html (http://forum.fhem.de/index.php/topic,27565.0.html)).
Entweder warten bis morgen und alle Änderungen auf einmal per update ziehen oder jetzt ein update machen und 57_Calendar.pm und HttpUtils.pm aus dem SVN ziehen und händisch installieren.
Danach bitte wieder ausprobieren und den relevanten Ausschnitt aus dem Log posten.
Grüße
Boris
Hallo Boris,
danke für deine Mühen.
Ich habe mir beide Dateien aus dem SVN geladen und vorher ein Update gemacht.
Die Dateien wurden auch vor kurzem bearbeitet laut SVN.
Aber leider bekomme ich keine neue Meldung. Ich habe noch das NEW ergänzt um sicher zu gehen das der neue Code angezogen wird.
Zitat2014.10.03 17:45:27 1: Calendar Kalender_Haus: Could not retrieve file at URL. <hidden>: (NEW) Can't connect to https://www.google.com:443:
Ansonten probiere ich es morgen einfach nochmal mit einem Update.
Grüße
Ariane
Hallo,
bitte ersetze in HttpUtils.pm die Zeile 176
return "$hash->{displayurl}: Can't connect to $hash->{addr}: $err";
durch
return "$hash->{displayurl}: Can't connect to $hash->{addr}: $SSL_ERR";
Ich hoffe, dass wir dann hinter dem letzten Doppelpunkt der Fehlermeldung etwas zu sehen bekommen.
Grüße
Boris
Hallo Boris,
anscheinend wird die SSL_ERR Variable nicht richtig initialisiert.
Ich habe heute FHEM über die Konsole gestartet und bekam dabei folgende Meldung:
ZitatUse of uninitialized value $SSL_ERR in string at FHEM/HttpUtils.pm line 175, <$fh> line 166.
Ich ein wenig rumprobiert, aber habe es nicht geschafft die Variable zu setzen...
Grüße
Ariane
Hallo Ariane,
Rudi hat das Logging in HttpUtils.pm weiter aufgebohrt.
Bitte ziehe Dir die Datei aus dem SVN und starte FHEM neu. Dann poste nochmals den Ausschnitt aus dem Log.
Danke
Boris
Hallo Boris,
ich habe Kalender und HttpUtils aktualisiert:
Zitat2014.10.05 19:28:51 1: Calendar Kalender_Haus: Could not retrieve file at URL. <hidden>: Can't connect(2) to https://www.google.com:443:
Das (2) scheint neu dazu gekommen zu sein, oder?
grüße
Ariane
Hi,
ich hab auch nochmal ein wenig probiert.
Und mir dafür
ZitatIO::Socket::SSL::errstr()
ausgeben lassen.
Das ergibt folgende Meldung:
ZitatSSL Version SSLv2 not supported
Ich suche gerade nach Lösungen dafür, bin aber noch nicht fündig geworden,
vllt hat ja jemand eine Idee :)
Danke & Grüße
Ariane
Hallo,
gut, dass Du das herausgefunden hast.
Helfen kann ich Dir jetzt nicht weiter. Zumal ich übersehen habe, welches System Du nutzt.
Besser machst Du mit dieser spezifischen Info einen neuen Thread in einem geeigneten Board auf, da das Problem beim SSL-Support Deiner Plattform liegt.
Viele Grüße
Boris
Danke für deine Hilfe Boris!
@ArianeHRO
Ist schon eine Lösung in Sicht? Ich habe die gleichen Probleme und finde leider auch keine Lösung. Wäre toll wenn ein Tipp möglich wäre! Mein System Debian!
Danke Lutz
Hallo Lutz,
ich habe für mich eine Lösung gefunden, ich weiß das ich da etwas an der HTTPUtils geändert habe, ich muss später mal zuhause schauen was genau das war, dann geb ich dir gerne bescheid.
Grüße
Ariane
Zitat von: ArianeHRO am 07 November 2014, 15:23:23
Hallo Lutz,
ich habe für mich eine Lösung gefunden, ich weiß das ich da etwas an der HTTPUtils geändert habe, ich muss später mal zuhause schauen was genau das war, dann geb ich dir gerne bescheid.
Grüße
Ariane
Danke, dass wäre Klasse
Lutz
Zitat von: ArianeHRO am 07 November 2014, 15:23:23
Hallo Lutz,
ich habe für mich eine Lösung gefunden, ich weiß das ich da etwas an der HTTPUtils geändert habe, ich muss später mal zuhause schauen was genau das war, dann geb ich dir gerne bescheid.
Grüße
Ariane
Hallo Ariane,
kannst du mir noch bitte den Tipp geben?
Danke
Gruß Lutz
Hallo,
ich habe mit Hilfe von Ariane eine Lösung mit den aktuellen HTTPUtils gefunden.
Mein System Cubitruck3 mit Debian
Damit der Abruf bei folgender Fehlermeldung:
Could not retrieve file at URL. <hidden>: Can't connect(2) to https://www.google.com:443: SSL Version SSLv2 not supported
der Google Kalender wieder abgerufen muss bei den aktuellen HTTPUtils (HttpUtils.pm 6716 2014-10-09 04:56:48Z rudolfkoenig) in der Datei in der Zeile 169 folgende Änderung vorgenommen werden: SSL_version =>'SSLv3',
IO::Socket::SSL->start_SSL($hash->{conn}, SSL_version =>'SSLv3', Timeout=>$hash->{timeout})
Danach funktioniert der Abruf des Google Kalender wieder einwandfrei! :D :D :D
Gruß Lutz
Hallo Lutz,
mich würde interessieren, ob Du Net::SSLeay und openssl auf dem CubieTruck hast.
Bekommst Du mit einer aktuellen FHEM-Version irgendeine aussagekräftige Fehlermeldung, wenn Du SSL_version =>'SSLv3'
herauslässt?
Kannst Du bitte mal probieren, ob Du auf diesen Code verzichten kannst, d.h. die originale HttpUtils.pm verwenden kannst, wenn Du die o.g. Software installierst?
Vielen Dank im Voraus für die Mithilfe
Boris
Hallo Boris,
Ich komme erst Sonntag dazu!
Gruß Lutz
Heute auch hier Probleme mit Kalender und SSL:
2014.11.22 09:51:34.046 1: Calendar oc_Heizung: Could not retrieve file at URL. <hidden>: Can't connect(2) to https://...:443: SSL wants a read first
Eine solche Meldung habe ich noch nie gesehen...
Edit: (jetzt mit etwas mehr Ruhe...)
2014.11.22 10:48:20.973 1: Calendar oc_Heizung: Could not retrieve file at URL. <hidden>: Can't connect(1) to https://xxx:443: IO::Socket::INET: connect: timeout
2014.11.22 10:48:46.653 4: Calendar oc_Heizung: Wakeup
2014.11.22 10:48:46.654 4: Calendar oc_Heizung: Updating...
2014.11.22 10:48:56.669 1: Calendar oc_Heizung: Could not retrieve file at URL. <hidden>: Can't connect(1) to https://xxx:443: IO::Socket::INET: connect: timeout
2014.11.22 10:48:56.669 4: Calendar oc_Heizung: Checking times...
Interessanterweise funktioniert ein zweiter Kalender auf exakt dem gleichen Server zur gleichen Zeit problemlos:
2014.11.22 10:52:29.813 4: Calendar oc_Schalter: Wakeup
2014.11.22 10:52:29.814 4: Calendar oc_Schalter: Updating...
2014.11.22 10:52:30.478 4: Calendar oc_Schalter: Checking times...
Und natürlich überflüssig zu sagen, dass bis gestern alles problemlos lief und ich mir keiner relevanten Änderung bewußt bin.
Zitat von: Dr. Boris Neubert am 20 November 2014, 20:10:28
Hallo Lutz,
mich würde interessieren, ob Du Net::SSLeay und openssl auf dem CubieTruck hast.
Bekommst Du mit einer aktuellen FHEM-Version irgendeine aussagekräftige Fehlermeldung, wenn Du SSL_version =>'SSLv3'
herauslässt?
Kannst Du bitte mal probieren, ob Du auf diesen Code verzichten kannst, d.h. die originale HttpUtils.pm verwenden kannst, wenn Du die o.g. Software installierst?
Vielen Dank im Voraus für die Mithilfe
Boris
Hallo Boris,
bei mir ist libnet-ssleay-perl und openssl installiert. Ich habe aber als ich das Problem hatte alles mit SSL installiert, wo ich eine Hilfe gefunden habe, weis aber nicht ob ich es auch benötige.
Muss zugeben in Debian bin ich ein Neuling. Bisher habe ich mich nur bei Microsoft herumgetrieben.
Zum Thema Fehlermeldung habe ich nur folgende:
Could not retrieve file at URL. <hidden>: Can't connect(2) to https://www.google.com:443: SSL Version SSLv2 not supported
Wenn ich ihn noch mal replizieren und Mehr Info raus holen soll benötige ich dazu etwas Hilfe. Tue es aber ;)
Gruß Lutz
Danke Lutz,
ich bin noch mehr verwirrt. Kannst Du bitte mal anstelle von 'SSLv3' noch die folgenden beiden Varianten probieren
'SSLv23:!SSLv3:!SSLv2'
'TLSv1_0:TLSv1_1:TLSv1_2'
und die jeweiligen Fehlermeldungen posten, sofern es nicht geht?
Viele Grüße
Boris
Hallo Boris,
funktioniert beides!
IO::Socket::SSL->start_SSL($hash->{conn}, SSL_version =>'SSLv23:!SSLv3:!SSLv2', Timeout=>$hash->{timeout})
IO::Socket::SSL->start_SSL($hash->{conn}, SSL_version =>'TLSv1_0:TLSv1_1:TLSv1_2', Timeout=>$hash->{timeout})
Habe neue Termine eingetragen und abgefragt! Alles ohne Probleme!
Gruß Lutz
Danke für die schnelle Rückmeldung.
Gemäß Doku von IO::Socket::SSL ist SSLv23:!SSLv3:!SSLv2 der Default. Bei Dir aber nicht.
Du hast Debian 7.6 (cat /etc/debian_version) auf einem Cubietruck mit Perl 5.14.2 (perl -v)?
Viele Grüße
Boris
Hallo Boris,
Debian 7.7
v5.14.2
Kann / Muss ich hier etwas updaten oder verbessern?
Danke
Lutz
Hallo,
ich muss mich beraten...
Viele Grüße
Boris
Hallo Lutz,
Rudi hat den angeblichen Default für die SSL-Version jetzt explizit in die HttpUtils eingebaut. Ab dem morgigen Update kannst Du Dir die HttpUtils.pm mit der offiziellen Version überschreiben lassen und es sollte immer noch funktionieren.
Viele Grüße
Boris
Zitat von: Dr. Boris Neubert am 23 November 2014, 10:27:17
Hallo Lutz,
Rudi hat den angeblichen Default für die SSL-Version jetzt explizit in die HttpUtils eingebaut. Ab dem morgigen Update kannst Du Dir die HttpUtils.pm mit der offiziellen Version überschreiben lassen und es sollte immer noch funktionieren.
Viele Grüße
Boris
Danke
Man soll die Hoffnung ja nie aufgeben... ;)
Zitat von: Dr. Boris Neubert am 23 November 2014, 10:27:17
Hallo Lutz,
Rudi hat den angeblichen Default für die SSL-Version jetzt explizit in die HttpUtils eingebaut. Ab dem morgigen Update kannst Du Dir die HttpUtils.pm mit der offiziellen Version überschreiben lassen und es sollte immer noch funktionieren.
Viele Grüße
Boris
Hallo Boris,
habe leider Heute das Update gemacht! :( Danach hat der Kalender wieder nicht funktioniert. Habe dann wieder meine Lösung eigebaut und alles ist wieder OK! ;D
Das Update hat sich für mich nicht gelohnt, werde es wieder verbieten!
Gruß Lutz
Hallo Lutz,
die Änderung wurde wider Erwarten erst jetzt eingecheckt. Bitte versuche es morgen erneut mit einem Update. Dann sollte es gehen.
Viele Grüße
Boris
Zitat von: Dr. Boris Neubert am 30 November 2014, 17:41:01
Hallo Lutz,
die Änderung wurde wider Erwarten erst jetzt eingecheckt. Bitte versuche es morgen erneut mit einem Update. Dann sollte es gehen.
Viele Grüße
Boris
Hallo Boris,
Kann ich erst nächste Woche machen. Berichte dann.
Danke
Gruß Lutz
Hallo Boris,
binn leider erst Heute dazu gekommen. Habe ein Update gemacht. Die HttpUtils wurde aber nicht mit aktualisiert. Habe aber auch erst Heute das Verbot der Aktualisierung auskommentiert.
Melde mich wieder wenn es Porbleme gibt.
Gruß Lutz