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

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

Vorheriges Thema - Nächstes Thema

mumpitzstuff

Hmm. Dann muss da noch ein Bug in der neuen Versionsabfrage sein. Die ist aber nicht relevant für 3.4.0, nur die Fehlermeldung ist unschön. Ich schaue es mir noch mal an. Danke!

Jamo

Ich habe jetzt auch auf die version 4.0.4 geupdated, hier meine Schritte, da ich mit
Zitatgit clone https://github.com/insanum/gcalcli.git
cd gcalcli
python3 setup.py install
folgende Fehlermeldung "ImportError: No module named 'setuptools'" bekommen habe.

Das update hat dann nur wie folgt geklappt:
sudo apt remove gcalcli
sudo apt-get install git python3-pip python-gdata python-dateutil python-gflags python-vobject python-parsedatetime
sudo apt --fix-broken install


dann die richtige gcalcli Datei von https://pkgs.org/download/gcalcli für sein System runterladen und installieren:
sudo dpkg -i gcalcli_4.0.4-1_all.deb
gcalcli --version


Allerdings zeigt es dann :gcalcli v4.0.3 (Eric Davis, Brian Hartvigsen, Joshua Crowgey) an, nicht 4.0.4 :-(

Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

mumpitzstuff

Sollte auch gehen. Ich hab's mit der ersten Variante probiert von dir und die fehlenden Dinge installiert.

pip3 install --upgrade setuptools

Versuchs mal damit.

Eventuell gehts auch damit:

sudo apt-get install python3-setuptools

Dann hat man aber Schwierigkeiten ein Update über pip zu machen. Pip meckert immer, wenn man versucht ein Packet zu updaten, was vorher über apt installiert wurde.

Jamo

yep, nach dem "pip3 install --upgrade setuptools" gehts auch mit der ersten Variante von Dir, also pip3 install --upgrade setuptools
git clone https://github.com/insanum/gcalcli.git
cd gcalcli
python3 setup.py install
gcalcli --version
-> gcalcli v4.0.4 (Eric Davis, Brian Hartvigsen, Joshua Crowgey)

Danke!
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

Jamo

Hallo Mumpitzstuff,
jetzt nach dem update auf 4.0.4, bekomme ich immer folgende Fehlermeldung:
2019.03.27 12:49:42 3: GoogleCalendar: export PYTHONIOENCODING=utf8 && gcalcli agenda 03/27/2019 04/04/2019 --calendar "aaaa.bbbbbb@gmail.com" --calendar "Geburtstage" --calendar "Reminders" --details calendar --details longurl --details location --details description --details email --tsv
2019.03.27 12:49:42 3: GoogleCalendar: something went wrong (check your parameters) - Traceback (most recent call last): File "/usr/local/bin/gcalcli", line 11, in <module> load_entry_point('gcalcli==4.0.4', 'console_scripts', 'gcalcli')() File "/usr/local/lib/python3.5/dist-packages/gcalcli-4.0.4-py3.5.egg/gcalcli/cli.py", line 147, in main File "/usr/local/lib/python3.5/dist-packages/gcalcli-4.0.4-py3.5.egg/gcalcli/gcal.py", line 67, in __init__ File "/usr/local/lib/python3.5/dist-packages/gcalcli-4.0.4-py3.5.egg/gcalcli/gcal.py", line 196, in _get_cached KeyError: 'all_cals'
2019.03.27 12:49:42 1: ERROR evaluating {GCALVIEW_DoEnd('GoogleCalendar||')}: Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 651.
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

mumpitzstuff

Cached key Error.  Löschen mal die beiden Verzeichnisse in /opt/fhem die mit .gcalcli anfangen und mache die Authentifizierung neu.

Jamo

Hallo Achim,
ich komme nicht weiter: Ich bekomme immer folgende Fehlermeldung, und ich glaube das liegt daran, dass fhem bei mir wegen SONOS unter 'root' läuft:
linaro@tinkerboard:/opt/fhem/gcalcli$ sudo gcalcli --noauth_local_webserver list
Traceback (most recent call last):
  File "/usr/local/bin/gcalcli", line 11, in <module>
    load_entry_point('gcalcli==4.0.4', 'console_scripts', 'gcalcli')()
  File "/usr/local/lib/python3.5/dist-packages/gcalcli-4.0.4-py3.5.egg/gcalcli/cli.py", line 147, in main
  File "/usr/local/lib/python3.5/dist-packages/gcalcli-4.0.4-py3.5.egg/gcalcli/gcal.py", line 67, in __init__
  File "/usr/local/lib/python3.5/dist-packages/gcalcli-4.0.4-py3.5.egg/gcalcli/gcal.py", line 196, in _get_cached
KeyError: 'all_cals'

mache ich allerdings das gleich ohne 'sudo' erhalte ich:
linaro@tinkerboard:/opt/fhem/gcalcli$ gcalcli --noauth_local_webserver list

Go to the following link in your browser:

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

Enter verification code:

Authentifizierung habe ich neu gemacht (Verzeichnisse vorher geloescht), und gcalcli mit deiner Methode sowohl mit als auch ohne 'sudo' installiert. Funktioniert alles nicht. Hast Du noch eine Idee?

Wenn ich nämlich im Kalender dann ein Update mache, bekomme ich nämlich die gleiche Fehlermeldung, was nämlich gar nicht an deinem Modul liegt:
2019.03.27 21:22:47 3: Datum: Event: UpdateCal UpdateCal
2019.03.27 21:22:47 3: GoogleCalendar blocking call already running
2019.03.27 21:22:50 3: GoogleCalendar: export PYTHONIOENCODING=utf8 && gcalcli agenda 03/27/2019 04/04/2019  --calendar "aaaaa.bbbbbbbbbbb@gmail.com" --calendar "Geburtstage" --calendar "Reminders" --details calendar --details longurl --details location --details description --details email  --tsv
2019.03.27 21:22:50 3: GoogleCalendar: something went wrong (check your parameters) - Traceback (most recent call last):
  File "/usr/local/bin/gcalcli", line 11, in <module>
    load_entry_point('gcalcli==4.0.4', 'console_scripts', 'gcalcli')()
  File "/usr/local/lib/python3.5/dist-packages/gcalcli-4.0.4-py3.5.egg/gcalcli/cli.py", line 147, in main
  File "/usr/local/lib/python3.5/dist-packages/gcalcli-4.0.4-py3.5.egg/gcalcli/gcal.py", line 67, in __init__
  File "/usr/local/lib/python3.5/dist-packages/gcalcli-4.0.4-py3.5.egg/gcalcli/gcal.py", line 196, in _get_cached
KeyError: 'all_cals'

2019.03.27 21:22:50 1: ERROR evaluating {GCALVIEW_DoEnd('GoogleCalendar||')}: Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 651.

Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

Jamo

Habe die Lösung gefunden:
Google search nach "KeyError: 'all_cals'" führt auf die folgende Webseite: https://github.com/insanum/gcalcli/issues/428, die einen Fehler in der 4.0.4 "Upgrade to 4.0.4-1 breaks working installation. #428" reported und "Fixed the problem by using --refresh" empfiehlt.

Ich habe dann folgendes gemacht, jetzt funktioniert alles wie vorher mit der version 4.0.4. sudo gcalcli --noauth_local_webserver --refresh list

Danke!
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

mumpitzstuff


trinitywhm

Ich habe auf einem komplett jungfräulichen FHEM die ersten Schritte der Installation durchgeführt. Die Version ist lt. Versionabfrage die richtige (gcalcli v3.4.0 (Eric Davis, Brian Hartvigsen)). Allerdings komme ich mit diesem Kommando nicht weiter:
sudo -u fhem gcalcli --noauth_local_webserver list

Verwende ich das erhalte ich die Fehlermeldung:
Unknown command line flag 'noauth_local_webserver' und drunter die Hilfe mit ausgegeben.

Verwende ich das Kommando ohne "--noauth_local_webserver", erhalte ich zwar den Authentication-Code, aber mit der korrekten Warnung dass ich es doch mit dem Parameter aufrufen soll:
If your browser is on a different machine then exit and re-run this
application with the command-line parameter

  --noauth_local_webserver


Da beißt sich doch die Katze irgendwie in den Schwanz. Was soll ich denn hier tun?

mumpitzstuff

Versuch mal list nach hinten zu setzen. Manchmal spielt die Reihenfolge eine Rolle. Wenn das nicht geht, dann müsstest du der alten Anweisung folgen:

https://github.com/mumpitzstuff/fhem-GCALVIEW/commit/0e7cd81947127dac8463165755dc45c6eccb19aa

Hier must du dem User fhem die Möglichkeit geben eine Shell aufzumachen, dann zum User fhem wechseln und dann müsste es gehen. Oder du kompilierst dir gleich die 4.0.4. Das mit der Authentifizierung ist leider ein kompletter Scheiss bei dem Tool, daran kann ich aber leider nichts ändern.

trinitywhm

#326
Vielen vielen Dank. Mit der alten Anleitung hat es geklappt. Und dem list nach hinten setzen. Zumindest das installieren und den Token setzen.

Das define in FHEM klappt auch, aber er holt keine Daten ab. Der Fehler im Logfile dazu wenn ich den set-Befehl update aufrufe:
2019.05.10 19:10:48 3: CAL_Geburtstage: export PYTHONIOENCODING=utf8 && gcalcli agenda 05/10/2019 03/05/2020  --calendar "Geburtstagsduplikate" --details calendar --details longurl --details location --details description --details email  --tsv
2019.05.10 19:10:48 3: CAL_Geburtstage: something went wrong (check your parameters) - usage: gcalcli agenda [-h]
                      [--details {calendar,location,length,reminders,description,url,attendees,email,attachments,all}]
                      [--color-owner COLOR_OWNER]
                      [--color-writer COLOR_WRITER]
                      [--color-reader COLOR_READER]
                      [--color-freebusy COLOR_FREEBUSY]
                      [--color-date COLOR_DATE]
                      [--color-now-marker COLOR_NOW_MARKER]
                      [--color-border COLOR_BORDER]
                      [--color-title COLOR_TITLE] [--tsv] [--nostarted]
                      [--nodeclined] [--width CAL_WIDTH] [--military]
                      [--override-color]
                      [start] [end]
gcalcli agenda: error: argument --details: invalid choice: 'longurl' (choose from 'calendar', 'location', 'length', 'reminders', 'description', 'url', 'attendees', 'email', 'attachments', 'all')

2019.05.10 19:10:48 1: ERROR evaluating {GCALVIEW_DoEnd('CAL_Geburtstage||')}: Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 648


Was hat es damit jetzt auf sich?

mumpitzstuff

Hmm Mist. Da ist mir was durch die Lappen gegangen bei der Umstellung auf die neue Version. Ich behebe das heute Abend.

trinitywhm

Oh super dann liegts ja nicht an mir.  ;)

Vielen Dank, bis dann

mumpitzstuff

Kannst du der Einfachheit halber probieren das bei dir lokal selbst zu ändern? Dazu musst du die Datei öffnen:

sudo nano /opt/fhem/FHEM/57_GCALVIEW.pm

In den Zeilen 387 und 391 findest du sowas hier:

--details longurl

Dort löschst du einfach das long, so das daraus das wird:

--details url

Damit sollte es dann eigentlich gehen. Abspeichern und in FHEm das nicht vergessen:

shutdown restart