Autor Thema: Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)  (Gelesen 19458 mal)

Offline borsTiHD

  • New Member
  • *
  • Beiträge: 39
Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
« Antwort #225 am: 10 April 2018, 13:49:13 »
Es funktioniert wieder.
Geholfen hat: Bei allen sechs Devices disable auf 1 zu setzen, reboot vom Raspberry, disable auf 0 setzen.

Danke für deine Unterstützung.

Danke für eure Hilfe.
Klappt so, hatte das gleiche Problem.  ;D


Ich hatte vor paar Tagen einen Stromausfall, der zu vielerlei Problemen führte, da mein Pi auch als Pi-Hole läuft etc.
Gleichzeitig hab ich gemerkt dass MariaDB nicht reboot fest ist bei mir. Mein FritzBox NAS konnte ich unter dem Pi nicht mehr einbinden, was dadurch führte dass mein Backup Script ein Image des Pi's auf dem Pi selbst versuchte zu schreiben (dadurch war dann die SD Karte voll), was zu vielen weiteren Problemen führte. Achja, Homebridge ging auch nicht mehr.

Mittlerweile war ich so weit das alles wieder funktionierte, nur der Kalender nicht... unter der Kommandozeile des Pi's über SSH konnte ich alle Kalender auslesen lassen nur in FHEM nicht. Ein löschen der oauth Datei und erneutes Authentifizieren bei Google brachte auch keine Besserung.

Erst obige Lösung mit dem Device auf "disable 1" zu setzen, einen Pi Reboot durchzuführen, sowie das Device wieder auf "disable 0" mit einem anschließenden "set update" half.
Wollte es nur kurz teilen, vlt. hilft es anderen auch. :)


Online mumpitzstuff

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 969
Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
« Antwort #226 am: 10 April 2018, 16:50:41 »
Wie schon gesagt vermute ich, das es durch zu kurze Timeout Werte dazu kommt. Setzt mal bitte zur Sicherheit die Timeouts für die einzelnen Kalender höher. Dazu gehst du bei Internals auf def und änderst dort die z.b. 10 in 60 oder so um. Beim starten von FHEM brauchen die Kalender vielleicht etwas länger, da das System durch das Hochfahren von FHEM noch extrem belastet ist. Dann reicht vielleicht der Standard Timeout Wert von 10s nicht aus und irgendwas crasht.

Offline borsTiHD

  • New Member
  • *
  • Beiträge: 39
Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
« Antwort #227 am: 10 April 2018, 18:23:48 »
Werde ich mal anpassen, danke für den Tipp. :)
Ich habe zwar nur einen Kalender, aber die Daten brauche ich auch nicht direkt nach einem Start, da tut eine größere Verzögerung nicht sonderlich weh.  ;D

€dit: Hm... hatte den Timeout bei der ersten Einrichtung wohl schon höher gestellt gehabt: "3600"
Oder ist das der Standardwert?
« Letzte Änderung: 10 April 2018, 18:25:39 von borsTiHD »

Online mumpitzstuff

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 969
Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
« Antwort #228 am: 10 April 2018, 18:43:58 »
Hmm das ist krass. 3600 ist 1h. Mein Attribut updateInterval ist auf 3600 eingestellt, so das nur jede Stunde ein Update gezogen wird.

defmod <kalender device> GCALVIEW 60
Mit dem Kommando solltest du das Timeout setzen können. Wenn das bei dir wirklich auf 3600 steht, dann solltest du das definitiv nach unten setzen. 60 oder meinetwegen auch 120 sind völlig ausreichend.

Offline borsTiHD

  • New Member
  • *
  • Beiträge: 39
Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
« Antwort #229 am: 10 April 2018, 19:01:37 »
 ;D

Habs mal auf 60 gestellt.
Ich glaube mein Gedanke damnals war, dass es den Betrieb von Pi-Hole weniger belastet und somit mein Netzwerk performanter werden sollte.

Online mumpitzstuff

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 969
Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
« Antwort #230 am: 12 April 2018, 22:34:32 »
Das Timeout ist nur die Zeit die gewartet wird bis die Kalenderabfrage z.b. im Falle eines Fehlers abgebrochen wird. Das ist nicht die Zeit nach der jeweils ein neues Update von Google geholt werden soll. Das legst du mit dem Attribut updateInterval fest.

Online mumpitzstuff

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 969
Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
« Antwort #231 am: 12 April 2018, 23:44:51 »
Im ersten Beitrag habe ich 2 readingsGroups hinzugefügt. Eine für einen Abfallkalender und eine für einen Geburtstagskalender.

Offline Amenophis86

  • Hero Member
  • *****
  • Beiträge: 2438
  • Anti-Statement befreite Zone ;)
Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
« Antwort #232 am: 22 April 2018, 08:03:21 »
Habe seit heute auch das Problem, dass ständig folgender Fehler kommt:

2018.04.22 07:51:57 3: KL.Test blocking call already running
2018.04.22 07:51:57 3: BlockingCall for KL.Test aborted
2018.04.22 07:51:58 3: KL.Test: gcalcli agenda 04/22/2018 05/22/2018  --calendar "Privat" --calendar "Arbeit" --detail_all  --tsv
2018.04.22 07:51:58 3: KL.Test: something went wrong (check your parameters) - WARNING:root:This function, oauth2client.tools.run(), and the use of the gflags library are deprecated and will be removed in a future version of the library.
Failed to start a local webserver listening on either port 8080
or port 9090. Please check your firewall settings and locally
running programs that may be blocking or using those ports.

Falling back to --noauth_local_webserver and continuing with
authorization.

Go to the following link in your browser:

    https://accounts.google.com/o/oauth2/auth?xxxxxx

Enter verification code: Traceback (most recent call last):
  File "/usr/local/bin/gcalcli", line 2647, in <module>
    BowChickaWowWow()
  File "/usr/local/bin/gcalcli", line 2493, in BowChickaWowWow
    gcal.AgendaQuery(startText=args[1], endText=args[2])
  File "/usr/local/bin/gcalcli", line 1730, in AgendaQuery
    eventList = self._SearchForCalEvents(start, end, None)
  File "/usr/local/bin/gcalcli", line 1629, in _SearchForCalEvents
    work = self._CalService().events().\
  File "/usr/local/bin/gcalcli", line 694, in _CalService
    http=self._GoogleAuth())
  File "/usr/local/bin/gcalcli", line 683, in _GoogleAuth
    storage)
  File "/usr/local/lib/python2.7/dist-packages/oauth2client/util.py", line 137, in positional_wrapper
    return wrapped(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/oauth2client/old_run.py", line 150, in run
    code = input('Enter verification code: ').strip()
EOFError: EOF when reading a line

2018.04.22 07:51:58 1: ERROR evaluating {GCALVIEW_DoEnd('KL.Test||')}: Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 625.

Habe disable auf 1, reboot pi, disable 0, set update => Fehler bleibt

Habe dann mal das Device gelöscht und neu angelegt. Im Anschluss ein set update gemacht, zur gleichen Zeit auf der Console top laufen lassen. Sehe dann den Prozess 1295 fhem      20   0   47100  19420  11112 S   0.0  2.1   0:00.54 gcalcli
. Dazu kommt, dass nun FHEM blockiert und erst wieder erreichbar ist, wenn ich den Prozess mit gcalcli kille. Ne Idee woran es liegen könnte?

{qx(gcalcli list);;} in FHEM ergibt ohne Probleme:
 Access  Title
 ------  -----
  owner  Privat
  owner  Arbeit
 reader  Alles
 reader  Contacts
 reader  Feiertage in Deutschland

FHEM auf Raspberry3, Betriebssystem Jessy, HMLan, HM Komponenten, LD382A, H801, Sonoff, Harmony Hub und vieles mehr. Einfach ein tolles universelles System

Online mumpitzstuff

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 969
Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
« Antwort #233 am: 22 April 2018, 09:34:23 »
Die gcalcli Aufrufe sind komplett non blocking, haben also mit deinem Fhem Hauptprozess nichts zu tun. Dein Problem liegt wahrscheinlich an einem zu kurzen timeout oder einem zu kurzen Intervall. Auf welchen Werten stehen die beiden Dinge bei dir?

Offline Amenophis86

  • Hero Member
  • *****
  • Beiträge: 2438
  • Anti-Statement befreite Zone ;)
Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
« Antwort #234 am: 22 April 2018, 10:22:23 »
Intervall auf 3600 und Timeout keine Ahnung, habe ich nie verändert.
FHEM auf Raspberry3, Betriebssystem Jessy, HMLan, HM Komponenten, LD382A, H801, Sonoff, Harmony Hub und vieles mehr. Einfach ein tolles universelles System

Online mumpitzstuff

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 969
Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
« Antwort #235 am: 22 April 2018, 11:35:02 »
Das wäre aber wichtig zu wissen. Steht bei den Internals oben im Device. Wenn da 10 steht, dann stell das mal bitte auf 60 oder besser 120. Dann das Device auf disable stellen, reboot durchführen, nach dem Fhem Start mal 2-3 min warten bis alle anderen Fhem Module ihr Update gemacht haben und dann das disable wieder ausschalten. Wahrscheinlich musst du dann das Update einmal manuell anstoßen, damit du nicht erst 1h warten musst.

Online mumpitzstuff

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 969
Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
« Antwort #236 am: 22 April 2018, 12:03:42 »
Alternativ könntest du auch mal versuchen das Kommando zum Kalender abholen in der Commandline von fhem auszuführen. Aber dazu bitte erst das Device auf disable stellen und rebooten, damit sich das automatische Update und die manuelle Abfrage nicht in die Quere kommen.

{qx(gcalcli agenda 04/22/2018 05/22/2018  --calendar "Privat" --calendar "Arbeit" --detail_all --tsv)}

Offline RoBra81

  • Sr. Member
  • ****
  • Beiträge: 960
Hallo,

ich habe zur Zeit das Problem, dass das Kalender-Device leer bleibt. Im Log habe ich folgende Meldungen:

2018.05.03 12:42:22 1: ERROR evaluating {GCALVIEW_DoEnd('Kalender.gcal||')}: Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 625.
2018.05.03 12:42:22 5: Kalender.gcal_DoEnd: end running

KeyError: 'creator'
    if 'email' in event['creator'] else '')
  File "/usr/local/bin/gcalcli", line 1187, in _tsv
    self._tsv(start, eventList)
  File "/usr/local/bin/gcalcli", line 1733, in AgendaQuery
    gcal.AgendaQuery(startText=args[1], endText=args[2])
  File "/usr/local/bin/gcalcli", line 2493, in BowChickaWowWow
    BowChickaWowWow()
  File "/usr/local/bin/gcalcli", line 2647, in <module>

Woran könnte das liegen?

BTW: BowChickaWowWow ist schon ein interessanter Funktionsname...

Ronny

Online mumpitzstuff

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 969
gcalcli hat leider ein Problem mit Kommas in den Terminen. Genauer gesagt gcalcli maskiert die Kommas nicht die in den Terminen enthalten sind, erzeugt aber trotzdem eine csv Datei. Diese passt dann aber nicht mehr, da dort einfach zu viele Kommas enthalten sind. Ich kann an diesem Verhalten leider nichts ändern, das ist ein Bug in gcalcli. Kannst du bitte mal prüfen, ob das bei dir das Problem sein könnte?

Offline RoBra81

  • Sr. Member
  • ****
  • Beiträge: 960
In Beschreibung und location sind Kommas, aber die haben bis jetzt funktioniert...