Hallo,
wäre es möglich das CLASS Attribut eines Kalendareintrags zu unterstützen?
Da steht so was drin wie
CLASS:PRIVATE
CLASS:PUBLIC
also die Sichtbarkeit eines Termins.
Könnte ich gut gebrauchen.
guck mal hier https://forum.fhem.de/index.php/topic,79237.0.html
das war eine erweiterung für Kategorien.
Boris freut sich immer über patches :)
was zum testen :)
Vielen Dank für deine Mühe.
Interessanterweise kommt es nach einem
reload 57_Calendar
zu dem Fehler
Too many arguments for main::Calendar_CheckAndRearm at ./FHEM/57_Calendar.pm line 2216, near "$t)"
Das hat aber nichts mit deinen Änderungen zu tun, der Fehler war auch schon vorher drin.
Er wird aber nicht ausgegeben, wenn fhem neu gestartet wird was ich nicht so ganz verstehe.
Deine Änderungen muss ich noch testen.
gibt es noch mehr im log?? (siehe code unten, da sollten noch etwas stehen ;) )
der teil wird eigentlich nur durchlaufen, wenn keine daten ausgelesen werden konnten, wenn ich das alles richtig verstehe! ansonsten musst du auf antwort von boris warten.
if($errmsg or !defined($ics) or ("$ics" eq "") ) {
Log3 $hash, 1, "Calendar $name: retrieved no or empty data";
readingsSingleUpdate($hash, "state", "error (no or empty data)", 1);
Calendar_CheckAndRearm($hash, $t);
bin mir nicht sicher, ob für den aufruf von Calendar_CheckAndRearm() der zweite parameter benötigt wird oder entfallen kann.
der verursacht zumindest die fehlermeldung(?) / warnung im log.
zur eigentlichen problematik:
was ist mit den CLASS Einträgen?
ich hab die mal - kraft eigener unwissenheit - Classification genannt. ich wollte schlüsselwort-überschneidungen vermeiden (ich habe nicht gesucht ob es class in perl überhaupt gibt!)
Zitat von: nils_ am 21 März 2018, 08:13:14
gibt es noch mehr im log?? (siehe code unten, da sollten noch etwas stehen ;) )
Der oben gemeldete Fehler erschien im Webfrontend nach einem reload des Moduls.
Im Log steht jetzt
2018.03.22 20:40:21 1: Calendar cal_Beruflich: retrieval failed with error message read from https://calendar.google.com:443 timed out
2018.03.22 20:40:21 1: Calendar cal_Beruflich: retrieved no or empty data
2018.03.22 20:40:22 1: PERL WARNING: Use of uninitialized value $t in numeric lt (<) at ./FHEM/57_Calendar.pm line 1942.
2018.03.22 20:40:22 1: stacktrace:
2018.03.22 20:40:22 1: main::__ANON__ called by ./FHEM/57_Calendar.pm (1942)
2018.03.22 20:40:22 1: main::Calendar_RearmTimer called by ./FHEM/57_Calendar.pm (2257)
2018.03.22 20:40:22 1: main::Calendar_CheckAndRearm called by ./FHEM/57_Calendar.pm (2225)
2018.03.22 20:40:22 1: main::Calendar_ProcessUpdate called by FHEM/HttpUtils.pm (108)
2018.03.22 20:40:22 1: main::HttpUtils_Err called by fhem.pl (3108)
2018.03.22 20:40:22 1: main::HandleTimeout called by fhem.pl (636)
2018.03.22 20:44:46 1: Calendar cal_Beruflich: retrieval failed with error message read from https://calendar.google.com:443 timed out
2018.03.22 20:44:46 1: Calendar cal_Beruflich: retrieved no or empty data
2018.03.22 20:44:47 1: PERL WARNING: Use of uninitialized value $t in numeric lt (<) at ./FHEM/57_Calendar.pm line 1942.
2018.03.22 20:44:47 1: stacktrace:
2018.03.22 20:44:47 1: main::__ANON__ called by ./FHEM/57_Calendar.pm (1942)
2018.03.22 20:44:47 1: main::Calendar_RearmTimer called by ./FHEM/57_Calendar.pm (2257)
2018.03.22 20:44:47 1: main::Calendar_CheckAndRearm called by ./FHEM/57_Calendar.pm (2225)
2018.03.22 20:44:47 1: main::Calendar_ProcessUpdate called by FHEM/HttpUtils.pm (108)
2018.03.22 20:44:47 1: main::HttpUtils_Err called by fhem.pl (3108)
2018.03.22 20:44:47 1: main::HandleTimeout called by fhem.pl (636)
Da klappt wohl gerade der Zugrifff auf den Kalender bei Google nicht und es kommt in der Folge zu dem Fehler.
Zitat
zur eigentlichen problematik:
was ist mit den CLASS Einträgen?
ich hab die mal - kraft eigener unwissenheit - Classification genannt. ich wollte schlüsselwort-überschneidungen vermeiden (ich habe nicht gesucht ob es class in perl überhaupt gibt!)
Ja, das klappt. Die Frage wie man das innerhalb des Moduls benennen sollte hatte mich davon abgehalten die Erweiterung selbst vorzunehmen. Aber classification halte ich für eine gute Lösung.
leider habe ich die gesamte logik noch nicht durchblickt.
also wofür das $t gebraucht wird zB., und ob es weggelassen werden kann.
ich schick boris mal ne pn, vielleicht guckt er mal drüber wenn er zeit hat.
Zitat von: kaihs am 20 März 2018, 21:25:17
zu dem Fehler
Too many arguments for main::Calendar_CheckAndRearm at ./FHEM/57_Calendar.pm line 2216, near "$t)"
Das habe ich schon gefixt aber noch nicht eingecheckt.
Zitat von: nils_ am 20 März 2018, 12:06:32
was zum testen :)
Schaue ich mir an. Bin sowieso gerade an ein paar Erweiterungen des Moduls dran.
Danke für die Rückmeldung :)
Zitat von: Dr. Boris Neubert am 23 März 2018, 09:54:31
Das habe ich schon gefixt aber noch nicht eingecheckt.
ah oki...
ich bin gespannt 8)
So, classification ist eingebaut. Default ist PUBLIC. Wird mit der kommenden Testversion veröffentlicht - dazu wird es einen extra Beitrag in diesem Board geben.
Vielen Dank, werde ich dann testen.