Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)

Begonnen von mumpitzstuff, 04 Oktober 2017, 00:02:11

Vorheriges Thema - Nächstes Thema

borsTiHD

Vielen Dank schonmal für die Hilfe.
Nach dem Raspberry Neustart bekomme ich sogar garnichts mehr in dem Event Monitor ausgegeben, wenn ich ein Update durchführe.
Lediglich mein Aufurf:

2018-03-26 09:23:31 GCALVIEW GoogleCalendar update

Dann hab ich das mal auf dem Pi direkt versucht per SSH.
Ich hoffe mal "gcalcli list" war der richtige Befehl? :D
Da bekomme ich die Meldung das ein Modul fehlt... dann hab ich dem fhem user bash Rechte gegeben und hab es mit dem nochmal probiert.
Gleiches Ergebnis:

fhem@raspberrypi:~$ gcalcli list
ERROR: Missing module - No module named dateutil.tz


Dabei ist mir eingefallen das ich vor kurzem meinem Pi ein Update spendierte, ich gehe jetzt mal davon aus, dass dadurch dieses Modul entfernt wurde?
Bevor ich jetzt versuche alles nach deiner Anleitung erneut zu installieren, mal lieber die Frage was deiner Meinung nach der Beste Weg wäre.
Kann ich das Modul nachinstallieren, bzw reparieren? Meinst du das kam wegen dem Pi Update?  :)

Zitat von: mumpitzstuff am 26 März 2018, 00:51:53
Ein Update von mir kam übrigens erst am 08.03 und davor ziemlich lange nichts...

Davon bin ich auch nicht ausgegangen, da ich erst gestern alles FHEM basierte geupdatet hatte. :D

mumpitzstuff

#211
Dann ist die fehlende Bibliothek die Ursache.

sudo apt-get install python-dateutil

oder

sudo apt-get install python-pip
sudo pip install python-dateutil


Guck mal ob das hilft. Auf der Console muss das Ding erst mal wieder laufen, sonst geht in FHEM gar nichts...

borsTiHD

Es fehlten scheinbar sogar noch mehr Pakete:
ERROR: Missing module - No module named gflags
ERROR: Missing module - No module named httplib2
ERROR: Missing module - No module named apiclient.discovery


Hatte das kurz der Reihe nach immer wieder probiert und eins jeweils nachinstalliert.

Deswegen hab ich jetzt gcalcli neuinstalliert und der Pi hat sich dabei etwa 46 neue Pakete geholt.
Ich glaube wirklich das war wegen dem alten Update des Pi's.
Jetzt konnte ich auch wieder meine einzelnen Kalender per SSH sehen.
In FHEM geht auch direkt wieder alles... musste nichtmal die Verknüpfung neu machen.  ::)

Ohmann... ich danke dir vielmals.  ;D

mumpitzstuff


trinitywhm

Guten Abend,

bekomme seit heute folgenden Fehler im Log:
2018.04.01 17:59:15 3: CAL_Hausarbeit blocking call already running
2018.04.01 17:59:15 3: BlockingCall for CAL_Hausarbeit aborted
2018.04.01 17:59:16 3: CAL_Hausarbeit: gcalcli agenda 04/01/2018 06/30/2018  --calendar "Hausarbeit" --detail_all  --tsv
2018.04.01 17:59:16 3: CAL_Hausarbeit: something went wrong (check your parameters) - 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?scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fcalendar+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Furlshortener&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&response_type=code&client_id=232867676714.apps.googleusercontent.com&access_type=offline

Enter verification code: Traceback (most recent call last):
  File "/usr/bin/gcalcli", line 2649, in <module>
    BowChickaWowWow()
  File "/usr/bin/gcalcli", line 2472, in BowChickaWowWow
    allDay=FLAGS.allday
  File "/usr/bin/gcalcli", line 614, in __init__
    self._GetCached()
  File "/usr/bin/gcalcli", line 740, in _GetCached
    self._CalService().calendarList().list())
  File "/usr/bin/gcalcli", line 696, in _CalService
    http=self._GoogleAuth())
  File "/usr/bin/gcalcli", line 685, in _GoogleAuth
    storage, args)
  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/tools.py", line 222, in run_flow
    code = input('Enter verification code: ').strip()
EOFError: EOF when reading a line

2018.04.01 17:59:16 1: ERROR evaluating {GCALVIEW_DoEnd('CAL_Hausarbeit||')}: Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 625.


FHEM ist aktuell und es hat die ganze Zeit auch gut funktioniert. Weiter vorne in diesem Beitrag gab es ähnliche Meldungen im Log, aber ich habe bereits geprüft ob Berechtigungen korrekt sitzen und das erneute setzen des Sicherheitstoken bringt auch nicht den gewünschten Erfolg. Das Absetzen von {qx(gcalcli list);;} in der FHEM-Kommandozeile bringt dieselbe Meldung wie im Log ersichtlich dass der Token gesetzt werden soll.

Was ist hier zu tun?
Die Log-Meldung kann provoziert werden, bei jedem Update des Kalenders.

mumpitzstuff

#215
War das nach einem fhem Update?

Hast du schon mal versucht deinen Rechner neu zu starten?

sudo reboot now

Mir ist aufgefallen, das wenn gcalcli einmal irgendwie gekillt wurde, es danach zu ganz komischen Effekten kommen kann. Außer einem reboot hat bei mir auch nichts geholfen. Ich habe noch nicht rausfinden können woran das liegt, aber bevor ich jetzt zu suchen anfange, Versuch mal das Naheliegenste: einen reboot...

trinitywhm

Sorry, vergessen zu erwähnen. Reboot natürlich auch schon probiert. Leider kein Erfolg.

mumpitzstuff

#217
Disable mal das Modul und starte danach mal den Rechner neu, um alle Seiteneffekte auszuschliessen. Dann ruf mal innerhalb von FHEM das von dir schon erwähnte gcalcli list auf:

{qx(gcalcli list);;}

Wenn du hier die Aufforderung bekommst den Verification Code einzugeben, dann passt etwas nicht mit deinem Token. Bist du sicher, das du die Authentifizierung als fhem User durchgeführt hast?

Hast du mal die Möglichkeit mit der configFolder Option versucht? Einfach bei der ganzen Authentifizierung die Option configFolder auf /opt/fhem setzen und das dann im Kalender Device ebenfalls als Attribut setzen. Vorher bitte damit überprüfen ob es geht:

{qx(gcalcli list --configFolder /opt/fhem);;}

Das Device am besten erst wieder auf disable 0 stellen, wenn das list Kommando in der FHEM Kommandozeile wieder ohne Fehler durch geht. Vorher macht es keinen Sinn.

trinitywhm

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.

mumpitzstuff

Das ist ja komisch. Naja Hauptsache es geht wieder. Och schau aber bei Gelegenheit mal rein, vielleicht finde ich was.

mumpitzstuff

Mir ist doch noch was eingefallen, gerade weil du relativ viele Devices hast. Auf welchem Wert steht dein Timeout Wert? Wenn es nur 10s sind, ist unter Umständen dass das Problem. Stell am besten den Timeout Wert bei allen Devices z.b. auf 30s, um zukünftig Probleme zu vermeiden.

RoBra81

Guten Morgen,

Zitat von: mumpitzstuff am 26 Februar 2018, 22:10:26
Ich habe selbst einen Kalender Müllabfuhr und Restmüll wird zu Restmuell im Reading. Vermutlich hast du eine falsche Codepage z.b. Latin-1 anstatt utf-8 eingestellt. Gib mal locale auf der Shell ein und Check mal ob da utf8 steht.

nachdem mein Müllkalender nach meinem letzten Post funktionierte, habe ich nun wieder das Problem, dass der Müllkalender nicht funktioniert und beim Anlegen eines neuen GCALVIEW-Gerätes nur der M?llkalender gefunden wird. Wenn ich in der SSH-Konsole

locale

eingebe, erhalte ich

LANG=de_DE.UTF-8
LANGUAGE=de_DE.UTF-8
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_MESSAGES=POSIX
LC_PAPER="de_DE.UTF-8"
LC_NAME="de_DE.UTF-8"
LC_ADDRESS="de_DE.UTF-8"
LC_TELEPHONE="de_DE.UTF-8"
LC_MEASUREMENT="de_DE.UTF-8"
LC_IDENTIFICATION="de_DE.UTF-8"
LC_ALL=


Gebe ich jedoch im FHEM

"locale"

ein, so erhalte ich im Logfile

LANG=
LANGUAGE=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=


Was kann ich tun, damit mein FHEM utf-8 kann und der Müllkalender wieder funktioniert?

Vielen Dank
Ronny

mumpitzstuff

Auf was steht dein globales Attribut language in FHEM? Versuch das mal auf DE zu setzen.

attr global language DE

Auf der Console auch noch mal das eingeben:

sudo raspi-config

und prüfen ob hier die de.utf8 codepage generiert und hinterher auch ausgewählt wurde.

Danach ist glaube ich ein restart des Rechners notwendig.

RoBra81

Zitat von: mumpitzstuff am 04 April 2018, 07:52:18
Auf was steht dein globales Attribut language in FHEM? Versuch das mal auf DE zu setzen.

attr global language DE

Das war schon so eingestellt...

Zitat von: mumpitzstuff am 04 April 2018, 07:52:18
Auf der Console auch noch mal das eingeben:

sudo raspi-config

und prüfen ob hier die de.utf8 codepage generiert und hinterher auch ausgewählt wurde.

Danach ist glaube ich ein restart des Rechners notwendig.

Da ich einen Cubietruck habe, kann ich das nicht machen, habe aber mit

dpkg-reconfigure locales

utf-8 eingestellt und danach auch neu gestartet...

mumpitzstuff

Mehr fällt mir ehrlich gesagt auch nicht ein. Bei mir kommt aber mit:

{qx('locale')}

die selbe Ausgabe wie in der Console. Kannst du das Thema bitte mal im Forum unter Anfängerfragen rein stellen? Vielleicht hat sonst noch jemand eine Idee was man tun könnte. Vermutlich lesen hier nicht so viele mit.