FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Kalendermodule => Thema gestartet von: mumpitzstuff am 04 Oktober 2017, 00:02:11

Titel: Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 04 Oktober 2017, 00:02:11
Dieses Modul arbeitet Standalone, also baut nicht auf anderen Modulen auf. Alle Funktionen wurden absolut non blocking implementiert und sollten somit andere Module nicht behindern. Jedes angezeigte Event verfügt über einen anklickbaren Link, der direkt zum Eintrag im Google Kalender führt, so das man den Eintrag direkt editieren kann (funktioniert super in jedem Browser).

Es gibt innerhalb des Moduls 2 Ansichten, welche sich zum einen an 57_CALVIEW und zum anderen an 57_ABFALL anlehnen. Diese Ansicht lässt sich beliebig umschalten oder man erstellt mehrere Devices und konfiguriert die einzelnen Devices entsprechend. Bei mir kann dieses Modul die Module 57_CALENDAR, 57_CALVIEW und 57_ABFALL inzwischen komplett ersetzen.

Um das Modul nutzen zu können, muss gcalcli (open source) installiert sein!

Installation:

1.) Zuerst einmal muss man gcalcli installieren:
sudo apt-get install gcalcli
Eventuell müssen auch die folgenden Pakete installiert werden:
sudo apt-get install git python-pip python-gdata python-dateutil python-gflags python-vobject python-parsedatetime

2.) An dieser Stelle unbedingt prüfen, ob mindestens Version 3.4.0 installiert ist!
gcalcli --version
Wenn das nicht der Fall ist, können folgende Alternativen probiert werden:
pip install gcalcli --upgrade
oder
git clone https://github.com/insanum/gcalcli.git
cd gcalcli<br>
python setup.py install

oder
Hier kann man sich eine deb Datei für sein System runterladen: https://pkgs.org/download/gcalcli (https://pkgs.org/download/gcalcli) und installieren:
sudo dpkg -i <name of file>.deb
Wenn die Installation über pip fehl schlägt, dann muss man eventuell zuvor die über apt-get installierte Version entfernen:
sudo apt-get remove gcalcli

3.) Jetzt das folgende Kommando eingeben:
sudo -u fhem gcalcli --noauth_local_webserver list
Die angezeigte URL muss kopiert und mit einem Browser aufgerufen werden. Dort muss man die Verknüpfung mit dem Google Konto bestätigen und erhält dann ein OAuth Token angezeigt. Das kopiert man wieder und kopiert es in die Konsole des Users fhem und bestätigt die Eingabe. Nun kann gcalcli auf den Google Kalender zugreifen! Um das zu prüfen kann man folgendes eingeben und erhält dann eine Liste der verfügbaren Kalender angezeigt:
sudo -u fhem gcalcli list
Bitte an dieser Stelle prüfen, ob eine Datei namens .gcalcli_oauth im fhem Verzeichnis erstellt wurde (/opt/fhem). Wenn das nicht der Fall ist, sollte versucht werden Punkt 6. mit dieser zusätzlichen Option durchzuführen:
--configFolder /opt/fhem
Für neuere gcalcli Versionen muss --config-folder verwendet werden!

4.) In fhem sollte jetzt das folgende Kommando eine Liste deiner Google Kalender anzeigen:
{qx(gcalcli list);;}
oder
{qx(gcalcli list --configFolder /opt/fhem);;}
Für neuere gcalcli Versionen muss --config-folder verwendet werden!

5.) Jetzt kann das neue Modul 57_GCALVIEW installiert werden. Dazu folgende fhem Kommandos eingeben:
update add http://raw.githubusercontent.com/mumpitzstuff/fhem-GCALVIEW/master/controls_gcalview.txt
update all
shutdown restart

6.) Nun kann das Device in fhem angelegt werden:
define <name> GCALVIEW <timeout>
timeout ist hier ein Timeout in Sekunden für den Backgroundtask. Wenn dieses Timeout überschritten wird, dann wird der Task gekillt.

7.) Wenn es notwendig war die Option --configFolder bzw. --config-folder zu verwenden, dann muss unbedingt das Attribut configFolder im Device gesetzt werden!

Damit ist die Installation abgeschlossen!

Mit den Default Einstellungen sollten alle Termine der nächsten 5 Tage abgerufen werden. Das kann man entweder manuell auslösen oder man wartet das updateIntervall ab, das auf 1 Stunde voreingestellt ist.

Folgende Attribute gibt es aktuell:

updateIntervall: Intervall für das Abholen der Kalenderdaten in Sekunden (default: 3600s)

calendarFilter: Dieses Attribut wird erst verfügbar, wenn man das erste Mal seinen Google Calendar eingelesen hat. Mit diesem Attribut kann man bestimmte Kalender filtern. Wenn das Attribut nicht vorhanden ist oder kein Kalender ausgewählt ist, dann werden alle Kalender angezeigt. Ansonsten werden nur die ausgewählten Kalender angezeigt.

calendarDays: Gibt an von wievielen Tagen die Kalendereinträge angezeigt werden sollen. 30 würde z.B. bedeuten: von heute an 30 Tage in die Zukunft.

calendarIncludeStarted: Wenn das Attribut gesetzt ist, werden für die dort ausgewählten Kalender auch bereits gestartete Termine angezeigt. Wenn hier nichts gesetzt ist, dann werden gestartete Termine nicht angezeigt.

calendarType: Hier kann der Typ des Kalendars eingestellt werden. standard = 57_CALVIEW oder waste = 57_ABFALL

maxEntries: Hiermit kann die Anzahl der Einträge eingeschränkt werden. Die absolute Obergrenze sind jedoch 200 Einträge.

disable: Modul wird auf Eis gelegt und keine Updates werden mehr durchgeführt.

cache: Wenn das Attribut aktiviert ist, dann werden die Zugriffe nicht mehr durch einen Cache abgefedert.

filterSummary: Wenn dieses regex innerhalb des Summary matcht, dann wird das Event komplett ausgeblendet.

filterLocation: Wenn dieses regex innerhalb der Location matcht, dann wird das Event komplett ausgeblendet.

filterDescription: Wenn dieses regex innerhalb der Description matcht, dann wird das Event komplett ausgeblendet.

filterSource: Wenn dieses regex innerhalb von Source matcht, dann wird das Event komplett ausgeblendet.

filterAuthor: Wenn dieses regex innerhalb des Authors matcht, dann wird das Event komplett ausgeblendet.

filterOverall: Wenn dieses regex innerhalb des Summary, Location, Description, Source oder des Authors matcht, dann wird das Event komplett ausgeblendet.

alldayText: Gibt an, was bei einem Ganztagsevent ausgegeben werden soll (default: all-day).

weekdayText: Gibt an wie die Wochentage benannt werden sollen (default: Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday). Hier muss eine Komma separierte Liste von genau 7 Strings angegeben werden.

daysLeftLongText: Gibt an wie die lange Version der noch verbleibenden Tage benannt werden soll. Die Angabe muss eine Komma separierte Liste mit genau 3 Einträgen sein. Im letzten Eintrag sollte % verwendet werden, denn dieses Zeichen wird durch die Anzahl der verbleibenden Tage ersetzt (default: today,tomorrow,in % days).

readingPrefix: Dieses Attribut spielt nur beim Typ waste eine Rolle und gibt an, ob der Kalendername den einzelnen Readings vorangestellt werden soll oder nicht (default: nein).

sourceColor: Hiermit kann für die unterschiedlichen Kalenderquellen Farbwerte als String abgelegt werden. Es muss eine Komma separierte Liste im Stil von <source>:<color>,<source>:<color>,... angegeben werden.

wasteEventSeparator: Wenn der Typ waste eingestellt ist, dann hier hier das Trennzeichen angegeben werden, das verwendet werden soll, um Events die auf den selben Tag fallen, zusammen zu fassen (default: and).

showAge: Wenn das Attribut eingeschaltet ist, dann wird versucht, aus dem bei ageSource angegebenen Feld, eine vierstellige Zahl beginnend mit 19, 20 oder 21 zu extrahieren und das Alter z.B. einer Person zu berechnen (default: 0). Es wird ein separates Reading _age erzeugt.

ageSource: Gibt an, aus welchem Feld versucht wird, das Alter einer Person zu extrahieren (default: description). Es kann description, summary oder location ausgewählt werden.

configFolder: Hiermit kann man ein Verzeichnis für die Authentifizierungsdaten vorgeben, z.B. /opt/fhem.


HISTORY:
08.03.18
24.01.18
18.01.18
14.12.17
09.12.17:
04.12.17:
18.11.17:
11.11.17:
06.11.17:

TODO:

- Kalender Einträge erstellen und bearbeiten
- weitere Attribute unterstützen
- verschiedene Spielereien (für Voschläge wäre ich offen)

PS: Hier noch eine schöne readingsGroup die man verwenden könnte. Wenn man das entsprechende sourceColor Attribut im Kalender setzt, dann werden diese Farbwerte auch in der Readingsgroup angezeigt. Weiterhin sind die Einträge anklickbar und man wird direkt zum Eintrag im Google Kalender weiter geleitet z.B. um ihn zu editieren:


defmod rg_KALENDER readingsGroup <Datum>,<Tag>,<Zeit>,<Termin>,<Ort>\
KALENDER_VIEW:t_001_bdate,t_001_weekday,t_001_timeshort,t_001_summary,t_001_location\
KALENDER_VIEW:t_002_bdate,t_002_weekday,t_002_timeshort,t_002_summary,t_002_location\
KALENDER_VIEW:t_003_bdate,t_003_weekday,t_003_timeshort,t_003_summary,t_003_location\
KALENDER_VIEW:t_004_bdate,t_004_weekday,t_004_timeshort,t_004_summary,t_004_location\
KALENDER_VIEW:t_005_bdate,t_005_weekday,t_005_timeshort,t_005_summary,t_005_location\
KALENDER_VIEW:t_006_bdate,t_006_weekday,t_006_timeshort,t_006_summary,t_006_location\
KALENDER_VIEW:t_007_bdate,t_007_weekday,t_007_timeshort,t_007_summary,t_007_location\
KALENDER_VIEW:t_008_bdate,t_008_weekday,t_008_timeshort,t_008_summary,t_008_location\
KALENDER_VIEW:t_009_bdate,t_009_weekday,t_009_timeshort,t_009_summary,t_009_location\
KALENDER_VIEW:t_010_bdate,t_010_weekday,t_010_timeshort,t_010_summary,t_010_location\
KALENDER_VIEW:t_011_bdate,t_011_weekday,t_011_timeshort,t_011_summary,t_011_location\
KALENDER_VIEW:t_012_bdate,t_012_weekday,t_012_timeshort,t_012_summary,t_012_location\
KALENDER_VIEW:t_013_bdate,t_013_weekday,t_013_timeshort,t_013_summary,t_013_location\
KALENDER_VIEW:t_014_bdate,t_014_weekday,t_014_timeshort,t_014_summary,t_014_location\
KALENDER_VIEW:t_015_bdate,t_015_weekday,t_015_timeshort,t_015_summary,t_015_location\
KALENDER_VIEW:t_016_bdate,t_016_weekday,t_016_timeshort,t_016_summary,t_016_location\
KALENDER_VIEW:t_017_bdate,t_017_weekday,t_017_timeshort,t_017_summary,t_017_location\
KALENDER_VIEW:t_018_bdate,t_018_weekday,t_018_timeshort,t_018_summary,t_018_location\
KALENDER_VIEW:t_019_bdate,t_019_weekday,t_019_timeshort,t_019_summary,t_019_location\
KALENDER_VIEW:t_020_bdate,t_020_weekday,t_020_timeshort,t_020_summary,t_020_location
attr rg_KALENDER nameStyle style="font-weight:bold;;text-decoration:underline;;"
attr rg_KALENDER nonames 1
attr rg_KALENDER notime 1
attr rg_KALENDER room KALENDER
attr rg_KALENDER valueFormat {\
  if ($READING =~ /bdate$/)\
  {\
    my $readingStart = $READING;;\
    $readingStart =~ s/bdate$//;;\
    if (0 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))\
    {\
      "Heute";;\
    }\
    elsif (1 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))\
    {\
      "Morgen";;\
    }\
    else\
    {\
      # the follwoing line strips the year of the date (remove it if needed)\
      substr($VALUE, 0, 5);;\
    }\
  }\
  elsif ($READING =~ /weekday$/)\
  {\
    my $readingStart = $READING;;\
    $readingStart =~ s/weekday$//;;\
    \
     # the follwoing line strips the weekday down to 3 chars (remove it if needed)\
    substr($VALUE, 0, 3);;\
  }\
  elsif ($READING =~ /summary$/)\
  {\
    my $readingStart = $READING;;\
    $readingStart =~ s/summary$//;;\
    my $link = ReadingsVal($DEVICE, $readingStart.'url', '');;\
    my $age = ReadingsVal($DEVICE, $readingStart.'age', undef);;\
    my $style = 'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"';;\
    if (defined($age))\
    {\
      $link =~ s/\>link\</ $style\>$VALUE \($age\)\</;;\
    }\
    else\
    {\
      $link =~ s/\>link\</ $style\>$VALUE\</;;\
    }\
    $link;;\
  }\
}
attr rg_KALENDER valueStyle {\
  my $readingStart = $READING;;\
  $readingStart =~ s/(t_\d+_).+/$1/;;\
  'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"'\
}


Noch eine Readinsgroup für einen Abfallkalender:
defmod rg_Abfall readingsGroup ABFALL_LEERUNG:Restmuell_weekday,Restmuell_date,Restmuell_text,<%dustbin@red>,<{recyclebinCounter($DEVICE,'Restmuell_')}@state>\
ABFALL_LEERUNG:Rund_weekday,Rund_date,Rund_text,<%dustbin@green>,<{recyclebinCounter($DEVICE,'Rund_')}@state>\
ABFALL_LEERUNG:Flach_weekday,Flach_date,Flach_text,<%dustbin@limegreen>,<{recyclebinCounter($DEVICE,'Flach_')}@state>\
ABFALL_LEERUNG:Biogut_weekday,Biogut_date,Biogut_text,<%dustbin@yellow>,<{recyclebinCounter($DEVICE,'Biogut_')}@state>
attr rg_Abfall nonames 1
attr rg_Abfall room KALENDER
attr rg_Abfall valueFormat {\
  if ($READING =~ /bdate$/)\
  {\
    my $readingStart = $READING;;\
    my $daysLeft;;\
\
    $readingStart =~ s/bdate$//;;\
    $daysLeft = ReadingsVal($DEVICE, $readingStart.'daysleft', -1);;\
    \
    if (0 == $daysLeft)\
    {\
      'Heute';;\
    }\
    elsif (1 == $daysLeft)\
    {\
      'Morgen';;\
    }\
    elsif (2 == $daysLeft)\
    {\
      'Übermorgen';;\
    }\
    else\
    {\
      # the follwoing line strips the year of the date (remove it if needed)\
      substr($VALUE, 0, 5);;\
    }\
  }\
}
attr rg_Abfall valueStyle {\
  my $color;;   \
\
  if ($READING =~ /^(Restmuell_|Rund_|Flach_|Biogut_)/)\
  {\
    my $days = ReadingsVal($DEVICE, $1.'days', 0);;\
\
    $color = (1 == $days ? 'red' : 2 == $days ? 'darkorange' : 'white');;\
  }\
\
  return 'style="color:'.$color.'"';;\
}


Code für die 99_myUtils.pm:
sub recyclebinCounter($$)
{
  my ($device, $reading) = @_;
  my $days = ReadingsVal($device, $reading.'days', 'na');
  my $daysnext = ReadingsVal($device, $reading.'daysnext', 'na');
  my $color_days = ('1' eq $days ? 'red' : '2' eq $days ? 'darkorange' : 'green');
 
  return '<div style="width:16px;height:14px;border-radius:14px;color:white;background-color:'.
         $color_days.
         ';font-size:10px;font-weight:700;text-align:center;position:relative;padding-top:1%;'.
         'left:-29px;top:-4px;">'.$days.'</div>'.
         '<div style="width:16px;height:14px;border-radius:14px;color:white;'.
         'border:1px solid white;'.
         'font-size:10px;font-weight:700;text-align:center;position:relative;padding-top:1%;'.
         'left:-11px;top:-19px;">'.$daysnext.'</div>';
}


Zu guter Letzt noch ein Beispiel für einen Geburtstagskalender:
defmod rg_Geburtstage readingsGroup <Datum>,<Tag>,<verbl. Tage>,<Geburtstag>\
GEBURTSTAG_VIEW:t_001_bdate,t_001_weekday,t_001_daysleft,t_001_summary\
GEBURTSTAG_VIEW:t_002_bdate,t_002_weekday,t_002_daysleft,t_002_summary\
GEBURTSTAG_VIEW:t_003_bdate,t_003_weekday,t_003_daysleft,t_003_summary\
GEBURTSTAG_VIEW:t_004_bdate,t_004_weekday,t_004_daysleft,t_004_summary\
GEBURTSTAG_VIEW:t_005_bdate,t_005_weekday,t_005_daysleft,t_005_summary\
GEBURTSTAG_VIEW:t_006_bdate,t_006_weekday,t_006_daysleft,t_006_summary\
GEBURTSTAG_VIEW:t_007_bdate,t_007_weekday,t_007_daysleft,t_007_summary\
GEBURTSTAG_VIEW:t_008_bdate,t_008_weekday,t_008_daysleft,t_008_summary\
GEBURTSTAG_VIEW:t_009_bdate,t_009_weekday,t_009_daysleft,t_009_summary\
GEBURTSTAG_VIEW:t_010_bdate,t_010_weekday,t_010_daysleft,t_010_summary
attr rg_Geburtstage nameStyle style="font-weight:bold;;text-decoration:underline;;"
attr rg_Geburtstage nonames 1
attr rg_Geburtstage notime 1
attr rg_Geburtstage room KALENDER
attr rg_Geburtstage valueFormat {\
  if ($READING =~ /bdate$/)\
  {\
    my $readingStart = $READING;;\
    $readingStart =~ s/bdate$//;;\
    my $daysLeft = ReadingsVal($DEVICE, $readingStart.'daysleft', -1);;\
\
    if (0 == $daysLeft)\
    {\
      'Heute';;\
    }\
    elsif (1 == $daysLeft)\
    {\
      'Morgen';;\
    }\
  }\
  elsif ($READING =~ /summary$/)\
  {\
    my $readingStart = $READING;;\
    $readingStart =~ s/summary$//;;\
    my $age = ReadingsVal($DEVICE, $readingStart.'age', undef);;\
    if (defined($age))\
    {\
      $VALUE .= ' ('.$age.')';;\
    }\
    $VALUE;;\
  }\
}
attr rg_Geburtstage valueStyle {\
  my $readingStart = $READING;;\
  $readingStart =~ s/_[a-zA-Z]+$//;;\
  my $daysleft = ReadingsVal($DEVICE, $readingStart.'_daysleft', 0);;\
  my $color = ($daysleft <= 3 ? 'red' : $daysleft <= 7 ? 'orange' : $daysleft <= 14 ? 'yellow' : 'white');;\
\
  return 'style="color:'.$color.'"';;\
}


Hierfür benötigt man ein spezielles Kalenderdevice, in dem man entweder nach einem speziellen Kalender filtert oder nach einem Schlüsselwort wie z.B. Geburtstag. Bei mir hat das Kalenderdevice z.B. folgende Attribute:
attr GEBURTSTAG_VIEW alldayText ganztägig
attr GEBURTSTAG_VIEW calendarDays 365
attr GEBURTSTAG_VIEW filterOverall [Gg]eburtstag
attr GEBURTSTAG_VIEW invertFilter 1
attr GEBURTSTAG_VIEW room KALENDER
attr GEBURTSTAG_VIEW showAge 1
attr GEBURTSTAG_VIEW updateInterval 3600
attr GEBURTSTAG_VIEW weekdayText Montag,Dienstag,Mittwoch,Donnerstag,Freitag,Samstag,Sonntag


Ein Abfallkalender als DOIF:

defmod doif_Abfall DOIF ##
attr doif_Abfall room KALENDER
attr doif_Abfall uiTable {\
  package ui_Table;;\
\
  $SHOWNOSTATE=1;;\
\
  sub ic\
  {\
    my ($icon, $days, $days2) = @_;;\
    \
    icon_label2($icon, $days, $days2, 'white', (1 == $days ? 'red' : 2 == $days ? 'darkorange' : 'green'));;\
  }\
  \
  sub icon_label2\
  {\
    my ($icon, $text, $text2, $color, $color_bg, $pos_left, $pos_top) = @_;;\
    my $pad = ((length($text) > 1) ? 2 : 5);;\
    my $pad2 = ((length($text2) > 1) ? 2 : 5);;\
    \
    $color = "" if (!defined ($color));;\
    $color_bg = "" if (!defined ($color_bg));;\
    $pos_left = -5 if (!defined ($pos_left));;\
    $pos_top = -10 if (!defined ($pos_top));;\
   \
    return '<div style="display:inline-table;;">'.::FW_makeImage($icon).\
           '<div style="display:inline;;width:16px;;height:14px;;border-radius:14px;;color:'.$color.';;background-color:'.$color_bg.\
           ';;font-size:10px;;font-weight:700;;text-align:center;;position:relative;;padding-top:1px;;padding-left:'.$pad.'px;;padding-right:'.$pad.'px;;padding-bottom:1px;;'.\
           'left:'.$pos_left.'px;;top:'.$pos_top.'px;;">'.$text.'</div>'.\
           '<div style="display:inline;;width:16px;;height:14px;;border-radius:14px;;color:'.$color.';;border:1px solid white;;'.\
           'font-size:10px;;font-weight:700;;text-align:center;;position:relative;;padding-top:1px;;padding-left:'.$pad2.'px;;padding-right:'.$pad2.'px;;padding-bottom:1px;;'.\
           'left:'.$pos_left.'px;;top:'.$pos_top.'px;;">'.$text2.'</div></div>';;\
  }\
\
  sub convDate\
  {\
    my ($date, $days) = @_;;\
\
    return 'Heute' if (0 == $days);;\
    return 'Morgen' if (1 == $days);;\
    return 'Übermorgen' if (2 == $days);;\
    \
    # the following line strips the year of the date (remove it if needed)\
    #return substr($date, 0, 5);;\
    return $date;;\
  }\
\
  sub textColor\
  {\
    my $days = shift;;\
    \
    return (1 == $days ? 'red' : 2 == $days ? 'darkorange' : 'white');;\
  }\
}\
\
DEF TPL_Abfall (style([ABFALL_LEERUNG:$1_weekday], textColor([ABFALL_LEERUNG:$1_days]))|\
style(convDate([ABFALL_LEERUNG:$1_date], [ABFALL_LEERUNG:$1_days]), textColor([ABFALL_LEERUNG:$1_days]))|\
style([ABFALL_LEERUNG:$1_text], textColor([ABFALL_LEERUNG:$1_days]))|\
ic("dustbin\@$2", [ABFALL_LEERUNG:$1_days], [ABFALL_LEERUNG:$1_daysnext]))\
\
TPL_Abfall (Restmuell,red)\
TPL_Abfall (Rund,green)\
TPL_Abfall (Flach,limegreen)\
TPL_Abfall (Biogut,yellow)\
Titel: Antw:Neues Modul: 57_GCALVIEW (Ersatz für 57_CALENDAR + 57_CALVIEW?!?)
Beitrag von: Mave am 04 Oktober 2017, 10:54:50
Moin mumpitzstuff,

Deine Idee hört sich erstmal nicht schlecht an. Vielen Dank für Dein Engagement.

Für mich als Tablet UI User ist natürlich interessant, ob es auch ein Widget für Tablet UI geben wird, damit die Termine schön angezeigt werden können.

Grüße Mave
Titel: Antw:Neues Modul: 57_GCALVIEW (Ersatz für 57_CALENDAR + 57_CALVIEW?!?)
Beitrag von: Mave am 04 Oktober 2017, 10:56:59
Hast Du das Modul jetzt in den letzten 3 Tagen auf die Beine gestellt?

Du hast am 30.09. erstmals von gcalcli berichtet und heute präsentierst Du ein fertiges Modul?  :o

Respekt.
Titel: Antw:Neues Modul: 57_GCALVIEW (Ersatz für 57_CALENDAR + 57_CALVIEW?!?)
Beitrag von: mumpitzstuff am 04 Oktober 2017, 12:21:58
Ich verwende leider keine alternative Oberfläche, deshalb kann ich dazu wenig beitragen. Ich kann allerdings dabei unterstützen.
Wenn es aber bereits etwas für das originale CALVIEW gibt, dann sollte man die eigentlich auch fast übernehmen können. Alle Readings sind eigentlich gleich benannt in meinem Modul. Im Idealfall kann man mit diesem Modul einfach das alte CALVIEW Device ersetzen und darauf aufbauende Schichten wie. z.B. eine GUI sollten davon gar nichts mitbekommen.

Das Modul zu erstellen war erschreckend einfach, denn der gesamte Unterbau wird von gcalcli übernommen. Ich musste an der Stelle nur noch die Daten in die Readings überführen, was sich auf nur wenige Zeilen Code beschränkt hat. Ich war selbst etwas verblüfft darüber, wie schnell etwas funktionsfähiges entstanden ist.

Ich hätte gern noch 1-2 Screenshots erstellt, damit sich jeder vor der Installation ein Bild davon machen kann, aber das ist bei privaten Kalendern immer so eine Sache...
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall)
Beitrag von: mumpitzstuff am 22 Oktober 2017, 23:54:34
Auch wenns nur für mich ist, hatte ich einfach Lust das Modul weitestgehend fertig zu stellen... Das Update ist jetzt verfügbar.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 05 November 2017, 21:03:23
Hallo Mumpitzstuff,
funktioniert prima. Erste Sahne. Auch mit dem anklickbaren link ist super Praktisch.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 05 November 2017, 21:13:42
Das freut mich. Wenn du noch etwas vermisst oder was nicht funktioniert, dann einfach melden.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 05 November 2017, 21:27:08
Das attr 'includeStarted' funktioniert nicht wie erwartet.
Ich habe das attr nicht gesetzt, also sollten angefangene Termine nicht mehr angezeigt werden.
Habe gerade einen Eintrag 'Test' für 21:20 gemacht, der wird aber weiterhin um 21:26 nach dem Kalender update angezeigt.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 05 November 2017, 21:59:27
Okay schau ich mir an.

Oder Moment. Das ist mir auch schon mal aufgefallen. Das liegt am Cache. Gcalcli legt sich einen Cache an und bedient sich für kurze Zeit daraus, bevor es wieder den Server abfragt. Deshalb hat man dann teilweise kurze Zeit solche Inkonsistenzen. Man kann den Cache aber löschen lassen. Dafür werde ich mal ein set Kommando einfügen. Oder ich frage generell ohne Cache ab, das könnte ich auch machen.
Kannst du mal versuchen einen längeren Termin anzulegen und nach 1h noch mal zu gucken? Ich hab leider keine Ahnung wie lange gcalcli den Cache beibehält.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 06 November 2017, 12:08:47
Ich habe es jetzt 2 mal probiert, gestern Abend mit einem 1-stündigem Termin der um 21:20 anfing, und heute einem 8 stündigem Termin ab 10:00.
Beidesmal ist der Termin nach über 2 Stunden immer noch sichtbar, auch wenn ich zwischendurch 'update' ausführe (um damit den stündlichen refresh öfter auszuführenn), das wäre mir eindeutig zu lange, weil im ersten Fall der Termin sogar schon zuende ist.
Vielleicht besser ohne Cache?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 06 November 2017, 12:36:30
Ich baue mal ein Attribut ein Cache ein/aus. Mal sehen ob das hilft. Ansonsten funktioniert die Filterung durch gcalcli nicht und ich muss das dann selbst "nachfiltern".
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 06 November 2017, 18:28:31
Der 8 stündige Termin von heute morgen ab 10:00 ist immer noch im Kalender. Attribut Cache ein/aus hört sich gut an. Danke!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 06 November 2017, 20:50:22
Übrigens, der 8 stündige Termin von heute morgen mit start 10:00 / ende 18:00 ist immer noch im Kalender :-)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 06 November 2017, 21:43:54
Was mache ich falsch?

Zitat2017.11.06 20:55:34 3: GCALVIEW defined with timeout 30
2017.11.06 20:56:29 3: Kalendertest blocking call already running
2017.11.06 20:56:30 3: Kalendertest: something went wrong (invalid gcalcli output) - 2017-11-06, 16:00, 2017-11-06, 16:30, https://www.google.com/calendar/event?eid=dmN

Im Log stehen einmalig die Einträge, aber keine readings.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 06 November 2017, 22:56:38
Hallo rabehd, ehrlich gesagt keine Ahnung, ich habe alles nach Anleitung von mumpitzstuff gemacht, und das hat auf Anhieb funktioniert.

Hier mal eine sub, mit der kann man aus dem Kalender-Readings von 'today_00[1-9]_[be]time' sich ein 'at' event generieren. Falls das reading 'today_00[1-9]_summary' mit dem Trigger übereinstimmt, wird das 'at' zum start oder end Zeitpunkt generiert. Über den 2-ten parameter "Start oder Ende" kann man definieren ob das at event am Anfang oder am Ende vom Kalendereintrag generiert werden soll. Das ist case insensitiv wil ich das über lc() konvertiert habe.
Der Trigger muss mit dem Kalendereintrag matchen
Die Action kann dann eine beliebige fhem Aktion sein, hier wird der Schalter_Heizung eingeschaltet.

Ich bin kein Perl experte, geht bestimmt schöner, aber funktioniert bei mir.


##########################################################
# define GoogleCalendar_n notify GoogleCalendar:to.*_00[1-9]_[be]time:.* {Kalenderstart("$EVENT","Trigger","Action")}
# define GoogleCalendar_n notify GoogleCalendar:to.*_00[1-9]_[be]time:.* {Kalenderstart("$EVENT","BEGIN","Besuch kommt","set Schalter1 on;;set Schalter2 off")}
# define GoogleCalendar_n notify GoogleCalendar:to.*_00[1-9]_[be]time:.* {Kalenderstart("$EVENT","Start","Besuch kommt","set Schalter1 on;;set Schalter2 off")}
# define GoogleCalendar_n notify GoogleCalendar:to.*_00[1-9]_[be]time:.* {Kalenderstart("$EVENT","Anfang","Besuch kommt","set HMIP_PSM1 on")}
# define GoogleCalendar_n notify GoogleCalendar:to.*_00[1-9]_[be]time:.* {Kalenderstart("$EVENT","End","Besuch kommt","set HMIP_PSM1 off")}
##########################################################
sub Kalenderstart ($$$$) {
  my ($Event,$StartOrEnd,$Trigger,$Action) = @_;
  my $hm         = strftime("%H:%M", localtime(time()));
  my $startlcend = lc($StartOrEnd);
  my @EVENTarray = split(": ", $Event);
  if (($hm lt $EVENTarray[1] && $EVENTarray[0] =~ 'today_.*') || ($hm gt $EVENTarray[1] && $EVENTarray[0] =~ 'tomorrow_.*')) {
    my @EVENTsplit = ($startlcend eq "begin" || $startlcend eq "start" || $startlcend eq "anfang")?split("btime", $EVENTarray[0]):split("etime", $EVENTarray[0]);
    my $summary    = $EVENTsplit[0]."summary";
    #Log 3, "Event: $Event; StartOrEnd: $StartOrEnd; Trigger: $Trigger; Action: $Action; EVENTarray[0]: $EVENTarray[0]; EVENTarray[1]: $EVENTarray[1]; summary: $summary; $Action";
    my $Kalendertext = ReadingsVal("GoogleCalendar","$summary","nA");
    my @Triggerarray = (split(" ", $Trigger),"_","_");
    my $devSpec      = $Triggerarray[0]."_".$Triggerarray[1]."_".$Triggerarray[2]."_".$startlcend;
    if ($Kalendertext =~ /$Trigger/) {fhem("defmod $devSpec at $EVENTarray[1]:00 $Action;attr $devSpec room Calendar ")}
}}
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 06 November 2017, 23:14:11
Hallo mumpitzstuff,
wenn ich jetzt ein 'update check' in fhem machen bekomme ich folgenden Fehler:gcalview
http://raw.githubusercontent.com/mumpitzstuff/fhem-GCALVIEW/master/controls_gcalview.txt: Too many redirects
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 06 November 2017, 23:33:41
Zitat von: inoma am 06 November 2017, 23:14:11
Hallo mumpitzstuff,
wenn ich jetzt ein 'update check' in fhem machen bekomme ich folgenden Fehler:gcalview
http://raw.githubusercontent.com/mumpitzstuff/fhem-GCALVIEW/master/controls_gcalview.txt: Too many redirects


Muss irgendwas temporäres sein:

2017.11.06 23:32:38 1 : gcalview
2017.11.06 23:32:39 1 : UPD FHEM/57_GCALVIEW.pm
2017.11.06 23:32:39 1 : saving fhem.cfg
2017.11.06 23:32:39 1 : saving ./log/fhem.save
2017.11.06 23:32:39 1 :
2017.11.06 23:32:39 1 : New entries in the CHANGED file:
2017.11.06 23:32:39 1 : - attribute cache added
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 06 November 2017, 23:36:12
So ich habe ein Update eingespielt. Die Logik von includeStarted war falsch rum. In der aktuellen Version kann man dieses Attribut nur noch auf 0 setzen und damit ausschalten anstatt wie früher einzuschalten. Außerdem habe ich im Abfall View ein Problem mit deutschen Umlauten behoben und auch ein Cache Attribut hinzugefügt. Damit kann man den Cache abschalten falls notwendig.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 06 November 2017, 23:39:31
Zitat von: rabehd am 06 November 2017, 21:43:54
Was mache ich falsch?

Im Log stehen einmalig die Einträge, aber keine readings.

Du könntest mal versuchen im Device das Attribut Verbose auf 5 zu setzen. Das gibt dann mehr Einblicke.

Hast du dich als User fhem angemeldet gehabt und dein OAuth Token generiert? Hast du dann auf der Kommandozeile (als fhem user!) mit:
gcalcli list

Eine Liste deiner Google Kalender erhalten?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 07 November 2017, 00:26:06
das 'attr includeStarted' funktioniert jetzt wie erwartet. Mit dem nächsten update vom Kalender verschwindet der begonnene Eintrag. Perfekt!
Das mit dem Cache habe ich nicht probiert.  Danke!!!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 07 November 2017, 16:21:42
ZitatEine Liste deiner Google Kalender erhalten?
Ja, hatte ich im Terminal gesehen.

Zitatim Device das Attribut Verbose auf 5 zu setzen.
2017.11.07 16:03:51 3: Kalendertest blocking call already running
2017.11.07 16:03:51 5: Kalendertest_SetNextTimer: set next timer


Ich bin eigentlich nach Deiner Anleitung vorgegangen.
Werde es wohl demnächst löschen und neuanlegen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Roli1606 am 07 November 2017, 21:38:31
Habe alles nach anleitung gemacht.
aber nach der Eingabe von
$ gcalcli --noauth_local_webserver
kommt bei mir folgendes
Traceback (most recent call last):
  File "/usr/local/bin/gcalcli", line 522, in <module>
    class gcalcli:
  File "/usr/local/bin/gcalcli", line 535, in gcalcli
    dateParser = DateTimeParser()
  File "/usr/local/bin/gcalcli", line 444, in __init__
    self.pdtCalendar = parsedatetime.Calendar()
  File "/usr/lib/python2.7/dist-packages/parsedatetime/__init__.py", line 216, in __init__
    self.ptc = Constants()
  File "/usr/lib/python2.7/dist-packages/parsedatetime/__init__.py", line 1733, in __init__
    self.locale = pdtLocales['icu'](self.localeID)
  File "/usr/lib/python2.7/dist-packages/parsedatetime/pdt_locales.py", line 151, in __init__
    self.icu = pyicu.Locale(localeID)
icu.InvalidArgsError: (<type 'icu.Locale'>, '__init__', (None,))


was stimmt da nicht?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 07 November 2017, 21:51:14
Zitat von: rabehd am 07 November 2017, 16:21:42
Ja, hatte ich im Terminal gesehen.
2017.11.07 16:03:51 3: Kalendertest blocking call already running
2017.11.07 16:03:51 5: Kalendertest_SetNextTimer: set next timer


Ich bin eigentlich nach Deiner Anleitung vorgegangen.
Werde es wohl demnächst löschen und neuanlegen.

Bei dir rennt aktuell scheinbar eine Instanz endlos im Hintergrund. Schau mal bei dir in den Prozessen nach, ob da ein gcalcli läuft bitte. Falls ja, dann schiess das mal ab. Ansonsten kannst du auch mal ein shutdown restart probieren. Ich hoffe dann wird der Blockingcall zurück gesetzt. 
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 07 November 2017, 21:58:34
Zitat von: Roli1606 am 07 November 2017, 21:38:31
Habe alles nach anleitung gemacht.
aber nach der Eingabe von
$ gcalcli --noauth_local_webserver
kommt bei mir folgendes
Traceback (most recent call last):
  File "/usr/local/bin/gcalcli", line 522, in <module>
    class gcalcli:
  File "/usr/local/bin/gcalcli", line 535, in gcalcli
    dateParser = DateTimeParser()
  File "/usr/local/bin/gcalcli", line 444, in __init__
    self.pdtCalendar = parsedatetime.Calendar()
  File "/usr/lib/python2.7/dist-packages/parsedatetime/__init__.py", line 216, in __init__
    self.ptc = Constants()
  File "/usr/lib/python2.7/dist-packages/parsedatetime/__init__.py", line 1733, in __init__
    self.locale = pdtLocales['icu'](self.localeID)
  File "/usr/lib/python2.7/dist-packages/parsedatetime/pdt_locales.py", line 151, in __init__
    self.icu = pyicu.Locale(localeID)
icu.InvalidArgsError: (<type 'icu.Locale'>, '__init__', (None,))


was stimmt da nicht?

Ich hab mal etwas geschaut und folgendes gefunden:

http://ubuntuhandbook.org/index.php/2014/08/gcalcli-google-calendar-command-line/ (http://ubuntuhandbook.org/index.php/2014/08/gcalcli-google-calendar-command-line/)

Da steht was von einem Bug in parsedatetime. Kannst du mal versuchen das so zu beheben? Ansonsten versuch mal:

pip install --upgrade parsedatetime

Vielleicht findest du auch hier weitere Informationen:

https://github.com/insanum/gcalcli/issues/152 (https://github.com/insanum/gcalcli/issues/152)
https://github.com/insanum/gcalcli/issues/142 (https://github.com/insanum/gcalcli/issues/142)
https://github.com/insanum/gcalcli/issues/163 (https://github.com/insanum/gcalcli/issues/163)

Ich hoffe du bekommst das damit behoben.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Roli1606 am 07 November 2017, 23:25:00
Zitat von: mumpitzstuff am 07 November 2017, 21:58:34
Ich hab mal etwas geschaut und folgendes gefunden:

http://ubuntuhandbook.org/index.php/2014/08/gcalcli-google-calendar-command-line/ (http://ubuntuhandbook.org/index.php/2014/08/gcalcli-google-calendar-command-line/)

Da steht was von einem Bug in parsedatetime.

Das hat geholfen habe diese Befehle ausgeführt Danke

cd /tmp

wget https://launchpad.net/ubuntu/+archive/primary/+files/python-parsedatetime_1.2-1_all.deb

sudo dpkg -i python-parsedatetime_1.2-1_all.deb
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Roli1606 am 08 November 2017, 00:06:00
wenn ich jetzt ein gcalcli list mache sehe ich meine Kalender aus google.

leider kommt bei einem update im fhem modul das im Log
2017.11.08 00:01:34 3: GKalender: gcalcli agenda   --detail_all   --tsv
2017.11.08 00:01:34 3: GKalender: something went wrong (check your parameters) - Error: must specify a username



Hab schon versucht den nächsten Schritt in der oben verlinkten Anleitung zu machen und die Datei mit User und pw anzulegen aber dann funktioniert ein gcalcli list nicht mehr und es kommt diese Meldung
fhem@cubieNAS:~$ gcalcli list
Error: [gcalcli] is an invalid commandfhem@cubieNAS:~$ gcalcli list

Hast du noch eine Idee?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 08 November 2017, 01:10:37
Wann siehst du deine Kalender? Wenn du als fhem eingeloggt bist? Du must das nach Punkt 4 aus der Anleitung sehen, ansonsten hat der fhem User the Authentifizierungsdaten nicht (wichtig ist hier als fhem User angemeldet zu sein). Geh doch noch mal die Punkte von 1 ab nacheinander durch. Sobald ein Fehler auftritt brauchst du nicht weitermachen. Das Anlegen als Fhem Device ist der letzte Punkt nachdem alle anderen Punkte fehlerfrei durchgelaufen sind. Du kannst mir auch gern eine private Nachricht schreiben mit den Punkten 1 bis 5 und den jeweiligen Ausgaben auf dem Bildschirm dazu. Irgendwas von den Punkten wurde bestimmt vergessen.

Weiter unten findet das System anscheinend nicht mal deine gcalcli Installation. Das verwundert mich etwas, da das doch installiert sein sollte. Kann dein fhem User vielleicht nicht darauf zugreifen? Versuch doch mal die Punkte 1 und 2 als fhem User zu machen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 08 November 2017, 04:25:29
Hallo Mumpitzstuff,
ich habe deinen Kalender als user root eingerichtet, also Punkt 4) nicht als User fhem, sondern als root angemeldet. Grund ist das FHEM bei mir unter root läuft (Wegen SONOS, das hat Reinerlein so empfohlen). Bei mir ist der user fhem in /etc/passwd vollständig auskommentiert. Punkt 4) also mit 'su - '.

Kannst Du mir das noch mit dem attribut sourceColor erklären? Ich habe als source das was im reading t_xxx_source steht eingetragen, und dann als color z.b. blue, also sowas wie attr Kalender sourceColor abcdefg@gmail.de:blue aber wo sehe ich den jetzt die blaue Schrift?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 08 November 2017, 04:34:35
Hier auch noch eine andere Readingsgroup. Mit 3 Stelligen Wochentagen (also Mon,Die,Mit,Don...) und kurzem Datum (also 10.11 anstatt 10.11.2017). Wenn 'Heute' oder 'Morgen' wird der Wochentag weggelassen.
defmod GoogleCalendar_rg readingsGroup GoogleCalendar:t_001_weekday,t_001_bdate,t_001_btime,t_001_summary,t_001_location GoogleCalendar:t_002_weekday,t_002_bdate,t_002_btime,t_002_summary,t_002_location GoogleCalendar:t_003_weekday,t_003_bdate,t_003_btime,t_003_summary,t_003_location GoogleCalendar:t_004_weekday,t_004_bdate,t_004_btime,t_004_summary,t_004_location GoogleCalendar:t_005_weekday,t_005_bdate,t_005_btime,t_005_summary,t_005_location GoogleCalendar:t_006_weekday,t_006_bdate,t_006_btime,t_006_summary,t_006_location GoogleCalendar:t_007_weekday,t_007_bdate,t_007_btime,t_007_summary,t_007_location GoogleCalendar:t_008_weekday,t_008_bdate,t_008_btime,t_008_summary,t_008_location GoogleCalendar:t_009_weekday,t_009_bdate,t_009_btime,t_009_summary,t_009_location GoogleCalendar:t_010_weekday,t_010_bdate,t_010_btime,t_010_summary,t_010_location GoogleCalendar:t_011_weekday,t_011_bdate,t_011_btime,t_011_summary,t_011_location GoogleCalendar:t_012_weekday,t_012_bdate,t_012_btime,t_012_summary,t_012_location GoogleCalendar:t_013_weekday,t_013_bdate,t_013_btime,t_013_summary,t_013_location GoogleCalendar:t_014_weekday,t_014_bdate,t_014_btime,t_014_summary,t_014_location GoogleCalendar:t_015_weekday,t_015_bdate,t_015_btime,t_015_summary,t_015_location GoogleCalendar:t_016_weekday,t_016_bdate,t_016_btime,t_016_summary,t_016_location GoogleCalendar:t_017_weekday,t_017_bdate,t_017_btime,t_017_summary,t_017_location GoogleCalendar:t_018_weekday,t_018_bdate,t_018_btime,t_018_summary,t_018_location GoogleCalendar:t_019_weekday,t_019_bdate,t_019_btime,t_019_summary,t_019_location GoogleCalendar:t_020_weekday,t_020_bdate,t_020_btimet,t_020_summary,t_020_location
attr GoogleCalendar_rg noheading 1
attr GoogleCalendar_rg nonames 1
attr GoogleCalendar_rg notime 1
attr GoogleCalendar_rg room Calendar,Favourites
attr GoogleCalendar_rg valueFormat { \
  my $readingStart = $READING;;\
  if ($READING =~ /bdate/)\
  {\
    $readingStart =~ s/bdate//;;\
    if (0 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))\
    {\
      "Heute";;\
    }\
    elsif (1 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))\
    {\
      "Morgen";;\
    } else {sprintf("%s",substr(ReadingsVal($DEVICE, $READING,"nothing"),0,5))}\
  } elsif  ($READING =~ /weekday/) \
    {\
    my $readingStart2 = $READING;;\
$readingStart2 =~ s/weekday//;;\
    if (0 == ReadingsVal($DEVICE, $readingStart2.'daysleft', -1) || 1 == ReadingsVal($DEVICE, $readingStart2.'daysleft', -1)) {"   "} else {sprintf("%s",substr(ReadingsVal($DEVICE, $READING,"nothing"),0,3))}}\
}
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 08 November 2017, 07:42:15
Zitat von: inoma am 08 November 2017, 04:25:29
Hallo Mumpitzstuff,
ich habe deinen Kalender als user root eingerichtet, also Punkt 4) nicht als User fhem, sondern als root angemeldet. Grund ist das FHEM bei mir unter root läuft (Wegen SONOS, das hat Reinerlein so empfohlen). Bei mir ist der user fhem in /etc/passwd vollständig auskommentiert. Punkt 4) also mit 'su - '.

Kannst Du mir das noch mit dem attribut sourceColor erklären? Ich habe als source das was im reading t_xxx_source steht eingetragen, und dann als color z.b. blue, also sowas wie attr Kalender sourceColor abcdefg@gmail.de:blue aber wo sehe ich den jetzt die blaue Schrift?

Aha okay. Dann müssten bei dir aber theoretisch auch beide Wege funktionieren denke ich, also auch wenn du das als User fhem gemacht hast.

Das Verhalten mit dem Sourcecolor habe ich von dem Modul CALVIEW übernommen. Hier wird nicht ein Eintrag gefärbt, sondern alle Einträge die von abcdefg@gmail.de erstellt wurden erhalten den String Blue anstatt White als ein Attribut. Das wiederum kann dann meines Erachtens in irgendwelchen Oberflächen für die Einfärbung verwendet werden. Ich denke in deiner Readingsgroup könntest du es z.b. auch verwenden.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 08 November 2017, 08:39:38
Danke, jetzt hab ich verstanden! Echt ein klasse Modul, Ein dickes DANKE nochmal!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Kusselin am 08 November 2017, 08:46:44
Hallo,

wäre es möglich das man mal einen Screenshot vom Tablet Ui machen könnte wie das aussieht?

Danke


Gruss
Kussel
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 08 November 2017, 13:20:43
Ich habe keine alternative Oberfläche, sondern nur das Standard Web interface. Ich kann deshalb nichts zeigen. Das Modul sollte sich von den readings her identisch zum Modul abfall bzw. Calview verhalten. Darauf basierende Oberflächen sollten auch hier gehen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Roli1606 am 08 November 2017, 15:07:02
Zitat von: mumpitzstuff am 08 November 2017, 01:10:37
Wann siehst du deine Kalender? Wenn du als fhem eingeloggt bist? Du must das nach Punkt 4 aus der Anleitung sehen, ansonsten hat der fhem User the Authentifizierungsdaten nicht (wichtig ist hier als fhem User angemeldet zu sein). Geh doch noch mal die Punkte von 1 ab nacheinander durch. Sobald ein Fehler auftritt brauchst du nicht weitermachen. Das Anlegen als Fhem Device ist der letzte Punkt nachdem alle anderen Punkte fehlerfrei durchgelaufen sind. Du kannst mir auch gern eine private Nachricht schreiben mit den Punkten 1 bis 5 und den jeweiligen Ausgaben auf dem Bildschirm dazu. Irgendwas von den Punkten wurde bestimmt vergessen.

Weiter unten findet das System anscheinend nicht mal deine gcalcli Installation. Das verwundert mich etwas, da das doch installiert sein sollte. Kann dein fhem User vielleicht nicht darauf zugreifen? Versuch doch mal die Punkte 1 und 2 als fhem User zu machen.

Die Kalender sehe ich als user fhem. Hab nur ein paar geschwärzt.

root@cubieNAS:~# sudo su - fhem
fhem@cubieNAS:~$ gcalcli list
Access  Title
------  -----
  owner  Familie
  owner  Abfall
  owner  Schichtkalender
  owner  -----------------------
  owner  ---------------------
  owner  Geburts und Jahrestage
  owner  ------------------
reader  http://-----------------------------------------------------------
reader  Ferien - NRW
reader  Feiertage in Deutschland
reader  Week Numbers


Habe die Schritte auch gerade noch mal wiederholt von 1 bis 5 ohne Fehlermeldung.

Bekomme aber immernoch diese Fehlermeldung im Fhem Log

2017.11.08 15:07:49 3: GKalender: gcalcli agenda   --detail_all   --tsv
2017.11.08 15:07:49 3: GKalender: something went wrong (check your parameters) - Error: must specify a username



Hat das vielleicht was mit dem Paket python-parsedatetime_1.2-1_all.deb zu tun das ich gestern Installiert habe um den ersten Fehler zu beseitigen?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 08 November 2017, 17:40:21
Schau dir mal bitte die Attribute an. Ist dort ein Attribut userattr gesetzt, in dem deine Kalender auftauchen? Falls nicht, dann aktiviere mal bitte das Attribut verbose 5 und schau dir dann noch mal nach einem Update das Logfile an. Hoffentlich steht dann mehr drin, ansonsten muss ich dir noch eine modifizierte Version geben wo man den Fehler besser sieht.

Oder noch besser, gib mal das hier als fhem Kommando ein, dann siehst du ganz genau den Output den fhem sieht.

{qx(gcalcli list);;}

Damit solltest du die selbe Ausgabe sehen wie auf der Console.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Roli1606 am 08 November 2017, 18:07:44
Da kommt leider auch nicht viel mehr zum Vorschein mit Verbose 5.

2017.11.08 18:04:36 5: GKalender_SetNextTimer: set next timer
2017.11.08 18:04:37 5: GKalender_DoRun: start running
2017.11.08 18:04:38 3: GKalender: gcalcli list
2017.11.08 18:04:38 3: GKalender: something went wrong (check your parameters) - Error: must specify a username

2017.11.08 18:04:39 3: GKalender: gcalcli agenda   --detail_all   --tsv
2017.11.08 18:04:39 3: GKalender: something went wrong (check your parameters) - Error: must specify a username

2017.11.08 18:04:39 5: GKalender_DoEnd: end running


mit dem eingabe von {qx(gcalcli list);;} kommt die gleiche Meldung wie vorher
[31;1mError: must specify a username

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 08 November 2017, 18:38:30
Das Problem ist, dass du eine veraltete Version installiert hast. In der aktuellen Version 3.4.0 gibt es diesen Fehler gar nicht mehr.

{qx(gcalcli --version);;}

Damit siehst du deine Version. Diese wird älter als 3.4.0 sein. Irgendwie hat vermutlich Punkt 2 nicht geklappt.

sudo pip install gcalcli

Wenn das ohne Fehler durch geht, dann wird die Version nicht geupdatet. Versuch mal folgendes:

sudo apt-get remove --purge gcalcli

und danach:

sudo pip install gcalcli

Dann wieder auf der Kommandozeile prüfen ob du jetzt die richtige Version hast.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 08 November 2017, 19:41:03
Ist das Absicht, dass das Attribut disable nur die Option 1 hat?
Statt auf 0 zu setzen, muss man wohl das Attribut löschen.

Nach dem Löschen habe ich wieder
Zitat2017.11.08 19:41:37 3: Kalendertest blocking call already running
2017.11.08 19:41:37 5: Kalendertest_SetNextTimer: set next timer
im Log. state ändert sich wohl nicht so schnell.
Internals:
   DEF        30
   NAME       Kalendertest
   NOTIFYDEV  global
   NR         442
   NTFY_ORDER 50-Kalendertest
   STATE      disabled
   TIMEOUT    30
   TYPE       GCALVIEW
   READINGS:
     2017-11-08 12:16:58   state           disabled
   helper:
     RUNNING_PID:
       abortFn    GCALVIEW_DoAbort
       arg        Kalendertest
       bc_pid     9
       finishFn   GCALVIEW_DoEnd
       fn         GCALVIEW_DoRun
       pid        DEAD:21903
       telnet     telnetPort_127.0.0.1_44936
       terminated 1
       timeout    30
       abortArg:
Attributes:
   calendarType standard
   room       Test
   updateInterval 300
   verbose    5


Mit {qx(gcalcli list);;} sehe ich alle meine Kalender, das Device bleibt leer.
Irgendwie unbefriedigend.
Ich denke schon, dass ich genau nach Anleitung vorgegangen bin.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 08 November 2017, 20:31:22
Bitte bleib am Ball. Das sind die Anfangsprobleme, die vermutlich jedes Modul hat.

Wenn da steht already running, dann hat sich im Hintergrund was aufgehangen. Kannst du dir mal deine Prozesse ansehen und prüfen ob da irgendwas mit gcalcli rennt? Wenn ja bitte mal killen.
An deinen Attributen sieht man aber, das irgendwas beim auslesen deiner Kalender schief gegangen ist, denn ansonsten hätte das Modul ein Attribut userattr mit deinen Kalendern anlegen müssen. Ich schau mir nachher noch mal den Code an und werde versuchen, an dieser Stelle noch ein paar debug Ausgaben rein zu hängen.

ps -aux

Device löschen und wieder anlegen könntest du auch mal versuchen, vielleicht ist im hash irgend eine alte PID hängen geblieben und er startet jetzt das Update gar nicht mehr.

PS: Ich habe jetzt ein Update eingespielt, das 2 weitere Debugausgaben beinhaltet, die man mit verbose 5 sieht. Vielleicht hilft uns das bei der Problemlösung weiter.
PSPS: Habe eben noch ein Update eingespielt. Wennn jetzt der Update Thread bereits läuft, dann wird dieser gekillt und neu aufgesetzt. Das ist erst mal nicht besonders schön, aber vielleicht hilft das erst mal Anfangsprobleme zu vermeiden.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 08 November 2017, 20:46:36
Hallo,

ich habe das Modul entdeckt und wollte es mal ausprobieren, habe aber das Problem, dass nix aktualisiert wird und im Log steht folgende Meldung:

2017.11.08 20:33:32 5: gcal_SetNextTimer: set next timer
2017.11.08 20:33:32 5: gcal_DoRun: start running
2017.11.08 20:33:33 3: gcal: gcalcli list
2017.11.08 20:33:33 3: gcal: 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?xxx=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

2017.11.08 20:33:34 3: gcal: gcalcli agenda 11/08/2017 02/06/2018  --detail_all   --tsv
2017.11.08 20:33:34 3: gcal: 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?xxx=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

2017.11.08 20:33:34 5: gcal_DoEnd: end running


Ich habe die Schritte aus der Anleitung sowohl für den Nutzer root als auch für den Nutzer fhem gemacht und mit beiden Nutzern kann ich nun von der Konsole die Liste der Kalender abrufen. Im FHEM geht's leider nicht (weder über das Modul noch über den manuellen Aufruf aus der Eingabezeile). FHEM läuft als Nutzer fhem. Woran kann das liegen?

Ronny
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 08 November 2017, 21:29:37
Kannst du bitte die Permissions in /opt/fhem überprüfen?

ls -all

-rw-r--r--  1 fhem dialout   2514 Oct 21 00:14 .gcalcli_cache
-rw-------  1 fhem dialout    849 Nov  8 20:16 .gcalcli_oauth


So sieht es bei mir aus. Überprüfe vor allem ob bei dir ebenfalls fhem und dialout steht und auch die Lese/Schreibrechte in etwa so gesetzt sind.

Ich vermute das ist auch das Problem anderer User, wobei mir nicht ganz klar ist, woher dieses Problem kommt, denn letztendlich sollte sich doch der Aufruf auf der Console unter dem fhem user und der Aufruf aus fhem heraus gleich verhalten. Das mit dem Webserver kann man ignorieren, das ist nicht der wahre Grund,sondern nur der letzte Fehler der nach dem Fall Back von gcalcli geworfen wurde. Normalerweise sollte dieser Fall Back aber nicht passieren und damit dieser Fehler auch nicht auftauchen.

Kannst auch du mal gucken ob du mit ps -aux irgendwelche hängenden gcalcli Prozesse entdecken kannst und gegebenenfalls killen?

Bekommst du den selben Fehler wenn du das als Kommando in fhem aufrufst?

{qx(gcalcli list);;}

Solange das Kommando nicht funktioniert, wird alles andere auch nicht gehen.

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Roli1606 am 08 November 2017, 23:21:19
Zitat von: mumpitzstuff am 08 November 2017, 18:38:30
Das Problem ist, dass du eine veraltete Version installiert hast. In der aktuellen Version 3.4.0 gibt es diesen Fehler gar nicht mehr.

{qx(gcalcli --version);;}

Damit siehst du deine Version. Diese wird älter als 3.4.0 sein. Irgendwie hat vermutlich Punkt 2 nicht geklappt.

sudo pip install gcalcli

Wenn das ohne Fehler durch geht, dann wird die Version nicht geupdatet. Versuch mal folgendes:

sudo apt-get remove --purge gcalcli

und danach:

sudo pip install gcalcli

Dann wieder auf der Kommandozeile prüfen ob du jetzt die richtige Version hast.

Hab mal ein bisschen im Rahmen meiner Möglichkeiten gesucht und probiert.

über apt-get install gcalcli ausführe  bekomme ich Version in fhem über den Befehl {qx(gcalcli list);;}  2.4.2. angezeigt
und bekomme dann die Fehlermeldung das ich einen unser angeben muss wie gehabt.

wenn ich das Paket wieder entferne und mit sudo pip install gcalcli installiere wird Version 3.4.0 installiert.

allerdings habe ich dann im  Fhem Log den Fehler
PERL WARNING: Can't exec "gcalcli": No such file or directory at ./FHEM/57_GCALVIEW.pm line 380.
GKalender: gcalcli agenda   --detail_all   --tsv


Da komme ich dann so nicht mehr weiter mit meinen Kenntnissen.

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 08 November 2017, 23:52:38
Also 2.4.2 ist definitiv falsch. Das Ding wird nicht funktionieren.

Und die pip installation scheint ebenfalls zu scheitern oder nicht richtig ausgeführt zu werden. Das war wahrscheinlich auch der Grund warum die Version vorher nicht richtig installiert wurde.

Du hast ja irgendwie die Version gesehen. Hast du die auch auf der Console als fhem User abfragen können und dann die 3.4.0 gesehen?

Ich hasse Linux. Alles nur Bastelscheiss von irgend welchen Studenten.

Versuch das Ding mal als Source zu installieren, vielleicht geht es dann:

git clone https://github.com/insanum/gcalcli.git
cd gcalcli
python setup.py install


Danach gehen mir dann wirklich auch die Ideen aus. Ich kann vielleicht noch mal im Forum fragen woran es liegen könnte das man Befehle als fhem User in der Konsole absetzen kann, aber nicht aus fhem heraus.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 09 November 2017, 09:25:47
Guten Morgen,

ich hab's geschaft: Die .gcalcli-Dateien waren im fhem-Verzeichnis gar nicht vorhanden und auch das Kopieren dahin hat nix gebracht. Ein bisschen Recherche im Internet führte mich zur gcalcli-Option --configFolder. Also habe ich ein Verzeichnis /opt/gcalcli angelegt und

gcalcli --configFolder /opt/gcalcli list

auf der Kommandozeile ausgeführt und den neuen Dateien im Ordner /opt/gcalcli/ den Nutzer fhem und die Gruppe Dialout zugewiesen. Anschließen habe ich

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

ausgeführt und ein Ergebnis erhalten  ;D

Also habe ich die 57_GCALVIEW.pm bei mir um den hardcodierten Eintrag

--configFolder /opt/gcalcli

erweitert und prompt funktioniert. Vielleicht könntest du da noch ein entsprechendes Attribut ergänzen?

Ronny
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 09 November 2017, 10:42:33
Oh super! Vielen Dank! Ich war hier schon am verzweifeln. Ich schau es mir noch mal genau an und versuche dann eine gute Lösung daraus abzuleiten.

PS: Vielleicht wäre es auch möglich als configFolder /opt/fhem zu verwenden, dann müsste man wahrscheinlich im Modul gar nichts ändern, da das dann ja der Home path von fhem ist.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 09 November 2017, 12:30:39
Bei mir tut es weiterhin nicht.  :-[
Da ich keinen klemmenden Prozess gefunden habe, habe ich ein Reboot des Raspi gemacht.
Jetzt schreibt er mir mehr (alle Kalendereinträge) ins Log, aber das Device ist weiterhin leer.
2017.11.09 12:04:18 3: Kalendertest blocking call already running
2017.11.09 12:04:18 3: BlockingCall for Kalendertest aborted
2017.11.09 12:04:18 5: Kalendertest_SetNextTimer: set next timer
2017.11.09 12:04:18 5: Kalendertest_DoRun: start running
2017.11.09 12:04:20 5: Kalendertest:  Access  Title
 ------  -----
  owner  G
  owner  b
  owner  R
  owner  A
  owner  Ra
 reader  kar
 reader  Di
 reader  Co
 reader  Day of the year
 reader  Feiertage in Deutschland
 reader  Phases of the Moon
 reader  Sunrise/Sunset:
 reader  Weather:
 reader  Week Numbers

2017.11.09 12:04:24 5: Kalendertest: 2017-11-09 00:00 2017-11-10 00:00 https://www.google.com/calendar/event?eid=RGF5b

(Kalendernamen gelöscht) Und das wiederholt sich

Das habe ich noch zwischen den Einträgen gefunden
2017.11.09 12:04:24 5: Kalendertest_DoEnd: end running
2017.11.09 12:04:24 1: ERROR evaluating
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 09 November 2017, 13:49:40
Zitat von: mumpitzstuff am 09 November 2017, 10:42:33
PS: Vielleicht wäre es auch möglich als configFolder /opt/fhem zu verwenden, dann müsste man wahrscheinlich im Modul gar nichts ändern, da das dann ja der Home path von fhem ist.

/opt/fhem hardcodiert fände ich nicht so gut, da nicht jeder FHEM in diesem Ordner hat. Ich habe zum Beispiel aus Perfomance-Gründen zwei Instanzen /opt/fhem/ und /opt/fhem2/ und weiß noch nicht, in welcher ich den Kalender betreiben werde. Wenn man das Attribut explizit setzt, weiß man auch, mit welchem Aufrauf man die Autorisierung in der Konsole machen muss (vielleicht könnte man das auch als Funktion des Moduls implementieren (URL zum Anklicken anzeigen und dann Code entgegennehmen), dann würden die Dateien (vermutlich) im richtigen Verzeichnis mit den korrekten Berechtigungen abgelegt und man könnte die configFolder-Geschichte weglassen...)

Ronny
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 09 November 2017, 16:15:34
Ich meinte auch nicht, das ich den Pfad fest im Modul verwenden möchte, sondern das du bei deinem erstellen der Config in einem speziellen Ordner auch dein fhem Pfad hättest verwenden können. Dann hätte dein fhem das vielleicht ohne den Patch im Kalender Modul gefunden. Ich habe mich schon dafür entschieden das als Attribut anzubieten und darüber hinaus auch die Beschreibung dahingehend zu erweitern und diesen Weg zu beschreiben.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 09 November 2017, 16:51:55
Zitat von: rabehd am 09 November 2017, 12:30:39
Bei mir tut es weiterhin nicht.  :-[
Da ich keinen klemmenden Prozess gefunden habe, habe ich ein Reboot des Raspi gemacht.
Jetzt schreibt er mir mehr (alle Kalendereinträge) ins Log, aber das Device ist weiterhin leer.
2017.11.09 12:04:18 3: Kalendertest blocking call already running
2017.11.09 12:04:18 3: BlockingCall for Kalendertest aborted
2017.11.09 12:04:18 5: Kalendertest_SetNextTimer: set next timer
2017.11.09 12:04:18 5: Kalendertest_DoRun: start running
2017.11.09 12:04:20 5: Kalendertest:  Access  Title
 ------  -----
  owner  G
  owner  b
  owner  R
  owner  A
  owner  Ra
 reader  kar
 reader  Di
 reader  Co
 reader  Day of the year
 reader  Feiertage in Deutschland
 reader  Phases of the Moon
 reader  Sunrise/Sunset:
 reader  Weather:
 reader  Week Numbers

2017.11.09 12:04:24 5: Kalendertest: 2017-11-09 00:00 2017-11-10 00:00 https://www.google.com/calendar/event?eid=RGF5b

(Kalendernamen gelöscht) Und das wiederholt sich

Das habe ich noch zwischen den Einträgen gefunden
2017.11.09 12:04:24 5: Kalendertest_DoEnd: end running
2017.11.09 12:04:24 1: ERROR evaluating


Das sieht eigentlich schon sehr gut aus. Du scheinst zumindest keine Probleme mit dem OAuth Token mehr zu haben. Das Modul scheint bei dir die Liste der Kalender auszulesen und die Zeilen danach (wo du geschrieben hast, das sie sich wiederholen) müssten die Events in deinem Kalender sein. Das scheint soweit alles wunderbar zu klappen. Jetzt sieht es aber danach aus, als ob das Konvertieren nach JSON und wieder zurück einen Fehler erzeugt, diesen aber nicht näher ausführt. Dieses mal liegt es wohl tatsächlich am Modul bzw. an irgendwelchen Sonderzeichen in deinem Kalender.

Bitte deaktiviere das Modul erst einmal. Ich versuche zeitnah dafür eine Lösung zu finden, muss dazu aber erst mal mit diversen Zeichen rumexperimentieren und gucken ob ich das Problem irgendwie nachstellen kann. Ich melde mich auf jeden Fall und habe dann hoffentlich auch eine Lösung für dein Problem. Taucht in deinem Kalender irgend was auf, das du als Sonderzeichen bezeichnen würdest? Ich habe zum Beispiel / in einem Kaldendernamen gesehen. Gibts darüber hinaus sowas wie <>|#'`\[]{}&%$§"^° oder Buchstaben mit einem Apostroph drüber, also Zeichen die im weitesten Sinne keine Buchstaben/Zahlen oder Leerzeichen sind? Sry wegen der blöden Frage, aber ich will nur versuchen das bei mir nachzustellen, dann kann ich auch eine Lösung dazu anbieten.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 09 November 2017, 20:04:42
Hallo,

ich habe noch ein Problem mit dem Modul: leider kann es mit Umlauten nicht richtig umgehen und stellt stattdessen nur Fragezeichen dar.  Wenn ich es auf der Konsole ausführe werden alle Sonderzeichen korrekt dargestellt.

Ronny
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 09 November 2017, 21:22:39
Das ist eigenartig. Ich habe in meinen Terminen auch Sonderzeichen drin und die werden korrekt dargestellt. Ich schau es mir aber noch einmal an.

next_text Restmüll 2017-11-09 20:51:56

Das ist z.b. ein Reading bei mir im Abfallkalender...
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 09 November 2017, 21:33:14
Ich habe mal alle Zusatzkalender in Google gelöscht (Wetter, Mond...)
Trotzdem sind diese Kalender noch in der Liste im Log, aber der Logeintrag endet jetzt mit einer Fehlernmeldung
.com","white"]]')}: unexpected end of string while parsing JSON string, at character offset 1063 (before "(end of string)") at ./FHEM/57_GCALVIEW.pm line 510.

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 09 November 2017, 22:45:04
Hallo Mumpitzstuff, ich weiss nicht ob es hilft, ich habe mal die Umlaute üäö probiert, die gehen ohne Problem. Wenn ich einen Termin eintrage mit
Zitat!@#$%^&*()_+-=][}{\\|\'\";:/?.>,<
dann kommtERROR evaluating {GCALVIEW_DoEnd('GoogleCalendar||[["2017-11-09","23:00","2017-11-10","00:00","https://www.google.com/calendar/event ..................: illegal backslash escape sequence in string, at character offset 173 (before "\\") at ./FHEM/57_GCALVIEW.pm line 510.
Kommt zwar nie vor, aber ich wollte halt mal die Sonderzeichen probieren :-)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 09 November 2017, 23:39:08
Ich habe jetzt ein Update eingespielt. Damit sollten dann auch die Sonderzeichen funktionieren und auch das Problem von rabehd behoben sein.

Zu der falschen Darstellung der Umlaute bin ich noch nicht gekommen. Bitte etwas Geduld, ich versuche das irgendwie nachzustellen. Momentan habe ich das Problem nicht, deshalb ist es schwierig ins Blaue da was zu ändern.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 10 November 2017, 00:01:04
Hallo Mumpitzstuff, noch ein Fehler:
mit attr Kalender disable 1 kann man den Kalender disablen, aber wenn ich dann deleteattr Kalender disable und dann ein 'save' mache, bleibt der Kalender disabled. Erst mit einem attr Kalender disable 0 kann man den Kalender wieder enablen. Das ist bei den anderen Modulen anders.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 10 November 2017, 00:06:09
Okay. Ist in meiner Bugliste aufgenommen. Ich hab aber in 1 Woche ne Prüfung und muss etwas lernen ab und zu. ;) Deshalb kann ich vielleicht erst mal nur die wichtigsten Dinge beheben in der nächsten Woche. Aber danke für den Hinweis!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 10 November 2017, 00:07:58
Danke, ist einfach ein SUPER modul. !
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 10 November 2017, 08:18:53
Nach dem Update heute Nacht, werden die Kalendereinträge eingelesen.  :)

Danke
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 10 November 2017, 08:40:40
Guten Morgen,

ich habe gerade auf die aktuelle Version aktualisiert: Das Attribut für das configFolder ist scheinbar noch nicht drin (habe es wieder manuell eingefügt), aber die Umlaute funktionieren jetzt :-)

Ronny
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 10 November 2017, 11:26:06
Oh schön das die Umlaute gleich mit funktionieren. Das erspart mir Arbeit.

Für das Attribut hatte ich gerstern dann keine Zeit mehr, ist aber das nächste was auf der Liste steht.

Irgendwo weiter oben tauchte die Frage auf, warum gelöschte Kalender weiterhin bei den Attributen auftauchen. Wenn man Kalender gelöscht hat bei Google, dann kann man einfach das Attribut userattr löschen, wo die alten Einträge noch auftauchen. Nach einem Update sollte dann dort die aktuelle Liste auftauchen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 10 November 2017, 13:24:40
bei mir steht im FHEMWEB Papiermüll statt Papiermüll, wie es im Browser steht.

Das ist aber abhängig von Attribut "calendarType".
Es passiert bei waste, bei Standard ist die Schreibweise ok.

Eine halbe Stunde später tritt das Problem nicht mehr auf.  ???
Trotz hin und her wechseln des Typs.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 10 November 2017, 14:00:38
ZitatcalendarFilter: Dieses Attribut wird erst verfügbar, wenn man das erste Mal seinen Google Calendar eingelesen hat. Mit diesem Attribut kann man bestimmte Kalender filtern. Der Inhalt dieser Kalendar wird dann nicht mehr angezeigt.

Bei werden nur die Kalender ausgelesen, die bei diesem Attribut ausgewählt sind.
Es müßte wohl heißen:
ZitatcalendarFilter: Dieses Attribut wird erst verfügbar, wenn man das erste Mal seinen Google Calendar eingelesen hat. Mit diesem Attribut kann man bestimmte Kalender filtern. Es werden nur die Inhalte dieser Kalendar angezeigt. Ist keine auswahl getroffen, werden die Inhalte aller Kalender angezeigt.

Ich habe auch noch das Problem, dass alle Kalender gelsen werden, die bei der API-Erstellung bestellt waren. Seitdem habe ich ein paar Kalender abbestellt, diese sind aber weiterhin da.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 10 November 2017, 16:02:05
Im Modus Abfall werden Teile des Kalendereintrags in das Reading übernommen. Hier ist FHEm wesentlich restriktiver was die Zeichen angeht. Ich hatte deshalb da ein paar Filter eingebaut, die grad Umlaute oder andere Sonderzeichen entweder ersetzen oder entfernen sollten. Es kann jetzt sein, das durch meine anderen Änderungen da was nicht mehr ganz passt. Das sollte aber nur noch eine Kleinigkeit sein. Was wirklich komisch ist, ist das es eine halbe Stunde später nicht mehr auftritt. das wundert mich ebenfalls etwas.

Beim ersten Update des Moduls wird ein Attribut userattr erzeugt. Das sorgt dafür, dass man, sobald man das Attribut calendarFilter ausgewählt hat, ein Fenster mit Checkboxen bekommt. Bestätigt man den Dialog mit OK, dann sollte hier ein zweites Attribut calendarFilter angelegt werden, das die Auswahl beinhaltet. Hat man Bespielsweise nur noch 1 Kalender ausgewählt z.b. Abfall, dann sollte nur noch der Inhalt von Abfall angezeigt werden. An der Stell hast du recht. Der Kalender wird dann nicht gefiltert, sondern genau dieser Kalender wird dann angezeigt. Da muss ich die Doku anpassen.
Wenn man keinen Kalender auswählt werden wieder alle angezeigt, das stimmt wahrscheinlich auch. Ich glaube die Logik im Modul war: steht was drin, dann zeige diese Kalender an, steht nichts drin oder existiert das Attribut nicht, dann zeige alle Kalender an. Ist auch besser so, sonst macht da jemand was falsch und es wird nichts mehr angezeigt.

Wenn du auf deinem Google Account einen Kalender gelöscht oder hinzugefügt hast, dann kannst du mal versuchen die Attribute userattr UND calendarFilter zu löschen und dann Update zu machen. Dann sollte sich das Modul an der Stelle wie beim ersten Start verhalten und die Kalenderliste neu bei Google einlesen. Wenn das nicht der Fall ist, dann liegt das dummerweise am Cache denke ich und ich müsste an der Stelle etwas tunen. Du kannst aber manuell den Cache mal kurz ausschalten per Attribut und dann userattr und calendarFilter löschen und dann ein Update machen. Dann sollte er sich die aktuelle Liste holen und nicht die veraltete aus dem Cache.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Roli1606 am 10 November 2017, 20:35:20
Zitat von: mumpitzstuff am 08 November 2017, 23:52:38
Also 2.4.2 ist definitiv falsch. Das Ding wird nicht funktionieren.

Und die pip installation scheint ebenfalls zu scheitern oder nicht richtig ausgeführt zu werden. Das war wahrscheinlich auch der Grund warum die Version vorher nicht richtig installiert wurde.

Du hast ja irgendwie die Version gesehen. Hast du die auch auf der Console als fhem User abfragen können und dann die 3.4.0 gesehen?

Ich hasse Linux. Alles nur Bastelscheiss von irgend welchen Studenten.

Versuch das Ding mal als Source zu installieren, vielleicht geht es dann:

git clone https://github.com/insanum/gcalcli.git
cd gcalcli
python setup.py install


Danach gehen mir dann wirklich auch die Ideen aus. Ich kann vielleicht noch mal im Forum fragen woran es liegen könnte das man Befehle als fhem User in der Konsole absetzen kann, aber nicht aus fhem heraus.

Nur zur Info
Ich habe es jetzt hin bekommen. Hab mir ein passendes gcalcli Paket per wget runtergeladen und mit dpkg installiert.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 10 November 2017, 22:37:58
Ich habe das Attribut Cache = 0 hinzugefügt. Einen anderen kann ich über die Weboberfläche gar nicht eingeben (Das finde ich nicht so toll).

Nach dem Löschen von  userattr und calenderFilter und einem Update, enthält das userattr wieder die ursprüngliche Liste, also auch die abbestellten Kalender.
Ich habe dann einen anderen Kalender abonniert, der erscheint nach einem Update nicht.

Ein {qx(gcalcli list);;} bringt auch die nicht aktuelle Liste.

Irgendwie werden die Änderungen in der Auswahl nicht zur Kenntnis genommen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 10 November 2017, 22:45:08
Versuch mal bitte:

{qx(gcalcli list ––nocache);;}

Ich werde mir das aber auch noch mal genau ansehen. Aber wenn gcalcli das nicht sieht, dann kann das Modul auch nicht viel machen. Die Frage ist nur woran es liegt. Ich habe leider die kommende Woche viel zu tun, deshalb bitte etwas Geduld. Nach dem 18. habe ich wieder mehr Luft.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 10 November 2017, 22:50:07
@roli1606: Danke. Ich werde das als alternativen Weg in der Doku aufnehmen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 10 November 2017, 23:09:32
So ich hab's jetzt noch mal ausprobiert, das geht wirklich nicht. Neue Kalender werden nicht angezeigt. Ich habe daraufhin mal Google angeworfen und folgendes gefunden:

https://github.com/insanum/gcalcli/issues/262 (https://github.com/insanum/gcalcli/issues/262)

Die Lösung ist leider etwas bescheiden. So wie es aussieht musst du das Verzeichnis .gcalcli_oauth aus deinem Verzeichnis /opt/fhem löschen und die Prozedur mit dem oauth Token noch einmal machen. Es scheint so als ob der Zugriff der dort abgelegt ist dauerhaft für bestimmte Kalender besteht, auch wenn diese danach gelöscht werden oder neue dazu kommen. Das ist leider etwas umständlich, aber zum Glück macht man das ja nicht täglich.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 10 November 2017, 23:42:46
Sowas in der Art habe ich vermutet.
Ist nicht toll, liegt aber an Google.

Danke  fürs Suchen
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 11 November 2017, 22:20:02
Ich habe ein Update eingespielt mit folgenden Änderungen:

- utf8 handling improved
- missing 0 or 1 settings added to some attributes
- attribute configFolder added

Insbesondere der Punkt 1 bereitet mir etwas Bauchschmerzen und ich hoffe ich habe jetzt nichts verschlimmbessert. Wenn alles klappt, dann sollten Sonderzeichen jetzt fehlerfreier funktionieren. Bei einigen Attributen habe ich in den Settings 0 oder 1 ergänzt, so das man jetzt umschalten kann. Das Problem mit dem disable sollte jetzt ebenfalls damit behoben worden sein.

Das Attribut configFolder habe ich ebenfalls hinzugefügt, konnte damit aber erst mal selbst nichts mit anfangen. Wenn ich dort ein existierendes Verzeichnis angegeben habe, dann habe ich immer ein Fehler erhalten und sollte mich neu authorisieren. Ich vermute auch hier ist diese Prozedur so restriktiv, das man den hier angegebenen Pfad bereits bei der Authorisierung hätte verwenden müssen, damit das funktioniert. Am besten RoBra71 testet das erst einmal aus...
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 11 November 2017, 23:04:37
inoma: Ich habe zusätzlich das readingsGroup template im ersten Beitrag um deine Punkte erweitert und auch die Farbdefinition aus dem Kalender wird verwendet. Ich glaube danach hattest du gefragt. Wenn man jetzt im Kalender das Attribut sourceColor z.b. auf folgendes setzt:

<hier den Inhalt des Readings source übernehmen>:red

Dann werden alle Einträge der Readingsgroup, die diesen String als Reading source enthalten, in Rot in der readingsGroup angezeigt.

Außerdem habe ich den jeweiligen Eintrag "anklickbar" gemacht, so dass man ihn direkt im Browser editieren kann bei Bedarf.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 12 November 2017, 16:04:09
Hallo Mumpitzstuff,
danke für alle deine Updates, das ist echt Klasse. Ich dachte du hast "in 1 Woche ne Prüfung und musst ab und zu etwas lernen"? :-)
Ich habe jetzt alles so umgesetzt, wie in deinem Readingsgroup Beispiel, also:
-> klickbare links: Das ist der Hammer
-> attr sourceColor: Funktioniert prima
Absolut geiles Modul. Ich bin begeistert.

Nur zur Info, ist für mich nicht wichtig: Der disable 'Bug' aus Post https://forum.fhem.de/index.php/topic,77502.msg712959.html#msg712959 ist immer noch da, für attr disable gibts auch kein '0' setting.

Danke Danke nochmal. Beste Grüsse, und ich drück die Daumen für die Prüfung.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 12 November 2017, 17:18:50
Dann ist dein Update nicht vollständig. Ich habe sowohl 0 als auch 1 zur Auswahl beim Attribut disable.

update all

shutdown restart

PS: Ist nur eine Fischereiprüfung und die scheint einfacher zu sein als gedacht.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 12 November 2017, 19:15:51
:-(
Du hast natürlich recht. Ich hatte das shutdown/restart nicht gemacht. Mea Culpa! Danke nochmal!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 16 November 2017, 11:09:42
Hallo,

ich habe jetzt auch mal wieder ein Update gemacht. Das Attribut configFolder funktioniert. Allerdings habe ich das Problem, wenn ich das Attribut alldayText auf Ganztägig setzte, erscheint in den Readings ganztägig. Umlaute aus dem Kalender werden jedoch korrekt dargestellt.

Ronny
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 16 November 2017, 16:42:21
Kann sein das ich da was vergessen habe. Ich schau so schnell wie möglich rein.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 18 November 2017, 00:05:14
Update ist eingespielt und sollte das Problem beheben. Da waren mir ein paar Attribute durch die Lappen gegangen...
Titel: Kalender aktualisieren
Beitrag von: rabehd am 20 November 2017, 10:44:54
Bei mir wird immer noch auf die Kalender zugegriffen, die beim Anlegen abonniert waren. Ich wollte das neu einrichten. Leider ohne Erfolg. Das liegt sicher auch an meinen geringen Linux-Kenntnissen.

ZitatSo wie es aussieht musst du das Verzeichnis .gcalcli_oauth aus deinem Verzeichnis /opt/fhem löschen und die Prozedur mit dem oauth Token noch einmal machen.
Das Verzeichnis war versteckt. Ich denke ich konnte es löschen, zumindest wurde es nicht mehr aufgelistet.
Die Prozedur lässt sich aber nicht wiederholen, es werden nur die bisherigen Kalender aufgelistet. (Auch nach einem Neustart des Raspi)

Wie kriege ich die Kalender wieder aus der Liste? Würde gern neu anfangen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 21 November 2017, 20:48:08
Sry hab vergessen zu antworten. Hast du dich als User fhem angemeldet gehabt und dann die Prozedur mit gcalcli list auf der Konsole versucht?

Zuerst solltest du mal das Kalenderdevice auf disabled setzen. Dann löscht du das Attribut userattr und calendarFilter falls vorhanden. Jetzt löscht du die beiden Dateien .gcalcli_oauth und .gcalcli_cache im Verzeichnis /opt/fhem.
Dann meldest du dich wieder als User Fhem an. Wenn du jetzt mit gcalcli list trotzdem deine Kalender bekommst, ist irgendwas schief gelaufen. Also entweder du suchst jetzt mal mit find nach anderen Dateien die .gcalcli_oauth heißen oder du versuchst mal den weg über die direkte Angabe von configFolder. Hier könntest du z.b. /opt/fhem verwenden. Vergiss dann aber nicht im Kalender Device auch das Attribut configFolder entsprechend zu setzen. In der Anleitung hatte ich den Weg ergänzt. Ich hoffe das ist ausreichend.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 28 November 2017, 21:20:51
Mir ist Deine Antwort auch erst heute aufgefallen.

Es war wohl das Anmelden mit User fhem, zumindest konnte ich jetzt löschen und neuanlegen.

Danke
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 03 Dezember 2017, 11:28:00
Funktioniert wunderbar.
Um eine eiermilchlegende Wollsau zu bekommen hätte ich noch ein paar Wünsche. Die kann ich auch über UserReadings selbst lösen, aber ....  ;)

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 03 Dezember 2017, 22:48:12
Schau die mal die Attribute an:
alldayText: set the text for an allday event (default: all-day)
weekdayText: set the weekday text as comma separated list (default: Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday)
wasteEventSeparator: separator for waste events if there are more than 1 event in one day

Da kannst du doch schon Text in Deutsch eintragen. Daysleftlong fehlt an der Stelle noch. Werde ich nachrüsten.

Das mit dem Geburtstag berechnen kann ich bastelt, würde dann aber auf eine Art Keyword setzen als einfach zu versuchen Jahreszahlen zu finden. Ich hab das extra weggelassen,da ich dachte das braucht doch niemand. So kann man sich irren.

Den letzten Punkt verstehe ich nicht. Kannst du den bitte noch mal erklären?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 04 Dezember 2017, 22:16:47
Ich habe jetzt zusätzlich das Attribut daysLeftLongText hinzugefügt. Damit ist dann Punkt 1 deiner Wünsche komplett abgedeckt. Wenn es was übersehen habe melde dich bitte noch mal.

Punkt 3 habe ich bei nochmaligen lesen übrigens verstanden. Du möchtest nicht die Anzahl der Tage angeben für die die Events angezeigt werden, sondern eine Anzahl von Events die angezeigt werden sollen. Ich glaube das Problem lässt sich bereits lösen. Versuch mal eine große Zahl beim Attribut calendarDays einzutragen und gleichzeitig beim Attribut maxEntries die von dir gewünschte Menge an Einträgen. Ich glaube damit müsste sich Punkt 3 von deiner Liste erschlagen lassen. Gib mir auch hier Bescheid wenns klappt.

Punkt 2 breche ich nicht übers Knie, hier mache ich mir erst ein paar Gedanken dazu...
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 05 Dezember 2017, 07:49:18
Ich sehe Dich nicht als Auftragsentwickler. Deshalb mein besonderer Dank für die Umsetzung meiner Ideen/Wünsche.

Ich bin in den letzten Tagen nicht zum Testen gekommen. Wahrscheinlich auch in den nächsten Tagen nicht.
Sobald ich es getan habe, melde ich das Ergebnis.

Auf jeden Fall Danke.
Titel: Modul: 57_GCALVIEW Google Kalender Viewer - Kleinigkeiten
Beitrag von: rabehd am 07 Dezember 2017, 09:23:50
Ich habe auf Basis Deines Modules 4 Kalender. Deshalb auch die vielen "Anforderungen".
Der Kalender "Dienst" zeigt mir an wann jemand auf Grund von Diensten (Nacht, Spät...) nicht zuhause ist, bzw.  zuhause ist.
Hier habe ich für die Anzeige "daysLeftLongText" gebraucht. Es funktioniert!  :D
So wie es da ist, ist es gut. Einige, ich auch, fänden "übermorgen" auch nicht schlecht. Also heute,morgen,übermorgen,in % Tagen. Das ist aber Luxus.

Ich hätte das gern auch im Kalender "Abfall" gehabt. Dort gibt es keine Readings mit "daysLeftLong". Das Attribut wiederrum gibt es  ;).
Geholfen habe ich mir mit Papiermuell_inday  {Muelltag2("Papiermuell_days")}
,Gelber_Sack_inday {Muelltag2("Gelber_Sack_days")}

sub Muelltag2($)
{
  my ($art) = @_;
  my $text = ReadingsVal("KalenderAbfall", $art, "--");

  if ($text eq "--") {
     return " --";
  }
  elsif ($text == 0)  {
     return " heute";
  }
  elsif ($text == 1)  {
     return " morgen";
  }
  else  {
     return " in " . $text . " Tagen";
  }
}

(Werde ich wohl noch auf Übermorgen umbauen  :o)

Mit meiner Geburtstagsliste habe ich mich noch nicht weiter befasst.
ZitatDas mit dem Geburtstag berechnen kann ich bastelt, würde dann aber auf eine Art Keyword setzen als einfach zu versuchen Jahreszahlen zu finden. Ich hab das extra weggelassen,da ich dachte das braucht doch niemand. So kann man sich irren.
Bin ich der einzige der es benutzt?
CALVIEW hat ein Attribut "isbirthday" welche ein Reading "_age" erzeugt.
Zitatisbirthday
0 / nicht gesetzt - keine Altersberechnung (Standard)
1 - aktiviert die Altersberechnung im Modul. Das Alter wird aus der in der Terminbeschreibung (description) angegebenen Jahreszahl (Geburtsjahr) berechnet. (siehe Attribut yobfield)
Passt bei mir. Ich kann es mir auch als Userreading für Device auf Basis Deines Modules basteln.

In meinem Terminkalender gibt es auch Einladungen. Die scheinen ein Problem zu erzeugen. Zumindest steht dieser Termin dann regelmäßig im Log.
Zitat2017.12.07 08:28:04 3: Kalendertest: something went wrong (invalid gcalcli output) - 2017-12-08, 09:00, 2017-12-08, 10:00, https://www.google.com/calendar/event?eid=bW1hMnM0Y2g0YXR........XJyYWxmLmFyYmVpdEBt, , ..... Community TelKo, Skype-Besprechung, Liebe ...... Community,
\n
\nhier die monatliche Terminserie (immer der 2. Freitag im Monat).
(Inhalt verändert und gekürzt.)

Danke für die Entwicklung des Modules.
Titel: Antw:Modul: 57_GCALVIEW Google Kalender Viewer - Kleinigkeiten
Beitrag von: RoBra81 am 07 Dezember 2017, 10:25:19
Hallo,

Zitat von: rabehd am 07 Dezember 2017, 09:23:50
Mit meiner Geburtstagsliste habe ich mich noch nicht weiter befasst.Bin ich der einzige der es benutzt?
CALVIEW hat ein Attribut "isbirthday" welche ein Reading "_age" erzeugt.Passt bei mir. Ich kann es mir auch als Userreading für Device auf Basis Deines Modules basteln.

das würde mich auch interessieren. Ich habe zwei Kalender: Jahrestage und Termine. Beim Jahrestage-Kalender ist die Description immer das Anfangsjahr (Geburtsjahr, Hochzeit, ...). Wenn man für den konkreten Kalender jetzt sagen könnte, dass er das Alter aus der Description berechnen soll, wäre das echt super!

EDIT: Bzw. generell, wenn die Description nicht mehr als eine 4-stellige Zahl ist, wird sie als Jahreszahl interpretiert und das Reading age berechnet...

Ronny
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 08 Dezember 2017, 23:29:55
Das mit der 4 stelligen Zahl klingt ganz gut und wenn man das nur macht, wenn dort wirklich nichts anderes steht, ist das relativ eindeutig.

Ich würde das dann so einbauen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 09 Dezember 2017, 01:34:56
Ich hab da mal was eingecheckt. Mit dem Attribut showAge kann man jetzt das Alter in einem Reading _age anzeigen lassen. Es wird nach einer 4stelligen Zahl in der Description gesucht (die Restriktion das nur die Zahl drin stehen darf hab ich erst mal weg gelassen) welche mit 19, 20, 21 beginnt.

Schaut es euch mal bitte an.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 09 Dezember 2017, 17:43:34
Irgewndwie klappen die Updates Deiner Module bei mir nicht.

Zitatfhem
nothing to do...

fhemtabletui
nothing to do...

gcalview
List of new / modified files since last update:
UPD FHEM/57_GCALVIEW.pm

New entries in the CHANGED file:
  - attribute showAge added

sird
List of new / modified files since last update:
UPD FHEM/17_SIRD.pm

New entries in the CHANGED file:
- timeouts fixed (dirty hack - rework needed)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 09 Dezember 2017, 19:04:13
Weshalb? Das Update war doch erfolgreich. Beide Module sind nach einem shutdown restart aktuell. Das muss genau so aussehen.

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 09 Dezember 2017, 20:34:18
So sieht es nach Update und Restart aus.

Mein Englisch ist nicht besonders, aber "List of new / modified files since last update" heißt doch wohl, das da noch was neues ist
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 09 Dezember 2017, 21:49:32
Das bedeutet so viel wie: Liste der aktualisierten Module, die sich seit dem letzten Update verändert haben. Glaub mir, du hast die letzten Versionen der beiden Module installiert. Es ist alles gut. :)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 11 Dezember 2017, 21:08:29
Zitat von: mumpitzstuff am 04 Dezember 2017, 22:16:47
...Du möchtest nicht die Anzahl der Tage angeben für die die Events angezeigt werden, sondern eine Anzahl von Events die angezeigt werden sollen. Ich glaube das Problem lässt sich bereits lösen. Versuch mal eine große Zahl beim Attribut calendarDays einzutragen und gleichzeitig beim Attribut maxEntries die von dir gewünschte Menge an Einträgen. Ich glaube damit müsste sich Punkt 3 von deiner Liste erschlagen lassen. Gib mir auch hier Bescheid wenns klappt....
Das klappt, wie gewünscht. Danke
Ich frage jetzt 350 Tage ab und beschränke auf 10 Einträge.

Das Attribut "showAge" passt leider nicht zu meinem Geburtstagskalender.
Dummerweise habe ich mir das Modul CALVIEW nicht richtig angesehen, als ich meinen Wunsch formuliert habe. Dort kann man wählen woher die Jahreszahl genommen werden soll.
Bei mir steht die Jahreszahl im Summary. Meist in Klammern am Ende.
Ich möchte auch nicht alle Einträge anpassen, besonders da ich bei einem Geburtstag nicht immer in die Beschreibung gehen will. Am Smartphone soll das für mich auf einem Blick sichtbar sein.
Wie oben schon mal gesagt, das kann ich auch als Userreading selbst bauen. Sieh das deshalb bitte als Vorschlag und nicht als persönlichen Wunsch.

Und noch eine Anmerkung zu dem Reading "_age".
Es nur zu bilden, wenn eine Jahreszahl gefunden, könnte ein Problem werden, wenn man das als Liste weiterverarbeitet. Bei mir mit readingsGroup zu einer Tabelle "Wann, Wer, Welcher".
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 11 Dezember 2017, 21:31:55
Guten Abend,

Vielen Dank, bei mir passt das mit dem Alter - zumal meine App auf dem Handy die gleichen Einträge nutzt [emoji16]

Ronny

Gesendet von meinem SM-G935F mit Tapatalk

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 11 Dezember 2017, 23:39:02
Zitat von: rabehd am 11 Dezember 2017, 21:08:29
Das klappt, wie gewünscht. Danke
Ich frage jetzt 350 Tage ab und beschränke auf 10 Einträge.

Das Attribut "showAge" passt leider nicht zu meinem Geburtstagskalender.
Dummerweise habe ich mir das Modul CALVIEW nicht richtig angesehen, als ich meinen Wunsch formuliert habe. Dort kann man wählen woher die Jahreszahl genommen werden soll.
Bei mir steht die Jahreszahl im Summary. Meist in Klammern am Ende.
Ich möchte auch nicht alle Einträge anpassen, besonders da ich bei einem Geburtstag nicht immer in die Beschreibung gehen will. Am Smartphone soll das für mich auf einem Blick sichtbar sein.
Wie oben schon mal gesagt, das kann ich auch als Userreading selbst bauen. Sieh das deshalb bitte als Vorschlag und nicht als persönlichen Wunsch.

Und noch eine Anmerkung zu dem Reading "_age".
Es nur zu bilden, wenn eine Jahreszahl gefunden, könnte ein Problem werden, wenn man das als Liste weiterverarbeitet. Bei mir mit readingsGroup zu einer Tabelle "Wann, Wer, Welcher".

Zu steuern woher das Attribut kommt, kann ich auch noch nachreichen.
Wenn ich richtig verstehe möchtest du das Attribut immer haben wenn man es einschaltet, also auch wenn nichts gefunden wurde. Sowas finde ich immer sehr unschön wenn ich ehrlich bin. Kannst du mir vielleicht die Definition deiner Readingsgroup geben (priv. Mitteilung), damit ich mir das Problem mal ansehen kann?
Vielleicht geht ja sowas hier (nur runtergeschrieben, kann Fehler enthalten):

attr rg_Kalender valueFormat {\
  if ($READING =~ /age$/)\
  {\
    if (!defined($VALUE))\
    {\
      '';;\
    }\
    else\
    {\
      $VALUE;;\
    }\
  }\
}
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 11 Dezember 2017, 23:45:19
Die Readingsgroup im ersten Beitrag habe ich schon mal so erweitert, dass hinter dem Summary auch noch das Alter in Klammern auftaucht, wenn das Reading vorhanden ist.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer
Beitrag von: rabehd am 12 Dezember 2017, 12:14:30
Meine readingsgroup für die Geburtstagsliste ist simpel.
<wann>,<wer>,<welcher>
KalenderGeburtstag:t_001_daysleftLong,t_001_summary,t_001_age
KalenderGeburtstag:t_002_daysleftLong,t_002_summary,t_002_age
KalenderGeburtstag:t_003_daysleftLong,t_003_summary,t_003_age
KalenderGeburtstag:t_004_daysleftLong,t_004_summary,t_004_age
KalenderGeburtstag:t_005_daysleftLong,t_005_summary,t_005_age
KalenderGeburtstag:t_006_daysleftLong,t_006_summary,t_006_age
KalenderGeburtstag:t_007_daysleftLong,t_007_summary,t_007_age
KalenderGeburtstag:t_008_daysleftLong,t_008_summary,t_008_age
KalenderGeburtstag:t_009_daysleftLong,t_009_summary,t_009_age
KalenderGeburtstag:t_010_daysleftLong,t_010_summary,t_010_age


Es stört auch nicht, wenn eins der Readings nicht vorhanden ist. Ich hatte diese Liste noch nicht auf den Kalender auf Basis Deines Modules umgestellt, nur eine Vermutung geäußert. Die war aber falsch. :(
Es ist für mich ok, wenn leere Readings nicht angelegt werden.

Das Geburtsjahr wird bei uns im Summary bleiben. Meist am Ende in Klammern und 4stellig.
In der Liste habe ich dadurch das Jahr und das Alter. Das ist ok.
Eine Auswahl aus welchem Reading das Jahr geholt wird wäre schön, aber ich überlege gerade eine andere Lösung für mich.
Für die Optik werde ich wohl 2 Userreadings anlegen. Zum einen das Alter extraiert aus Summary und zum anderen ein Summary_2 welches den Wert von Summary ohne Geburtsjahr enthält.
Damit hätte ich meinen Sonderwunsch erfüllt. Du kannst das Modul ja nicht für jeden passend machen.

Fazit:
Ich bin mit dem Modul zufrieden, danke.
Ob die Fehlermeldung "something went wrong (invalid gcalcli output)" noch im Log erscheint, kann ich nicht sagen, denn die Terminserie ist erstmal vorbei.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 12 Dezember 2017, 13:40:18
Kannst du mir ein paar Eckdaten zu dieser Serie geben, damit ich versuchen kann das nachzustellen? Interessant wäre wie das Intervall war, ob ein attachment dran hing, irgendwelche Erinnerungen oder so was.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 12 Dezember 2017, 16:38:10
Beruflich nutze ich Outlook und Skype. Den Outlook-Kalender synchronisiere ich mit einen Google-Kalender um die Übersicht zu behalten.

Es war eine Einladung zu einer Skype-Besprechung (monatlich).
Hilft Dir das Log-Eintrag (aus Betrag weiter oben)?
Zitat2017.12.07 08:28:04 3: Kalendertest: something went wrong (invalid gcalcli output) - 2017-12-08, 09:00, 2017-12-08, 10:00, https://www.google.com/calendar/event?eid=bW1hMnM0Y2g0YXR........XJyYWxmLmFyYmVpdEBt, , ..... Community TelKo, Skype-Besprechung, Liebe ...... Community,
\n
\nhier die monatliche Terminserie (immer der 2. Freitag im Monat).

keine Anhänge, aber ein paar Links, ein paar Zeichen / und eine Aufzählung mit Punkten.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 12 Dezember 2017, 23:33:12
Danke. Ich Versuch mal was nachzustellen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 14 Dezember 2017, 00:32:55
Ich habe soeben wieder ein Update eingespielt.

1.) Über das Attribut ageSource kann jetzt angegeben werden woher das Alter für die Altersberechnung genommen werden soll.
2.) Bugfix für den Fall das der Bschreibungstext Tabs enthalten sollte. Leider ist die Implementierung echt Scheisse, aber nicht anders machbar. Im Grunde genommen ist das ein Bug von gcalcli, der sich eigentlich kaum beheben lässt. Ich habs bestmöglich gemacht und hoffe, dass es keine Nebeneffekte gibt. Dazu könnte es zum Beispiel kommen, wenn das Summary oder die Location Tabs enthalten sollten! Wenn das der Fall ist, dann muss der Termin manuell angepasst werden.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 15 Dezember 2017, 00:41:52
Wie bekomme ich denn im Google Geburtstags-Kalender eine 'description', wo ich das Datum des Geburtstages eintragen kann?
Ich sehe in der Description immer nur so was wie "Magdalena hat Geburtstag".

Also mir ist nicht klar wo ich im Google Geburtstagskalender das Geburtsdatum eintragen muss, damit es im GCALVIEW entweder unter 'Location', 'Description' oder 'Summary' erscheint, weil ich möchte auch das Alter berechnen.

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 15 Dezember 2017, 01:10:57
Hier gibt es verschiedene Möglichkeiten und ich glaube das was du im Kopf hat geht so einfach leider nicht.

Variante 1: Man lässt sich von Google einen Geburtstagskalender von seinen Kontakten erstellen und lässt sich diesen anzeigen. Hier hat man insofern verloren, als das man keine Möglichkeit hat zusätzliche Informationen wie z.B. das Geburtsjahr hinzuzufügen. Alles was man an der Stelle tun kann ist, die Einträge manuell als Serie in einen anderen Kalender zu übertragen und dann den von Google erstellten Kalender auszublenden. In den neu angelegten Serienterminen kann man jetzt in der Description eine Jahreszahl einfügen, z.B. 1985. Setzt man dann ageSource auf description und schaltet die Berechnung des Alter mit showAge ein, dann wird ein zusätzliches Reading _age erzeugt. Die Readingsgroup aus Beitrag 1 zeigt den Inhalt des readings hinter dem summary in der Readingsgroup an.

Variante 2: Man erstellt sich gleich manuell einen Geburtstagkalender in Google und hat dann gar keine Probleme.

Variante 3: man schreibt sich in seinen Kontakten das Geburtsjahr z.B. in Klammern zum Namen dazu. Aus dem Namen wird das Summary im automatisch generierten Geburtstagskalender und man kann dann mit ageSource = summary das Alter berechnen lassen. Nicht sehr schön aber zum testen kann man es ja mal versuchen.


ageSource gibt übrigens nur an wo das Jahr her kommen soll und nicht wo das alter hingeschrieben wird. Das Alter wird immer separat in ein Reading mit der Endung _age geschrieben, also weder in die Description, noch das Summary noch die Location. Das hinzufügen zum Summary in der im Artikel 1 zu sehenden Readingsgroup ist als Code in der Readingsgroup hinterlegt.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 15 Dezember 2017, 07:02:50
@inoma
Ich würde sagen, Du hast gar keinen Geburstagskalender. Die Einblendungen der Geburtstage Deiner Kontakte durch Google im Kalender ist Variante 1.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 15 Dezember 2017, 11:40:11
Super, allerdings noch ein Problem:
Ich habe mir jetzt einen eigenen Geburtstagskalender 'Geburtstage' angelegt, den sehe ich auch mit sudo gcalcli list --configFolder /opt/fhem Das ist auch gesetzt:attr GoogleCalender configFolder /opt/fhem  Zusätzlich habe ich manuell attr   GoogleCalendar calendarFilter xxxxx.yyyyyyyyyy@gmail.com,Geburtstage

Weil, der Kalender 'Geburtstage' erscheint nämlich nicht im popup, wenn ich auf das weisse Feld rechts des attr calendarFilter klicke. Dort erscheint nur [ ] xxxxx.yyyyyyyyyy@gmail.com
[ ] Contacts
[ ] Holidays in Germany


Wisst Ihr warum?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 15 Dezember 2017, 12:27:54
Ja.

Lösch bitte userattr und mach ein Update. Das wird dann neu angelegt und sollte den neuen Eintrag enthalten.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 15 Dezember 2017, 12:57:48
Yep, das wars! DANKE!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 19 Dezember 2017, 18:47:29
Ich möchte eigentlich alle angefangenen Termine ausblenden, aber wenn ich das attr includeStarted auf '0' setze schmeisst das Modul auch die Geburtstage raus.

Ich habe die Geburtstage als ganztages-Termin, beim Aufstehen werden die Geburtstage per Sonos angesagt, deswegen sollen die Geburtstage ganztags drin stehen. Kann man das attribut includeStarted evtl. pro Kalender setzten?

Oder wie macht Ihr das? 
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 19 Dezember 2017, 19:39:31
Hast Du alles in einem Google-Kalender? Dann hast Du wohl ein Problem.
Ich habe mir unter meinem Google-Account verschiedene Kalender angelegt (Geburtstag, Abfall,...), dann noch verschiedene Kalender eingebunden. So komme ich auf 5-10 verschiedene Kalender.
In Fhem habe ich für jeden Zweck ein Device angelegt und greife dort nur auf die passenden Kalender zu.
Abfall -> Abfall
Dienst -> Dienst
Geburtstag -> Geburtstage
Termine -> was so noch übrig bleibt
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 19 Dezember 2017, 21:19:16
Ich habe nur ein GoogleCalendar GCALVIEW Device, und in Google 2 verschiedene Kalender (Geburtstage / Termine).
Im device sind dann über das beide Kalender eingebunden.
attr GoogleCalendar calendarFilter xxxxxxxx.yyyyyy@gmail.com,Geburtstage
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 19 Dezember 2017, 22:43:34
Hmm das Attribut kann man pro Device setzen. Wenn du also beide Kalender in einem Device anzeigst, dann solltest du das du das Attribut eher einschalten, damit die Geburtstage nicht sofort rausgeworfen werden. Ansonsten kannst du dir 2 Devices anlegen und kannst dann jeweils das Attribut nach belieben einstellen. Den Filter musst du dann natürlich pro Device anpassen.

Darüber hinaus kann ich ja mal überlegen, ob ich das Attribut includeStarted irgendwie pro Kaledner verfügbar machen kann. Wahrscheinlich aber erst nach Weihnachten, im Moment ist jede Menge los bei uns und ich habe kaum Zeit.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 20 Dezember 2017, 09:21:49
Macht es Sinn Geburtstage und Termine in einem Device anzuzeigen?
Für mich nicht.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 20 Dezember 2017, 13:05:45
Zitat von: rabehd am 20 Dezember 2017, 09:21:49
Macht es Sinn Geburtstage und Termine in einem Device anzuzeigen?
Für mich nicht.
Ich habe zum Beispiel Jahrestage und Termine in zwei verschiedenen Kalendern, zeige es aber auf dem tablet an der Wand in einer Tabelle an - also ja, es macht schon wegen der Sortierung Sinn, beides in einem device anzuzeigen...

Gesendet von meinem SM-G935F mit Tapatalk

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 20 Dezember 2017, 14:41:56
Ja so hab ichs auch gemacht, ein Device, und beide Kalender in einer Tabelle. Die Geburtstage haben nur eine andere Farbe. Und so viele Geburtstage hab ich nicht. Sonst wäre die Geburtstagstabelle meistens leer....
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: blasterx am 22 Dezember 2017, 20:33:54
Hallo,
Ich habe gerade mit
sudo apt-get install gcalcli
das gcalcli installiert und danach mittels
sudo pip install gcalcli
auf die neueste Version geupdatet alles ohne Fehlermeldung.
Danach habe ich ein
gcalcli --version
eingegeben und bekomme folgende Fehlermeldung
Traceback (most recent call last):
  File "/usr/local/bin/gcalcli", line 4, in <module>
    import pkg_resources
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2707, in <modul                                             e>
    working_set.require(__requires__)
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 686, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 584, in resolve
    raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: google-api-python-client

Weiß jemand wo der Fehler liegen könnte?

Gruß BlasterX
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 22 Dezember 2017, 23:57:07
sudo apt-get install python-gdata

Versuchs mal bitte damit. Referenz ist hier:

https://outofdataerror.wordpress.com/2013/09/02/installing-the-google-data-python-library-on-a-raspberry-pi/ (https://outofdataerror.wordpress.com/2013/09/02/installing-the-google-data-python-library-on-a-raspberry-pi/)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: blasterx am 23 Dezember 2017, 00:09:34
Ok danke für die Antwort hatte es gerade hinbekommen. Aber ich bekomme in fhem keine Daten rein. Wenn ich
{qx(gcalcli list);;}
oder
{qx(gcalcli list --configFolder /opt/fhem);;}
eingebe bekomme ich folgende Fehlermeldung
[31;1mError: must specify a username
[0m

als Antwort und im log steht
2017.12.22 23:52:09 3: GC_Kalender_Privat: gcalcli agenda  --configFolder /opt/fhem  --detail_all   --tsv
2017.12.22 23:52:09 3: GC_Kalender_Privat: something went wrong (check your parameters) - Error: must specify a username

2017.12.22 23:52:09 1: ERROR evaluating {GCALVIEW_DoEnd('GC_Kalender_Privat||')}: Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 626.

Wenn ich das gcalcli list in Putty eingebe bekomme ich meine Kalender angezeigt.

Gruß BlasterX
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 23 Dezember 2017, 01:21:55
Vermutlich bist du mit Putty als pi User angemeldet und hast dir das OAuth Token als pi User geholt. FHEM arbeitet mit dem User fhem und bekommt dann keinen Zugriff auf die mit dem User pi angelegten OAuth Daten.

Fragen:
1.) Hast du versucht die Punkte 4-5 aus dem ersten Beitrag auszuführen? Was war das Ergebnis?
2.) Hast du versucht die Punkte 4-5 aber mit der zusätzlichen Option --configFolder /opt/fhem auszuführen? Was war das Ergebnis?

Wenn das listing deiner kalender als pi User funktioniert, dann kannst du auch mal nach der datei .gcalcli_oauth suchen. Diese wird vermutlich im home Verzeichnis des pi Users zu finden sein. Man könnte hier auch mal spaßeshalber versuchen diese datei nach /opt/fhem zu kopieren und dann mit:

sudo chown fhem:dialout .gcalcli_oauth

die Rechte so anzupassen, das fhem Zugriff haben müsste.

Falls ich mich geirrt habe und du die OAuth Daten doch bereits als fhem User angelegt hast, versuch mal das OAuth token so zu generieren:

gcalcli list --configFolder /opt/fhem --noauth_local_webserver

und dann in FHEM genauso abzufragen nachdem du die erzeugte URL in den Browser kopiert und das generierte Token auf der Konsole eingegeben hast:

{qx(gcalcli list --configFolder /opt/fhem);;}
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: blasterx am 23 Dezember 2017, 10:34:02
Also Punkt 4 hatte ich ausgeführt und in die /etc/passwd das  /bin/bash eingetragen. Dann mit Punkt 5 weitergemacht und
sudo su - fhem
eingetragen und es wurde auch zum user fhem gewechselt. Die Datei  .gcalcli_oauth wurde auch in /opt/fhem angelegt.
Wenn ich im Terminal
gcalcli list --configFolder /opt/fhem --noauth_local_webserver
eingebe erhalte ich (User fhem angemeldet)
fhem@raspberrypi:~$ gcalcli list --configFolder /opt/fhem --noauth_local_webserver
Access  Title
------  -----
  owner  Ferien 2017
  owner  Schichten
  owner  Abfall
  owner  Mario
  owner  Martina
  owner  Diana
  owner  Schichten

und es wird mir keine URL angezeigt.
Gebe ich in fhem
{qx(gcalcli list --configFolder /opt/fhem);;}
ein bekomme ich wieder dieße Meldung
[31;1mError: must specify a username



Gruß BlasterX
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: blasterx am 23 Dezember 2017, 14:58:50
Es scheint ein Rechte Problem zu sein. Wenn ich
{qx(sudo gcalcli list);;}
eingebe bekomme ich meine Kalender angezeigt. Leider weis ich nicht was ich genau ändern muß damit er die Rechte richtig verteilt.
Gruß BlasterX
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 23 Dezember 2017, 16:10:01
Okay. Das sieht doch dann schon mal gut aus. Geh mal als pi User ins Verzeichnis /opt/fhem und lass dir mit:
ls -all

die Rechte anzeigen. Bei mir sieht es so aus:


-rw-r--r--  1 fhem dialout   2514 Oct 21 00:14 .gcalcli_cac
e
-rw-------  1 fhem dialout    849 Dec 23 15:52 .gcalcli_oau
h


Bei dir auch?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: borsTiHD am 27 Dezember 2017, 16:38:02
Vielen Dank für dein Modul.
Funktioniert super.  ;D

Mach weiter so.  ;)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: blasterx am 27 Dezember 2017, 16:53:34
@mumpitzstuff,

ich habe jetzt mal testweise in der 57_GCALVIEW.pm die Einträge zb  in Zeile 222
#my $calList = qx(gcalcli list --noauth_local_webserver < $filename);

in
#my $calList = qx(sudo gcalcli list --noauth_local_webserver < $filename);

geändert wenn ich das bei allen abfrage Befehlen mache
gcalcli list
geht es wunderbar.
Folgendes Problem habe ich aber noch das die Umlaute als Fragezeichen dargestellt werden.
Du hast ja im Modul
use Encode qw(encode_utf8 decode_utf8);

stehen, aber das kann ich nicht mit
use Encode qw(sudo encode_utf8 decode_utf8);

starten da kommt eine Fehlermeldung.
Gruß BlasterX
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 28 Dezember 2017, 00:35:11
Hmm das mit dem sudo ist komisch. Naja wenns so geht, dann lass es erst mal so.

Bei dem encode kannst du kein sudo verwenden, das ist ein Perl Befehl und kein Shell Aufruf.

Normalerweise müssten alle Umlaute richtig angezeigt werden. Kannst du nähere Angaben machen welche Umlaute das sind und wo diese bei dir genau auftauchen? Im Subject in der Description oder woanders?

Ich hatte aber eigentlich alle Probleme mit Umlauten behoben und habe bisher von niemandem sonst dahingehend noch von Problemen gehört. Hängt das vielleicht mit deinen Änderungen zusammen? Versuch mal dein sudo nur dort zu verwenden, wo du einen gcalcli Aufruf siehst. Bei allen anderen Dingen bringt sudo nichts.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: blasterx am 28 Dezember 2017, 07:31:45
@mumpitzstuff,
Die Umlaute sind zb. bei Frühschicht (ü) und Spätschicht (ä) im Reading t_..._summary. Bei  t_..._description Fr?hschicht tritt der Fehler auch auf. Ich habe das sudo nur bei den gcalcli Aufrufen eingetragen.
Was mir noch aufgefallen ist ich habe 2 Schichtkalender einer von mir und einer von meiner Frau, meiner heist Schichten der von meiner Frau Schichten Diana. Wenn ich bei calendarFilter Schichten eingebe werden aber beide Kalender angezeigt kann es sein damit es am Leerzeichen bei Schichten Diana liegt?

Gruß BlasterX
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 28 Dezember 2017, 12:28:20
Hat noch jemand Probleme bei Umlauten?

Das mit den Umlauten kann ich mir nicht erklären. Dahingehend habe ich Tests gemacht und die funktionieren bei mir. Hast du Warnings im Logfile? Kannst du mal Verbose 5 einstellen und dir die Ausgaben im Logfile ansehen? Entweder sind bei dir die Umlaute ganz komisch encodiert oder Perl Encode/Decode funktioniert nicht richtig. Hast du das Problem auch bei anderen Modulen?

Das mit dem Leerzeichen im Kalender muss ich mir ansehen, das könnte aber tatsächlich ein Bug sein.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: blasterx am 28 Dezember 2017, 12:47:13
bei verbose 5steht im log
2017.12.28 12:37:32 5: GC_Mario_Schichten_SetNextTimer: set next timer
2017.12.28 12:37:32 5: GC_Mario_Schichten_DoRun: start running
2017.12.28 12:37:34 5: GC_Mario_Schichten: 2017-12-28 05:20 2017-12-28 06:00 https://www.google.com/calendar/event?eid=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Urlaub Schichten xxxxxxxxxx@googlemail.com
2017-12-28 07:30 2017-12-28 16:00 https://www.google.com/calendar/event?eid=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Fr?hschicht Schichten Diana xxxxxxxx@googlemail.com


Die xxx sind von mir eingesetzt worden.
In anderen Modulen habe ich keine Probleme mit Umlauten.

Gruß BlasterX
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 28 Dezember 2017, 22:55:39
Also meine Vermutung ist, dass bereits gcalcli nur diese Fragezeichen an mein Modul weiter reicht. In diesem Fall wären mir die Hände gebunden. Kannst du bitte mal gucken, ob diese Fragezeichen auch auf dem Terminal angezeigt werden?

gcalcli agenda --detail_all --tsv

sollte dir die Termine der nächsten 5 Tage anzeigen. Bekommst du hier ebenfalls Fragezeichen angezeigt?

Wie hast du die Termine in deinem Google Kalender eingetragen? Im Browser oder mit einer speziellen App? Kannst du mal versuchen über deinen Browser einen weiteren Termin mit Umlauten einzutragen und zu gucken, ob hier die selben Probleme auftreten?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: blasterx am 01 Januar 2018, 16:46:45
Ein gesundes neues Jahr!
@mumpitzstuff

ich bin jetzt auf einen Raspberry 3 umgezogen und alles neu aufgesetzt. Jetzt geht alles wie es soll, die Abfrage ohne (sudo) und auch die Umlaute klappen.
Die Sache mit dem (sudo) war ein Rechte Problem beim Raspberry. Und das mit den Umlauten vermute ich damit in der Raspberry Grundeinstellung (raspi config) die Einstellung
(de_DE.UTF-8) nicht richtig gesetzt worden ist.
Danke für Deine Hilfe und Dein tolles Modul!

Gruß BlasterX
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: borsTiHD am 02 Januar 2018, 14:44:50
Hallo zusammen und noch frohes Neues an alle,  ;D

erstmal sorry für den langen Text, aber ich möchte mein Problem gerne genau beschreiben und hoffe auch das es nicht verwirrend wird.


Ich hab das Modul jetzt einige Tage schon in Betrieb und finde es super.
Bisher bezog sich die Nutzung allerdings nur auf ein Reading, das mir die Termine ausgibt.

Das ganze würde ich jetzt zu einer automatischen Heizungssteuerung bei mir missbrauchen.
Also, ich möchte gerne anhand meiner Termine, die meinen Schichten entsprechen, meine Heizung steuern.
Vorher hab ich das ganze manuell anhand eines Dummy Schalters gelöst, dem ich quasi meine Schicht per Hand sage und er eine Funktion ausführt.
Im Sinne von "setTemp("$profil");" wobei Profil für das Heizungsprofil steht das ich setzen möchte.

Um das ganze jetzt mit deinem Modul zu handhaben, habe ich das Beispiel von "inoma" auf der ersten Seite genutzt:

Zitat von: inoma am 06 November 2017, 22:56:38
Hier mal eine sub, mit der kann man aus dem Kalender-Readings von 'today_00[1-9]_[be]time' sich ein 'at' event generieren. Falls das reading 'today_00[1-9]_summary' mit dem Trigger übereinstimmt, wird das 'at' zum start oder end Zeitpunkt generiert. Über den 2-ten parameter "Start oder Ende" kann man definieren ob das at event am Anfang oder am Ende vom Kalendereintrag generiert werden soll. Das ist case insensitiv wil ich das über lc() konvertiert habe.
Der Trigger muss mit dem Kalendereintrag matchen
Die Action kann dann eine beliebige fhem Aktion sein, hier wird der Schalter_Heizung eingeschaltet.

Ich bin kein Perl experte, geht bestimmt schöner, aber funktioniert bei mir.


##########################################################
# define GoogleCalendar_n notify GoogleCalendar:today_00[1-9]_[be]time:.* {Kalenderstart("$EVENT","Start oder Ende","Trigger","Action")}
# define GoogleCalendar_n notify GoogleCalendar:today_00[1-9]_[be]time:.* {Kalenderstart("$EVENT","Start","Besuch kommt","set Schalter_Heizung on")}
# define GoogleCalendar_n notify GoogleCalendar:today_00[1-9]_[be]time:.* {Kalenderstart("$EVENT","Ende","Besuch kommt","set Schalter_Heizung off")}
##########################################################
sub Kalenderstart ($$$$) {
  my ($Event,$StartOrEnd,$Trigger,$Action) = @_;
  my $startlcend = lc($StartOrEnd);
  my @EVENTarray = split(": ", $Event);
  my @EVENTsplit = ($startlcend eq "begin" || $startlcend eq "start" || $startlcend eq "anfang")?split("btime", $EVENTarray[0]):split("etime", $EVENTarray[0]);
  my $summary    = $EVENTsplit[0]."summary";
  my $Kalendertext = ReadingsVal("GoogleCalendar","$summary","nA");
  my @Triggerarray = ("0","1","2");
  my @Triggerarray = split(" ", $Trigger);
  my $devSpec      = $Triggerarray[0]."_".$Triggerarray[1]."_".$Triggerarray[2]."_".$StartOrEnd;
  if ($Kalendertext =~ /$Trigger/) {fhem("defmod $devSpec at $EVENTarray[1]:00 $Action;attr $devSpec room Calendar")}
}



Das habe ich "ein wenig" meinen Bedürfnissen umgebaut.
Derzeit sieht es so aus und beinhaltet ein paar Prüfungen der Variablen:

# Heizung Schichtplansteuerung
##########################################################
# define n_GoogleCalendar_X notify GoogleCalendar:today_00[1-9]_btime:.* {Schichtplansteuerung("$EVENT","Start oder Ende","Trigger","profil")}
# define n_GoogleCalendar_18T notify GoogleCalendar:today_00[1-9]_btime:.* {Schichtplansteuerung("$EVENT","Start","18T","Komfort")}
##########################################################
sub Schichtplansteuerung($$$$) {
  my ($Event,$StartOrEnd,$Trigger,$profil) = @_;
  my $startlcend = lc($StartOrEnd);
  my @EVENTarray = split(": ", $Event);
  my @EVENTsplit = ($startlcend eq "begin" || $startlcend eq "start" || $startlcend eq "anfang")?split("btime", $EVENTarray[0]):split("etime", $EVENTarray[0]);
  my $summary    = $EVENTsplit[0]."summary";
  my $Kalendertext = ReadingsVal("GoogleCalendar","$summary","nA");
  my $Sommer = ReadingsVal("HeizungsProfile","state","nA");
  my @Triggerarray = ("0","1","2");
  my @Triggerarray = split(" ", $Trigger);
  my $devSpec      = $Triggerarray[0]."_".$Triggerarray[1]."_".$Triggerarray[2]."_".$StartOrEnd;
 
  if($Kalendertext = $Trigger){
 
# Variable Prüfen
fhem( "set TelegrammBot message Trigger wurde ausgelöst: $Trigger" );
fhem( "set TelegrammBot message Kalendertext beinhaltet: $Kalendertext" );
fhem( "set TelegrammBot message EVENTsplit0 beinhaltet: $EVENTsplit[0]" );
fhem( "set TelegrammBot message Summary beinhaltet: $summary" );

if($Sommer ne "Sommer"){
setTemp("$profil");
fhem( "set TelegrammBot message ♨ Heizungsprofil wegen Schichtplan umgestellt: $devSpec > $profil eingestellt." );
}
  }
}
# // Heizung Schichtplansteuerung



Derzeit nur folgende drei Notifys eingerichtet zum Testen:
defmod n_GoogleCalendar_18T notify GoogleCalendar:today_00[1-9]_btime:.* {Schichtplansteuerung("$EVENT","Start","18T","Komfort")}
defmod n_GoogleCalendar_A notify GoogleCalendar:today_00[1-9]_btime:.* {Schichtplansteuerung("$EVENT","Start","A","Komfort")}
defmod n_GoogleCalendar_AA notify GoogleCalendar:today_00[1-9]_btime:.* {Schichtplansteuerung("$EVENT","Start","! A !","Komfort")}



Jetzt setze ich bei dem GoogleKalender ein "set update" um meine Events zu provozieren.
Für den heutigen Tag kommen dann folgende Events im Eventmonitor:

2018-01-02 14:29:19 GCALVIEW GoogleCalendar today_001_bdate: 02.01.2018
2018-01-02 14:29:19 GCALVIEW GoogleCalendar today_001_btime: 00:00
2018-01-02 14:29:19 GCALVIEW GoogleCalendar today_001_daysleft: 0
2018-01-02 14:29:19 GCALVIEW GoogleCalendar today_001_daysleftLong: today
2018-01-02 14:29:19 GCALVIEW GoogleCalendar today_001_edate: 02.01.2018
2018-01-02 14:29:19 GCALVIEW GoogleCalendar today_001_etime: 00:00
2018-01-02 14:29:19 GCALVIEW GoogleCalendar today_001_location: Landgrabenweg 151, 53227 Bonn
2018-01-02 14:29:19 GCALVIEW GoogleCalendar today_001_description:
2018-01-02 14:29:19 GCALVIEW GoogleCalendar today_001_author: borstihd@gmail.com
2018-01-02 14:29:19 GCALVIEW GoogleCalendar today_001_source: Schichtplan
2018-01-02 14:29:19 GCALVIEW GoogleCalendar today_001_sourcecolor: black
2018-01-02 14:29:19 GCALVIEW GoogleCalendar today_001_summary: ! A !
2018-01-02 14:29:19 GCALVIEW GoogleCalendar today_001_timeshort: 00:00 - 00:00
2018-01-02 14:29:19 GCALVIEW GoogleCalendar today_001_weekday: Tuesday
2018-01-02 14:29:19 GCALVIEW GoogleCalendar today_001_url: link



Folgende Ausgaben bekomme ich jetzt mittels Telegramm:

ZitatTrigger wurde ausgelöst: 18T
Kalendertext beinhaltet: 18T
EVENTsplit0 beinhaltet: today_001_
Summary beinhaltet: today_001_summary
Trigger wurde ausgelöst: A
Kalendertext beinhaltet: A
EVENTsplit0 beinhaltet: today_001_
Summary beinhaltet: today_001_summary
Trigger wurde ausgelöst: ! A !
Kalendertext beinhaltet: ! A !
EVENTsplit0 beinhaltet: today_001_
Summary beinhaltet: today_001_summary

Jetzt hoffe ich ihr könnt mir weiterhelfen.
1. Wieso provozieren alle Notifys hier bei "if($Kalendertext = $Trigger)"  einen "Trigger" in der Funktion?
2. Wieso beinhaltet die Variable "Kalendertext" den Wert meines "Triggers", sollte dort drin nicht egt. bei allen drei ausgelösten Notifys der Summary Text aus dem Event stehen (also in meinem Beispiel ein "! A !")?

Könnt ihr mir bitte helfen?
Ich möchte egt das in diesem Beispiel "nur" der dritte Notify mit dem Trigger "! A !" reagiert.

Vielen Dank schonmal.  :)

Grüße
borsTiHD


PS: Meine eigene Funktion wird nicht ausgeführt, da "my $Sommer = ReadingsVal("HeizungsProfile","state","nA");" gleich "Sommer" ist, damit zum testen nicht ständig meine Heizung umgestellt wird.  ;D

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 02 Januar 2018, 15:34:07
Hihi schöner Fehler.

=: Zuweisung
==: Vergleich (aber nur Zahlenwerte!)

Du möchtest an der Stelle Strings vergleichen und musst deshalb eq verwenden.

Versuch mal:

if($Kalendertext eq $Trigger){

Dein Code schreibt in $Kalendertext deinen Trigger rein. Der Wert ist ungleich 0 also immer True...
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: borsTiHD am 02 Januar 2018, 15:50:20
Oh mein Gott...  ::)
Ja, jetzt wo du es sagst. *facepalm*

Ich danke dir tausendfach.  ;D
Das ganze jetzt ersetzt mit "eq" und es klappt.
Wenn man vor lauter Wald die Bäume nicht sieht.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 06 Januar 2018, 00:40:15
@borsTiHD

Du hattest mein Beispiel von der ersten seite benutzt:
ZitatUm das ganze jetzt mit deinem Modul zu handhaben, habe ich das Beispiel von "inoma" auf der ersten Seite genutzt:
Da ist noch ein Fehler drin, es werden ja nur 'at' für den jeweiligen Tag erzeugt, wenn Du aber einen Google Kalendereintrag auf 00:00 gesetzt hast, kann es sein das dieser Eintrag verpasst wird weil der Eintrag ja erst 'tomorrow' ist (der trigger ist ja auf GoogleCalendar:today_00[1-9]_[be]time).

1) Der trigger muss auf GoogleCalendar:to.*_00[1-9]_[be]time) geändert werden, damit today und tomorrow berücksichtigt werden
2) Man muss also abfragen ob der Kalendereintrag 'today' ist, dann sollte die startzeit in der Zukunft liegen, wenn der Eintrag 'tomorrow' ist, sollte die Startzeit kleiner als in 'jetzt sein', also: if (($hm lt $EVENTarray[1] && $EVENTarray[0] =~ 'today_.*') || ($hm gt $EVENTarray[1] && $EVENTarray[0] =~ 'tomorrow_.*'))

Ich habe das im Originalpost jetzt geändert.

Du musst auch dran denken das beim 'at' mit mehreren Befehlen das semikolon verdoppelt werden muss, ich habe auch dafür das Beispiel im ersten post geupdatet.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: blasterx am 06 Januar 2018, 11:19:18
@ mumpitzstuff
hast du Dir das mit den Kalendern mit Leerzeichen mal angesehen bzw eine Lösung für das Problem?
ZitatWas mir noch aufgefallen ist ich habe 2 Schichtkalender einer von mir und einer von meiner Frau, meiner heist Schichten der von meiner Frau Schichten Diana. Wenn ich bei calendarFilter Schichten eingebe werden aber beide Kalender angezeigt kann es sein damit es am Leerzeichen bei Schichten Diana liegt?

Gruß BlasterX
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 06 Januar 2018, 22:25:35
Noch nicht, steht aber weiterhin nauf meinem Plan. Mein anderes Modulprojekt hat mich die letzten Tage den letzten Nerv gekostet...
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 06 Januar 2018, 23:08:10
Habe jetzt mal getestet und konnte eigentlich nichts finden:

Das sind meine Kalender:
pi@raspberrypi /opt/fhem/FHEM $ gcalcli list --nocolor
Access  Title
------  -----
  owner  xyz@googlemail.com
  owner  Feiertage
  owner  Worktime
  owner  Müllabfuhr
  owner  Dienstplan
reader  Contacts
reader  Feiertage in Deutschland


Hier gibt es also "Feiertage" und "Feiertage in Deutschland".

Der Aufruf "gcalcli agenda --calendar "Feiertage" --detail_all --tsv" liefert mir:

2018-01-07      15:00   2018-01-07      16:00   https://www.google.com/calendar/event?eid=xyz            test                    Feiertage       xyz@googlemail.com

Der Aufruf "gcalcli agenda --calendar "Feiertage in Deutschland" --detail_all --tsv" liefert mir:

2018-01-06      00:00   2018-01-07      00:00   https://www.google.com/calendar/event?eid=xyz            Heilige Drei Könige (regionaler Feiertag)               Feiertag in: Baden-Württemberg, Bayern, Sachsen-Anhalt  Feiertage in Deutschland       de.german#holiday@group.v.calendar.google.com

Das habe ich von der Kommandozeile aus gemacht und zur Sicherheit mit einer Debugausgabe mit meinem Aufruf im Modul verglichen:

gcalcli agenda 01/06/2018 03/07/2018  --calendar "Feiertage in Deutschland" --detail_all   --tsv

Ich kann jetzt erst einmal nichts merkwürdiges entdecken. Kannst du das vielleicht mal auf ähnliche Art und Weise auf der Konsole bei dir machen als pi User und gucken, ob das da auch auftritt?

Wenn nicht, dann würde ich dir eine spezielle Version zuschicken, in der der Aufruf von gcalcli immer ins Logfile geschrieben wird. Vielleicht sieht man dann da irgend was komisches.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 06 Januar 2018, 23:16:10
@inoma:

Das mit dem includeStarted habe ich mir ebenfalls angsehen. Das ist leider eine größere Umstellung, sonst hätte ich das schon gemacht. Bisher verwende ich hier einen Parameter beim gcalcli Aufruf. Hier kann ich aber nicht angeben, dass sich das nur auf bestimmte Kalender beziehen soll. Ich muss deshalb an der Stelle einen eigenen Filter schreiben, der mir die Events dann nur für bestimmte Kalender filtert oder eben nicht. Zusätzlich dazu muss ich dann das Attribut includeStarted so erweitern, dass man hier die Kalender angeben kann anstatt nur 0 oder 1. Insgesamt ist es etwas, dass ich nicht übers Knie brechen möchte.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: blasterx am 07 Januar 2018, 14:49:40
ich bekomme als Ausgebe bei
gcalcli agenda --calendar "Schichten" --detail_all --tsv

2018-01-08      07:30   2018-01-08      16:00   https://www.google.com/calendar/                    event?eid=xyz            Frühschicht                     Schichen Diana    xyz@googlemail.com

2018-01-08      13:21   2018-01-08      22:01   https://www.google.com/calendar/                    event?eid=xyz              Mittelschicht                   Schichten            xyz@googlemail.com



Ich kann nur versuchen die Kalender umzubenennen.

Gruß BlasterX
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 07 Januar 2018, 15:09:52
Das ist eigenartig aber wenn es bereits auf der Konsole nicht funktioniert, dann kann ich auf Modulebene wenig machen. Vermutlich wirst du dann tatsächlich den Kalender umbenennen müssen.
Wenn du das machst, dann musst die die Authentifizierung erneut durchführen und zuvor .gcalcli_oauth und .gcalcli_cache löschen. Die Authentifizierung ist mit den Kalendern verknüpft und muss deshalb neu gemacht werden, wenn man an den Kalendern etwas verändert.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: blasterx am 07 Januar 2018, 18:10:59
ich habe jetzt die Kalender umbenannt und siehe da, alles geht wie es soll.

Gruß BlasterX
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 08 Januar 2018, 22:44:07
Zitat@inoma:

Das mit dem includeStarted habe ich mir ebenfalls angesehen....

Kein Problem, ich freu mich das Du dran gedacht hast. DANKE!!!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: borsTiHD am 15 Januar 2018, 10:50:58
Zitat von: inoma am 06 Januar 2018, 00:40:15
@borsTiHD

Du hattest mein Beispiel von der ersten seite benutzt: Da ist noch ein Fehler drin, es werden ja nur 'at' für den jeweiligen Tag erzeugt, wenn Du aber einen Google Kalendereintrag auf 00:00 gesetzt hast, kann es sein das dieser Eintrag verpasst wird weil der Eintrag ja erst 'tomorrow' ist (der trigger ist ja auf GoogleCalendar:today_00[1-9]_[be]time).

1) Der trigger muss auf GoogleCalendar:to.*_00[1-9]_[be]time) geändert werden, damit today und tomorrow berücksichtigt werden
2) Man muss also abfragen ob der Kalendereintrag 'today' ist, dann sollte die startzeit in der Zukunft liegen, wenn der Eintrag 'tomorrow' ist, sollte die Startzeit kleiner als in 'jetzt sein', also: if (($hm lt $EVENTarray[1] && $EVENTarray[0] =~ 'today_.*') || ($hm gt $EVENTarray[1] && $EVENTarray[0] =~ 'tomorrow_.*'))

Ich habe das im Originalpost jetzt geändert.

Du musst auch dran denken das beim 'at' mit mehreren Befehlen das semikolon verdoppelt werden muss, ich habe auch dafür das Beispiel im ersten post geupdatet.


Sorry für die Späte antwort.  :)
Lief bei mir egt alles soweit... allerdings wurde der Trigger bei mir öfters ausgelöst (so oft wie ich meinen Kalender auslese) und ich musste noch sicherstellen das er meine Heizungsprofile dabei nur einmal am Tag ändert.
Dafür hab ich noch eine Abfrage hinzugefügt, wo geprüft wird, welches Profil bei meiner Heizung derzeit aktiv ist, ist es das Profil, das eingestellt werden soll dann wird nichts unternommen.
Sprich, ich schaue egt nur was für ein Termin/Schicht generell an diesem Tag ist, welche dann kurz nach 0 Uhr umgestellt wird. Aber ja, sollte ich auch mal ändern... denn ich hab Schichten (Frei, Urlaub) die als Ganztagstermin drin stehen und meine normalen Schichten (Tag-/Spät-/Nachtschicht) stehen mit ihren richtigen Uhrzeiten im Kalender.

Mit den "at"'s arbeite ich derzeit nicht.
Aber das wäre für die Zukunft sehr Sinnvoll wenn ich weitere Sachen mithilfe des Kalenders steuern möchte, oder was ich noch machen möchte ist, sobald meine Schicht endet, soll in einem gewissen Zeitabstand die Heizung gestartet werden, noch bevor ich nach Hause gekommen bin (zum kuscheligen Vorwärmen :P ). Das nehme ich ein andermal in Angriff.

Jedenfalls vielen Dank das du dir Sorgen drum gemacht hast und das du die Änderung noch hinzugefügt hast.. :)
Ich war schon sehr froh das du deine Arbeit mit allen teilst, gefiehl mir sehr gut.  ;D

Viele Grüße
borsTiHD
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 16 Januar 2018, 00:11:31
@inoma:

Ich habe mal eine Testversion für dich zusammen gebaut. Kannst du mal bitte gucken ob das so ungefähr hin kommt?

Nachdem das Modul eingespielt ist (shutdown restart nicht vergessen) und sich das Modul das erste Update geholt hat, sollte userattr automatisch erweitert werden um calendarIncludeStarted (ansonsten userattr löschen und noch mal ein Update holen). Das kann man dann als Attribut auswählen und hier einen oder mehrere Kalender angeben. Die Termine der dort angegebenen Kalender sollten dann gefiltert werden, wenn diese bereits gestartet sind. Das alte Attribut includeStarted muss auf 1 stehen, damit der Vorfilter erst mal alles Termine durchlässt und der neue zweite Filter greift.

Sry wegen der Bezeichnungen und der noch komischen bzw. falschen Logik. Ich möchte erst mal nur wissen ob es grundlegend funktioniert. 
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 16 Januar 2018, 00:13:57
@blasterx: Inzwischen ist mir auch eingefallen wie man dein Problem hätte viel einfacher lösen können. Man hätte schlicht ein entsprechendes filterSource Attribut setzen können. Sry für die Umstände.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 16 Januar 2018, 06:52:26
Hallo mumpitzstuff,
die testversion 1.0.1 funktioniert soweit. Wenn ich über das attribut calendarIncludeStarted den regulären Kalender (also den nicht- Geburtstagskalender) angebe, werden für diesen die gestarteten Termine gelöscht, die Termine für den Geburtstagskalender bleiben bestehen.
Allerdings ist das userattribut calendarIncludeStarted nicht automatisch angelegt worden, auch nachdem ich das attr userattr gelöscht hatte. Es wurde gar kein userattr mehr angelegt. Ich habe es also einfach per Hand eingetragen, das hat dann auch funktioniert.

Schonmal ein RIESEN Danke!!!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 16 Januar 2018, 07:30:40
Ah stimmt. Habe jetzt den Code nicht vor Augen, aber es kann sein, dass die Erzeugung davon abhängig war, ob calendarFilter existiert oder nicht.

Schon mal danke fürs testen. Ich werde es dann noch rund machen...
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 17 Januar 2018, 21:36:04
@inoma

Hier wäre dann noch mal sicherheitshalber die hoffentlich finale Version zum testen mit folgenden Besonderheiten:

1.) Das Attribut includeStarted wurde entfernt! Bitte in allen aktiven Kalendern gucken, ob das Attribut gesetzt ist und gegebenenfalls VOR dem Update löschen.
2.) Update wie gewohnt durchführen und shutdown restart nicht vergessen.
3.) Falls das Attribut calendarFilter gesetzt ist, bitte kurz löschen und ein Update des Kalenders durchführen. Dadurch sollte userattr um den Eintrag calendarIncludeStarted erweitert werden.
4.) Jetzt kann calendarFilter wieder gesetzt werden.
5.) Der Default ist jetzt, das alle Termine die bereits gestartet sind, raus gefiltert werden. Will man das für einen Kalender nicht, dann muss man calendarIncludeStarted auf den entsprechenden Kalender setzen. Damit ist das Default Verhalten genau Invertiert zur alten Version, also bitte aufpassen.

Wenn alles funktioniert, würde ich es so offiziell frei geben wollen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 18 Januar 2018, 09:00:22
Hallo Mumpitzstuff,
gerade getestet, funktioniert alles so wie beschrieben, vielen Dank nochmal. Erste Sahne!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 18 Januar 2018, 21:52:58
Das Update wurde eingespielt und ist jetzt über update all verfügbar.

Bitte löscht unbedingt das Attribut includeStarted vor dem Update, sonst meckert FHEM beim nächsten Start.

https://forum.fhem.de/index.php/topic,77502.msg750756.html#msg750756 (https://forum.fhem.de/index.php/topic,77502.msg750756.html#msg750756)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 24 Januar 2018, 01:10:30
Hallo Mumpitzstuff,
wenn Du mir nochmal helfen könntest?  Wie kann ich einen Kalender in der Readingsgroup 'excluden'?
Ich habe mir jetzt zusätzlich zum Geburtstagskalender und zum Terminkalender einen 'Reminder' Kalender gemacht, dort kommen nur Erinnerungen rein,
also ich lasse mir über deinen Calender eventgetrieben zum Erinnerungstermin dann eine Pushnachricht schicken.
Aber die Reminder möchte ich nicht unbedingt in der Readingsgroup als Termin sehen. Hast Du da einen Tipp für mich?

Danke!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 24 Januar 2018, 10:43:48
Über valueFormat vielleicht? Der Kalender müsste doch einen bestimmten source haben oder? Dann könnte man darauf filtern. https://wiki.fhem.de/wiki/ReadingsGroup#Inhalte_filtern (https://wiki.fhem.de/wiki/ReadingsGroup#Inhalte_filtern)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 24 Januar 2018, 11:37:33
Bedankt! Hatte ich so nicht gefunden, probiere ich später noch aus!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: trinitywhm am 24 Januar 2018, 15:12:09
Hallo,
bin heute erfolgreich von CALVIEW und ABFALL auf dieses Modul umgestiegen. Echt klasse bis jetzt.

Nur eine Kleinigkeit die auch anfangs beim ABFALL-Modul nicht ganz funktioniert hat, wenn ich bei einem Kalender vom Typ waste das Attribut wasteEventSeparator mit "und" setze, schreibt er drei Events die an einem Tag vorkommen hintereinander weg.
Wenn ich " und " als Wert eintrage, gehen beim Abspeichern die Leerzeichen vorne und hinten verloren. Somit bekomme ich beim Reading next_text so unschöne Einträge wie "Blumen gießenundBad sauber machenundKüche sauber machen" Das ist nicht ganz so praktisch, da ich diesen String vorlesen lasse. Das endet dann eher im Kauderwelsch.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 24 Januar 2018, 18:12:23
Muss ich mir ansehen. Ist aber bestimmt nur eine Kleinigkeit. Ich fasse noch mal zusammen:

Egal ob man "und" oder " und " eingibt, es kommt immer "1und2" raus. Richtig?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: trinitywhm am 24 Januar 2018, 19:23:57
Zitat von: mumpitzstuff am 24 Januar 2018, 18:12:23
Muss ich mir ansehen. Ist aber bestimmt nur eine Kleinigkeit. Ich fasse noch mal zusammen:

Egal ob man "und" oder " und " eingibt, es kommt immer "1und2" raus. Richtig?
ja genau so ist es
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 24 Januar 2018, 22:22:54
Interessant. Da schlägt irgend ein Automatismus zu und entfernt die Leerzeichen wenn man das Attribut setzen möchte. Damit habe ich nicht gerechnet. Ich habe ein Update eingespielt, in dem die Leerzeichen davor und danach jetzt nachträglich eingefügt werden. Versuch mal bitte ob es jetzt geht.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: trinitywhm am 24 Januar 2018, 22:46:21
Ja super, jetzt klappt es. Vielen Dank, das ging ja echt fix. Dann kann morgen ja wieder die anstehende Hausarbeit korrekt vorgelesen werden. :-)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: h_distler am 25 Januar 2018, 11:57:22
Hi,

Bin deiner Anleitung Schritt für Schritt gefolgt und habe das hier erstellt:
define FamilienKalender GCALVIEW 10000
updateInterval steht auf 3600

Bin allerdings ziemlich neu bei fhem...

im log ist dieser Eintrag:
2018.01.25 11:52:53 3: FamilienKalender blocking call already running
2018.01.25 11:52:53 3: BlockingCall for FamilienKalender aborted
2018.01.25 11:52:57 1: ERROR evaluating {GCALVIEW_DoEnd('FamilienKalender|HIERSTEHT EIN SEHR LANGER STRING - DEN HAB ICH HIER GELÖSCHT')}: Invalid [] range "n-A" in regex; marked by <-- HERE in m/ calendarFilter:multiple-strict,Familie#Mayer,Laufkalender,Geburtstage,Oktoberfest#-#München.#Deine#Stadt#in#deinem#Kalender.,Ferien#-#Bayern,Erlenstraße,#Gräfelfing#(Lochham)#[Mein-A <-- HERE bfallkalender.de],Feiertage#in#Deutschland,Weather:#55218 / at fhem.pl line 3864.

Was mache ich falsch?
Danke&Gruss
hans
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: h_distler am 25 Januar 2018, 17:41:51
hi,

i deleted the calendar which caused (very long name with ü) the problem and now it looks good.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 25 Januar 2018, 22:27:38
In dem einen Abfallkalender hast du diverse Klammern drin und überhaupt sollte ein Kalendername vielleicht nicht unbedingt ein ganzer Roman sein.
Vorschlag: Kannst du vielleicht deinen Kalendern kürzere prägnantere Namen geben und auf Sonderzeichen verzichten? Leerzeichen und Unterstriche sind ja okay, aber /()ˋ´'"\[]{}| ist eher suboptimal. Falls du dich durchringen kannst, dann musst du hinterher die Authentifizierung + Cache file löschen und die Authentifizierung neu durchführen.

Anfangen würde ich mit deinem Abfallkalender, der enthält verschiedene Klammern (vielleicht zur Sicherheit auch den Punkt mal raus nehmen von .de) die hier zu einem Problem zu werden scheinen. Vielleicht reicht das ja auch schon aus.
Titel: Installation Raspbian Stretch Lite
Beitrag von: rabehd am 25 Januar 2018, 22:30:26
Da ich 2 Tage probiert habe, meine Lösung für die Nnächsten.
Mein Raspberry 2 ist von mir gegangen und so bin ich auf einen Raspberry 3 mit Raspbian Stretch Lite umgestiegen.
Der Versuch gcalcli zu installieren/einzurichten scheiterte! :(

Punkt 2 der Anleitung
pi@raspberrypi:/ $ sudo pip install gcalcli
sudo: pip: command not found
Nicht schlimm, die Version ist ja aktuell.

Schlimmer Punkt 6
fhem@raspberrypi:~$ gcalcli list --noauth_local_webserver
Unknown command line flag 'noauth_local_webserver'


Irgendwann habe ich überlegt was so anders ist als vorher. Der alte Raspi hatte kein Lite. Also im Netz mal nach einer Anleitung für gcalcli gesucht.
sudo apt-get install git python-pip python-gdata python-dateutil python-gflags python-vobject python-parsedatetime
und danach ging es ohne Fehler



Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 25 Januar 2018, 22:33:10
Okay danke. Das mit dem pip habe ich wahrscheinlich schon mal irgendwann anders installiert. Ist immer schwer sowas zu entdecken.

Ich hab's im ersten Beitrag aufgenommen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: h_distler am 26 Januar 2018, 21:37:53
einfach nur ein ganz dickes Lob, wirklich klasse Arbeit !!
Vielen Dank ;D
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: shamal2008 am 28 Januar 2018, 23:33:48
Hallo zusammen,

ich habe das tolle Modul auch gleich mal verwendet und stolpere über ein Problem, das im CALVIEW scheinbar "heute" gefixed wurde.

Wenn ein Termin keine Location eingetragen hat, z.B. das Reading t_001_location werden im FTUI die Einträge der "nächsten" Termine einfach eine Zelle nach oben verschoben. Somit stimmt die Tabelle nicht. Mir ist es nicht gelungen, eine data-substitution zu bauen, die einen "" abfängt. Vielleicht müsste das auch im Modul direkt abgefangen werden. Wurde offensichtlich im CALVIEW so gemacht.

Siehe Thread: https://forum.fhem.de/index.php/topic,83422.0.html

Trotzdem vorab ein herzliches Danke für das Modul... unser Familienkalender ist schon up-and-running :).

lg aus Wien
Thomas Lachmayer
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 29 Januar 2018, 08:10:39
Ich glaube das jemand das schon mal angefragt hatte und ich fand es nicht so toll leere Readings zu haben. Kannst du mir bitte deine ftui Definition mal zur Verfügung stellen, damit ich gucken kann, ob es noch eine andere Lösung gibt? Falls nicht, würde ich einen Schalter für dieses Verhalten zur Verfügung stellen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: shamal2008 am 29 Januar 2018, 19:34:21
Hallo,

hier ist meine Definition, die Test mit data-substition sind nicht mehr drin, da hat die Chefin interveniert  ::) Im Moment helfe ich mir damit, dass ich die Einträge im Google Calendar direkt mit einem Ort ersetze...

Ein optisches Problem hab ich auch noch: Das letzte Reading (also der Ort) nützt nicht die gesamte Breite, die zur Verfügung steht, sondern lässt rechts noch Platz, jetzt helfe ich mir halt mit Truncate.. :)



<li data-row="6" data-col="1" data-sizex="10" data-sizey="2">
<header><div data-type="label" class="mint bigger bold">MaLa's Familienkalender</header>
<div class="col-8">
<header> <div data-type="label" class="cell mint">Tag</header>
<div data-type="label" data-device="FamilyCal" data-get="t_001_weekday" class="large"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_002_weekday" class="large"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_003_weekday" class="large"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_004_weekday" class="large"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_005_weekday" class="large"></div>
</div>

<div class="col-12">
<header> <div data-type="label" class="cell mint">Datum </header>
<div data-type="label" data-device="FamilyCal" data-get="t_001_bdate" class="large"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_002_bdate" class="large"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_003_bdate" class="large"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_004_bdate" class="large"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_005_bdate" class="large"></div>
</div>

<div class="col-15">
<header> <div data-type="label" class="cell mint">Uhrzeit </header>
<div data-type="label" data-device="FamilyCal" data-get="t_001_timeshort" class="large"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_002_timeshort" class="large"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_003_timeshort" class="large"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_004_timeshort" class="large"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_005_timeshort" class="large"></div>
</div>

<div class="col-30">
<header> <div data-type="label" class="cell mint">Betreff </header>
<div data-type="label" data-device="FamilyCal" data-get="t_001_summary" class="large left-align truncate"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_002_summary" class="large left-align truncate"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_003_summary" class="large left-align truncate"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_004_summary" class="large left-align truncate"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_005_summary" class="large left-align truncate"></div>
</div>

<div class="col-30">
<header> <div data-type="label" class="cell mint">Ort </header>
<div data-type="label" data-device="FamilyCal" data-get="t_001_location" class="large left-align truncate"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_002_location" class="large left-align truncate"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_003_location" class="large left-align truncate"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_004_location" class="large left-align truncate"></div>
<div data-type="label" data-device="FamilyCal" data-get="t_005_location" class="large left-align truncate"></div>
</div>


Wie gesagt, wenn keine location da ist, werden die Zeilen einfach nicht angedruckt, sondern die nachfolgenen "rutschen" einfach rauf in den vorigen Eintrag.

Chris1284 hat es scheinbar im Modul CalView schon gefixed, vielleicht kannst ja "spicken" :).

lg und DANKE aus Wien,
Thomas
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 30 Januar 2018, 20:16:11
Das zu implementieren ist einfach, aber es ist meiner Meinung nach unsauber. Was spräche dagegen es mal mit dem zu versuchen?

data-substitution="s/^\z/ /"
oder
data-substitution="s/\A\z/ /"

Ich habe aber keine Ahnung ob das funktioniert.

Falls nicht baue ich einen Schalter ein, um das Feature an oder auszuschalten.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: shamal2008 am 31 Januar 2018, 21:44:30
Hallo Mumpitzstuff,

Danke für deine Antwort, beides probiert - leider ohne Ergebnis. Vermutlich hatte ich die Zeichenkombination auch schon mal durch (hab einige probiert. Er verschiebt immer noch. Bild ist anbei - die dritte Zeile (Esterhazygasse 26) gehört eigentlich zum Bachata-Termin in der 4. Zeile...

Danke, wenn du da so einen Schalter einbaust  :D

PS: gibt es eigentlich eine Möglichkeit, die vergangenen Termin von HEUTE (also im Bild z.B. den Mittagstermin) "nicht mehr" anzuzeigen, das attr Calenderincludestarted nimmt ja nur auf den Tag Rücksicht, oder habe ich da was überlesen?

nochmal Danke und lg aus Wien,
Thomas
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 31 Januar 2018, 23:04:26
Bei calenderIncludeStarted darf nichts gesetzt sein, dann werden bereits gestartete Termine von allen Kalendern ausgeblendet. Wenn dort ein Kalender drin steht, dann werden auch die bereits gestarteten Termine des Kalenders mit angezeigt.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 07 Februar 2018, 21:48:01
Hier mal eine Testversion. Falls eins der Werte für ein Reading auf "" gesetzt ist, dann wird es durch " " ersetzt. Ich hoffe das bringt den gewünschten Effekt. Bitte schreib mir ob es bei dir funktioniert.

1.) Datei ersetzen und Rechte bei Bedarf anpassen.
2.) shutdown restart ausführen
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Invers am 07 Februar 2018, 22:26:34
Ich suche nach der Möglichkeit, die nächsten 10 Tage des Kalenders anzuzeigen, egal, ob was drinnen steht, oder nicht. Geht so etwas?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 07 Februar 2018, 22:32:30
Mit dem Attribut calendarDays kannst du die Anzahl der Tage festlegen. Ist es das was du suchst?

Oder suchst du nach einer Readingsgroup die dir 10 Tage fest anzeigt und dann die Termine an den entsprechenden Stellen einblendet. Also unter Umständen mit leeren Zeilen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Invers am 07 Februar 2018, 23:00:20
Habe ich festgelegt. Da werden aber keine leeren Termine ausgegeben.
Eine RG habe ich auch, die kann aber natürlich nur Termine anzeigen, die der Kalender liefert.
Also, wenn  z.B. 3 Tage angezeigt werden und am 2. Tag nichts ist, habe ich nur 2 Tage in der Ansicht.
Um das zu verhindern, wollte ich halt alle (bei mir 10) Tage des Googlekalenders anzeigen, egal, ob leer, oder ob nicht.
Falls du eine RG hast, die das kann, wäre ich für den Code dankbar.
Meine sieht so aus:
defmod Termine readingsGroup <Datum>,< >,<Zeit>,<hr>\
GKalender:t_001_bdate,t_001_weekday,t_001_summary\
GKalender:t_002_bdate,t_002_weekday,t_002_summary\
GKalender:t_003_bdate,t_003_weekday,t_003_summary\
GKalender:t_004_bdate,t_004_weekday,t_004_summary\
GKalender:t_005_bdate,t_005_weekday,t_005_summary\
GKalender:t_006_bdate,t_006_weekday,t_006_summary\
GKalender:t_007_bdate,t_007_weekday,t_007_summary\
GKalender:t_008_bdate,t_008_weekday,t_008_summary\
GKalender:t_009_bdate,t_009_weekday,t_009_summary\
GKalender:t_010_bdate,t_010_weekday,t_010_summary
attr Termine group Termine
attr Termine nonames 1
attr Termine room Kalender
attr Termine style style="border:none;;box-shadow:none"
attr Termine valueStyle {\
if($VALUE eq    "So") { 'style="color:red;;"' }\
elsif($VALUE eq "Sa") { 'style="color:gold;;"' }\
elsif($VALUE eq "F")  { 'style="color:lightgreen"' }\
}

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 08 Februar 2018, 00:04:13
Habe ich nicht. Aber ich habe jetzt verstanden was du meinst und kann mir Gedanken dazu machen.

Hab jetzt noch mal geschaut und es sieht eher schlecht aus. Vermutlich wird es sehr schwer das mit Boardmitteln hinzukriegen. Die Readingsgroup nimmt die Readings als Trigger und dann kann man die Zwischenwerte nicht erzeugen, um die Tage ohne Kalendereinträge anzuzeigen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Invers am 08 Februar 2018, 09:22:57
OK, nicht so schlimm. Mach dir nicht zu viele Gedanken darüber. Ich finde einen anderen Weg. Ich kann ja zur Not auch was im Google eintragen, z.B. "---". Dann steht was da und ich kann auswerten/anzeigen.
Ich hatte gedacht, einen Parameter übersehen zu haben.
Also vielen Dank für die Mühe.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: shamal2008 am 08 Februar 2018, 19:19:45
Hallo Achim,

Danke für deine Version - habe es ausprobiert- kurz: funktioniert nicht. Liegt aber scheinbar nur bedingt an deinem Code. Ich habe mir mal nach Vergleich der beiden Versionen erlaubt, (in den Zeilen 638-646) das '  ' durch '-' zu ersetzen, dann funktioniert es. Offensichtlich mag FHEM die Leerzeichen genauso wenig, wie "NULL" Werte  :).

Wenn das für alle anderen im Forum akzeptabel ist, wäre das natürlich ein gangbarer Weg.

Bin kein Perl Programmierer, leider - sonst könnte ich dir vermutlich mehr Hinweise geben  ;D

lg aus Wien,
Thomas 

Zitat von: mumpitzstuff am 07 Februar 2018, 21:48:01
Hier mal eine Testversion. Falls eins der Werte für ein Reading auf "" gesetzt ist, dann wird es durch " " ersetzt. Ich hoffe das bringt den gewünschten Effekt. Bitte schreib mir ob es bei dir funktioniert.

1.) Datei ersetzen und Rechte bei Bedarf anpassen.
2.) shutdown restart ausführen
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 08 Februar 2018, 21:48:58
Deshalb funktioniert vielleicht auch mein erstes Beispiel nicht. Kannst du mal folgendes probieren?

data-substitution="s/^\z/-/"

oder das andere Beispiel von unten mit einem - anstatt dem Leerzeichen.

Ansonsten kann ich bei mir im Code &nbsp; probieren. Das wäre der HTML Code für ein Leerzeichen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: shamal2008 am 09 Februar 2018, 18:02:54
Hallo,

negativ, funktioniert nicht. Sowohl mit deinem "Original", als auch mit der letzten Version getestet, er verschiebt immer noch.

Wie gesagt, für mich wäre es absolut ok, wenn das Leerzeichen mit einem '-' ersetzt wird. Da kann sich ja wohl kein System beschweren :).

Ich nehm derzeit die Version mit den Minuszeichen.

Danke für dein Engagement!,

lg aus Wien,
Thomas
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 09 Februar 2018, 22:16:31
Ein - ist halt sichtbar und deshalb nicht so gut. Könntest du mir bitte den Gefallen tun und probieren ob &nbsp; ebenfalls funktionieren würde?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: shamal2008 am 10 Februar 2018, 14:17:43
Servus,

habe es gerade ausprobiert - so funktioniert es - im Reading steht zwar dann im "Klartext" '&nbsp' drin, aber im Label im FTUI wird es richtig angezeigt - anbei die Änderung, die ich gemacht habe - weiß nicht, ob das so richtig ist, aber wie gesagt, ich bin kein Perl Programmierer ;)  - bin froh, wenn ich mich in den HTML-Tags nicht verheddere... das letzte Mal habe ich vor 35 Jahren C programmiert..


      my $startDate = @$_[0];
      my $startTime = @$_[1];
      my $endDate = ('' ne @$_[2] ? @$_[2] : @$_[0]);
      my $endTime = ('' ne @$_[3] ? @$_[3] : @$_[1]);
      my $url = ('' ne @$_[4] ? @$_[4] : '&nbsp');
      my $summary = ('' ne @$_[6] ? @$_[6] : '&nbsp');
      my $location = ('' ne @$_[7] ? @$_[7] : '&nbsp');
      my $description = ('' ne @$_[8] ? @$_[8] : '&nbsp');
      my $calendar = ('' ne @$_[9] ? @$_[9] : '&nbsp');
      my $author = ('' ne @$_[10] ? @$_[10] : '&nbsp');
      my $sourceColor = ('' ne @$_[11] ? @$_[11] : '&nbsp');
      my ($startYear, $startMonth, $startDay) = split("-", $startDate);
      my ($endYear, $endMonth, $endDay) = split("-", $endDate);
      my $eventDate = fhemTimeLocal(0, 0, 0, $startDay, $startMonth - 1, $startYear - 1900);
      my $daysleft = floor(($eventDate - time) / 60 / 60 / 24 + 1);
      my $daysleftLong;
      my $startDateStr = $startDay.'.'.$startMonth.'.'.$startYear;
      my $endDateStr = $endDay.'.'.$endMonth.'.'.$endYear;
      my $timeShort;
      my $weekdayStr;


Danke auf jeden Fall für das coole Modul und deine Unterstützung!
;) lg aus Wien,
Thomas
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 10 Februar 2018, 21:21:11
Da fehlt das Semikolon am Ende. Okay aber grundsätzlich scheint es ja so in etwa zu gehen. Ich baue das mal ein, damit du es dir ansehen kannst.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 12 Februar 2018, 20:57:36
Ich habs probiert, es geht leider nicht. Ich lasse es jetzt so wie es ist. Meiner Meinung nach ist das ein Bug in FTUI. Frag am besten dort noch mal nach einer Lösung für dein Problem.

PS: Im anderen Kalender Modul wird ebenfalls mit einem " " gearbeitet, dort passiert also das Gleiche wie bei diesem Modul.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 13 Februar 2018, 13:26:25
Hallo,

ich bin gerade dabei, meine Kalenderanbindung auf auf GCALVIEW umzustellen und dabei kamen mir ein Wunsch, den ich schon für das Abfallmodul hatte und ein Erweiterungswunsch:

1. Wenn ich den Modus waste aktiviere, erhalte ich ja die Anzeige der nächsten (Müll-)Termine. Nun kam es schon vor, dass ich mit dem Wissen einer dreiviertel vollen Mülltonne vor dem Tablet mit dem Abfallkalender stand und gegrübelt habe, ob ich die Tonne vollpacken und rausstellen muss oder ob das Restvolumen noch bis zum nächsten Abholtermin reicht. In dem Moment hatte ich mir eine Funktion gewünscht, für eine Terminart zwischen dem nächsten und übernächsten Termin hin und her schalten zu können. Siehst du da eine Möglichkeit, so etwas einzubauen?
2. Ich hatte die Idee, die Abfallkalenderansicht als Urlaubscountdown zu "missbrauchen". Hierfür hatte ich unseren "normalen" Kalender hergenommen, auf den waste-Modus gestellt und den Summary-Filter auf "Urlaub" - leider habe ich erst beim Nachlesen festgestellt, dass der Filter eine andere Funktion hat. Wäre es möglich, noch eine Filterfunktion einzubauen, die nur Kalendereinträge berücksichtigt, die dem Filter entsprechen?

Vielen Dank
Ronny
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 13 Februar 2018, 18:16:04
Zum Verständnis:

1.) Wenn du Waste eingestellt hast, dann möchtest du nicht nur sehen das der Restmüll morgen abgeholt wird, sondern das die übernächste Leerung in 14 Tagen ist. Richtig? Also im Prinzip die Tage zur übernächsten Leerung angezeigt bekommen.
2.) Das ist nicht trivial. Erstens können sich die Filter dann gegenseitig ausschliessen. Zweitens muss man dann die Filter verodern. Wenn Summary auf Urlaub steht oder wenn Location auf Italien steht oder oder oder. Ich kann aber mal drüber nachdenken...

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 13 Februar 2018, 18:50:59
Guten Abend.

1) Ja, genau. Optimal wäre ein "set <Müllart> next|then" zu umschalten, aber wenn beides angezeigt würde, könnte ich mir das umschalten ggf. auch selbst bauen...
2) ja, aber ich würde eher ein (vermutlich einfacher umzusetzendes) "und" an Stelle des "oder" sehen...

Vielen Dank für deine Mühe
Ronny

Gesendet von meinem SM-G935F mit Tapatalk

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 15 Februar 2018, 07:37:06
Guten Morgen,

da ich im Zuge der Umstellung gern auf meine "Zusammenbaufunktion" verzichten würde, hätte ich noch einen "kleinen" Wunsch: könntest du einen Schalter (Attribut) einbauen, dass man das age nicht als extra reading erhält, sondern in Klammern  am summary dran?

Das wäre super

Ronny
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 15 Februar 2018, 21:19:19
Das würde ich lieber nicht machen wollen. Der nächste will das in der Description oder mit eckigen Klammern usw. In der Readingsgroup auf der ersten Seite schreibe ich das glaub schon irgendwo mit rein. Reicht sowas vielleicht nicht auch. Eventuell geht auch ein Userattribut.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 23 Februar 2018, 17:38:38
Hier mal eine Testversion, die ein zusätzliches Reading im Abfallkalender (nicht im normalen Kalender) erzeugt: _daysnext

Das zeigt dann die Tage bis zum übernächsten Abholtermin an. Könnt ihr bitte mal prüfen ob das bei euch funktioniert?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 23 Februar 2018, 19:19:10
Über den Urlaubscounter habe ich auch mal nachgedacht. Die einfachste Lösung wäre es, wenn du dir einen separaten Kalender erstellst, dort die Termine einträgst und das dann als Abfallkalender einbindest.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 24 Februar 2018, 00:15:05
Zitat von: mumpitzstuff am 23 Februar 2018, 19:19:10
Über den Urlaubscounter habe ich auch mal nachgedacht. Die einfachste Lösung wäre es, wenn du dir einen separaten Kalender erstellst, dort die Termine einträgst und das dann als Abfallkalender einbindest.
Da ich bereits drei Kalender habe (Abfall, normalen und Jahrestage) möchte ich nicht noch einen weiteren für die drei mal Urlaub im Jahr...

Gesendet von meinem SM-G935F mit Tapatalk

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: kleineslichtHH am 25 Februar 2018, 13:16:34
wie kann ich denn einen neu erstellten GoogleKalender (nach Einrichtung von gcali) in FHEM einrichten?


drei vorher erstellte Kalender konnte ich bereits erfolgreich einbinden.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 26 Februar 2018, 14:30:37
Zitat von: mumpitzstuff am 23 Februar 2018, 17:38:38
Hier mal eine Testversion, die ein zusätzliches Reading im Abfallkalender (nicht im normalen Kalender) erzeugt: _daysnext

Das zeigt dann die Tage bis zum übernächsten Abholtermin an. Könnt ihr bitte mal prüfen ob das bei euch funktioniert?

Ja, funktioniert. Ich habe nur ein noch nicht nachvollziehbares Problem mit Umlauten: in einer Instanz gibt es im UserAttr den "Müllkalender", in einer anderen den "M?llkalender". Nur wenn ich "M?llkalender" auswähle, erhalte ich auch Daten. In den Daten werden Umlaute ebenfalls entfernt (z.B. "Biomll_days")...

Ronny
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 26 Februar 2018, 14:35:35
Zitat von: mumpitzstuff am 23 Februar 2018, 19:19:10
Über den Urlaubscounter habe ich auch mal nachgedacht. Die einfachste Lösung wäre es, wenn du dir einen separaten Kalender erstellst, dort die Termine einträgst und das dann als Abfallkalender einbindest.

Ich habe auch nochmal darüber nachgedacht: wenn es den Filter für die Beschreibung gäbe, der nur auf den Filter passende Termine in die "Abfallansicht" übernimmt, könnte man sich Countdowns für bestimmte Ereignisse einrichten: z.B. wie lange ist es noch bis zum nächsten Urlaub oder (für unseren großen dieses Jahr aktuell) wie lange ist es noch bis zum Schulanfang - das könnte ich dann am Tablet an der Wand schön visuell anzeigen...

Ronny
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 26 Februar 2018, 16:10:40
Zitat von: kleineslichtHH am 25 Februar 2018, 13:16:34
wie kann ich denn einen neu erstellten GoogleKalender (nach Einrichtung von gcali) in FHEM einrichten?


drei vorher erstellte Kalender konnte ich bereits erfolgreich einbinden.

Wenn ich die Frage richtig verstanden habe, dann hattest du alles für 3 Kalender eingerichtet, hast jetzt in Google einen vierten Kalender eingerichtet und möchtest diesen jetzt hinzufügen? Das ist leider etwas umständlich, denn du must dazu deine Authentifizierung erst löschen und dann neu einrichten. Das liegt daran, dass die Authentifizierung fest mit deinen Kalendern verknüpft ist, die zum Zeitpunkt der Authentifizierung existiert haben.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 26 Februar 2018, 16:14:40
Zitat von: mumpitzstuff am 26 Februar 2018, 16:10:40
Wenn ich die Frage richtig verstanden habe, dann hattest du alles für 3 Kalender eingerichtet, hast jetzt in Google einen vierten Kalender eingerichtet und möchtest diesen jetzt hinzufügen? Das ist leider etwas umständlich, denn du must dazu deine Authentifizierung erst löschen und dann neu einrichten. Das liegt daran, dass die Authentifizierung fest mit deinen Kalendern verknüpft ist, die zum Zeitpunkt der Authentifizierung existiert haben.

Das habe ich verstanden. Mein Problem daran ist nur, das mir für einen solchen Filter keine weitere Verwendung als diese einfällt. Und das hat erst mal nichts mit der Kalenderfunktion an sich zu tun, deshalb tue ich mich da noch etwas schwer.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: kleineslichtHH am 26 Februar 2018, 17:18:34
Da hast du es leider richtig verstanden. Wie kann ich denn die Authentifizierung löschen?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 26 Februar 2018, 18:20:35
Zitat von: mumpitzstuff am 26 Februar 2018, 16:14:40
Das habe ich verstanden. Mein Problem daran ist nur, das mir für einen solchen Filter keine weitere Verwendung als diese einfällt. Und das hat erst mal nichts mit der Kalenderfunktion an sich zu tun, deshalb tue ich mich da noch etwas schwer.
Ich nehme an, du wolltest mich zitieren :-)

Ich sehe die Möglichkeit, einen countdown zu einem bestimmten Termin zu erstellen schon als Kalenderfunktion. Ein weiteres mögliches Szenario wäre folgendes: wenn man einen Familienkalender hat und im Betreff des Termins den Namen der Familienmitglieder stehen hat, die der Termin betrifft, könnte man pro Familienmitglied eine Kalenderinstanz anlegen und nur die Termine für das entsprechende Familienmitglied auslesen...

Ronny

Gesendet von meinem SM-G935F mit Tapatalk

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 26 Februar 2018, 22:05:55
Zitat von: kleineslichtHH am 26 Februar 2018, 17:18:34
Da hast du es leider richtig verstanden. Wie kann ich denn die Authentifizierung löschen?

Bei mir gibts in /opt/fhem die beiden Dateien .gcalcli_oauth und .gcalcli_cache. Beide müsstest du löschen und dann die Authentifizierung erneut durchführen. Die Dateien kannst du mit ls -all anzeigen lassen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 26 Februar 2018, 22:10:26
Zitat von: RoBra81 am 26 Februar 2018, 14:30:37
Ja, funktioniert. Ich habe nur ein noch nicht nachvollziehbares Problem mit Umlauten: in einer Instanz gibt es im UserAttr den "Müllkalender", in einer anderen den "M?llkalender". Nur wenn ich "M?llkalender" auswähle, erhalte ich auch Daten. In den Daten werden Umlaute ebenfalls entfernt (z.B. "Biomll_days")...

Ronny

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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: shamal2008 am 27 Februar 2018, 00:30:07
Hallo Armin,

wie ich sehen konnte, hast du bei deiner letzten Version das Handling der Readings bzw. Variablen geändert. Leider reicht mein Perl jetzt nicht soweit, dass ich in den Zeilen die Ersetzung mit den "-" selber vornehmen kann. Kannst du mir da auf die Sprünge helfen?

my $startDate = @$_[0];
      my $startTime = @$_[1];
      my $endDate = @$_[2];
      my $endTime = @$_[3];
      my $url = @$_[4];
      my $summary = @$_[6];
      my $location = @$_[7];
      my $description = @$_[8];
      my $calendar = @$_[9];
      my $author = @$_[10];
      my $sourceColor = @$_[11];


Danke und kalte Grüße aus Wien,
Thomas
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 27 Februar 2018, 01:14:43
Was meinst du mit letzter Version? Die Testversion oder die Version, die über das normale Update kommt?

https://forum.fhem.de/index.php/topic,77502.msg764062.html#msg764062 (https://forum.fhem.de/index.php/topic,77502.msg764062.html#msg764062)

Hier hattest du gepostet wie es ausgesehen hat.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: shamal2008 am 02 März 2018, 11:07:13
Hallo,

die Version die über das Update kam.

Sry, ich dachte, die Version hier aus dem Thread wäre bereits "offiziell" ;) - hab jetzt ein Exclude gesetzt - und Backup sei Dank - alles wieder im Lot und die Terminlocation dort, wo sie hingehören.

lg aus Wien,
Thomas
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 08 März 2018, 21:13:41
Ich habe soeben eine neue Version eingestellt mit folgenden Änderungen:

- Attribut emptyReadingText hinzugefügt (damit kann man den Inhalt von leeren Readings festlegen)
- Attribut invertFilter hinzugefügt (invertiert die Bedeutung der existierenden Filter). Hiermit kann man exakt die Einträge behalten, die dann dem Filtertext entsprechen!
- Reading _daysnext hinzugefügt (nur waste Kalender)
- Version erhöht von 1.0.2 nach 1.0.3
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 08 März 2018, 21:34:48
Zitat von: shamal2008 am 02 März 2018, 11:07:13
Hallo,

die Version die über das Update kam.

Sry, ich dachte, die Version hier aus dem Thread wäre bereits "offiziell" ;) - hab jetzt ein Exclude gesetzt - und Backup sei Dank - alles wieder im Lot und die Terminlocation dort, wo sie hingehören.

lg aus Wien,
Thomas

Dein Problem sollte sich jetzt mit dem neuen Attribut lösen lassen. Du kannst das Update wieder aktivieren.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 08 März 2018, 21:35:57
Zitat von: RoBra81 am 26 Februar 2018, 18:20:35
Ich nehme an, du wolltest mich zitieren :-)

Ich sehe die Möglichkeit, einen countdown zu einem bestimmten Termin zu erstellen schon als Kalenderfunktion. Ein weiteres mögliches Szenario wäre folgendes: wenn man einen Familienkalender hat und im Betreff des Termins den Namen der Familienmitglieder stehen hat, die der Termin betrifft, könnte man pro Familienmitglied eine Kalenderinstanz anlegen und nur die Termine für das entsprechende Familienmitglied auslesen...

Ronny

Gesendet von meinem SM-G935F mit Tapatalk

Deine Anforderungen sollten jetzt ebenfalls alle erfüllt sein.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 09 März 2018, 10:18:42
Zitat von: mumpitzstuff am 08 März 2018, 21:35:57
Deine Anforderungen sollten jetzt ebenfalls alle erfüllt sein.

Super, vielen Dank! Das funktioniert  :)

Ronny
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: borsTiHD am 25 März 2018, 20:15:34
Hallo zusammen,

ich hoffe ihr könnt mir weiterhelfen.
Ich nutze dein Plugin jetzt schon ne Weile und bin auch sehr zufrieden damit.
Nutzen tue ich dein Plugin für meinen Schichtplan, den ich über den Google Kalendar syncronisiere.
Letzendlich steuere ich in FHEM damit meine Heizungsprofile.

Leider ist mir vor ner Weile aufgefallen das plötzlich meine Heizung nicht mehr automatisiert sich meinen Schichten angleicht und bei näherem schauen, hab ich gemerkt das keine Einträge mehr aus dem Google Kalendar geladen werden. Das ganze ist jetzt schon ein paar Wochen her, hatte erst jetzt Zeit mich drum zu kümmern. Da sich möglicherweise was bei Google oder sonst wo geändert hatte, hab ich es erstmal mit einem "update all" probiert und alles hoffentlich auf den neusten Stand gebracht.

Versuche ich jetzt mein Device mit "set GoogleCalendar update" abzufragen, bekomme ich im Eventmonitor folgende Meldung:
2018.03.25 20:05:07 3 : GoogleCalendar blocking call already running
2018.03.25 20:05:07 3 : BlockingCall for GoogleCalendar aborted
2018.03.25 20:05:07 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 625.


Bevor ich jetzt versuche die Google Authentifizierung oder sonst was neu zu machen, wollte ich euch fragen ob ihr mir da helfen könntet?
Vielen Dank schon mal. Falls eine ähnliche Frage bereits kam, ich hab mir nur die letzten Seiten hier kurz überflogen, dann bitte ein Hinweis wo ich das finden kann. :)

Hier wäre mein Device:
Internals:
   CHANGED   
   DEF        3600
   NAME       GoogleCalendar
   NOTIFYDEV  global
   NR         149
   NTFY_ORDER 50-GoogleCalendar
   STATE      Initialized
   TIMEOUT    3600
   TYPE       GCALVIEW
   VERSION    1.0.3
   Helper:
     DBLOG:
       state:
         DBLogging:
           TIME       1522001107.40259
           VALUE      update
   helper:
     RUNNING_PID:
       abortFn    GCALVIEW_DoAbort
       arg        GoogleCalendar
       bc_pid     7
       finishFn   GCALVIEW_DoEnd
       fn         GCALVIEW_DoRun
       pid        11999
       telnet     telnetPort_127.0.0.1_48096
       terminated 1
       timeout    3600
       abortArg:
Attributes:
   calendarDays 5
   calendarFilter Schichtplan,xxx@googlemail.com,Contacts,Feiertage in Deutschland,Week Numbers
   calendarIncludeStarted Schichtplan,xxx@googlemail.com,Contacts,Feiertage in Deutschland,Week Numbers
   group      Kalender
   icon       time_calendar
   room       6.1_GoogleKalender
   sourceColor Schichtplan:black,xxx@googlemail.com:black,Contacts:black,Feiertage in Deutschland:red,Week Numbers:black
   updateInterval 7200
   userattr   calendarFilter:multiple-strict,Schichtplan,xxx@googlemail.com,Contacts,Feiertage#in#Deutschland,Week#Numbers calendarIncludeStarted:multiple-strict,Schichtplan,xxx@googlemail.com,Contacts,Feiertage#in#Deutschland,Week#Numbers
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 25 März 2018, 21:38:35
Kannst du bitte im Kalender Device Verbose auf 5 setzen und dann ein Update machen und gucken ob man da noch mehr sieht?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: borsTiHD am 25 März 2018, 22:04:27
Hab Verbose auf 5 gestellt, bekomme dann nur folgende Ausgabe während eines Updates:
2018.03.25 22:00:17 3 : GoogleCalendar blocking call already running
2018.03.25 22:00:17 3 : BlockingCall for GoogleCalendar aborted
2018.03.25 22:00:17 5 : GoogleCalendar_SetNextTimer: set next timer
2018.03.25 22:00:18 5 : GoogleCalendar_DoEnd: end running
2018.03.25 22:00:18 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 625.


Vlt hilft ja der Hinweis, ich hab in meine Datenbank geschaut wann die letzten Daten abgerufen werden konnten und die letzten geloggten Einträge waren am 06.03. gegen 9 Uhr.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 26 März 2018, 00:51:53
Besteht die Möglichkeit den Raspberry mal zu rebooted? Was mich wundert ist, das der BlockingCall hängen bleibt. Im Log steht immer das der BlockingCall bereits rennt. Vielleicht hat sich irgendwas grundsätzliches aufgegangen. Da auch keine weiteren Ausgaben von gcalcli kommen, könnte auch irgend ein Zombie Process bei dir im System existieren, der vielleicht weitere gcalcli Aufrufe verhindert. Das kannst du vielleicht mal vorab verifizieren und von der Kommandozeile deinen Kalender mit gcalcli abfragen. Vermutlich wird das auch nicht mehr gehen.

Ein Update von mir kam übrigens erst am 08.03 und davor ziemlich lange nichts...
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: borsTiHD am 26 März 2018, 09:33:42
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
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 26 März 2018, 09:45:28
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...
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: borsTiHD am 26 März 2018, 10:27:56
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
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 26 März 2018, 15:07:46
Hauptsache es geht wieder.  :)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: trinitywhm am 01 April 2018, 18:05:36
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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 01 April 2018, 21:31:44
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...
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: trinitywhm am 01 April 2018, 22:29:13
Sorry, vergessen zu erwähnen. Reboot natürlich auch schon probiert. Leider kein Erfolg.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 01 April 2018, 23:08:49
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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: trinitywhm am 02 April 2018, 08:21:25
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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 02 April 2018, 16:45:56
Das ist ja komisch. Naja Hauptsache es geht wieder. Och schau aber bei Gelegenheit mal rein, vielleicht finde ich was.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 02 April 2018, 19:19:08
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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 04 April 2018, 07:29:00
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
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag 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

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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 04 April 2018, 08:28:23
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...
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 04 April 2018, 11:47:25
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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: borsTiHD am 10 April 2018, 13:49:13
Zitat von: trinitywhm am 02 April 2018, 08:21:25
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. :)

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff 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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: borsTiHD 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?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff 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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: borsTiHD 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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff 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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff 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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Amenophis86 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

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff 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?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Amenophis86 am 22 April 2018, 10:22:23
Intervall auf 3600 und Timeout keine Ahnung, habe ich nie verändert.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff 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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff 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)}
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 03 Mai 2018, 12:46:15
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
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 03 Mai 2018, 13:03:50
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?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 03 Mai 2018, 13:24:12
In Beschreibung und location sind Kommas, aber die haben bis jetzt funktioniert...
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 03 Mai 2018, 14:01:42
Welche Version von gcalcli hast du auf dem Rechner? Das kann man mit -v oder --v ermitteln. Ich kann höchstens versuchen in den Sourcen von gcalcli was zu finden, aber das ist halt keine Software von mir.

Was du außerdem mal testen könntest ist, das wenn du verbose auf 5 stellst, dann siehst du die gcalcli Aufrufe, die von meinem Modul gemacht werden. Versuch diese mal auf der Linux Kommandozeile einzugeben und schau nach, ob dort der selbe Fehler kommt. Falls ja, versuch mal die Option --tsv wegzulassen.

Hintergrund: Wenn tatsächlich die Option --tsv Schuld daran ist, dann könnte ich noch mal versuchen auf eine andere Ausgabe von gcalcli zu wechseln. Wäre zwar enormer Aufwand aber eventuell machbar.

PS: Wo ich grad drüber schreibe, das Problem sind Tabulatoren und keine Kommas. Hast du irgendwas in den Kalender eingefügt das Tabulatoren enthält?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RunningXx am 17 Mai 2018, 16:09:40
Hallo,
Super Kalender funktioniert wunderbar.

Ich möchte gerne im TabletUI eine 7 Tage Ansicht machen (Heute,Morgen,Der Tag darauf zb. Samstag,Sonntag,Montag,Dienstag,Mittwoch). Aber den Readings sind ja keinem Tage zugeordnet außer halt today und tomorrow. Kann mann das irgendwie bewerkstelligen das den Readings Tage zugeordnet sind, so das ich diese einfache ins TabletUI eintragen kann.

Gruß
Lars
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 17 Mai 2018, 23:14:04
Damit kenne ich mich leider gar nicht aus. Als Basis könntest du aber vielleicht https://github.com/chris1284/Widgets-for-fhem-tablet-ui (https://github.com/chris1284/Widgets-for-fhem-tablet-ui) das Widget für CALVIEW verwenden. Beide sollten im Prinzip fast die selben Readings haben.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 17 Mai 2018, 23:19:18
https://forum.fhem.de/index.php/topic,48562.msg789404.html#msg789404 (https://forum.fhem.de/index.php/topic,48562.msg789404.html#msg789404)

Hier findest du wahrscheinlich auch was dazu.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RunningXx am 18 Mai 2018, 10:15:22
Das TabletUI nutzt einfach nur die Readings vom gCalview und trägt die werte ins Widget ein. Im gCALVIEW oder auch im CALVIEW werden die Termine ja keinem Tag zugeordnet. Die Termine werden ja nur nach und nach in den Readings Abgelegt (Termin 1 = t_001,Termin 2 = t_002 usw.). Ich hatte gehofft, dass mann die Sortierungen Über den Attributen ändern kann.  So das er sie nach Tag 1 Termin 1, Tag 1 Termin 2, Tag 2 Termin 1 in den Readings sortiert.  Was auch schön wäre das Tag 1 immer Heute ist unabhängig davon ob Termine vorhanden sind oder nicht. So weiß das TabletUI immer welches Reading welcher Tag ist und wie viel Termine er hat und wo Termin 1 Beginnt.

Ich möchte nicht einfach nur ein stumpfe Termin Ansicht haben Die Termin 1 - Termin 2 Runterlistet.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RunningXx am 18 Mai 2018, 10:20:55
Sorry,
Hatte den fullcalview mit was anderem verwechselt. das ist sowas wie ich gesucht hatte, danke.

Trotzdem wäre es schön wenn das geschriebene in mein letzten post möglich wäre das würde auch viele anderen Helfen, um z.b den ersten Termin von heute auf der Startseite des TabletUI Anzuzeigen.
Es wäre halt schön gezielt Readings für bestimmte Termine an einem Bestimmten Tag auszulesen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 18 Mai 2018, 11:16:52
Das macht für mich auf den ersten Blick nicht viel Sinn. Die Termine sind chronologisch geordnet. Das bedeutet, dass in 001 der nächste Termin drin steht (an welchem Datum der auch immer ist) und danach der danach folgende usw. Wenn z.B. nur ein Termin drin stehen würde, der erst in 3 Tagen ist, dann müsste ich nach deinem Vorschlag 2 leere Einträge anlegen, nämlich 001 und 002 und erst in 003 würde ein Termin drin stehen.
Die Readings eines Moduls sind in erster Linie Datensammler und nur bedingt als Visualisierung zu verstehen. Für diesen Zweck gibt es z.B. readingsGroups oder FTUI, in denen man sich das Ganze aufbereiten und schöner darstellen kann.

Den ersten Termin von Heute findest du immer in today_001_... Wenn das Readings nicht existiert, dann gibt es auch keinen Termin für Heute. Das sollte sich relativ einfach in FTUI darstellen lassen. Du hast natürlich recht, dass sich damit nur heute und morgen direkt ansprechen lassen. Wenn man darüber hinaus gehen möchte, dann muss man sich die Informationen raus suchen. Dafür bieten aber readingsGroups und FTUI geeignete Mittel an, da dieses Problem bei allen Modulen besteht.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 20 Mai 2018, 14:01:53
ZitatDen ersten Termin von Heute findest du immer in today_001_...
Wirklich? bei mir ist das der nächste Termin. Das kann auch in x Tagen sein.
Wenn man nur den heutigen Termin haben will, dann würde ich über eine Bedingung "t_001_daysleft" = 0 nachdenken.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 20 Mai 2018, 17:58:19
Hab ich mal so aufgeschrieben ohne jetzt näher nachzusehen. Wenn das nicht so ist, dann muss ich tatsächlich noch mal in den Code reib gucken, ich weiss es schlicht nicht mehr genau. Daysleft == 0 stimmt aber in jedem Fall.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Hanner72 am 19 September 2018, 07:58:06
Hallo.

Also erstmal ein Danke an alle hier im Forum. Ich meine das ist eines der besten Foren die es gibt im www.
Und ein Danke an mumpitzstuff für das super Modul!

So und jetzt zu meinem Problem:

Ich hab alles installiert und läuft auch einwandfrei.
Meine Termine werden wie gewollt angezeigt.

Nur die die Farben werden nicht angezeigt, auch nicht in den readings vom 1. Post.

Im Device steht z.B.
t_001_source Contacts
t_002_source Hansi


Im Attribut hab ich folgendes eingetragen:
attr Google sourceColor Contacts:red,Hansi:blue

jedoch keine Änderung.

Hab verbose auf 5
und keine Einträge im Logfile.

Weiß da vielleicht jemand meinen Fehler?

Danke.
LG Johann
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 19 September 2018, 08:53:22
Im Device selbst siehst du die Farben auch nicht. Diese Farben sind dazu da, um z.B. in einer ReadingsGroup verwendet zu werden oder einer anderen Oberfläche wie z.B. FTUI. Ein Beispiel für eine ReadingsGroup findest du im ersten Beitrag. Innerhalb dieser ReadingsGroup werden dann die Farben auch angezeigt.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Hanner72 am 19 September 2018, 11:33:29
Hallo,

Danke für die schnelle Antwort.

Hab noch mal alles durchgesehen.
Funktioniert schon.
Beim kopieren ist irgendwie das Attribut valueStyle verloren gegangen.  ::) ???
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: addo am 25 September 2018, 20:57:18
Guten Abend,

wie kann ich das Modul GCALVIEW bei FTUI einbinden ?
Bei mir läuft soweit alles , bekomm nur leider nichts im FTUI angezeigt :(

<div data-type="calview"
     data-device="GCAL_All"
     data-get="all"
     data-detail='["bdate","btime","summary"]'
     data-detailwidth='["30","30","40"]'></div>

https://forum.fhem.de/index.php/topic,91467.0.html

   
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 26 September 2018, 00:15:27
Damit kenne ich mich leider gar nicht aus und kann deshalb auch nicht helfen. Tut mir leid.
Titel: Modul GCALVIEW bei FTUI
Beitrag von: rabehd am 26 September 2018, 09:23:50
Ich vermute, dass die Frage hier falsch ist (Hier gehts ja nicht um die Datstellung, die ist für mich immer eine eigene Baustelle.). Besser bei FTUI neu eingeben und den Beitrag hier per Edit verlinken.
Dann wird es sicher helfen, wenn man vorher die Hinweise fürs Forum liest. So vermute ich ein paar bissige Kommentare.

Mehr Info, oedentlich aufbereitet!
Nur Infos zum Thema!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: majestro84 am 01 November 2018, 20:04:58
Hallo

Habe mal eine Frage. Habe bei  Google einen neuen Kalender Geburtstage angelegt und ein paar Termine eingetragen.
Wenn ich nun
gcalcli list --noauth_local_webserver
eingebe bekomme ich alle Kalender angezeigt. siehe Bild.
Im GCALVIEW  tauchen aber keine der Termine auf. Was habe ich falsch gemacht?
Über einen Tipp wäre ich dankbar.

Gruß
Alex
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 01 November 2018, 23:11:00
Funktioniert bei dir Punkt 7 vom ersten Post? Falls ja, mach mal bitte ein list vom Kalenderdevice und poste das hier. Was sagt denn dein fhem Logfile? Mit dem Attribut verbose 5 werden erweiterte Informationen ins Logfile eingetragen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: majestro84 am 02 November 2018, 12:53:44
Hi
Vielen Dank für die schnelle Antwort.
Mit dem Befehl unter Punkt 7 ist im FHEM der Kalender auch nicht dabei gewesen.
Es war aber mein Fehler ich habe gestern die Verknüpfung mit dem Google Konto neu gemacht weil ich in der Konsole mit dem User Pi den Befehl unter 6 ausgeführt habe.
Damit habe ich die .gcalcli_oauth vom Benutzer FHEM überschrieben somit konnte er auch nicht mehr die Kalenderliste richtig bekommen.
Habe es nun neu gemacht unter dem Benutzer FHEM und nun klappt auch alles wieder.

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Sommerfeld am 27 November 2018, 10:01:30
Hallo,
ich versuche das Modul zu installieren und bleibe bei Punkt 4 hängen.
Ich habe die folgende Fehlermeldung:
armin@PC-Arbeitszimmer:~$ gcalcli --version
Traceback (most recent call last):
  File "/usr/local/bin/gcalcli", line 4, in <module>
    __import__('pkg_resources').run_script('gcalcli==3.4.0', 'gcalcli')
  File "/usr/local/lib/python3.6/dist-packages/pkg_resources/__init__.py", line 664, in run_script
    self.require(requires)[0].run_script(script_name, ns)
  File "/usr/local/lib/python3.6/dist-packages/pkg_resources/__init__.py", line 1450, in run_script
    script_code = compile(script_text, script_filename, 'exec')
  File "/usr/local/lib/python3.6/dist-packages/gcalcli-3.4.0-py3.6.egg/EGG-INFO/scripts/gcalcli", line 199
    print "ERROR: Missing module - %s" % e.args[0]
                                     ^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print("ERROR: Missing module - %s" % e.args[0])?

Kann mir jemannd helfen? Ich komme mit meinen Kenntnissen nicht weiter.
Grüße
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: dirkbalzer am 22 Dezember 2018, 22:14:07
Zitat von: mumpitzstuff am 04 Oktober 2017, 00:02:11
filterSummary: Wenn dieses regex innerhalb des Summary matcht, dann wird das Event komplett ausgeblendet.
Hi ich stehe gerade auf dem Schlauch. Wo muss ich das jetzt eintragen damit es ausgeblendet wird?Kann mir mal bitte einer ein Praxis Beispiel geben?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 23 Dezember 2018, 00:56:06
Wenn du in das Attribut z.b. Test reinschreibst, dann werden alle Kalendereinträge gefiltert, bei denen das Wort Test im Summary auftaucht.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: dirkbalzer am 23 Dezember 2018, 11:51:19
Achso, dann war ich komplett auf dem Holzweg!
Ich hätte jetzt erwartet das bei filterLocation=1 das Reading 't_001_location' usw komplett aus dem gcalview verschwindet.
Das war mein Versuch ein bißchen Aufzuräumen und die von mir nicht benötigten Felder auszublenden.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 23 Dezember 2018, 17:04:15
Einzelne Felder kann man leider nicht filtern, wenn ich mich recht entsinne. Das war immer nur bezogen auf den gesamten Eintrag.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: FHEM_Starter am 28 Dezember 2018, 15:55:47
Hallo,

kann das Modul tatsächlich das Modul 57_Calendar ersetzen?
ZitatEs gibt innerhalb des Moduls 2 Ansichten, welche sich zum einen an 57_CALVIEW und zum anderen an 57_ABFALL anlehnen. Diese Ansicht lässt sich beliebig umschalten oder man erstellt mehrere Devices und konfiguriert die einzelnen Devices entsprechend. Bei mir kann dieses Modul die Module 57_CALENDAR, 57_CALVIEW und 57_ABFALL inzwischen komplett ersetzen.

Ich habe es installiert und es funktioniert klasse, aber mir fehlen die Events, die normalerweise durch die Kalender ausgelöst werden. Habe ich da einen Denkfehler?

Danke schonmal im voraus,
Wolfgang
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 28 Dezember 2018, 17:30:57
Was genau meinst du mit Events? Dieses Modul löst Events aus, wenn die Readings aktualisiert werden. Auf diese kann man bei Bedarf mit einem Notify oder ähnlichem reagieren. Was genau ist dein Anwendungsfall?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: FHEM_Starter am 28 Dezember 2018, 19:11:28
Hallo,

danke für die schnelle Antwort. Es ist ein Bewässerungskalender, der pro Tag 16 verschiedene Schaltzyklen hat und sich die Dauer der Bewässerung nach einem Feuchtigkeitswert bemisst. Mir ist schon klar, dass es Events gibt, wenn sich das Reading aktualisiert. Einen Event ala "ModeStarted" gibt es ja leider scheinbar nicht. Das sehe ich doch richtig, oder?

Eventuell hast Du ja eeine Idee zum Workaround! Mein Antrieb war, von dem Modul Kalender wegzukommen, da bei mir die Aktualisierungen zu lange gedauert haben und mir mein FHEM blockierte.

Danke und Gruß
Wolfgang
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 28 Dezember 2018, 21:34:20
Du kannst wie in diesem Thread Antwort #14 auf Kalendereintrâge triggern.
Ich habe auch 3 verschiedene Kalender angelegt (Geburtstage, Events, Reminder), und lasse je nach Kalender-typ und Eintrag verschiedene Aktionen ausführen, das geht prima und blockiert nicht.
Steht alles hier im Thread beschrieben.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 30 Dezember 2018, 02:33:35
Danke!

Reicht dir das erst mal als Antwort?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: FHEM_Starter am 05 Januar 2019, 12:24:27
Danke an alle, ja das reicht zunächst.

Gruß Wolfgang
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: CoolTux am 05 Januar 2019, 12:37:54
Zitat von: FHEM_Starter am 28 Dezember 2018, 19:11:28
Hallo,

danke für die schnelle Antwort. Es ist ein Bewässerungskalender, der pro Tag 16 verschiedene Schaltzyklen hat und sich die Dauer der Bewässerung nach einem Feuchtigkeitswert bemisst. Mir ist schon klar, dass es Events gibt, wenn sich das Reading aktualisiert. Einen Event ala "ModeStarted" gibt es ja leider scheinbar nicht. Das sehe ich doch richtig, oder?

Eventuell hast Du ja eeine Idee zum Workaround! Mein Antrieb war, von dem Modul Kalender wegzukommen, da bei mir die Aktualisierungen zu lange gedauert haben und mir mein FHEM blockierte.

Danke und Gruß
Wolfgang

Die ist bewusst das das Modul Calendar ein Attribut Update hat welches man auf async stellen kann?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Kharim am 06 Januar 2019, 16:49:38
Hallo Zusammen,

ich glaube einen kleinen "Fehler" gefunden zu haben.
Ich nutze das gCALVIEW mit Darstellung auf FTUI mittels entsprechendem CALVIEW Widget.

Erst einmal dickes Danke und Lob, dass so einfach ein GoogleKalender einbindbar ist!! Danke :-)

Im CALVIEW Widget, bzw. dessen JavaScript Datei gibt es die bekannten abrufbaren Readings.
Unter anderem das Reading weekdayNAME -> Wochentag.
Im gCALVIEW heißt dieses Reading aber nur weekday.

Nach Anpassung der JavaScript Datei kann dann auch im FTUI mittels weekday der Wochentag dargestellt werden.

Eventuell könnte/sollte man hier das Reading weekday im gCALVIEW auf weekdayname anpassen?

Vielen Grüße,
Kharim
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 07 Januar 2019, 01:45:42
Hmm das muss sich mal geändert haben. Wenn ich das umstelle, funktioniert aber bei einigen vielleicht was nicht mehr, deshalb würde ich das nur sehr ungern tun.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: FHEM_Starter am 11 Januar 2019, 17:20:04
Hallo,

wie kann ich es anstellen, dass mir bei ganztägigen Terminen der Termin Vortages nicht mit angezeigt wird? Google legt das bdate auf Tag x 00:00 Uhr, das edate auf Tag x+1 00:00 Uhr.

Lasse ich mir nun im Geburtstagskalender die gestarteten Termin anzeigen (was ja durchweg Sinn macht), erhalte ich aber auch die Geburtstagstermine des Vortages, und das macht definitiv keinen Sinn.

Danke im voraus,
Wolfgang

@CoolTux: Ja, das kenne ich. Hat aber in einem Zusammenhang nicht wirklich zu einer zufriedenstellenden Lösung geführt.

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 12 Januar 2019, 14:12:42
Mit dem Attribut calendarIncludeStarted hast du schon gespielt?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: FHEM_Starter am 13 Januar 2019, 12:58:24
ja das habe ich, sonst würde ich die Termine - die am aktuellen Tag schon gestartet sind - ja nicht angezeigt bekommen.
Die Frage war doch, wir kann ich verhindern, dass der GESTRIGE Termin, der aber bis HEUTE 00:00 Uhr geht, unterdrückt wird?

Merci Wolfgang
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 14 Januar 2019, 11:17:37
Ich habe die Frage schon verstanden, wollte nur ausschließen, dass es sich vielleicht mit einfachen Maßnahmen beseitigen lässt. Das Problem hatte ich so noch nicht auf dem Schirm und das muss ich mir erst mal ansehen. Eventuell muss ich da eine kleine Änderung einbauen, wenn das nicht abgefangen wird. Ich melde mich.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 16 Januar 2019, 00:34:03
Könntest du mal bitte gucken, ob diese Version dein Problem beheben würde. Ist aber nur eben reingehackt und ungetestet. Wenns nicht geht, müsste ich weiter suchen bzw. intensiver testen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 18 Januar 2019, 08:58:20
Zitat von: FHEM_Starter am 13 Januar 2019, 12:58:24
ja das habe ich, sonst würde ich die Termine - die am aktuellen Tag schon gestartet sind - ja nicht angezeigt bekommen.
Die Frage war doch, wir kann ich verhindern, dass der GESTRIGE Termin, der aber bis HEUTE 00:00 Uhr geht, unterdrückt wird?

Merci Wolfgang

Kannst du dir bitte den Patch ansehen und mir sagen ob er tut oder nicht? Ich würde den gern in die offizielle Version übernehmen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: DerTom am 24 Januar 2019, 11:51:21
Hallo,

Zitat von: mumpitzstuff am 24 Januar 2018, 22:22:54
Interessant. Da schlägt irgend ein Automatismus zu und entfernt die Leerzeichen wenn man das Attribut setzen möchte. Damit habe ich nicht gerechnet. Ich habe ein Update eingespielt, in dem die Leerzeichen davor und danach jetzt nachträglich eingefügt werden. Versuch mal bitte ob es jetzt geht.

Jetzt habe ich ein kleines, anders gelagertes Problem, welches aber auch mit den Leerzeichen zu tun hat. Ich möchte den Inhalt des Readings "next_text" an ein HM-Dis-EP-WM55-Display ausgeben. Bei diesem Display gibt es schon von je her ein Problem mit Leerzeichen. Nach einem Leerzeichen wird der restliche Text abgeschnitten. Da austomatisiert Leereichen eingefügt werden, wird der nachfolgende Text nicht mehr angezeitgt.

Ein Leerzeichen wird bei diesem Display mit der Zeichenkomination

\_

erzeugt.

Wie könnte ich denn das lösen?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 24 Januar 2019, 12:29:26
Ein Userreading vielleicht?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: DerTom am 24 Januar 2019, 17:23:23
Danke für den Denkanstoß. Hat funktioniert.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Sommerfeld am 03 Februar 2019, 10:19:17
Hallo,
seit gestern erhalte ich im Kalender feine Readings mehr.
Im Kalender habe ich keine Veränderungen vorgenommen.
Das Log zeigt die Fehlermeldung:
Kalender: something went wrong (invalid gcalcli output)

Auszug aus dem Log:

2019.02.03 10:01:12 5: Kalender_DoRun: start running
2019.02.03 10:01:14 5: Kalender: The following options are either no longer valid globally or just plain invalid:
  --calendar
  xxxx.xxxx@gmail.com
  --calendar
  Contacts
  --calendar
  Christliche Feiertage
  --calendar
  Feiertage in Deutschland
  --detail_all
2019-02-04 00:00 2019-02-05 00:00 gelber Sack
2019-02-04 00:00 2019-02-05 00:00 Kalenderwoche 6 2019
2019-02-09 09:00 2019-02-09 10:00 Schalter_1
2019-02-09 11:30 2019-02-09 12:30 Test
2019-02-11 00:00 2019-02-12 00:00 Kalenderwoche 7 2019
2019-02-12 07:30 2019-02-12 09:00 Blutabnahme 07:30
2019-02-13 00:00 2019-02-14 00:00 xxxxxx hat Geburtstag
2019-02-14 00:00 2019-02-15 00:00 xxxxxx hat Geburtstag
2019-02-14 00:00 2019-02-15 00:00 Valentinstag
2019-02-14 17:30 2019-02-14 19:00 Dr. xxxxx 17:30
2019-02-15 00:00 2019-02-16 00:00 Hausmuell
2019-02-16 09:00 2019-02-16 10:00 Schalter_1
2019-02-16 11:30 2019-02-16 12:30 Test
2019-02-18 00:00 2019-02-19 00:00 gelber Sack
2019-02-18 00:00 2019-02-19 00:00 Kalenderwoche 8 2019
2019-02-20 00:00 2019-02-21 00:00 xxxxxx hat einen Jahrestag
2019-02-23 09:00 2019-02-23 10:00 Schalter_1
2019-02-23 11:30 2019-02-23 12:30 Test
2019-02-25 00:00 2019-02-26 00:00 Kalenderwoche 9 2019
2019-02-26 00:00 2019-02-27 00:00 Papier
2019-02-27 08:30 2019-02-27 10:30 xxxxxxx
2019-02-28 00:00 2019-03-01 00:00 xxxxxxx hat einen Jahrestag
2019-03-01 00:00 2019-03-02 00:00 Hausmuell
2019-03-01 00:00 2019-03-02 00:00 St. David's Day
2019-03-02 09:00 2019-03-02 10:00 Schalter_1
2019-03-02 11:30 2019-03-02 12:30 Test
2019-03-04 00:00 2019-03-05 00:00 gelber Sack
2019-03-04 00:00 2019-03-05 00:00 xxxxxxxxx hat Geburtstag
2019-03-04 00:00 2019-03-05 00:00 Rosenmontag
2019-03-04 00:00 2019-03-05 00:00 Kalenderwoche 10 2019

2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - The following options are either no longer valid globally or just plain invalid:
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) -   --calendar
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) -   xxxx.xxxx@gmail.com
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) -   --calendar
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) -   Contacts
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) -   --calendar
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) -   Christliche Feiertage
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) -   --calendar
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) -   Feiertage in Deutschland
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) -   --detail_all
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-04, 00:00, 2019-02-05, 00:00, gelber Sack
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-04, 00:00, 2019-02-05, 00:00, Kalenderwoche 6 2019
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-09, 09:00, 2019-02-09, 10:00, Schalter_1
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-09, 11:30, 2019-02-09, 12:30, Test
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-11, 00:00, 2019-02-12, 00:00, Kalenderwoche 7 2019
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-12, 07:30, 2019-02-12, 09:00, Blutabnahme 07:30
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-13, 00:00, 2019-02-14, 00:00, xxxxx  hat Geburtstag
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-14, 00:00, 2019-02-15, 00:00, xxxx  hat Geburtstag
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-14, 00:00, 2019-02-15, 00:00, Valentinstag
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-14, 17:30, 2019-02-14, 19:00, Dr. xxxxx 17:30
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-15, 00:00, 2019-02-16, 00:00, Hausmuell
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-16, 09:00, 2019-02-16, 10:00, Schalter_1
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-16, 11:30, 2019-02-16, 12:30, Test
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-18, 00:00, 2019-02-19, 00:00, gelber Sack
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-18, 00:00, 2019-02-19, 00:00, Kalenderwoche 8 2019
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-20, 00:00, 2019-02-21, 00:00, xxxxxxxx hat einen Jahrestag
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-23, 09:00, 2019-02-23, 10:00, Schalter_1
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-23, 11:30, 2019-02-23, 12:30, Test
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-25, 00:00, 2019-02-26, 00:00, Kalenderwoche 9 2019
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-26, 00:00, 2019-02-27, 00:00, Papier
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-27, 08:30, 2019-02-27, 10:30, xxxxx
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-02-28, 00:00, 2019-03-01, 00:00, xxxxx hat einen Jahrestag
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-03-01, 00:00, 2019-03-02, 00:00, Hausmuell
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-03-01, 00:00, 2019-03-02, 00:00, St. David's Day
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-03-02, 09:00, 2019-03-02, 10:00, Schalter_1
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-03-02, 11:30, 2019-03-02, 12:30, Test
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-03-04, 00:00, 2019-03-05, 00:00, gelber Sack
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-03-04, 00:00, 2019-03-05, 00:00, xxxxxx hat Geburtstag
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-03-04, 00:00, 2019-03-05, 00:00, Rosenmontag
2019.02.03 10:01:14 3: Kalender: something went wrong (invalid gcalcli output) - 2019-03-04, 00:00, 2019-03-05, 00:00, Kalenderwoche 10 2019
2019.02.03 10:01:14 5: Kalender_DoEnd: end running


List vom Device


Internals:
   DEF        10
   FUUID      5c42d293-f33f-1fa2-466e-25f92608b348292b
   NAME       Kalender
   NOTIFYDEV  global
   NR         823
   NTFY_ORDER 50-Kalender
   STATE      <table>

<tr><td><strong><span style="color: #2ECCFA;; text-decoration: underline;;">Termine:</td><td><span style="color: #2ECCFA;;">t: 0 td: 0 tm: 0</tr>

</table>
   TIMEOUT    10
   TYPE       GCALVIEW
   VERSION    1.0.3
   READINGS:
     2019-02-03 10:01:14   c-term          0
     2019-02-03 10:01:14   c-today         0
     2019-02-03 10:01:14   c-tomorrow      0
     2019-02-03 10:01:14   state           t: 0 td: 0 tm: 0
   helper:
     bm:
       GCALVIEW_Get:
         cnt        3
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        03.02. 10:01:13
         max        2.19345092773438e-05
         tot        5.38825988769531e-05
         mAr:
           HASH(0x5634b5a82600)
           Kalender
           ?
       GCALVIEW_Notify:
         cnt        2
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        03.02. 10:03:15
         max        9.05990600585938e-06
         tot        1.71661376953125e-05
         mAr:
           HASH(0x5634b5a82600)
           HASH(0x5634aa3e7b98)
       GCALVIEW_Set:
         cnt        13
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        03.02. 10:01:12
         max        0.0209388732910156
         tot        0.0211296081542969
         mAr:
           HASH(0x5634b5a82600)
           Kalender
           update
Attributes:
   ageSource  location
   alldayText ganztägig
   calendarDays 30
   calendarFilter xxx.xxx@gmail.com,Contacts,Christliche Feiertage,Feiertage in Deutschland
   calendarType standard
   icon       time_calendar@#2ECCFA
   room       06_3_Kalender
   sourceColor xxx.xxxx@gmail.com:#A9E2F3
   stateFormat <table>

<tr><td><strong><span style="color: #2ECCFA;; text-decoration: underline;;">Termine:</td><td><span style="color: #2ECCFA;;">state</tr>

</table>
   updateInterval 3600
   userattr   calendarFilter:multiple-strict,armin.titze@gmail.com,Contacts,Christliche#Feiertage,Feiertage#in#Deutschland,Week#Numbers calendarIncludeStarted:multiple-strict,xxx.xxxx@gmail.com,Contacts,Christliche#Feiertage,Feiertage#in#Deutschland,Week#Numbers
   verbose    5
   weekdayText Montag,Dienstag,Mittwoch,Donnerstag,Freitag, Samstag,Sonntag

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 03 Februar 2019, 13:36:22
Hast du in den letzten Tagen einen Eintrag mit einem oder mehreren Kommas erstellt. Das von mir verwendete Programm setzt das leider nicht vernünftig in der Ausgabe um, und es kann zu Fehlern kommen.
Ich könnte mal versuchen an der Stelle mehr Details auszuspucken, so dass du dann direkt den Kalendereintrag identifizieren könntest.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Sommerfeld am 03 Februar 2019, 14:14:54
Hallo,
ich habe am Kalender keine Änderungen vorgenommen.
Es ist nur eigenartig, dass halt im Log die Termine zu sehen sind,
aber die werden nicht in den Readings übernommen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 04 Februar 2019, 08:03:41
Hallo,

ich bekomme auch seit einer Woche keine Updates mehr. An Änderungen in einem der Kalender kann ich mich nicht erinnern, mag es aber auch nicht ausschließen. Auch habe ich an den Tagen davor kein FHEM-Update gemacht.Aktualisiert habe ich erst am Freitag, um zu schauen, ob es eine neuere Version gibt.

Bei mir im Log sehe ich auch mit Verbose=5 nur folgende Zeile, keine Kalendereinträge:

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

In Zeile 625 wird $startDate gefüllt. Darüber scheint das Modul zu stolpern. Das deutet auf einen unverträglichen Kalendereintrag hin? Wie kann ich den finden?


Internals:
   CHANGED   
   DEF        3600
   FUUID      xxx
   NAME       kalender.neu
   NOTIFYDEV  global
   NR         7422
   NTFY_ORDER 50-kalender.neu
   STATE      Initialized
   TIMEOUT    3600
   TYPE       GCALVIEW
   VERSION    1.0.3
   Helper:
     DBLOG:
       state:
         DbLog:
           TIME       1549263242.26587
           VALUE      update
   helper:
     RUNNING_PID:
       abortFn    GCALVIEW_DoAbort
       arg        kalender.neu
       bc_pid     6709
       finishFn   GCALVIEW_DoEnd
       fn         GCALVIEW_DoRun
       pid        DEAD:6967
       telnet     telnetForBlockingFn_1549179999_127.0.0.1_40584
       terminated 1
       timeout    3600
       abortArg:
   powerMap:
   readingsDesc:
     pM_consumption:
       rtype      w
     pM_energy:
       rtype      whr
Attributes:
   calendarFilter xxx1@gmail.com,xxx2@gmail.com
   calendarType standard
   room       Kalender
   updateInterval 3600
   userattr   calendarFilter:multiple-strict,xxx1@gmail.com,xxx2@gmail.com
calendarIncludeStarted:multiple-strict,xxx1@gmail.com,xxx2@gmail.com


Gruß
Christian
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 04 Februar 2019, 08:55:27
Ich versuche es mir heute Abend mal anzusehen und Debug Meldungen einzubauen falls möglich.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Sommerfeld am 04 Februar 2019, 09:34:07
ZitatHast du in den letzten Tagen einen Eintrag mit einem oder mehreren Kommas erstellt. Das von mir verwendete Programm setzt das leider nicht vernünftig in der Ausgabe um, und es kann zu Fehlern kommen.
Ich könnte mal versuchen an der Stelle mehr Details auszuspucken, so dass du dann direkt den Kalendereintrag identifizieren könntest.

Ich habe den Cache vom Browser gelöscht und den Kalender neu abgerufen.
Nun sind alle Daten wieder in den Readings. Vielen Dank für die Unterstützung.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 04 Februar 2019, 15:00:58
Cache vom Browser? Der hat doch eigentlich nichts mit dem Modul zu tun. Meinst du den Cache von gcalcli?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Sommerfeld am 04 Februar 2019, 15:20:52
Den Cache vom Browser. Den Zusammenhang verstehe ich auch nicht.
Es geht aber wieder  :)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 04 Februar 2019, 15:55:47
Hmm okay. Vielleicht hilft aber tatsächlich den Cache mal im Modul abzuschalten. Dafür gibts das Attribut: cache.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 05 Februar 2019, 08:03:10
Cache=0 hat bei mir nichts gebracht.
Was hat es mit dem startDate (siehe oben) auf sich? Gehe ich richtig in der Annahme, dass das Startdatum eines Kalendereintrags ist? Das dürfte doch niemals leer sein, da jedes Event bei Google ein Datum trägt.

Gruß
Christian
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 05 Februar 2019, 09:02:02
Das war nur eine Testversion für FHEM_starter, der sich aber nicht mehr gemeldet hat. Ich habe gestern nicht mehr geschafft es mir anzusehen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 05 Februar 2019, 22:38:28
Zitat von: cbl am 05 Februar 2019, 08:03:10
Cache=0 hat bei mir nichts gebracht.
Was hat es mit dem startDate (siehe oben) auf sich? Gehe ich richtig in der Annahme, dass das Startdatum eines Kalendereintrags ist? Das dürfte doch niemals leer sein, da jedes Event bei Google ein Datum trägt.

Gruß
Christian

Das ist komisch. Mir ist unklar, weshalb du einen Eintrag ohne Startdate hast. Das dürfte es eigentlich nicht geben. Kannst du mal versuchen folgende Zeile vor der startDate Zuweisung einzufügen?

Log3 $name, 3, $name.': '.join(', ', @$_);

Das sollte dir im Log jeden Eintrag ausspucken und irgendwann müsste wieder der Fehler kommen. Der Eintrag direkt davor sollte der fehlerhafte Kalendereintrag sein.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 06 Februar 2019, 16:38:14
Der Fehler hat nicht mit einem konkreten Kalendereintrag zu tun.Er tritt auch bei meinem Abfallkalender auf.
Auch die von dir genannte Logzeile erzeugt den Fehler. Es ist also nicht ein einzelner fehlerhafte Eintrag das Problem.

Damit habe ich weitergeschaut:
Das Problem war der Verlust der Google-Anmeldung für den User FHEM. Wodurch die verloren gegangen ist, kann ich nicht nachvollziehen. Nachdem ich aber
in der Shell mit gcalcli eine neue Anmeldung durchgeführt habe, ruft das Modul auch wieder fehlerfrei Kalenderereignisse ab.

Nun bleibt die Frage, wodurch die Anmeldung verloren gegangen ist und ob man dem Modul beibringen könnte, in so einem Fall einen passenden Status zu liefern.

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 06 Februar 2019, 16:48:18
Hmm das ist interessant. Ich habe sowas leider noch nie gehabt, deshalb fällt es mir schwer das nachzuvollziehen. Bei Zugriff auf gcalcli speichere ich aber eigentlich die Fehlermeldungen im Logfile (soweit ich mich aktuell erinnere). Wenn man da nichts gesehen hat, dann kann ich eigentlich so gut wie nichts machen.

Ich kann es aber mal als mögliche Fehlerursache im ersten Beitrag aufnehmen. Dann hat man es zumindest mal vor Augen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 05 März 2019, 19:43:51
Hallo,

ich habe seit etwa vier Tagen ein Problem mit GCALVIEW. Bis gestern habe ich weder an FHEM (Update gestern gemacht, davor mindestens zwei Wochen kein Update) noch am Kalender selbst etwas verändert.

Das Log verrät mir:
2019.03.04 19:13:15 1 : ERROR evaluating {GCALVIEW_DoEnd('kalender.abfall||')}: Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 625.

Einen leeren Eintrag sehe ich im Kalender nicht.
In der Shel kann ich mir mit "gcalcli list" eine aktuelle Liste der Kalender ausgeben lassen.

Worüber stolpert das Modul hier?

Gruß
Christian
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 07 März 2019, 07:00:52
Hallo,

ich bin etwas weiter in der Analyse. Ursache für das Hängenbleiben ist offenbar der vom Modul ausgeführte Python-Befehl
phyton /usr/bin/gcalcli agenda 03/07/2019 04/21/2019 --calendar Kalendername mit bösen Zeichen ---detail_all -tsv.

Davor sehe ich im Journal noch den Aufruf
sh -c gcalcli agenda 03/07/2019 04/21/2019 --calendar "Kalendername mit bösen Zeichen" ---detail_all -tsv.
Da stehen noch Anführungszeichen um den Kalendernamen.

Rufe ich den Phyton-Befehl mit ergänzten Anführungszeichen auf, funktoniert es in der Shell.

Gruß
Christian
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 07 März 2019, 09:10:11
Ich habe auch den gleichen Fehler, auch etwa seit 4 Tagen. Ich dachte erst dass es vielleicht an der Internet Zwangstrennung liegt, bis ich heute morgen deine (Christan) Einträge gelesen habe . . . . 
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 08 März 2019, 08:36:27
Ich habe nun die oauth- und cache-Dateien gelöscht und die Anmeldung erneuert ... ohne Erfolg.
Auch eine Umbenennung des Kalenders auf eine Zeichenkette ohne Leerzeichen und Umlaut hat nichts gebracht.

Gibt es noch weitere Ideen?

Wo gehen die Anführungszeichen verloren? Im Modul werden sie beim Zusammenbau des Aufrufs offenbar richtig ergänzt.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 09 März 2019, 00:27:28
@cbl: Der Fehler an der Stelle bedeutet, das keine Daten abgeholt wurden. Das du das Kommando in der Konsole absetzen kannst, hat noch nichts damit zu tun, dass es auch mit fhem geht. Das ist in der Regel ein anderer User.

{qx(gcalcli list);}

Was passiert denn, wenn du das in FHEM abschickst?

@inoma: Hast du irgendwelche Details?

Ansonsten kann ich weitere Debugausgaben einbauen, allerdings bin ich ziemlich sicher, das einfach keine Daten von Google kommen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 09 März 2019, 09:38:30
{qx /gcalcli list/} liefert mir die aktuelle Liste der Kalender:
 Access  Title
 ------  -----
 owner Kalender mit bösen Zeichen
[0m reader  Feiertage in Deutschland
 reader  Week Numbers



Ich hatte den im Beitrag oben genannten Shellbefehl mit dem FHEM-user ausgeführt.

Gruß
Christian
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 09 März 2019, 14:54:52
Hallo mumpitzstuff,
ja ich denke auch das keine Daten von Google kamen, bis jetzt ist der Fehler bei mir noch nicht wieder aufgetreten, nur Anfangs der Woche bis Donnerstag. Vielleicht hat sich das jetzt wieder erledigt, ich beobachte weiter! Danke!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 09 März 2019, 17:18:58
Zitat von: cbl am 09 März 2019, 09:38:30
{qx /gcalcli list/} liefert mir die aktuelle Liste der Kalender:
 Access  Title
 ------  -----
 owner Kalender mit bösen Zeichen
[0m reader  Feiertage in Deutschland
 reader  Week Numbers



Ich hatte den im Beitrag oben genannten Shellbefehl mit dem FHEM-user ausgeführt.

Gruß
Christian

Hmm komisch. Deine Vermutung ist jetzt, das es an fehlenden Anführungszeichen liegt? Den Kalender hattest du doch aber umbenannt oder? Ich kann mich dunkel erinnern, das man die Anmeldung wiederholen müsste, wenn man einen Kalender hinzufügt oder entfernt. Kannst du bitte mal versuchen die beiden gcalcli Verzeichnisse zu löschen und die Authentifizierung erneut durchzuführen? Da müsste es auch ein Cache Verzeichnis von gcalcli geben, das bitte nicht vergessen zu löschen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 10 März 2019, 11:17:16
Hi Mumpitzstuff,
hier mal mein Log mit dem gleichen Fehler von Christian, eine Zeile vorher sagt die Fehlermeldung aber: "socket.error: [Errno 101] Network is unreachable",
also scheint es wirklich so zu sein das google keine Daten liefert.

03.10 00:01:20 3: GoogleCalendar: gcalcli agenda 03/10/2019 03/18/2019  --calendar "xxx.yyyyyy@gmail.com" --calendar "Geburtstage" --calendar "Reminders" --detail_all  --tsv
2019.03.10 00:01:20 3: GoogleCalendar: something went wrong (check your parameters) - Traceback (most recent call last):
  File "/usr/bin/gcalcli", line 2649, in <module>
    BowChickaWowWow()
  File "/usr/bin/gcalcli", line 2495, in BowChickaWowWow
    gcal.AgendaQuery(startText=args[1], endText=args[2])
  File "/usr/bin/gcalcli", line 1732, in AgendaQuery
    eventList = self._SearchForCalEvents(start, end, None)
  File "/usr/bin/gcalcli", line 1637, in _SearchForCalEvents
    events = self._RetryWithBackoff(work)
  File "/usr/bin/gcalcli", line 655, in _RetryWithBackoff
    return method.execute()
  File "/usr/local/lib/python2.7/dist-packages/oauth2client/util.py", line 137, in positional_wrapper
    return wrapped(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/googleapiclient/http.py", line 833, in execute
    method=str(self.method), body=self.body, headers=self.headers)
  File "/usr/lib/python2.7/dist-packages/googleapiclient/http.py", line 160, in _retry_request
    resp, content = http.request(uri, method, *args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/oauth2client/client.py", line 572, in new_request
    self._refresh(request_orig)
  File "/usr/local/lib/python2.7/dist-packages/oauth2client/client.py", line 780, in _refresh
    self._do_refresh_request(http_request)
  File "/usr/local/lib/python2.7/dist-packages/oauth2client/client.py", line 799, in _do_refresh_request
    self.token_uri, method='POST', body=body, headers=headers)
  File "/usr/lib/python2.7/dist-packages/httplib2/__init__.py", line 1608, in request
    (response, content) = self._request(conn, authority, uri, request_uri, method, body, headers, redirections, cachekey)
  File "/usr/lib/python2.7/dist-packages/httplib2/__init__.py", line 1350, in _request
    (response, content) = self._conn_request(conn, request_uri, method, body, headers)
  File "/usr/lib/python2.7/dist-packages/httplib2/__init__.py", line 1271, in _conn_request
    conn.connect()
  File "/usr/lib/python2.7/dist-packages/httplib2/__init__.py", line 1074, in connect
    raise socket.error, msg
socket.error: [Errno 101] Network is unreachable

2019.03.10 00:01:20 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 625.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 10 März 2019, 11:19:07
Zitat von: inoma am 10 März 2019, 11:17:16
Hi Mumpitzstuff,
hier mal mein Log mit dem gleichen Fehler von Christian in der letzten Zeile, eine Zeile vorher sagt die Fehlermeldung aber: "socket.error: [Errno 101] Network is unreachable", also scheint es wirklich so zu sein das google keine Daten liefert.
Vielleicht kann man das ja abfangen wenn google keine Daten liefert.

03.10 00:01:20 3: GoogleCalendar: gcalcli agenda 03/10/2019 03/18/2019  --calendar "xxx.yyyyyy@gmail.com" --calendar "Geburtstage" --calendar "Reminders" --detail_all  --tsv
2019.03.10 00:01:20 3: GoogleCalendar: something went wrong (check your parameters) - Traceback (most recent call last):
  File "/usr/bin/gcalcli", line 2649, in <module>
    BowChickaWowWow()
  File "/usr/bin/gcalcli", line 2495, in BowChickaWowWow
    gcal.AgendaQuery(startText=args[1], endText=args[2])
  File "/usr/bin/gcalcli", line 1732, in AgendaQuery
    eventList = self._SearchForCalEvents(start, end, None)
  File "/usr/bin/gcalcli", line 1637, in _SearchForCalEvents
    events = self._RetryWithBackoff(work)
  File "/usr/bin/gcalcli", line 655, in _RetryWithBackoff
    return method.execute()
  File "/usr/local/lib/python2.7/dist-packages/oauth2client/util.py", line 137, in positional_wrapper
    return wrapped(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/googleapiclient/http.py", line 833, in execute
    method=str(self.method), body=self.body, headers=self.headers)
  File "/usr/lib/python2.7/dist-packages/googleapiclient/http.py", line 160, in _retry_request
    resp, content = http.request(uri, method, *args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/oauth2client/client.py", line 572, in new_request
    self._refresh(request_orig)
  File "/usr/local/lib/python2.7/dist-packages/oauth2client/client.py", line 780, in _refresh
    self._do_refresh_request(http_request)
  File "/usr/local/lib/python2.7/dist-packages/oauth2client/client.py", line 799, in _do_refresh_request
    self.token_uri, method='POST', body=body, headers=headers)
  File "/usr/lib/python2.7/dist-packages/httplib2/__init__.py", line 1608, in request
    (response, content) = self._request(conn, authority, uri, request_uri, method, body, headers, redirections, cachekey)
  File "/usr/lib/python2.7/dist-packages/httplib2/__init__.py", line 1350, in _request
    (response, content) = self._conn_request(conn, request_uri, method, body, headers)
  File "/usr/lib/python2.7/dist-packages/httplib2/__init__.py", line 1271, in _conn_request
    conn.connect()
  File "/usr/lib/python2.7/dist-packages/httplib2/__init__.py", line 1074, in connect
    raise socket.error, msg
socket.error: [Errno 101] Network is unreachable

2019.03.10 00:01:20 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 625.

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 15 März 2019, 17:14:54
Hallo,
Ich bin noch nicht weitergekommen. Habt ihr noch weitere Ideen?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 15 März 2019, 22:07:14
Authentifizierung (.gcalcli_oauth) + Cache Verzeichnis (.gcalcli_cache) hast du gelöscht gehabt?

Danach sollte unter FHEM nichts mehr angezeigt werden:

{qx(gcalcli list)}

Jetzt noch mal die Authentifizierung durchführen.

BTW steht in dem Kalender auch was drin in dem Zeitraum den du dir anzeigen lässt? Kannst du mir bitte mal ein list vom Kalender Device zukommen lassen?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 16 März 2019, 10:21:45
Ja, ich habe beide (Auth+cache) gelöscht. Im Kalender steht auch etwas drin.

Ich habe auch gcalcli aus dem GIT auf die aktuellste Version 4.0.4 aktualisiert. Vorher habe ich das Debian-Paket genutzt.
Dann habe ich eine neue Authentifizierung bei Google durchgeführt.
Im Kalender-Device sehe ich auch korrekt die Kalender wie sie aktuell bei Google heißen.

Führe ich dann im Kalender-Device ein Update durch, bekomme ich weiterhin
2019.03.16 10:16:42 1 : ERROR evaluating {GCALVIEW_DoEnd('kalender.abfall||')}: Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 625.

Hier ist das List:
Internals:
   DEF        36800
   FUUID      ...
   NAME       kalender.abfall
   NOTIFYDEV  global
   NR         367
   NTFY_ORDER 50-kalender.abfall
   STATE      Initialized
   TIMEOUT    36800
   TYPE       GCALVIEW
   VERSION    1.0.3
   helper:
     RUNNING_PID:
       abortFn    GCALVIEW_DoAbort
       arg        kalender.abfall
       bc_pid     40698
       finishFn   GCALVIEW_DoEnd
       fn         GCALVIEW_DoRun
       pid        DEAD:28162
       telnet     telnetForBlockingFn_1552066782_127.0.0.1_39782
       terminated 1
       timeout    36800
       abortArg:
Attributes:
   DbLogExclude .*
   DbLogInclude Gelber_Sack_date,Blaue_Tonne_days,BioTonne_date,Restmuell_date
   calendarDays 45
   calendarFilter Abfallkalender_J
   calendarType waste
   disable    0
   event-on-change-reading BioTonne_days,Blaue_Tonne_days,Gelber_Sack_days,Restmuell_days
   group      Kalender
   room       Kalender
   updateInterval 3600
   userattr   calendarFilter:multiple-strict, ...


Gruß
Christian
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 16 März 2019, 11:35:45
Mit Version 4.0.4 wirst du Probleme bekommen. In dem 4er Zweig haben sie anscheinend einiges an den Optionen geändert. Diese heißen anders bzw. einige gibt es gar nicht mehr. Versuch mal unbedingt die 3.4.0 zu verwenden, diese habe ich ebenfalls. Ich muss mal gucken was ich da machen kann, um auch die 4er Version zu unterstützen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 16 März 2019, 14:55:07
Mit Version 3.4.0 aus dem GIT bin ich jetzt weitergekommen und bekomme auch wieder Termine abgerufen. Danke für den Hinweis. Vielleicht kannst du den in den ersten Beitrag aufnehmen. Da steht bislang "mindestens Version 3.4.0". Das sollte "genau Version 3.4.0" heißen.

Danke für die Unterstützung.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 18 März 2019, 02:47:28
Ich habe im ersten Beitrag die Installation wesentlich vereinfacht. Außerdem habe ich jetzt bei mir die Version 4.0.4 installiert und meines Erachtens zum laufen gebracht. Anbei eine Version, welche ich bisher NUR mit gcalcli 4.0.4 getestet habe.

Bitte achtet darauf, das ihr gcalcli für Python3 und nicht für Python2 installiert! Unter Python2 werdet ihr Probleme mit Umlauten oder anderen Sonderzeichen in Kalendernamen bekommen!

Hier sind grob die Schritte dazu:

sudo apt install python-pip3
git clone https://github.com/insanum/gcalcli.git
cd gcalcli
python3 setup.py install


Falls gcalcli bereits über apt-get installiert wurde, bekommt man eine Fehlermeldung und muss dann zuerst folgendes machen:
sudo apt remove gcalcli

1-2 Module musste ich manuell upgraden mit:
pip3 install <modul> --upgrade

Kann jemand bitte verifizieren, ob das auch bei ihm klappt?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 25 März 2019, 02:10:43
Ich habe jetzt das Update hochgeladen, konnte allerdings nicht mehr testen, ob es noch mit der Version 3.4.0 kompatibel ist. Ich kannte zwar die alte Version wieder installieren, aber keine Authentifizierung mehr durchführen. Ich bin deshalb wieder auf die 4.0.4 gegangen. Wenn jemand Hilfe bei der Umstellung benötigt, dann meldt euch bitte.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 25 März 2019, 20:21:09
Hallo mumpitzstuff,
nein ist nicht mit Version 3.4.0 kompatibel, es kommt eine FehlermeldungGoogleCalendar: export PYTHONIOENCODING=utf8 && gcalcli v3.4.0 (...)
Ich muss dann auch wohl mal den update machen. . . .

Danke für die Modulpflege, das ist eines meiner liebsten!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 25 März 2019, 21:11:12
Könntest du versuchen an den 2-3 Stellen im Modul das hier rauszuwerfen?

export PYTHONIOENCODING=utf8 &&

Also alles was in dem Befehlsaufruf vor gcalcli steht.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 25 März 2019, 21:37:42
vorher:2019.03.25 19:24:48 3: Datum: Event: UpdateCal UpdateCal
2019.03.25 19:24:49 3: GoogleCalendar: export PYTHONIOENCODING=utf8 && gcalcli --version
2019.03.25 19:24:49 3: GoogleCalendar: something went wrong (check your parameters) - gcalcli v3.4.0 (Eric Davis, Brian Hartvigsen)

nachher2019.03.25 21:32:11 3: Datum: Event: UpdateCal UpdateCal
2019.03.25 21:32:12 3: GoogleCalendar: gcalcli --version
2019.03.25 21:32:12 3: GoogleCalendar: something went wrong (check your parameters) - gcalcli v3.4.0 (Eric Davis, Brian Hartvigsen)


Ich habe mal testweise einen neuen Kalendareintrag im Google Kalender gemacht, den hat er sich fehlerfrei geholt, trotz der 'Fehlermeldung'.

PS: Habs gerade nochmal rückgängig gemacht, also die "export PYTHONIOENCODING=utf8 &&" wieder eingefügt, auch dann holt er sich einen neuen Kalendereintrag, scheint also trotz Fehlermeldung auch mt der neuen Version zu funktionieren. Anscheinend ist es dann doch mit der Version 3.4.0 kompatibel?

Was kann ich noch testen?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 26 März 2019, 00:45:37
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!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 26 März 2019, 20:23:34
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 :-(

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 27 März 2019, 02:19:11
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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 27 März 2019, 11:30:03
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!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 27 März 2019, 12:53:19
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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 27 März 2019, 14:35:50
Cached key Error.  Löschen mal die beiden Verzeichnisse in /opt/fhem die mit .gcalcli anfangen und mache die Authentifizierung neu.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 27 März 2019, 21:44:18
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.

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 27 März 2019, 21:57:05
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!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 27 März 2019, 22:51:31
Oh okay. Wieder was gelernt.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: trinitywhm am 10 Mai 2019, 13:06:28
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?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 10 Mai 2019, 13:19:02
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 (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.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: trinitywhm am 10 Mai 2019, 18:56:21
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?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 11 Mai 2019, 09:37:23
Hmm Mist. Da ist mir was durch die Lappen gegangen bei der Umstellung auf die neue Version. Ich behebe das heute Abend.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: trinitywhm am 11 Mai 2019, 12:45:34
Oh super dann liegts ja nicht an mir.  ;)

Vielen Dank, bis dann
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 11 Mai 2019, 22:17:13
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
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: trinitywhm am 11 Mai 2019, 22:43:02
Perfekt, das funktioniert.
Vielen Dank
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 11 Mai 2019, 22:46:15
Ich habe den Fix dann auch gleich eingecheckt. Danke fürs probieren!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: trinitywhm am 11 Mai 2019, 23:08:11
Bei einigen Kalendern Devices klappt das auch wunderbar. Beim manchen Kalendern kommt folgender Fehler im Log:
2019.05.11 23:07:03 3: CAL_Vera: export PYTHONIOENCODING=utf8 && gcalcli agenda   --calendar "Vera" --details calendar --details url --details location --details description --details email  --tsv
2019.05.11 23:07:03 3: CAL_Vera: 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 start: invalid get_time_from_str value: 'Vera'

2019.05.11 23:07:03 1: ERROR evaluating {GCALVIEW_DoEnd('CAL_Vera||')}: Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 648.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 12 Mai 2019, 00:24:34
Hmm komisch. Setz mal bitte das Attribut calendarDays auf z.b. 30. Eigentlich sollte der Aufruf aber auch ohne das setzen des Attributes gehen, so hatte ich das damals jedenfalls getestet. 5 Tage war glaube ich der default, den gcalcli verwendet hatte. Da muss ich wohl zur Sicherheit selbst einen default Wert setzen.

Ich habe eine Änderung eingecheckt, bei dem ein default von 14 Tagen gesetzt wird, wenn das Attribut nicht vorhanden ist.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: trinitywhm am 12 Mai 2019, 07:14:18
Stimmt wenn man das Attribut setzt, funktioniert es. Die Kalender bei denen es schon vorher funktionierte, waren die Attribute schon gesetzt.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: majestro84 am 17 Mai 2019, 09:11:32
Hallo

Nach dem letzten Update funktioniert der Kalender nicht mehr bei mir bekomme folgende Fehlermeldung.
Kalender: export PYTHONIOENCODING=utf8 && gcalcli agenda 05/17/2019 06/17/2019 --config-folder /opt/fhem --calendar "...........@gmail.com" --calendar "Familie" --calendar "Contacts" --details calendar --details longurl --details location --details description --details email  --tsv
2019.05.17 08:42:33 3: Kalender: something went wrong (check your parameters) - /usr/local/lib/python3.5/dist-packages/oauth2client-4.1.3-py3.5.egg/oauth2client/_helpers.py:255: UserWarning: Cannot access /opt/fhem/oauth: No such file or directory

Failed to start a local webserver listening on either port 8080
or port 8090. 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/.................................

Enter verification code: 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 204, in _get_cached
  File "/usr/local/lib/python3.5/dist-packages/gcalcli-4.0.4-py3.5.egg/gcalcli/gcal.py", line 159, in get_cal_service
  File "/usr/local/lib/python3.5/dist-packages/gcalcli-4.0.4-py3.5.egg/gcalcli/gcal.py", line 148, in _google_auth
  File "/usr/local/lib/python3.5/dist-packages/oauth2client-4.1.3-py3.5.egg/oauth2client/_helpers.py", line 133, in positional_wrapper
  File "/usr/local/lib/python3.5/dist-packages/oauth2client-4.1.3-py3.5.egg/oauth2client/tools.py", line 240, in run_flow
EOFError: EOF when reading a line

2019.05.17 08:42:33 1: ERROR evaluating {GCALVIEW_DoEnd('Kalender||')}: Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 662.


Es scheint so zu sein das im falschen Verzeichnis gesucht wird /opt/fhem/oauth.
Wenn ich das Attribut configfolder setze in FHEM mit att Kalender configfolder /opt/fhem bekomme ich den Fehler immer noch.

Mit dem Befehl {qx(gcalcli list);;}  bekomme ich alle Kalender angezeigt.
Mit {qx(gcalcli list --configFolder /opt/fhem);;} nicht.

Mit der Version 1.0.5 von dem Modul läuft der Kalender, allerdings nur wenn ich das Attribut configfolder wieder lösche.

Über eine kleine Hilfestellung wäre ich sehr dankbar.
Gruß Alex
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 17 Mai 2019, 10:08:26
Hallo,

an der Stelle habe ich seit Ewigkeiten nichts gemacht eigentlich.

1.) Welche gcalcli Version hast du?
2.) Welche GCALVIEW Version hattest du vor dem Update und welche jetzt?
3.) Hattest du den configFolder schon immer gesetzt und musstest ihn jetzt löschen, damit es weiterhin funktioniert oder hast du das erst jetzt mal ausprobiert?
4.) Warum musst du das Attribut löschen, wenn du eine alte Version verwendest? Wenn es vorher damit funktioniert hat, dann sollte es doch jetzt ebenfalls damit funktionieren. Was hat sich ansonsten geändert?
5.) Befinden sich in dem besagten Verzeichnis die entsprechenden .gcalcli... Verzeichnisse und sind die Rechte richtig gesetzt?

Wenn aber alles ohne das Attribut funktioniert, dann solltest du das so lassen. Das Attribut gibt es eigentlich nur zur Sicherheit, falls man manuell eingreifen muss.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: majestro84 am 17 Mai 2019, 10:44:55
1.) Welche gcalcli Version hast du? 1.0.5
2.) Welche GCALVIEW Version hattest du vor dem Update und welche jetzt? Vordem Update 1.0.5 nach dem Update die 1.0.7
3.) Hattest du den configFolder schon immer gesetzt und musstest ihn jetzt löschen, damit es weiterhin funktioniert oder hast du das erst jetzt mal ausprobiert? Nein hatte den mit der neuen Version gesetzt um zu gucken ob es da dran liegt
4.) Warum musst du das Attribut löschen, wenn du eine alte Version verwendest? Wenn es vorher damit funktioniert hat, dann sollte es doch jetzt ebenfalls damit funktionieren. Was hat sich ansonsten geändert? musste den Ordner löschen wenn ich die 1.0.5 verwende. Sonst hat sich eigentlich nichts geändert.
5.) Befinden sich in dem besagten Verzeichnis die entsprechenden .gcalcli... Verzeichnisse und sind die Rechte richtig gesetzt? Nein das Verzeichnis /opt/fhem/oauth existiert nicht die .gcalcli Dateien liegen im Verzeichnis /opt/fhem mit den entsprechenden Rechten

Frag mich jetzt nicht wo dran es lag, habe die 57_GCALVIEW jetzt noch einmal aktualisiert nach dem ich ja wieder auf der Version 1.0.5 war und nun geht wieder alles.
Danke für deine schnelle Antwort.
Gruß Alex
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 03 Juni 2019, 22:40:51
Wie ich gerade feststellte, bekomme ich seit einiger Zeit keine Updates mehr zu diesem Modul:

gcalview
http://raw.githubusercontent.com/mumpitzstuff/fhem-GCALVIEW/master/controls_gcalview.txt: Too many redirects


Was will mir dieser Fehler sagen?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 03 Juni 2019, 23:50:31
Was passiert denn wenn du die Adresse im Browser eingibst?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 01 Juli 2019, 10:59:21
Der Browser sowie (lokal auf dem FHEM-Raspi wget) liefern mir

DIR FHEM
UPD 2019-05-12_00:26:00 36775 FHEM/57_GCALVIEW.pm
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 01 Juli 2019, 12:23:57
Ich glaube ehrlich gesagt nicht, dass das was mit dem Modul zu tun hat oder der Ablage auf github. Ich schau heute Abend aber noch mal nach ob es bei mir geht. Ansonsten bleibt dir leider nur der Weg, das Modul manuell zu updaten.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: majestro84 am 15 Juli 2019, 13:19:40
Zitat von: mumpitzstuff am 11 Mai 2019, 22:17:13
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

Hallo
Ich bin gerade dabei mein FHEM in einen Docker Container zupacken.
Dabei habe ich nach der Konfiguration von gcalcli im FHEM bei meine vorhanden Kalendern folgende Fehlermeldung bekommen.
2019.07.15 12:35:25 3: Geburtstage: export PYTHONIOENCODING=utf8 && gcalcli agenda 07/15/2019 07/14/2020  --calendar "Geburtstage" --details calendar --details longurl --details location --details description --details email  --tsv
2019.07.15 12:35:25 3: 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.07.15 12:35:25 1: ERROR evaluating {GCALVIEW_DoEnd('Geburtstage||')}: Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 662.


Nachdem ich in der 57_GCALVIEW die Zeilen 393 und 404 von --details longurl in --details url geändert haben läuft es wieder.

System ist offizielles FEHM Docker Image mit zusätzlich installierten gcalcli gcalcli v4.0.4 (Eric Davis, Brian Hartvigsen, Joshua Crowgey) und benötigten Pakete. Das FHEM Image ist Debian Buster.

Gruß Alex
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 15 Juli 2019, 14:40:21
Ich habe auch 4.0.4 installiert und da kommt dieser Fehler nicht. In der API hatten die aber einen Bug drin den ich reportet habe. Da haben sie erwähnt, das aus longurl url werden soll. Allerdings dachte ich, dass sie dann auch die Version irgendwie anheben würden. Das ist irgendwie ziemlicher Mist. Jetzt gibt es anscheind 2 4.0.4 Versionen mit und ohne longurl.

Habe eben noch mal nachgesehen ich habe 4.0.4 und unterstützt wird url, longurl und shorturl. Leider gibt url in dieser Version Bullshit aus und ich musste deshalb auf longurl gehen. Vielleicht gehe ich jetzt wieder zurück auf url und falls jemand eine zwischenversion verwendet, dann muss derjenige ein update machen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: der Bernhard am 16 Juli 2019, 10:50:35
Wow - hab mich tagelang blöd gesucht woran dieser Fehler liegt...
Ich kann bestätigen dass die Lösung von Alex hinhaut um den line 662 Fehler wegzubekommen.

Habe allerdings folgende Version

.../fhem/FHEM$ gcalcli --version                                                                                                                                                       
gcalcli v4.1.1 (Eric Davis, Brian Hartvigsen, Joshua Crowgey)   

1000 Dank dafür.
LG Bernhard  ;D

Zitat

... Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 662.


Nachdem ich in der 57_GCALVIEW die Zeilen 393 und 404 von --details longurl in --details url geändert haben läuft es wieder.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Moonlightkid am 01 September 2019, 14:38:22
Hallo zusammen,

ich hab diesen Beitrag gefunden, da ich FTUI mit einem Abfallkalender füttern möchte.
Was ich bereits gebastelt habe klappt und das sogar als Linux-Noob  ;D ;D ;D

Bei der Installation auf meinem zuvor aktualisierten Raspi3 mit laufendem FHEM habe ich wie in der Anleitung
erst die Version gecheckt (gcalcli v3.4.0 (Eric Davis, Brian Hartvigsen)
) und danach sudo -u fhem gcalcli --noauth_local_webserver list
eingegeben.
Mein Raspi antwortet mir mit
Unknown command line flag 'noauth_local_webserver'

Da es also erst einmal nicht weitergeht hoffe ich, dass sich jemand bei Euch auskennt und mir helfen kann  :-[


Grüßle!!!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 01 September 2019, 21:52:40
sudo -u fhem gcalcli list --noauth_local_webserver

Geht vielleicht das?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Moonlightkid am 01 September 2019, 23:30:02
Zitat von: mumpitzstuff am 01 September 2019, 21:52:40
sudo -u fhem gcalcli list --noauth_local_webserver

Geht vielleicht das?

Hallo mumpitzstuff - ganz lieben Dank für Deine Reaktion.

Eben hab ich es noch gelesen und gleich noch ausprobiert. Die Antwort vom Raspi ist:
option -n not recognized

Ich hab ganz sicher EXAKT den Code verwendet. Nur woher jetzt die Fehlermeldung kommt, dass -n nicht bekannt wäre? Ich hab kein "n" gesehen  ::)

Die Termine hab ich alle im Google-Kalender hinterlegen können. Alleine, dass ein "PC" benötigt wird, mein Raspi aber nicht als PC (an)erkannt wird - ich bin ja froh, dass ich noch so altmodisch bin  :D


Grüßle und gute Nacht für heute!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 04 September 2019, 19:56:38
Ich bin erst in ein paar Tagen wieder aus dem Urlaub zurück, dann kann ich noch mal schauen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Moonlightkid am 04 September 2019, 22:03:14
Keinen Stress [emoji16] ich bin gerade dabei zu lernen wie ich meine Sonoff-Devices flashe. Einen Versuch ohne Fehlermeldung gab es sogar schon... hab aber erstmal 2 Basic gekauft die schon geflasht sind, damit ich die originalen austauschen kann, wenn die anderen funktionieren. Sonst funktioniert gar nix mehr.
Ach ja, hatte ich gestern... FHEM 100% CPU- Auslastung auf meinem Raspi. Erstmal mosquitto deinstalliert und MQTT2_Server in Fhem nach Anleitung definiert usw... ohne autocreate hätte ich es nicht geschafft [emoji41] bin froh die Chinacloud verlassen zu können

Gesendet von meinem SM-G930F mit Tapatalk

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 13 September 2019, 12:23:29
Kannst du vielleicht die Version 3.4.0 durch eine neuere Version ersetzen, bevor wir etwas anderes probieren? Dazu musst du folgendes machen:

sudo apt remove gcalcli

Danach solltest du mit pip eine neue Version installieren können, also z.b. so:

sudo pip3 install gcalcli

Wenn das klappt und alles installiert ist, versuch mal ob du die Kalender von der Linux Shell aus sehen kannst. Dazu musst du hier ebenfalls diese Authentifizierung durchführen und kannst mit gcalcli list die Kalender sehen. Wenn das geht, dann Versuch die Prozedur für fhem bitte noch einmal. Klappt das auch nicht, dann musst du kurz die Shell für den fhem User aktivieren und das über die fhem Shell machen. Das erkläre ich dann dir dann aber noch mal. Vielleicht klappt's ja schon nach dem Update.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Moonlightkid am 13 September 2019, 18:21:49
Hallo Mumpitzstuff  :)

Die Installation hat funktioniert - ich hab auch mit "update" und "upgrade" alles aktualisiert.

Wenn ich die Version gemäß Anleitung ab Punkt 2 prüfen möchte
gcalcli --version

dann erhalte ich das Ergebnis
bash: gcalcli: Kommando nicht gefunden

Ich hab dann noch versucht weiterzumachen mit
sudo -u fhem gcalcli --noauth_local_webserver list

ob ich zumindest nach der Neuinstallation hier weiterkomme, erhalte aber leider
sudo: gcalcli: Befehl nicht gefunden

Schade, aber ich hab es versucht  ::)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 14 September 2019, 00:56:25
Kannst du mir den Output der Installation zeigen? Irgendwas muss ja schief gelaufen sein.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 14 September 2019, 01:02:00
Ansonsten schau mal auf Seite 22, da sind andere Methoden beschrieben das zu installieren. Man findet dort auch einen Link zur alten Anleitung für die v3.4.0, die man mit apt installieren kann.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Moonlightkid am 14 September 2019, 19:36:42
Zitat von: mumpitzstuff am 14 September 2019, 00:56:25
Kannst du mir den Output der Installation zeigen? Irgendwas muss ja schief gelaufen sein.

Wenn Du mir sagst wie das geht... also nachträglich? Naja, es war nach der Installation viel in roter Schrift. Das ist gut, oder schlecht?  :-\

Okay, ich probiere auch mal das auf Seite 22 - hab gelernt bei Linux VIEL Geduld zu haben  ;D ::)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Moonlightkid am 14 September 2019, 19:46:18
Au weia, jetzt habe ich das mit
sudo pip3 install gcalcli installierte gcalcli
zunächst mit
sudo apt remove gcalcli entfernen wollen - das wurde mit
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
Paket »gcalcli« ist nicht installiert, wird also auch nicht entfernt.
Die folgenden Pakete wurden automatisch installiert und werden nicht mehr benötigt:
  gxmessage python-dateutil python-gflags python-googleapi python-httplib2
  python-oauth2client python-parsedatetime python-pyasn1-modules python-pyicu
  python-rsa python-uritemplate python-vobject
Verwenden Sie »sudo apt autoremove«, um sie zu entfernen.
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
quittiert...
Das ich versuche schlau zu sein  ::) hab ich es mit
sudo pip3 remove gcalcli
versucht. Die Antwort war
ERROR: unknown command "remove"

Jetzt weiß ich nicht, ob das nun installiert ist, oder nicht - zumindest nicht sicher. Ich vermute aber, dass nicht und versuche mein Glück mit der Seite 22  ;)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Moonlightkid am 14 September 2019, 20:08:41
Na, es soll wohl spannend bleiben...
Ich hab mir die Seite 22 durchgelesen und zunächst das empfohlene Upgrade der Setupdateien mit
pip3 install --upgrade setuptools gemacht.

Ergebnis:
Collecting setuptools
  Downloading https://files.pythonhosted.org/packages/b2/86/095d2f7829badc207c893dd4ac767e871f6cd547145df797ea26baea4e2e/setuptools-41.2.0-py2.py3-none-any.whl (576kB)
    100% |████████████████████████████████| 583kB 444kB/s
Installing collected packages: setuptools
Successfully installed setuptools-41.2.0

Dann hab ich als nächsten Schritt
pip3 install --upgrade setuptools
git clone https://github.com/insanum/gcalcli.git
cd gcalcli
python3 setup.py install
gcalcli --version
eingegeben und mit Python hat es dann gehakt.

gcalcli --version hat dann auch gleich eine Fehlermeldung ergeben, dass das Kommando nicht gefunden wurde.

Entsprechend habe ich mit sudo python3 setup.py install dann womöglich einen Erfolg gehabt.
Warning: No long description generated.
/usr/lib/python3/dist-packages/setuptools/dist.py:333: UserWarning: Normalizing 'v4.1.1' to '4.1.1'
  normalized_version,
running install
running bdist_egg
running egg_info
creating gcalcli.egg-info
writing dependency_links to gcalcli.egg-info/dependency_links.txt
writing top-level names to gcalcli.egg-info/top_level.txt
writing entry points to gcalcli.egg-info/entry_points.txt
writing requirements to gcalcli.egg-info/requires.txt
writing gcalcli.egg-info/PKG-INFO
writing manifest file 'gcalcli.egg-info/SOURCES.txt'
reading manifest file 'gcalcli.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'gcalcli.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-armv7l/egg
running install_lib
running build_py
creating build
creating build/lib
creating build/lib/gcalcli
copying gcalcli/argparsers.py -> build/lib/gcalcli
copying gcalcli/validators.py -> build/lib/gcalcli
copying gcalcli/exceptions.py -> build/lib/gcalcli
copying gcalcli/utils.py -> build/lib/gcalcli
copying gcalcli/printer.py -> build/lib/gcalcli
copying gcalcli/deprecations.py -> build/lib/gcalcli
copying gcalcli/__init__.py -> build/lib/gcalcli
copying gcalcli/cli.py -> build/lib/gcalcli
copying gcalcli/gcal.py -> build/lib/gcalcli
creating build/bdist.linux-armv7l
creating build/bdist.linux-armv7l/egg
creating build/bdist.linux-armv7l/egg/gcalcli
copying build/lib/gcalcli/argparsers.py -> build/bdist.linux-armv7l/egg/gcalcli
copying build/lib/gcalcli/validators.py -> build/bdist.linux-armv7l/egg/gcalcli
copying build/lib/gcalcli/exceptions.py -> build/bdist.linux-armv7l/egg/gcalcli
copying build/lib/gcalcli/utils.py -> build/bdist.linux-armv7l/egg/gcalcli
copying build/lib/gcalcli/printer.py -> build/bdist.linux-armv7l/egg/gcalcli
copying build/lib/gcalcli/deprecations.py -> build/bdist.linux-armv7l/egg/gcalcli
copying build/lib/gcalcli/__init__.py -> build/bdist.linux-armv7l/egg/gcalcli
copying build/lib/gcalcli/cli.py -> build/bdist.linux-armv7l/egg/gcalcli
copying build/lib/gcalcli/gcal.py -> build/bdist.linux-armv7l/egg/gcalcli
byte-compiling build/bdist.linux-armv7l/egg/gcalcli/argparsers.py to argparsers.cpython-35.pyc
byte-compiling build/bdist.linux-armv7l/egg/gcalcli/validators.py to validators.cpython-35.pyc
byte-compiling build/bdist.linux-armv7l/egg/gcalcli/exceptions.py to exceptions.cpython-35.pyc
byte-compiling build/bdist.linux-armv7l/egg/gcalcli/utils.py to utils.cpython-35.pyc
byte-compiling build/bdist.linux-armv7l/egg/gcalcli/printer.py to printer.cpython-35.pyc
byte-compiling build/bdist.linux-armv7l/egg/gcalcli/deprecations.py to deprecations.cpython-35.pyc
byte-compiling build/bdist.linux-armv7l/egg/gcalcli/__init__.py to __init__.cpython-35.pyc
byte-compiling build/bdist.linux-armv7l/egg/gcalcli/cli.py to cli.cpython-35.pyc
byte-compiling build/bdist.linux-armv7l/egg/gcalcli/gcal.py to gcal.cpython-35.pyc
installing package data to build/bdist.linux-armv7l/egg
running install_data
creating build/bdist.linux-armv7l/egg/share
creating build/bdist.linux-armv7l/egg/share/man
creating build/bdist.linux-armv7l/egg/share/man/man1
copying docs/man1/gcalcli.1 -> build/bdist.linux-armv7l/egg/share/man/man1
creating build/bdist.linux-armv7l/egg/EGG-INFO
copying gcalcli.egg-info/PKG-INFO -> build/bdist.linux-armv7l/egg/EGG-INFO
copying gcalcli.egg-info/SOURCES.txt -> build/bdist.linux-armv7l/egg/EGG-INFO
copying gcalcli.egg-info/dependency_links.txt -> build/bdist.linux-armv7l/egg/EGG-INFO
copying gcalcli.egg-info/entry_points.txt -> build/bdist.linux-armv7l/egg/EGG-INFO
copying gcalcli.egg-info/requires.txt -> build/bdist.linux-armv7l/egg/EGG-INFO
copying gcalcli.egg-info/top_level.txt -> build/bdist.linux-armv7l/egg/EGG-INFO
zip_safe flag not set; analyzing archive contents...
creating dist
creating 'dist/gcalcli-4.1.1-py3.5.egg' and adding 'build/bdist.linux-armv7l/egg' to it
removing 'build/bdist.linux-armv7l/egg' (and everything under it)
Processing gcalcli-4.1.1-py3.5.egg
Copying gcalcli-4.1.1-py3.5.egg to /usr/local/lib/python3.5/dist-packages
Adding gcalcli 4.1.1 to easy-install.pth file
Installing gcalcli script to /usr/local/bin

Installed /usr/local/lib/python3.5/dist-packages/gcalcli-4.1.1-py3.5.egg
Processing dependencies for gcalcli==4.1.1
Searching for python-dateutil
Reading https://pypi.python.org/simple/python-dateutil/
Downloading https://files.pythonhosted.org/packages/ad/99/5b2e99737edeb28c71bcbec5b5dda19d0d9ef3ca3e92e3e925e7c0bb364c/python-dateutil-2.8.0.tar.gz#sha256=c89805f6f4d64db21ed966fda138f8a5ed7a4fdbc1a8ee329ce1b74e3c74da9e
Best match: python-dateutil 2.8.0
Processing python-dateutil-2.8.0.tar.gz
Writing /tmp/easy_install-pncojbl8/python-dateutil-2.8.0/setup.cfg
Running python-dateutil-2.8.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-pncojbl8/python-dateutil-2.8.0/egg-dist-tmp-selom_8p
/usr/lib/python3.5/distutils/dist.py:261: UserWarning: Unknown distribution option: 'long_description_content_type'
  warnings.warn(msg)
warning: no previously-included files matching '__pycache__' found anywhere in distribution
warning: no previously-included files matching '*.py[co]' found anywhere in distribution
Moving python_dateutil-2.8.0-py3.5.egg to /usr/local/lib/python3.5/dist-packages
Adding python-dateutil 2.8.0 to easy-install.pth file

Installed /usr/local/lib/python3.5/dist-packages/python_dateutil-2.8.0-py3.5.egg
Searching for parsedatetime
Reading https://pypi.python.org/simple/parsedatetime/
Downloading https://files.pythonhosted.org/packages/e3/b3/02385db13f1f25f04ad7895f35e9fe3960a4b9d53112775a6f7d63f264b6/parsedatetime-2.4.tar.gz#sha256=3d817c58fb9570d1eec1dd46fa9448cd644eeed4fb612684b02dfda3a79cb84b
Best match: parsedatetime 2.4
Processing parsedatetime-2.4.tar.gz
Writing /tmp/easy_install-9rcpeo21/parsedatetime-2.4/setup.cfg
Running parsedatetime-2.4/setup.py -q bdist_egg --dist-dir /tmp/easy_install-9rcpeo21/parsedatetime-2.4/egg-dist-tmp-5_bwhd6d
no previously-included directories found matching '.DS_Store'
zip_safe flag not set; analyzing archive contents...
Moving parsedatetime-2.4-py3.5.egg to /usr/local/lib/python3.5/dist-packages
Adding parsedatetime 2.4 to easy-install.pth file

Installed /usr/local/lib/python3.5/dist-packages/parsedatetime-2.4-py3.5.egg
Searching for oauth2client
Reading https://pypi.python.org/simple/oauth2client/
Downloading https://files.pythonhosted.org/packages/a6/7b/17244b1083e8e604bf154cf9b716aecd6388acd656dd01893d0d244c94d9/oauth2client-4.1.3.tar.gz#sha256=d486741e451287f69568a4d26d70d9acd73a2bbfa275746c535b4209891cccc6
Best match: oauth2client 4.1.3
Processing oauth2client-4.1.3.tar.gz
Writing /tmp/easy_install-15m7smot/oauth2client-4.1.3/setup.cfg
Running oauth2client-4.1.3/setup.py -q bdist_egg --dist-dir /tmp/easy_install-15m7smot/oauth2client-4.1.3/egg-dist-tmp-ymp2r2qf
zip_safe flag not set; analyzing archive contents...
Moving oauth2client-4.1.3-py3.5.egg to /usr/local/lib/python3.5/dist-packages
Adding oauth2client 4.1.3 to easy-install.pth file

Installed /usr/local/lib/python3.5/dist-packages/oauth2client-4.1.3-py3.5.egg
Searching for httplib2
Reading https://pypi.python.org/simple/httplib2/
Downloading https://files.pythonhosted.org/packages/78/23/bb9606e87a66fd8c72a2b1a75b049d3859a122bc2648915be845bc44e04f/httplib2-0.13.1.tar.gz#sha256=6901c8c0ffcf721f9ce270ad86da37bc2b4d32b8802d4a9cec38274898a64044
Best match: httplib2 0.13.1
Processing httplib2-0.13.1.tar.gz
Writing /tmp/easy_install-pt5htbxr/httplib2-0.13.1/setup.cfg
Running httplib2-0.13.1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-pt5htbxr/httplib2-0.13.1/egg-dist-tmp-yr5xj0tx
zip_safe flag not set; analyzing archive contents...
httplib2.__pycache__.certs.cpython-35: module references __file__
creating /usr/local/lib/python3.5/dist-packages/httplib2-0.13.1-py3.5.egg
Extracting httplib2-0.13.1-py3.5.egg to /usr/local/lib/python3.5/dist-packages
Adding httplib2 0.13.1 to easy-install.pth file

Installed /usr/local/lib/python3.5/dist-packages/httplib2-0.13.1-py3.5.egg
Searching for google-api-python-client>=1.4
Reading https://pypi.python.org/simple/google-api-python-client/
Downloading https://files.pythonhosted.org/packages/5e/19/9fd511734c0dee8fa3d49f4109c75e7f95d3c31ed76c0e4a93fbba147807/google-api-python-client-1.7.11.tar.gz#sha256=a8a88174f66d92aed7ebbd73744c2c319b4b1ce828e565f9ec721352d2e2fb8c
Best match: google-api-python-client 1.7.11
Processing google-api-python-client-1.7.11.tar.gz
Writing /tmp/easy_install-rlxe98ut/google-api-python-client-1.7.11/setup.cfg
Running google-api-python-client-1.7.11/setup.py -q bdist_egg --dist-dir /tmp/easy_install-rlxe98ut/google-api-python-client-1.7.11/egg-dist-tmp-nilrzw1m
warning: no files found matching '*.json' under directory 'apiclient'
warning: no files found matching 'README'
warning: no files found matching 'FAQ'
warning: no files found matching 'setpath.sh'
warning: no previously-included files matching '*.pyc' found anywhere in distribution
warning: no previously-included files matching '__pycache__' found anywhere in distribution
zip_safe flag not set; analyzing archive contents...
Moving google_api_python_client-1.7.11-py3.5.egg to /usr/local/lib/python3.5/dist-packages
Adding google-api-python-client 1.7.11 to easy-install.pth file

Installed /usr/local/lib/python3.5/dist-packages/google_api_python_client-1.7.11-py3.5.egg
Searching for future
Reading https://pypi.python.org/simple/future/
Downloading https://files.pythonhosted.org/packages/90/52/e20466b85000a181e1e144fd8305caf2cf475e2f9674e797b222f8105f5f/future-0.17.1.tar.gz#sha256=67045236dcfd6816dc439556d009594abf643e5eb48992e36beac09c2ca659b8
Best match: future 0.17.1
Processing future-0.17.1.tar.gz
Writing /tmp/easy_install-u4dmxs86/future-0.17.1/setup.cfg
Running future-0.17.1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-u4dmxs86/future-0.17.1/egg-dist-tmp-ank6w8v8
warning: no files found matching '*.au' under directory 'tests'
warning: no files found matching '*.gif' under directory 'tests'
warning: no files found matching '*.txt' under directory 'tests'
zip_safe flag not set; analyzing archive contents...
future.standard_library.__pycache__.__init__.cpython-35: module references __file__
future.standard_library.__pycache__.__init__.cpython-35: module references __path__
future.backports.test.__pycache__.support.cpython-35: module references __file__
future.backports.test.__pycache__.ssl_servers.cpython-35: module references __file__
future.utils.__pycache__.__init__.cpython-35: module MAY be using inspect.stack
past.builtins.__pycache__.misc.cpython-35: module MAY be using inspect.stack
past.translation.__pycache__.__init__.cpython-35: module references __file__
past.translation.__pycache__.__init__.cpython-35: module references __path__
creating /usr/local/lib/python3.5/dist-packages/future-0.17.1-py3.5.egg
Extracting future-0.17.1-py3.5.egg to /usr/local/lib/python3.5/dist-packages
Adding future 0.17.1 to easy-install.pth file
Installing pasteurize script to /usr/local/bin
Installing futurize script to /usr/local/bin

Installed /usr/local/lib/python3.5/dist-packages/future-0.17.1-py3.5.egg
Searching for rsa>=3.1.4
Reading https://pypi.python.org/simple/rsa/
Downloading https://files.pythonhosted.org/packages/cb/d0/8f99b91432a60ca4b1cd478fd0bdf28c1901c58e3a9f14f4ba3dba86b57f/rsa-4.0.tar.gz#sha256=1a836406405730121ae9823e19c6e806c62bbad73f890574fff50efa4122c487
Best match: rsa 4.0
Processing rsa-4.0.tar.gz
Writing /tmp/easy_install-25ssjsp7/rsa-4.0/setup.cfg
Running rsa-4.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-25ssjsp7/rsa-4.0/egg-dist-tmp-jddx771c
/usr/lib/python3.5/distutils/dist.py:261: UserWarning: Unknown distribution option: 'long_description_content_type'
  warnings.warn(msg)
zip_safe flag not set; analyzing archive contents...
Moving rsa-4.0-py3.5.egg to /usr/local/lib/python3.5/dist-packages
Adding rsa 4.0 to easy-install.pth file
Installing pyrsa-decrypt script to /usr/local/bin
Installing pyrsa-keygen script to /usr/local/bin
Installing pyrsa-priv2pub script to /usr/local/bin
Installing pyrsa-verify script to /usr/local/bin
Installing pyrsa-encrypt script to /usr/local/bin
Installing pyrsa-sign script to /usr/local/bin

Installed /usr/local/lib/python3.5/dist-packages/rsa-4.0-py3.5.egg
Searching for pyasn1-modules>=0.0.5
Reading https://pypi.python.org/simple/pyasn1-modules/
Downloading https://files.pythonhosted.org/packages/0a/b6/972a1560b4adde5754169305530075f610983b367b9bc49b89551810c70f/pyasn1_modules-0.2.6-py3.5.egg#sha256=a480489471e67c579f49057a10879cc9a787b64a84af00ed2ed3f68a652b0197
Best match: pyasn1-modules 0.2.6
Processing pyasn1_modules-0.2.6-py3.5.egg
Moving pyasn1_modules-0.2.6-py3.5.egg to /usr/local/lib/python3.5/dist-packages
Adding pyasn1-modules 0.2.6 to easy-install.pth file

Installed /usr/local/lib/python3.5/dist-packages/pyasn1_modules-0.2.6-py3.5.egg
Searching for uritemplate<4dev,>=3.0.0
Reading https://pypi.python.org/simple/uritemplate/
Downloading https://files.pythonhosted.org/packages/cd/db/f7b98cdc3f81513fb25d3cbe2501d621882ee81150b745cdd1363278c10a/uritemplate-3.0.0.tar.gz#sha256=c02643cebe23fc8adb5e6becffe201185bf06c40bda5c0b4028a93f1527d011d
Best match: uritemplate 3.0.0
Processing uritemplate-3.0.0.tar.gz
Writing /tmp/easy_install-l6e_fs_e/uritemplate-3.0.0/setup.cfg
Running uritemplate-3.0.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-l6e_fs_e/uritemplate-3.0.0/egg-dist-tmp-tm211vqb
no previously-included directories found matching 'docs/_build'
warning: no previously-included files matching '*.py[cdo]' found anywhere in distribution
warning: no previously-included files matching '__pycache__' found anywhere in distribution
warning: no previously-included files matching '*.so' found anywhere in distribution
warning: no previously-included files matching '*.pyd' found anywhere in distribution
zip_safe flag not set; analyzing archive contents...
Moving uritemplate-3.0.0-py3.5.egg to /usr/local/lib/python3.5/dist-packages
Adding uritemplate 3.0.0 to easy-install.pth file

Installed /usr/local/lib/python3.5/dist-packages/uritemplate-3.0.0-py3.5.egg
Searching for google-auth>=1.4.1
Reading https://pypi.python.org/simple/google-auth/
Downloading https://files.pythonhosted.org/packages/ef/77/eb1d3288dbe2ba6f4fe50b9bb41770bac514cd2eb91466b56d44a99e2f8d/google-auth-1.6.3.tar.gz#sha256=0f7c6a64927d34c1a474da92cfc59e552a5d3b940d3266606c6a28b72888b9e4
Best match: google-auth 1.6.3
Processing google-auth-1.6.3.tar.gz
Writing /tmp/easy_install-injphfso/google-auth-1.6.3/setup.cfg
Running google-auth-1.6.3/setup.py -q bdist_egg --dist-dir /tmp/easy_install-injphfso/google-auth-1.6.3/egg-dist-tmp-y1hktc0z
warning: no previously-included files matching '*.pyc' found anywhere in distribution
warning: no previously-included files matching '__pycache__' found anywhere in distribution
zip_safe flag not set; analyzing archive contents...
google.__pycache__.__init__.cpython-35: module references __path__
creating /usr/local/lib/python3.5/dist-packages/google_auth-1.6.3-py3.5.egg
Extracting google_auth-1.6.3-py3.5.egg to /usr/local/lib/python3.5/dist-packages
Adding google-auth 1.6.3 to easy-install.pth file

Installed /usr/local/lib/python3.5/dist-packages/google_auth-1.6.3-py3.5.egg
Searching for google-auth-httplib2>=0.0.3
Reading https://pypi.python.org/simple/google-auth-httplib2/
Downloading https://files.pythonhosted.org/packages/e7/32/ac7f30b742276b4911a1439c5291abab1b797ccfd30bc923c5ad67892b13/google-auth-httplib2-0.0.3.tar.gz#sha256=098fade613c25b4527b2c08fa42d11f3c2037dda8995d86de0745228e965d445
Best match: google-auth-httplib2 0.0.3
Processing google-auth-httplib2-0.0.3.tar.gz
Writing /tmp/easy_install-q_i7eqy5/google-auth-httplib2-0.0.3/setup.cfg
Running google-auth-httplib2-0.0.3/setup.py -q bdist_egg --dist-dir /tmp/easy_install-q_i7eqy5/google-auth-httplib2-0.0.3/egg-dist-tmp-w2s__reu
zip_safe flag not set; analyzing archive contents...
Moving google_auth_httplib2-0.0.3-py3.5.egg to /usr/local/lib/python3.5/dist-packages
Adding google-auth-httplib2 0.0.3 to easy-install.pth file

Installed /usr/local/lib/python3.5/dist-packages/google_auth_httplib2-0.0.3-py3.5.egg
error: pyasn1 0.1.9 is installed but pyasn1<0.5.0,>=0.4.6 is required by {'pyasn1-modules'}

Mit gcalcli --version habe ich dann folgende Infos erhalten
Traceback (most recent call last):
  File "/home/pi/.local/lib/python3.5/site-packages/pkg_resources/__init__.py", line 583, in _build_master
    ws.require(__requires__)
  File "/home/pi/.local/lib/python3.5/site-packages/pkg_resources/__init__.py", line 900, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/home/pi/.local/lib/python3.5/site-packages/pkg_resources/__init__.py", line 791, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (pyasn1 0.1.9 (/usr/lib/python3/dist-packages), Requirement.parse('pyasn1<0.5.0,>=0.4.6'), {'pyasn1-modules'})

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/bin/gcalcli", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/home/pi/.local/lib/python3.5/site-packages/pkg_resources/__init__.py", line 3250, in <module>
    @_call_aside
  File "/home/pi/.local/lib/python3.5/site-packages/pkg_resources/__init__.py", line 3234, in _call_aside
    f(*args, **kwargs)
  File "/home/pi/.local/lib/python3.5/site-packages/pkg_resources/__init__.py", line 3263, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/home/pi/.local/lib/python3.5/site-packages/pkg_resources/__init__.py", line 585, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/home/pi/.local/lib/python3.5/site-packages/pkg_resources/__init__.py", line 598, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/home/pi/.local/lib/python3.5/site-packages/pkg_resources/__init__.py", line 791, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (pyasn1 0.1.9 (/usr/lib/python3/dist-packages), Requirement.parse('pyasn1<0.5.0,>=0.4.6'), {'pyasn1-modules'})


Ich bitte um Entschuldigung, falls das zuviel Infos sind, aber ich kann nicht einordnen was davon wichtig ist oder nicht... jedenfalls bin ich erstmal wieder offline.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 15 September 2019, 14:51:26
Zitat von: mumpitzstuff am 04 Oktober 2017, 00:02:11

3.) Jetzt das folgende Kommando eingeben:
sudo -u fhem gcalcli --noauth_local_webserver list
Die angezeigte URL muss kopiert und mit einem Browser aufgerufen werden. Dort muss man die Verknüpfung mit dem Google Konto bestätigen und erhält dann ein OAuth Token angezeigt. Das kopiert man wieder und kopiert es in die Konsole des Users fhem und bestätigt die Eingabe. Nun kann gcalcli auf den Google Kalender zugreifen! Um das zu prüfen kann man folgendes eingeben und erhält dann eine

Ich wollte gerade mal dein Modul einrichten und bin auf folgendes Problem gestoßen, ich meine bis hierhin hat alles geklappt von der Installation her. Nun kommt aber anstatt eine URL folgender Fehler.

Zitatsudo -u fhem gcalcli --noauth_local_webserver list
Unknown command line flag 'noauth_local_webserver'

Wo liegt hier mein Fehler ?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 16 September 2019, 20:06:26
@moonlightkid: pyasn1 ist bei dir zu alt. Versuch mal bitte ein Upgrade.

sudo pip3 install pyasn1 --upgrade

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 16 September 2019, 20:09:30
Zitat von: D3ltorohd am 15 September 2019, 14:51:26
Ich wollte gerade mal dein Modul einrichten und bin auf folgendes Problem gestoßen, ich meine bis hierhin hat alles geklappt von der Installation her. Nun kommt aber anstatt eine URL folgender Fehler.

Wo liegt hier mein Fehler ?

Welche Version von gcalcli läuft bei dir?

Dreh bitte mal das Kommando um:

sudo -u fhem gcalcli list --noauth_local_webserver
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 16 September 2019, 20:12:01
Ansonsten findet ihr die alte Anleitung hier:

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

Befolgt hier die roten Schritte anstatt der grün hinterlegten. Damit sollte es auch mit alten Versionen klappen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 17 September 2019, 07:37:35
Es läuft die 3.4.0 nachdem ich die Version abgefragt hab.
Ich versuchen es später mit der neuen Befehlszeile. Danke mal.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 23 September 2019, 17:24:06
Zitat von: mumpitzstuff am 16 September 2019, 20:09:30
Welche Version von gcalcli läuft bei dir?

Dreh bitte mal das Kommando um:

sudo -u fhem gcalcli list --noauth_local_webserver

Hat leider nichts gebracht und es kommt die gleiche Fehlermeldung.

ZitatUnknown command line flag 'noauth_local_webserver'
Usage:

/usr/bin/gcalcli [options] command [command args or options]

Commands:

  list                     list all calendars
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 23 September 2019, 17:59:35
Versuchs mal mit folgenden Schritten nach der alten Anleitung:
sudo su - fhem
(be sure that the user is really activated!)

If it is not possible to open a bash, try the following:
sudo nano /etc/passwd
search for fhem and replace /bin/false with /bin/bash (just needed temporary and can be reverted afterwards. now again:
sudo su - fhem
gcalcli list --noauth_local_webserver

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 23 September 2019, 18:01:37
Das Tool spinnt leider ziemlich rum bei der Authentifizierung. Aber wenns dann mal läuft, dann läuft es problemlos über Monate.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Moonlightkid am 23 September 2019, 18:21:03
Zitat von: mumpitzstuff am 16 September 2019, 20:06:26
@moonlightkid: pyasn1 ist bei dir zu alt. Versuch mal bitte ein Upgrade.

sudo pip3 install pyasn1 --upgrade
Hallo Mumpitzstuff...
ich hab jetzt ein Ergebnis:

/gcalcli $ gcalcli --version
gcalcli v4.1.1 (Eric Davis, Brian Hartvigsen, Joshua Crowgey)

Vielen lieben Dank! Jetzt kann ich weitermachen [emoji3][emoji1303]

Gesendet von meinem SM-G930F mit Tapatalk

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 23 September 2019, 19:04:23
Wenn du mit der Version auch die Probleme bei der Authentifizierung hast, dann Versuch mal den Weg 2 Beiträge vorher Hier muss man die Bash Shell für den User fhem kurz freischalten und sich dann mit dem User anmelden. Danach sollte die Authentifizierung klappen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Moonlightkid am 23 September 2019, 19:06:54
Zitat von: mumpitzstuff am 23 September 2019, 19:04:23
Wenn du mit der Version auch die Probleme bei der Authentifizierung hast, dann Versuch mal den Weg 2 Beiträge vorher Hier muss man die Bash Shell für den User fhem kurz freischalten und sich dann mit dem User anmelden. Danach sollte die Authentifizierung klappen.
Die Athentifizierung hat geklappt und ich... tadaaaaa ... habe ein Kalendermodul [emoji1303]

Jetzt muss ich das NUR noch im TabletUI angezeigt bekommen und bin glücklich [emoji1]

Gesendet von meinem SM-G930F mit Tapatalk

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 23 September 2019, 19:48:34
Zitat von: Moonlightkid am 23 September 2019, 18:21:03
Hallo Mumpitzstuff...
ich hab jetzt ein Ergebnis:

/gcalcli $ gcalcli --version
gcalcli v4.1.1 (Eric Davis, Brian Hartvigsen, Joshua Crowgey)

Vielen lieben Dank! Jetzt kann ich weitermachen [emoji3][emoji1303]

Gesendet von meinem SM-G930F mit Tapatalk

Wie bist du zur neueren Version gekommen, wenn ich nach Anleitung vom ersten Post vorgehe, komme ich auf die Version 3.4
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Moonlightkid am 23 September 2019, 19:52:52
Zitat von: D3ltorohd am 23 September 2019, 19:48:34
Wie bist du zur neueren Version gekommen, wenn ich nach Anleitung vom ersten Post vorgehe, komme ich auf die Version 3.4
Hi, vermutlich mit dem Komplettpaket:

pip3 install --upgrade setuptools
git clone https://github.com/insanum/gcalcli.git
cd gcalcli
python3 setup.py install
gcalcli --version

also via der URL...?

Gesendet von meinem SM-G930F mit Tapatalk

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 23 September 2019, 19:53:41
Zitat von: mumpitzstuff am 23 September 2019, 17:59:35
Versuchs mal mit folgenden Schritten nach der alten Anleitung:
sudo su - fhem
(be sure that the user is really activated!)

If it is not possible to open a bash, try the following:
sudo nano /etc/passwd
search for fhem and replace /bin/false with /bin/bash (just needed temporary and can be reverted afterwards. now again:
sudo su - fhem
gcalcli list --noauth_local_webserver

Falls das für mich war, leider wieder das selbe...

Zitat[19:52:30] fhem@Smarthome-Zentrale:~$ gcalcli list --noauth_local_webserver
Unknown command line flag 'noauth_local_webserver'
Usage:

/usr/bin/gcalcli [options] command [command args or options]

Commands:

  list                     list all calendars

  search <text> [start] [end]

Hab auch in der etc von false auf bash gewechselt. Liegt das vllt an der Versoin 3.4.0 ?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Moonlightkid am 23 September 2019, 19:56:19
Hast Du zuvor ein apt update und apt upgrade gemacht? Dann mal den Mehrzeiler wie ich ihn ausprobiert habe... sonst halte ich mich lieber heraus [emoji28]

Gesendet von meinem SM-G930F mit Tapatalk
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 23 September 2019, 20:17:42
Du bist dann auch als user fhem angemeldet?

Wenn alles nichts hilft, dann liegts an der alten Version und du must über pip eine neuere Version installieren. Das es hier vom Tool Probleme gibt kann man hier auch nachlesen:

https://github.com/insanum/gcalcli/issues/279 (https://github.com/insanum/gcalcli/issues/279)

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 23 September 2019, 20:21:20
Also war mit User FHEM angemeldet, hat nichts gebracht. Hatte dann nur mal
Zitatgcalcli list
dann kam ein Link, den im Browser geöffnet und für meinen Account calcli freigegeben. Danach kommt aber nichts mehr. Wahrscheinlich weil es eben nicht der gleiche Rechner ist.

Hab jetzt gcalcli deinstalliert und das so gemacht wie Moonlightkind geschrieben hat versucht. Er macht da irgendwas und dann kommt folgendes.

ZitatUsing /usr/local/lib/python2.7/dist-packages
Finished processing dependencies for gcalcli==4.2.0


[20:33:57] smarthome@Smarthome-Zentrale:~$ gcalcli --version
Traceback (most recent call last):
  File "/usr/local/bin/gcalcli", line 11, in <module>
    load_entry_point('gcalcli==4.2.0', 'console_scripts', 'gcalcli')()
  File "/home/smarthome/.local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 489, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/home/smarthome/.local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2852, in load_entry_point
    return ep.load()
  File "/home/smarthome/.local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2443, in load
    return self.resolve()
  File "/home/smarthome/.local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2449, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "/home/smarthome/.local/lib/python2.7/site-packages/gcalcli/cli.py", line 30, in <module>
    from gcalcli.argparsers import get_argument_parser, handle_unparsed
  File "/home/smarthome/.local/lib/python2.7/site-packages/gcalcli/argparsers.py", line 8, in <module>
    from shutil import get_terminal_size
ImportError: cannot import name get_terminal_size


Bei mir geht auch nicht pip3 sondern nur pip oder python, python3 geht auch nicht. Müsste ich hier noch was updaten auf die 3er, hab glaub die 2.7 hab ich vorher gesehen.

Jetzt hab ich mir hier glaub alles vermüllt.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 23 September 2019, 20:57:07
Ich würde vermuten, das es nur mit python3 geht, obwohl auf der Webseite noch was von Python 2.7 steht.

Deinstallier das erst mal wieder bei dir:

sudo pip uninstall gcalcli

Dann installier dir mal Python 3 mit:

sudo apt-get install python3

und jetzt pip3 mit:

sudo apt-get install python3-pip

und dann mit pip3 arbeiten.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 24 September 2019, 18:29:18
Zitat von: mumpitzstuff am 23 September 2019, 20:57:07
Ich würde vermuten, das es nur mit python3 geht, obwohl auf der Webseite noch was von Python 2.7 steht.

Deinstallier das erst mal wieder bei dir:

sudo pip uninstall gcalcli

Dann installier dir mal Python 3 mit:

sudo apt-get install python3

und jetzt pip3 mit:

sudo apt-get install python3-pip

und dann mit pip3 arbeiten.

So bin nun schon mal etwas weiter, die Version 4.2. wird jetzt angezeigt. Aber es kommt nun leider ein neues Problem.

Zitatfhem@Smarthome-Zentrale:~$ gcalcli list --noauth_local_webserver
usage: gcalcli [-h] [--locale LOCALE] [--lineart {fancy,unicode,ascii}]
               [--nocache] [--conky] [--refresh] [--client-id CLIENT_ID]
               [--calendar CALENDAR] [--config-folder CONFIG_FOLDER]
               [--client-secret CLIENT_SECRET] [--nocolor] [--noincluderc]
               [--default-calendar DEFAULTCALENDAR]
gcalcli: error: unrecognized arguments: --noauth_local_webserver

Das hatte ich jetzt noch so gemacht.

Zitatsudo nano /etc/passwd
search for fhem and replace /bin/false with /bin/bash (just needed temporary and can be reverted afterwards. now again:
Code: [Auswählen]
sudo su - fhem
Code: [Auswählen]
gcalcli list --noauth_local_webserver
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 24 September 2019, 21:26:50
gcalcli --noauth_local_webserver list

Ich hab's eben noch mal probiert (list muss hinten stehen!). Mit diesem Befehl erscheint ein Link. Den kopierst du in einen Browser und den Code den du bekommst, gibst du dann wieder ein. Das muss aber unbedingt als User fhem gemacht werden. Zum üben probier es aber erst mal einfach so und schau das du die Kalender mit deinem Standard User rein bekommst.

sudo -u fhem gcalcli --noauth_local_webserver list

oder über den langen Weg den ich beschrieben hatte.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 25 September 2019, 16:26:50
Hm wollte das nun mal testen, ich komm erst gar nicht soweit.Irgendwas ging da wohl gestern schief.

Weiß einer Rat ?

Zitatsudo: Unbekannter Benutzer: root
sudo: Regelwerks-Plugin konnte nicht initialisiert werden
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 25 September 2019, 17:16:45
Du hast deine /etc/passwd zerstört. Das ist richtig scheisse, da du jetzt mit einem externen Linux auf die Partition zugreifen musst, um sie zu reparieren.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 25 September 2019, 18:05:10
Ich hasse Linux, bin einfach zu blöd dafür :o

Ich muss der Datei irgendwie den User gcalcli als Owner gegeben haben. Ich habe noch nen Clone Image, dann muss ich aber erst noch Sachen aus FHEM sichern. Was ich seither angelegt habe und wahrscheinlich die ganzen Installs noch mal neu machen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 25 September 2019, 18:07:48
Wenn das eine sd karte ist, dann kannst du mit eine liveboot CD das Ding mounten und den User anpassen. Du darfst niemals mit scp etwas downloaden, ändern und dann wieder hochladen, schon gar nicht so superwichtige Dateien wie die passwortdatei.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 25 September 2019, 18:14:34
Hm an der Datei habe ich mit SCP eigentlich nichts gemacht, nur mal eben geschaut was da los ist. Ich hatte das gestern nur im Nano gemacht, aber wohl irgendwie dabei nen anderen User vergeben. Ne is ne SSD drin.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 25 September 2019, 20:11:04
So hab alles gerettet bekommen, hab halt nen Image von meiner SSD über Clonezilla eingespielt, da kam ich Gott sei Dank nach dem Reboot ran, per Monitor und Tastatur.

So jetzt mach ich hier noch mal Schritt für Schritt die Sachen von den letzten beiden Seiten. Mal sehen, aber warum, es mir die passwd zerhauen hat oder viel mehr auf einmal der Google als User war...

Is halt einfach nix wenn man sich mit Linux nicht auskennt.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 25 September 2019, 23:34:31
Wenn man mit "sudo nano datei" arbeitet, wird der User eigentlich nicht verändert. Sicherer ist es halt ohne die passwd Fummelei. Mit der Version 4.2.0 sollte das hoffentlich gehen, so wie es im ersten Beitrag steht.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 26 September 2019, 19:40:06
WOW, ich hab's bis hier hin schon mal geschafft.

ZitatAuthentication successful.
Access  Title
------  -----
  owner  Events
reader  Contacts
reader  Feiertage in Deutschland
reader  Week Numbers

Vielen Dank für eure Unterstützung.

In fhem sieht es auch so aus, passt ? Hier steht was mit configfolder, brauchte ich jetzt aber nicht. Es sei denn es müsste anders aussehen...

Wird danach der Task neu gestartet ?
Zitatdefine <name> GCALVIEW <timeout>
timeout ist hier ein Timeout in Sekunden für den Backgroundtask. Wenn dieses Timeout überschritten wird, dann wird der Task gekillt.

Was sollte man hier so eingeben, Standardwert ?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 26 September 2019, 23:35:36
Sollte passen. Bei mir steht der Wert auf 30. Ich kann grad nicht sagen ob das dem default entspricht.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 28 September 2019, 16:13:25
Dürfte ich hier noch Fragen, wie ich das in meine FTUI einbaue ?

So sieht das aus, aber dort werden andere Module genutzt richtig ? Wie kann ich das mit deinem erledigen ?

<section>
<div class="big">Info
</div>
<div style="display:inline-block;height:1px;width:80%;background-color:#0088CC;"></div>
<table>
<tr>
<td>
<div data-type="switch"
data-device="myAbfall"
data-get="Restmuell_tage"
data-set="Restmuell_tage"
data-warn="Restmuell_tage"
data-warn-on="([0-9]|[1][0-9]|off)"
data-states='["off","0","1","([2-9]|[1][0-9])"]'
data-set-states='["off","off","off","off"]'
data-cmd="setreading"
data-icons='["fa-trash-o","fa-trash-o fa-spin","fa-trash-o fa-blink","fa-trash-o"]'
data-background-icons='["none","none","none","none"]'
data-colors='["#888","#888","#888","#888"]'
class="">
</div>
</td>
<td>
<div data-type="switch"
data-device="myAbfall"
data-get="Papier_tage"
data-set="Papier_tage"
data-warn="Papier_tage"
data-warn-on="([0-9]|[1][0-9]|off)"
data-states='["off","0","1","([2-9]|[1][0-9])"]'
data-set-states='["off","off","off","off"]'
data-cmd="setreading"
data-icons='["fa-trash-o","fa-trash-o fa-spin","fa-trash-o fa-blink","fa-trash-o"]'
data-background-icons='["none","none","none","none"]'
data-colors='["#0088CC","#0088CC","#0088CC","#0088CC"]'
class="">
</div>
</td>
<td>
<div data-type="switch"
data-device="myAbfall"
data-get="Plastik_tage"
data-set="Plastik_tage"
data-warn="Plastik_tage"
data-warn-on="([0-9]|[1][0-9]|off)"
data-states='["off","0","1","([2-9]|[1][0-9])"]'
data-set-states='["off","off","off","off"]'
data-cmd="setreading"
data-icons='["fs-bag","fs-bag fa-spin","fs-bag fa-blink","fs-bag"]'
data-background-icons='["none","none","none","none"]'
data-colors='["yellow","yellow","yellow","yellow"]'
class="">
</div>
</td>
<td>
<div data-type="symbol"
data-device="myGeburtstage"
data-get="c-today"
data-states='["1","0","([2-9])"]'
data-icons='["fa-birthday-cake","fa-birthday-cake","fa-birthday-cake warn"]'
data-colors='["#0088CC","#888","#0088CC"]'
class="">
</div>
</td>


data-device="Kalender" müsste es bei mir heißen richtig ?

So sieht mein Device aus,


DEVICEOVERVIEW
Kalender
t: 8 td: 1 tm: 0
Kalender INTERNALS
CFGFN
DEF
30
FUUID
5d8e20e2-f33f-fc62-2b87-7596fc6bfc9e1a36
NAME
Kalender
NOTIFYDEV
global
NR
205
NTFY_ORDER
50-Kalender
STATE
t: 8 td: 1 tm: 0
TIMEOUT
30
TYPE
GCALVIEW
VERSION
1.0.8


Des weiteren heißt das bei mir so im Kalender.

t_005_bdate
04.10.2019
2019-09-28 16:02:22
t_005_btime
16:49
2019-09-28 16:02:22
t_005_daysleft
6
2019-09-28 16:02:22
t_005_daysleftLong
in 6 days
2019-09-28 16:02:22
t_005_description
Restmüllcontainer (wöchentlich, 1100 l) nicht vergessen!
2019-09-28 16:02:22
t_005_edate
05.10.2019
2019-09-28 16:02:22
t_005_etime
16:49
2019-09-28 16:02:22
t_005_location
Birkenweg, Mengen
2019-09-28 16:02:22
t_005_source
Events
2019-09-28 16:02:22
t_005_sourcecolor
white
2019-09-28 16:02:22
t_005_summary
Restmüllcontainer (wöchentlich, 1100 l)
2019-09-28 16:02:22
t_005_timeshort
16:49 - 16:49
2019-09-28 16:02:22
t_005_url
link
2019-09-28 16:02:22
t_005_weekday
Friday
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 29 September 2019, 13:35:15
Ich verwende diese Oberfläche leider nicht, sondern nur die Dinge, welche ich im ersten Beitrag gepostet habe.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 29 September 2019, 16:30:46
Ok, dann muss ich mal schauen, ob das einer hinbekommen hat.
Aber bei mir läuft das alles noch nicht so ganz Rund.

Das steht unten:
Zitat
calendarFilter:multiple-strict,Events,Contacts,Feiertage#in#Deutschland,Week#Numbers calendarIncludeStarted:multiple-strict,Events,Contacts,Feiertage#in#Deutschland,Week#Numbers

Da fehlen aber noch Kalender, habe einen für Geburtstage und einen für Abfall. Die kommen dort aber nicht vor. Auch steht bei mir nur t001 und 002, tomorrow 001.
Anzahl Tage steht auf 7. Sollte hier nicht mehr stehen ?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 29 September 2019, 18:19:01
 Mit t_0xx fangen die Termine an und tomorrow_001 ist der erste Termin von morgen. Verwende mal die readingsgroup aus dem ersten Beitrag, dann siehst du alles anschaulich aufbereitet.
Wenn man einen kalender auf google neu erstellt, wird dieser nicht angezeigt, wenn man die Authentifizierung nicht neu macht. Wenn das bei dir der Fall ist, kann ich dir eine Schritt für Schritt Anleitung geben.

Zur Not poste mal einen Screenshot shot und schwärz darin alles kritische, dann kann ich mir ein besseres Bild machen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 29 September 2019, 20:22:14
Zitat von: mumpitzstuff am 29 September 2019, 18:19:01
Wenn man einen kalender auf google neu erstellt, wird dieser nicht angezeigt, wenn man die Authentifizierung nicht neu macht. Wenn das bei dir der Fall ist, kann ich dir eine Schritt für Schritt Anleitung geben.

Dann liegt das daran. Ich wollte das etwas sauber trennen, damit ich das in Google schon mal schön einpflegen kann, indem Fall ist das alles danach dazu gekommen. Also bräuchte ich wohl mal deine Schritt für Schritt Anleitung.

Die ReadingsGroup copy & past in die Befehlszeile von FHEM, wo wird das dann hinzugefügt ? Zu meinem Kalender Device ? Muss ich da irgendwas anpassen ? Ich hab das mal so oben rein geschrieben, aber unter meinem Kalender hat sich nichts geändert.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 29 September 2019, 21:14:46
Okay dann versuch erst mal die Readingsgroup. Dazu öffnest du dein Kalenderdevice und scrollst ganz nach unten. Dort siehst du den Text "Raw Definition". Das klickst du an und löschst den gesamten Text der dort steht. Bitte wirklich alles löschen! Dann kopierst du du die Readingsgroup Definition aus dem ersten Beitrag da rein und ersetzt ALLE Vorkommen von KALENDER_VIEW durch deinen Device Namen und drückst danach den Button: "Execute commands", der sich ganz unten links befindet. Danach sollte die Readingsgroup angelegt sein. Falls die Readingsgroup die Attribute nicht richtig gesetzt haben sollte, melde dich noch mal, dann muss man da nacharbeiten und das manuell machen. Ich poste dann noch mal wie.

Wie man die geänderten Kalender neu bekommt erkläre ich lieber danach, sonst geht alles durcheinander und es geht wieder gar nichts mehr.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 30 September 2019, 18:59:42
Ich danke dir vielmals. Indem Fall steht das rg für ReadingsGroup und damit wird dann dieses spezielle Ansicht angelegt ?

So ich glaube das hat funktioniert, siehe Screen.

Nun müsste man mein Kalender so einstellen, das er wirklich alles zeigt.

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 30 September 2019, 23:46:52
Hmm du hast nur 1 Termin in deinem Kalender? Stell mal das Attribut calendarDays auf einen höheren Wert wie z.B. 60, dann sollten mehr Termine sichtbar sein. Aber der eine Termin müsste auch angezeigt werden, was bei dir nicht der Fall ist. Das müsste dann so aussehen wie auf meinem Bild.
Mach mal bitte ein list von deiner Readingsgroup und poste mir das, ich vermute die Attribute wurden nicht übernommen.

list RG_KALENDER

Um jetzt auch deine neuen Kalender verfügbar zu haben musst du folgendes machen:

cd /opt/fhem
ls -all

Dort siehst du 2 Dateien: .gcalcli_cache und .gcalcli_oauth. Diese löschst du mit:

sudo rm .gcalcli_cache
sudo rm .gcalcli_oauth

Danach führst du noch einmal die Authentifizierung durch und die neuen Kalender sind dann sichtbar. Das musst du jedes Mal machen wenn du einen neuen Kalender erzeugst oder einen bestehenden umbenennst!




Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 02 Oktober 2019, 19:23:40
Zitat von: mumpitzstuff am 30 September 2019, 23:46:52
Hmm du hast nur 1 Termin in deinem Kalender? Stell mal das Attribut calendarDays auf einen höheren Wert wie z.B. 60, dann sollten mehr Termine sichtbar sein. Aber der eine Termin müsste auch angezeigt werden, was bei dir nicht der Fall ist. Das müsste dann so aussehen wie auf meinem Bild.
Mach mal bitte ein list von deiner Readingsgroup und poste mir das, ich vermute die Attribute wurden nicht übernommen.

list RG_KALENDER

So hier mal das List von der RG

Wegen dem RG, ich glaube ich muss nur die Schriftfarbe ändern, von weiß in schwarz oder so, dann sieht man's auch siehe Screen. Hab jetzt mal
my $style = 'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"';
durch
my $style = 'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "black").'"'; ersetzt. Also white gegen black, aber hat leider nichts geholfen.

EDIT::
Ich glaube das liegt an t_001_sourcecolor white ? Kann das sein ? Wer bestimmt sourcecolor ? In Google ist die Gruppe ja Mischung aus Gelb/Grün.

Internals:
   DEF        <Datum>,<Tag>,<Zeit>,<Termin>,<Ort>
Kalender:t_001_bdate,t_001_weekday,t_001_timeshort,t_001_summary,t_001_location
Kalender:t_002_bdate,t_002_weekday,t_002_timeshort,t_002_summary,t_002_location
Kalender:t_003_bdate,t_003_weekday,t_003_timeshort,t_003_summary,t_003_location
Kalender:t_004_bdate,t_004_weekday,t_004_timeshort,t_004_summary,t_004_location
Kalender:t_005_bdate,t_005_weekday,t_005_timeshort,t_005_summary,t_005_location
Kalender:t_006_bdate,t_006_weekday,t_006_timeshort,t_006_summary,t_006_location
Kalender:t_007_bdate,t_007_weekday,t_007_timeshort,t_007_summary,t_007_location
Kalender:t_008_bdate,t_008_weekday,t_008_timeshort,t_008_summary,t_008_location
Kalender:t_009_bdate,t_009_weekday,t_009_timeshort,t_009_summary,t_009_location
Kalender:t_010_bdate,t_010_weekday,t_010_timeshort,t_010_summary,t_010_location
Kalender:t_011_bdate,t_011_weekday,t_011_timeshort,t_011_summary,t_011_location
Kalender:t_012_bdate,t_012_weekday,t_012_timeshort,t_012_summary,t_012_location
Kalender:t_013_bdate,t_013_weekday,t_013_timeshort,t_013_summary,t_013_location
Kalender:t_014_bdate,t_014_weekday,t_014_timeshort,t_014_summary,t_014_location
Kalender:t_015_bdate,t_015_weekday,t_015_timeshort,t_015_summary,t_015_location
Kalender:t_016_bdate,t_016_weekday,t_016_timeshort,t_016_summary,t_016_location
Kalender:t_017_bdate,t_017_weekday,t_017_timeshort,t_017_summary,t_017_location
Kalender:t_018_bdate,t_018_weekday,t_018_timeshort,t_018_summary,t_018_location
Kalender:t_019_bdate,t_019_weekday,t_019_timeshort,t_019_summary,t_019_location
Kalender:t_020_bdate,t_020_weekday,t_020_timeshort,t_020_summary,t_020_location
   FUUID      5d9233ea-f33f-fc62-40ad-46c8181635eafb1a
   NAME       rg_KALENDER
   NR         69
   NTFY_ORDER 50-rg_KALENDER
   STATE      Initialized
   TYPE       readingsGroup
   mayBeVisible 1
   CONTENT:
     Kalender   1
   CONTENT2:
   DEVICES:
     ARRAY(0x563bc5fa3378)
     ARRAY(0x563bc61341d8)
     ARRAY(0x563bc3f05790)
     ARRAY(0x563bc4804e78)
     ARRAY(0x563bc4805460)
     ARRAY(0x563bc6bf05d0)
     ARRAY(0x563bc6134c10)
     ARRAY(0x563bc5cc4680)
     ARRAY(0x563bc5cc45a8)
     ARRAY(0x563bc6102ca0)
     ARRAY(0x563bc60d3420)
     ARRAY(0x563bc3f054a8)
     ARRAY(0x563bc6cdb970)
     ARRAY(0x563bc6cdb988)
     ARRAY(0x563bc6ceebe0)
     ARRAY(0x563bc6ceebf8)
     ARRAY(0x563bc3f03928)
     ARRAY(0x563bc6bf04b0)
     ARRAY(0x563bc6b68518)
     ARRAY(0x563bc5cc3a08)
     ARRAY(0x563bc5cc3a98)
   fhem:
     lastDefChange 3
     last_update 1569955758.93315
   helper:
     DEF       
     nameStyle  style="font-weight:bold;text-decoration:underline;"
     valueFormat {
  if ($READING =~ /bdate$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/bdate$//;
    if (0 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))
    {
      "Heute";
    }
    elsif (1 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))
    {
      "Morgen";
    }
    else
    {
      # the follwoing line strips the year of the date (remove it if needed)
      substr($VALUE, 0, 5);
    }
  }
  elsif ($READING =~ /weekday$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/weekday$//;
   
     # the follwoing line strips the weekday down to 3 chars (remove it if needed)
    substr($VALUE, 0, 3);
  }
  elsif ($READING =~ /summary$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/summary$//;
    my $link = ReadingsVal($DEVICE, $readingStart.'url', '');
    my $age = ReadingsVal($DEVICE, $readingStart.'age', undef);
    my $style = 'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"';
    if (defined($age))
    {
      $link =~ s/\>link\</ $style\>$VALUE \($age\)\</;
    }
    else
    {
      $link =~ s/\>link\</ $style\>$VALUE\</;
    }
    $link;
  }
}
     valueStyle {
  my $readingStart = $READING;
  $readingStart =~ s/(t_\d+_).+/$1/;
  'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"'
}
     positions:
       Kalender.t_001_bdate 2:1
       Kalender.t_001_location 2:5
       Kalender.t_001_summary 2:4
       Kalender.t_001_timeshort 2:3
       Kalender.t_001_weekday 2:2
       Kalender.t_002_bdate 3:1
       Kalender.t_002_location 3:5
       Kalender.t_002_summary 3:4
       Kalender.t_002_timeshort 3:3
       Kalender.t_002_weekday 3:2
     values:
       formated:
         undef
         ARRAY(0x563bc6cdaf38)
         ARRAY(0x563bc6cc3a38)
         ARRAY(0x563bc6905358)
         ARRAY(0x563bc6d9e050)
         ARRAY(0x563bc6e55ad0)
       orig:
         undef
         ARRAY(0x563bc6e55650)
         ARRAY(0x563bc6daaad0)
         ARRAY(0x563bc6e55a28)
         ARRAY(0x563bc6e55818)
         ARRAY(0x563bc6e555a8)
       prefixsuffix:
         undef
         ARRAY(0x563bc6db7488)
         ARRAY(0x563bc6e4cd30)
         ARRAY(0x563bc6daa308)
         ARRAY(0x563bc6e5a798)
         ARRAY(0x563bc6e48450)
Attributes:
   nameStyle  style="font-weight:bold;text-decoration:underline;"
   nonames    1
   notime     1
   room       Kalender
   valueFormat {
  if ($READING =~ /bdate$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/bdate$//;
    if (0 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))
    {
      "Heute";
    }
    elsif (1 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))
    {
      "Morgen";
    }
    else
    {
      # the follwoing line strips the year of the date (remove it if needed)
      substr($VALUE, 0, 5);
    }
  }
  elsif ($READING =~ /weekday$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/weekday$//;
   
     # the follwoing line strips the weekday down to 3 chars (remove it if needed)
    substr($VALUE, 0, 3);
  }
  elsif ($READING =~ /summary$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/summary$//;
    my $link = ReadingsVal($DEVICE, $readingStart.'url', '');
    my $age = ReadingsVal($DEVICE, $readingStart.'age', undef);
    my $style = 'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"';
    if (defined($age))
    {
      $link =~ s/\>link\</ $style\>$VALUE \($age\)\</;
    }
    else
    {
      $link =~ s/\>link\</ $style\>$VALUE\</;
    }
    $link;
  }
}
   valueStyle {
  my $readingStart = $READING;
  $readingStart =~ s/(t_\d+_).+/$1/;
  'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"'
}


Also hab das ganze neu authentifiziert, das kam dabei raus, eigentlich ganz in Ordnung, nun fehlen aber noch Geburtstag, Erinnerungen:

Access  Title
------  -----
  owner  Events
  owner  Abfallentsorgung
reader  Contacts
reader  Feiertage in Deutschland
reader  Week Numbers


Week Numbers und Contacts kann man doch ausfiltern, braucht man nicht wirklich in Fhem oder ?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 03 Oktober 2019, 02:17:15
Das was du bei Google als Geburtstage und Erinnerungen siehst sind keine echten Kalender. Diese Dinge verwaltet Google ausschließlich selbst und du kannst dort auf direktem Wege auch nichts ändern oder hinzufügen. Gcalcli hat drauf jedenfalls keinen Zugriff. Ich musste mir daher einen extra Kalender für die Geburtstage erstellen.

Das was du geändert hast war nur der defaultwert, der verwendet wird, wenn kein sourcecolor verwendet wird. Das solltest du nicht verändern müssen. Im kalenderdevice selbst kannst du aber einem Kalender eine Farbe zuordnen und alle Termine dieses Kalenders haben dann diese Farbe in der Readingsgroup.

attr DIENSTPLAN_VIEW sourceColor Müllabfuhr:orange,Contacts:red

Alle Müllabfuhrtermine werden orange und alles was in contacts steht wird rot.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: D3ltorohd am 04 Oktober 2019, 10:23:53
Dein Tool stellt ja den die Informationen aus dem Kalender bereit, eigentlich gleich wie das Calendar Modul richtig ? Könnte ich hier nicht mit dem MyAbfall Modul die Daten anstatt vom Calender Modul von deinem Abgreifen, dieses MyAbfall Modul wandelt die Daten passend um und man kann das dann so in FTUI nutzen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 04 Oktober 2019, 23:35:32
Nein. Wenn du das Abfall Modul verwenden möchtest, dann ist dafür zwingend das Calendar Modul notwendig. Zusammen mit dem CALVIEW Modul sollte dann vielleicht auch was mit FTUI funktionieren. Mein Modul hat sich aber zu großen Teilennan CALVIEW und dem Abfall Modul orientiert und sollte sich daher ähnlich an FTUI anbinden lassen. Hierbei kann ich Mangels Wissen aber nicht unterstützen.

So sieht die Abfall Anzeige bei mir aus.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Kharim am 09 Oktober 2019, 13:18:29
Vielleicht eine interessante Info / Randnotiz

Ich hatte seit einigen Tagen, das Problem, dass mein Google-Kalender nicht mehr aktualisiert wurde und somit die letzten (gecachten Einträge am Tablet stehen blieben..)
Im Log zeigte sich die "beliebte" Meldung

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

Soweit ich mich hier im Forum einlesen konnte, gibt es dazu Meldungen von ungültigen Terminen oder notwendigen Änderungen in der PM Datei.

Bei mir lag der Hund aber wo ganz anderes begraben.
Ich betreibe einen eigenen DNS "Server" als Filter (pihole)
Und dieser hatte, nach einem Update, "www.googleapis.com" auf der Blacklist.

Ich kenne die hintergründigen Funktionen von GCALVIEW nicht, aber nach dem whitelistening der URL konnte der Kalender wieder abgerufen werden.

Will heißen, der Fehler kann im Grunde auch auf eine nicht vorhandene / defekte Internetverbindung hin deuten.

Grüße,
Kharim
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: jle am 02 November 2019, 13:20:04
Hallo Alle,
ich nutze dieses tolle Modul seit ca. einem Jahr und steuere abhängig von meinen Kalendereinträgen z.B. Heizung und Rollladen.

Seit einiger Zeit funktioniert es leider nicht mehr. Es werden keine Kalendereinträge mehr abgerufen.

Im Logfile steht:
2019.11.02 09:27:47 3: gCal blocking call already running
2019.11.02 09:27:53 3: gCal: export PYTHONIOENCODING=utf8 && gcalcli agenda 11/02/2019 11/17/2019  --calendar "Jan" --calendar "work" --calendar "FlexR" --details calendar --details url --details location --details description --details email  --tsv
2019.11.02 09:27:53 3: gCal: something went wrong (check your parameters) - Traceback (most recent call last):
  File "/usr/local/bin/gcalcli", line 9, in <module>
    load_entry_point('gcalcli==4.0.4', 'console_scripts', 'gcalcli')()
  File "build/bdist.linux-armv7l/egg/gcalcli/cli.py", line 155, in main
  File "build/bdist.linux-armv7l/egg/gcalcli/gcal.py", line 1200, in AgendaQuery
  File "build/bdist.linux-armv7l/egg/gcalcli/gcal.py", line 1182, in _display_queried_events
  File "build/bdist.linux-armv7l/egg/gcalcli/gcal.py", line 625, in _tsv
  File "build/bdist.linux-armv7l/egg/gcalcli/gcal.py", line 233, in _shorten_url
  File "build/bdist.linux-armv7l/egg/gcalcli/gcal.py", line 168, in get_url_service
  File "/usr/local/lib/python2.7/dist-packages/googleapiclient/_helpers.py", line 130, in positional_wrapper
    return wrapped(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/googleapiclient/discovery.py", line 235, in build
    "name: %s  version: %s" % (serviceName, version))
googleapiclient.errors.UnknownApiNameOrVersion: name: urlshortener  version: v1

2019.11.02 09:27:53 1: ERROR evaluating {GCALVIEW_DoEnd('gCal||')}: Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 662.


Ich hab natürlich zuvor ein bisschen hier im Forum gesucht, aber für meinen konkreten Fall leider nichts gefunden.

Ich hab die .gcalcli_cache und .gcalcli_oauth bereits ein Mal gelöscht und neu authentifiziert.

Auch ein Disable -> reboot -> enable habe ich zwischenzeitlich versucht..
Nun weiß ich nicht mehr weiter.

FHEM hab ich letzte Woche aktualisiert.

gcalcli Version:
pi@raspberrypi:/opt/fhem $ sudo -u fhem gcalcli --version
gcalcli v4.0.4 (Eric Davis, Brian Hartvigsen, Joshua Crowgey)


gcalcli list liefert alle Kalender:

pi@raspberrypi:/opt/fhem $ sudo -u fhem gcalcli list
Access  Title
------  -----
  owner  Jan
  owner  work
reader  FlexR
reader  Contacts
reader  Week Numbers


Wenn ich nur den Agenda-Befehl aufrufe bekomme ich auch einen Fehler:

pi@raspberrypi:/opt/fhem $ sudo -u fhem gcalcli agenda 11/02/2019 11/17/2019  --calendar "Jan" --calendar "work" --calendar "FlexR" --details calendar --details url --details location --details description --details email  --tsv
Traceback (most recent call last):
  File "/usr/local/bin/gcalcli", line 9, in <module>
    load_entry_point('gcalcli==4.0.4', 'console_scripts', 'gcalcli')()
  File "build/bdist.linux-armv7l/egg/gcalcli/cli.py", line 155, in main
  File "build/bdist.linux-armv7l/egg/gcalcli/gcal.py", line 1200, in AgendaQuery
  File "build/bdist.linux-armv7l/egg/gcalcli/gcal.py", line 1182, in _display_queried_events
  File "build/bdist.linux-armv7l/egg/gcalcli/gcal.py", line 625, in _tsv
  File "build/bdist.linux-armv7l/egg/gcalcli/gcal.py", line 233, in _shorten_url
  File "build/bdist.linux-armv7l/egg/gcalcli/gcal.py", line 168, in get_url_service
  File "/usr/local/lib/python2.7/dist-packages/googleapiclient/_helpers.py", line 130, in positional_wrapper
    return wrapped(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/googleapiclient/discovery.py", line 235, in build
    "name: %s  version: %s" % (serviceName, version))
googleapiclient.errors.UnknownApiNameOrVersion: name: urlshortener  version: v1


Wenn ich den Parameter ,, —details url" weg lasse, bekomme ich Ergebnisse.

Was muss ich machen, daß es in FHEM wieder funktioniert?
Bin über jede Hilfe dankbar ;-)

Viele Grüße
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: jle am 02 November 2019, 20:13:02
Okay, hab's nun..
Hab mal den Source überflogen und gesehen, daß an vielen Stellen zwischen gcalcli Version < 4 bzw >= 4 unterschieden wird, was aber scheinbar überall / meistens noch auskommentiert ist und die < 4 Version zieht..

Ich hab den Agenda-Befehlaufruf Mal für die 4er Version Einkommentiert und nun funktioniert es wieder.

Vermutlich wird das Modul gerade dahingehend erweitert oder?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 03 November 2019, 00:12:29
Ich kann leider nicht ganz folgen. Es gab mal eine Zwischenversion von gcalcli, in der ein anderer Befehl notwendig war z.B. wurde dort longurl anstatt url verwendet. Das war aber schnell wieder obsolet und ich habe es daher entfernt. Dein Problem sollte demnach durch ein Update von gcalcli behoben werden können.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: RoBra81 am 04 November 2019, 11:21:07
Hallo,

Nicht ganz: in der (vermutlich) aktuellen Version von gcalcli heißt ein Parameter config-folder, der in Version 3 noch configFolder hieß - ich musste daher gestern auch die Version im Quellcode auf 4 stellen...

Ronny

Gesendet von meinem LYA-L29 mit Tapatalk

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: carlos am 04 November 2019, 12:22:50
Dazu habe ich schon am 27.September auf github einen issue aufgemacht.
Habe es dann bei mir im Modul geändert und vom update ausgeschlossen.
Gruß

Carlos
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 04 November 2019, 12:23:44
Ah stimmt da war was. Okay ich ändere das.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 04 November 2019, 23:06:33
Habs mal eingecheckt. Ich hatte wohl einfach zu viel auskommentiert wie es scheint. Der Code selbst war tatsächlich bereits vorhanden. Wäre schön, wenn ihr es kurz verifizieren könntet.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: blasterx am 01 Dezember 2019, 20:10:05
Ich habe heute einen neuen Kalender in Google angelegt um ihn dann in Fhem zu nutzen bzw angezeigt zu bekommen habe ich die gcalcli_cache und gcalcli_oauth gelöscht und dann mittels
sudo -u fhem gcalcli --noauth_local_webserver list
die erhaltene URL habe ich in dem Browser eingegeben da bekam ich die Meldung
"Die Anmeldung mit Google ist für diese App vorübergehend deaktiviert
Die Verwendung von Google Log-in wurde für diese App noch nicht bestätigt."
Ist das Problem bekannt?

Gruß BlasterX
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 01 Dezember 2019, 22:48:57
Nein sry. Hilft dir was davon weiter?

https://support.google.com/accounts/answer/6010255?hl=de (https://support.google.com/accounts/answer/6010255?hl=de)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: blasterx am 01 Dezember 2019, 23:44:08
Nein leider nicht. Das Problem scheint bei mehreren Programmen aufzutreten :(

Gruß BlasterX
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: DerTom am 25 Dezember 2019, 10:55:10
Hallo,

allen eine frohe Weihnacht!!

Ich habe das Problem seit gestern auch nach einer neuen Authentifizierung. Aber etwas anders als blasterx.

ZitatIch habe heute einen neuen Kalender in Google angelegt um ihn dann in Fhem zu nutzen bzw angezeigt zu bekommen habe ich die gcalcli_cache und gcalcli_oauth gelöscht und dann mittels
Code: [Auswählen]
sudo -u fhem gcalcli --noauth_local_webserver list

Danach bekam ich den Verification Code von Google. Habe den in die Konsole eingegeben. Auth successful. Wenn ich dann im FHEM den Kalender updaten will kommt im Log die Meldung:
2019.12.25 10:42:56.423 3: Muellkalender blocking call already running
2019.12.25 10:42:59.871 3: Muellkalender: export PYTHONIOENCODING=utf8 && gcalcli agenda 12/25/2019 01/24/2020 --configFolder /opt/fhem --calendar "Müll" --details calendar --details url --details location --details description --details email  --tsv
2019.12.25 10:42:59.872 3: Muellkalender: 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/<link skipped>

Enter verification code: Traceback (most recent call last):
  File "/usr/bin/gcalcli", line 2649, in <module>
    BowChickaWowWow()
  File "/usr/bin/gcalcli", line 2495, in BowChickaWowWow
    gcal.AgendaQuery(startText=args[1], endText=args[2])
  File "/usr/bin/gcalcli", line 1732, in AgendaQuery
    eventList = self._SearchForCalEvents(start, end, None)
  File "/usr/bin/gcalcli", line 1631, in _SearchForCalEvents
    work = self._CalService().events().\
  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


Das habe ich doch aber schon gemacht? Hat jemand einen Tipp?

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 25 Dezember 2019, 22:10:58
Vermutlich nicht für den fhem User sondern z.b. für den Pi User? Schau doch mal ob das oauth Verzeichnis neu unter /opt/fhem erstellt wurde und die Rechte stimmen.
Was passiert, wenn du das in einer Shell machst:

sudo -u fhem gcalcli list
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: DerTom am 26 Dezember 2019, 11:48:56
Zitat von: mumpitzstuff am 25 Dezember 2019, 22:10:58
Schau doch mal ob das oauth Verzeichnis neu unter /opt/fhem erstellt wurde und die Rechte stimmen.

Wurde nicht erstellt. War aber auch kein Verzeichnis, sondern eine Datei.

Zitat
Was passiert, wenn du das in einer Shell machst:
sudo -u fhem gcalcli list
Als Ausgabe kommt diese Meldung:

root@cubietruck:/opt/fhem# sudo -u fhem gcalcli list
Access  Title
------  -----
  owner  Müll
  owner  xxxxx@gmail.com
reader  Feiertage in Deutschland
reader  Week Numbers

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 26 Dezember 2019, 23:52:54
Du gibst als configFolder /opt/fhem an, aber hier befindet sich anscheinend nicht die benötigte Datei. Irgendwo anders muss sie aber existieren, sonst würden ja die Kalender nicht ausgegeben werden können. Kannst du mal das configFolder aus deinem Device entfernen?

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: DerTom am 27 Dezember 2019, 13:05:14
Na super, wenn ich configFolder entferne, gehts...

Ich habe in der geamten Ordnerstruktur auf dem Cubie keine Datei oder einen Ordner mit dem Namen "oauth" gefunden. 
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: jle am 28 Dezember 2019, 17:06:12
Zitat von: blasterx am 01 Dezember 2019, 20:10:05
Ich habe heute einen neuen Kalender in Google angelegt um ihn dann in Fhem zu nutzen bzw angezeigt zu bekommen habe ich die gcalcli_cache und gcalcli_oauth gelöscht und dann mittels
sudo -u fhem gcalcli --noauth_local_webserver list
die erhaltene URL habe ich in dem Browser eingegeben da bekam ich die Meldung
"Die Anmeldung mit Google ist für diese App vorübergehend deaktiviert
Die Verwendung von Google Log-in wurde für diese App noch nicht bestätigt."
Ist das Problem bekannt?

Gruß BlasterX

Hallo Alle,
gibts hierfür eigentlich schon einen Lösungsansatz?
Ich habe ein paar Sachen aktualisiert und bekomme nun seit ein paar Tagen den selben Fehler.

gcalcli Version 4.0.4
in /opt/fhem liegen nach wie vor die .gcalcli_cache und .gcalcli_oauth Dateien.

Führe ich den List - Befehl aus, kommen alle Kalender fehlerfrei raus.

pi@raspberrypi:/opt/fhem $ sudo -u fhem gcalcli list
Access  Title
------  -----
  owner  xxxxxx
  owner  work
reader  FlexR
reader  Contacts
reader  Feiertage in Deutschland
reader  Week Numbers
pi@raspberrypi:/opt/fhem $


Führe ich jedoch den Agenda-Befehl aus, kommt, daß ich mich (neu?) authentifizieren muss:

pi@raspberrypi:/opt/fhem $ sudo -u fhem gcalcli --noauth_local_webserver agenda

Go to the following link in your browser:

    https://accounts.google.com/o/oauth2/v2/auth? ..... .googleusercontent.com&access_type=offline

Enter verification code:


Wenn ich auf den Link klicke und mit bei Google einlogge, bekomme ich den bereits zitierten Fehler ,, Die Anmeldung mit Google ist für diese App vorübergehend deaktiviert
Die Verwendung von Google Log-in wurde für diese App noch nicht bestätigt."

Hat jemand eine Idee was ich probieren könnte oder woran es liegt?
Bis vor kurzem hat es eigentlich wunderbar funktioniert.

Danke!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 29 Dezember 2019, 14:59:10
Taucht in deinem Google Account gcalcli bei den Drittanbieter Apps mit Kontozugriff auf? Was passiert, wenn du nur das aufrufst?

sudo -u fhem gcalcli agenda

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: jle am 29 Dezember 2019, 15:20:56
Ja, im Google Konto tauchte es auf. Hab es heute morgen mal zum Testen entfernt, dachte vielleicht liegt es daran. Jetzt ist es nicht mehr da  :(

Aber sowohl gestern Abend, als gcalcli noch in meinem Google Konto aufgeführt war, sowie jetzt wo es nicht mehr da ist, kommen die selben Fehlermeldungen.
Hier der Agenda ohne —noauth..


pi@raspberrypi:/opt/fhem $ sudo -u fhem gcalcli agenda

Your browser has been opened to visit:

    https://accounts.google.com/o/oauth2/v2/auth?scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fcalendar&redirect_uri=ht.... .apps.googleusercontent.com&access_type=offline

If your browser is on a different machine then exit and re-run this
application with the command-line parameter

  --noauth_local_webserver



Komischerweise geht der List Befehl aktuell immernoch obwohl ich im Google Account den gcalcli entfernt habe.

Habe auch mal zwischenzeitlich die .gcalcli_cache und .gcalcli_oauth umbenannt.
List geht dann natürlich auch nicht mehr, aber Google erlaubt die Authentifizierung leider dennoch nicht..
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 29 Dezember 2019, 16:26:24
Schwierig. Im Internet findet man ziemlich viele, die ebenfalls ein solches Problem haben. Leider hat keiner eine Lösung dafür...

Schau mal auf der gcalcli Seite nach den Python Bibliotheken und prüf mal, ob du die bei dir aktualisieren kannst.

https://github.com/insanum/gcalcli (https://github.com/insanum/gcalcli)

Ansonsten ist auf der Seite auch noch ein anderer Weg beschrieben die Authentifizierung durchzuführen. Vielleicht führt die ja zum Erfolg.

Was passiert, wenn du als Pi User die Authentifizierung durchzuführen versuchst?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: jle am 29 Dezember 2019, 17:05:50
Oh danke für den Tipp, hab es nun hinbekommen.

Vorweg: das Problem dürften tatsächlich alle bekommen, die eine Änderung an den Kalendern oder an der Verbindung machen, z.B. Neu-Installation oder Upgrade (wie bei mir)..

Denn offensichtlich zertifiziert Google nach und nach sämtliche Applikationen die auf den Google-Login zurückgreifen. Dafür muss der App-Entwickler (hier von gcalcli) bei Google einen entsprechenden Zertifizierungsantrag stellen. Nach positiver Prüfung von Google wird die App dann (wieder) zugelassen.

Der gcalcli-Entwickler schreibt zu einem entsprechendem Git-Issue, daß er dies bereits Mitte Nov.2019 eingereicht hat, allerdings kann es lt. Google einige Wochen dauern, bis das geprüft ist. Siehe hier:  https://github.com/insanum/gcalcli/issues/497#issuecomment-554433146 (https://github.com/insanum/gcalcli/issues/497#issuecomment-554433146)

Als ,,Workaround" kann man solange bei Google eine eigene App in der Developer Console anmelden, dafür dann eine Client-Id und ein Client-Secret erstellen und im file .gcalclirc hinterlegen.
Danach Authentifizierung wie gewohnt. Dabei wird dann die Authentifizierung nicht für gcalcli sondern die ,,eigene App" gemacht, wo man bei der Meldung ,,App nicht von Google zertifiziert" eine Ausnahme Regel quittieren kann.

Solange wie gcalcli nicht offiziell von Google zertifiziert ist, scheint dies der einzige Weg zu sein.
Mit ,,eigene App anmelden" hört sich erstmal kompliziert an, ist aber sehr schnell erledigt.
Hier ist eine detaillierte Anleitung dazu. Hat bei mir nur 5 min gedauert..
https://github.com/insanum/gcalcli#login-information (https://github.com/insanum/gcalcli#login-information)


Viele Grüße
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 29 Dezember 2019, 21:17:35
Wow super! Vielen Dank für die detaillierte Analyse!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: shamal2008 am 21 Januar 2020, 15:19:44
Hello zusammen,

nun bin ich also auch betroffen... das Modul zeigt nach Update von FHEM und Raspi nichts mehr, der "WAF" im Eimer.

Wenn ich all die schönen Dinge hier befolge, habe ich dasselbe Problem "die App wurde vorübergehend deaktiviert".
Habe dann, wie in dem Post von jle eine neue Applikation über Google-API angelegt. Diese wird angezeigt, API, Auth usw. angelegt. Unsicheren Zugriff zugelassen.

Dann habe ich .gcal_oauth und die cache gelöscht, und jetzt macht mir der Raspi keine neue Datei für die Authentifizierung mehr. Nach Updates von Python kommt jetzt sogar noch eine zusätzliche Fehlermeldung, die ich vorher nicht hatte.

pi@master:/opt/fhem $ sudo -u fhem gcalcli --noauth_local_webserver list --config-folder /opt/fhem
Traceback (most recent call last):
  File "/usr/local/bin/gcalcli", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.5/dist-packages/gcalcli/cli.py", line 147, in main
    cal_names=cal_names, printer=printer, **vars(parsed_args)
  File "/usr/local/lib/python3.5/dist-packages/gcalcli/gcal.py", line 67, in __init__
    self._get_cached()
  File "/usr/local/lib/python3.5/dist-packages/gcalcli/gcal.py", line 186, in _get_cached
    self.all_cals = self.cache['all_cals']
KeyError: 'all_cals'


Der Fehler ist derselbe, auch wenn ich den config-folder weglasse. Auf dem Raspi gibt es scheinbar keine andere .gcalcli_oauth oder ähnliche Datei mehr.

Any ideas?
lg Shamal
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 21 Januar 2020, 16:03:33
Was passiert wenn du das machst?

sudo -u fhem gcalcli list --client_id=xxxxxxxxxxxxxxx.apps.googleusercontent.com --client_secret=xxxxxxxxxxxxxxxxx
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: shamal2008 am 21 Januar 2020, 16:33:59
Hallo Mumpitzstuff,

das wird noch spannender: (und zwar sowohl mit dem neuen (heute in der console erstellten, als auch mit dem bestehenden Kalender):

gcalcli: error: unrecognized arguments: --client_id=xxxx.apps.googleusercontent.com --client_secret=-xxx


(die richtigen Werte habe hier nur ausge-X-t).

Seit dem Update vorige Woche spinnt das FHEM überhaupt nur mehr, ständige Abstürze mit cannot fork (alle presence-pings mittlerweile abgedreht)... die Verzweiflung wächst...

lg Shamal
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 21 Januar 2020, 17:39:08
Was für eine Version von gcalcli hast du? Vermutlich eine sehr alte?!?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: shamal2008 am 21 Januar 2020, 18:32:20
Hallo,

sorry, leider nicht - 4.2.0

EDIT: bin jetzt draufgekommen, dass --client_id und --client_secret durch --client-id und --client-secret ersetzt wurden.
Jetzt ist die Autorisierung erfolgreich durchgegangen.

Ebenso habe ich einen Zustimmungsbildschirm erstellt und dem User in der Google-Dev-Console die Zugriffe auf den Kalender gewährt. Nach dem Durchklicken im Browser habe ich dann endlich einen Auth-Code bekommen, der funktioniert hat und die Files wurden erstellt.

Jetzt funktioniert das Teil wieder... lediglich das FHEM-Device muss ich nochmal anlegen, das hatte ich in der Zwischenzeit gelöscht  :'(

lg Shamal
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 21 Januar 2020, 19:35:50
Das die da immer an den Parametern rum machen müssen. Schrecklich. Aber super das es geklappt hat.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Moonlightkid am 26 Januar 2020, 16:51:26
Hallo Mumpitzstuff,

ich hab nach langer Zeit mich wieder hingesetzt, um meinen Abfallkalender endlich zum Laufen zu bringen.
Aus welchem Grund auch immer wurde mein Google-Kalender nicht ausgelesen. Heute hat es auf Anhieb funktioniert.

UND ICH HAB KEINE AHNUNG WARUM  ;D

Von mir ein herzliches Dankeschön! Endlich kann ich das fürs Tablet-UI verwenden...
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Kharim am 08 Februar 2020, 17:27:52
Kann mir bitte jemand auf die Sprünge helfen?
Bekomme (durch Neuinstallation) meinen Google-Kalender nicht mehr zum laufen.
Soweit ich es aus den letzten Posts heraus gelesen habe, habe ich folgendes getan.

- gcalcli installiert -> gcalcli v4.0.4 (Eric Davis, Brian Hartvigsen, Joshua Crowgey)
(Auch ein Git Clone bringt nur diese Version)
- Diese Google-Developer Geschichte um ID und Secret zu erhalten
-sudo -u fhem gcalcli list --client-id=xxxxxxxxxxxxxxx.apps.googleusercontent.com --client-secret=xxxxxxxxxxxxxxxxx
- den gezeigten Link in den Browser kopiert.
Hier meldet google nun

Error: invalid_client

The OAuth client was not found.
Request Details

    client_id=xxx
    redirect_uri=urn:ietf:wg:oauth:2.0:oob
    scope=https://www.googleapis.com/auth/calendar
    access_type=offline
    response_type=code


Was mache ich falsch?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cotecmania am 09 Februar 2020, 10:49:57
Bei mir wird python-gdata nicht installiert :

root@T620-FHEM:~# sudo apt-get install python-gdata
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
Paket python-gdata ist nicht verfügbar, wird aber von einem anderen Paket
referenziert. Das kann heißen, dass das Paket fehlt, dass es abgelöst
wurde oder nur aus einer anderen Quelle verfügbar ist.

E: Für Paket »python-gdata« existiert kein Installationskandidat.
root@T620-FHEM:~#


Kennt jemand Abhilfe ?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: shamal2008 am 09 Februar 2020, 21:52:05
Hello,

ich bin jetzt langsam nicht nur am Verzweifeln, ich pfeif bald auf den ganzen Mist. Nach einer Übersiedlung des FHEM auf den Raspi4 mit Buster ( hat die auth wieder nicht funktioniert (wurde wieder von Google gesperrt). Sämtliche Versuche das Zeug neu aufzusetzen haben lediglich dazu geführt, dass offensichtlich durch ein python2.7 (welches plötzlich als default aktiv war, weiss der Geier warum) die ganze gcalcli so dermassen zerschossen war, das nun gar nix mehr geht.

für Buster-User:
kommt bloß nicht auf die Idee (auch nach einem remove der apt-get gcalcli mit autoremove, update,reboot,etc.) die gcalcli aus dem github aufzusetzen. Danach spinnt sich das gesamte Teil aus und produziert jede Menge Fehler, die ihr auch im google nicht findet.

Ich werde jetzt ein Backup von FHEM machen, dann den ganzen Raspi komplett neu aufsetzen, und falls das Teil dann wieder nicht tut, such ich mir endgültig ein anderes Home-System.

frust off,
Shamal
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 12 Februar 2020, 21:38:09
gcalcli hat Probleme mit dem Google Login. Ob sich daran jemals etwas ändern wird, kann ich nicht sagen. Ich kann hier leider diesbezüglich auch keine Experimente machen, da es bei mir dann eventuell auch nicht mehr geht.
Wenn es partout nicht geht, dann könnt ihr auf das Calendar Modul ausweichen.

Ansonsten gibt es hier noch eine Beschreibung ganz unten:

https://github.com/insanum/gcalcli/issues/497 (https://github.com/insanum/gcalcli/issues/497)

Die Google Calendar API könnt ihr hier aktivieren und dann die notwendigen OAuth Daten erzeugen:

https://console.developers.google.com/?hl=de (https://console.developers.google.com/?hl=de)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: xeenon am 23 Februar 2020, 10:40:31
Hallo Zusammen,

dieses Modul beschert mir ganz schön graue Haare. Nachdem ich mein Python (beim Updateversuch) zerschossen habe, habe ich alles komplett neu aufgesetzt und auf ein frisches FHEM gcalcli installieren können. und GCALVIEW spuckt mir Ergebnisse für die nächsten 2 Wochen aus.

Allerdings komm ich mit den Readingsgprs nicht klar. Ich hätte zuerst versucht deines für den allgemeinen Kalender zu übernehmen. Mit Copy und Paste gehts leider nicht. Dann habe ich versucht es händisch nach zu basteln, geht auch nicht. Sieht nun wie folgt aus:

Internals:
   CFGFN     
   DEF        <Datum>,<Tag>,<Zeit>,<Termin>,<Ort>\ KALENDER_VIEW:t_001_bdate,t_001_weekday,t_001_timeshort,t_001_summary,t_001_location\ KALENDER_VIEW:t_002_bdate,t_002_weekday,t_002_timeshort,t_002_summary,t_002_location\ KALENDER_VIEW:t_003_bdate,t_003_weekday,t_003_timeshort,t_003_summary,t_003_location\ KALENDER_VIEW:t_004_bdate,t_004_weekday,t_004_timeshort,t_004_summary,t_004_location\ KALENDER_VIEW:t_005_bdate,t_005_weekday,t_005_timeshort,t_005_summary,t_005_location\ KALENDER_VIEW:t_006_bdate,t_006_weekday,t_006_timeshort,t_006_summary,t_006_location\ KALENDER_VIEW:t_007_bdate,t_007_weekday,t_007_timeshort,t_007_summary,t_007_location\ KALENDER_VIEW:t_008_bdate,t_008_weekday,t_008_timeshort,t_008_summary,t_008_location\ KALENDER_VIEW:t_009_bdate,t_009_weekday,t_009_timeshort,t_009_summary,t_009_location\ KALENDER_VIEW:t_010_bdate,t_010_weekday,t_010_timeshort,t_010_summary,t_010_location\ KALENDER_VIEW:t_011_bdate,t_011_weekday,t_011_timeshort,t_011_summary,t_011_location\ KALENDER_VIEW:t_012_bdate,t_012_weekday,t_012_timeshort,t_012_summary,t_012_location\ KALENDER_VIEW:t_013_bdate,t_013_weekday,t_013_timeshort,t_013_summary,t_013_location\ KALENDER_VIEW:t_014_bdate,t_014_weekday,t_014_timeshort,t_014_summary,t_014_location\ KALENDER_VIEW:t_015_bdate,t_015_weekday,t_015_timeshort,t_015_summary,t_015_location\ KALENDER_VIEW:t_016_bdate,t_016_weekday,t_016_timeshort,t_016_summary,t_016_location\ KALENDER_VIEW:t_017_bdate,t_017_weekday,t_017_timeshort,t_017_summary,t_017_location\ KALENDER_VIEW:t_018_bdate,t_018_weekday,t_018_timeshort,t_018_summary,t_018_location\ KALENDER_VIEW:t_019_bdate,t_019_weekday,t_019_timeshort,t_019_summary,t_019_location\ KALENDER_VIEW:t_020_bdate,t_020_weekday,t_020_timeshort,t_020_summary,t_020_location
   FUUID      5e524426-f33f-91fb-5ce4-fab8d56c0807ff1c
   NAME       rg_KALENDER
   NR         313
   NTFY_ORDER 50-rg_KALENDER
   STATE      Initialized
   TYPE       readingsGroup
   changed    0
   mayBeVisible 1
   CONTENT:
   CONTENT2:
   DEVICES:
   fhem:
     lastDefChange 27
     last_update 1582450015.7302
   helper:
     DEF       
     nameStyle  style="font-weight:bold;text-decoration:underline;"
     valueFormat if ($READING =~ /bdate$/)\
  {\
    my $readingStart = $READING;;\
    $readingStart =~ s/bdate$//;;\
    if (0 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))\
    {\
      "Heute";;\
    }\
    elsif (1 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))\
    {\
      "Morgen";;\
    }\
    else\
    {\
      # the follwoing line strips the year of the date (remove it if needed)\
      substr($VALUE, 0, 5);;\
    }\
  }\
  elsif ($READING =~ /weekday$/)\
  {\
    my $readingStart = $READING;;\
    $readingStart =~ s/weekday$//;;\
    \
     # the follwoing line strips the weekday down to 3 chars (remove it if needed)\
    substr($VALUE, 0, 3);;\
  }\
  elsif ($READING =~ /summary$/)\
  {\
    my $readingStart = $READING;;\
    $readingStart =~ s/summary$//;;\
    my $link = ReadingsVal($DEVICE, $readingStart.'url', '');;\
    my $age = ReadingsVal($DEVICE, $readingStart.'age', undef);;\
    my $style = 'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"';;\
    if (defined($age))\
    {\
      $link =~ s/\>link\</ $style\>$VALUE \($age\)\</;;\
    }\
    else\
    {\
      $link =~ s/\>link\</ $style\>$VALUE\</;;\
    }\
    $link;;\
  }
Attributes:
   nameStyle  style="font-weight:bold;text-decoration:underline;"
   nonames    1
   notime     1
   room       KALENDER
   valueFormat if ($READING =~ /bdate$/)\
  {\
    my $readingStart = $READING;;\
    $readingStart =~ s/bdate$//;;\
    if (0 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))\
    {\
      "Heute";;\
    }\
    elsif (1 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))\
    {\
      "Morgen";;\
    }\
    else\
    {\
      # the follwoing line strips the year of the date (remove it if needed)\
      substr($VALUE, 0, 5);;\
    }\
  }\
  elsif ($READING =~ /weekday$/)\
  {\
    my $readingStart = $READING;;\
    $readingStart =~ s/weekday$//;;\
    \
     # the follwoing line strips the weekday down to 3 chars (remove it if needed)\
    substr($VALUE, 0, 3);;\
  }\
  elsif ($READING =~ /summary$/)\
  {\
    my $readingStart = $READING;;\
    $readingStart =~ s/summary$//;;\
    my $link = ReadingsVal($DEVICE, $readingStart.'url', '');;\
    my $age = ReadingsVal($DEVICE, $readingStart.'age', undef);;\
    my $style = 'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"';;\
    if (defined($age))\
    {\
      $link =~ s/\>link\</ $style\>$VALUE \($age\)\</;;\
    }\
    else\
    {\
      $link =~ s/\>link\</ $style\>$VALUE\</;;\
    }\
    $link;;\
  }


Meine 99_myutils sieht so aus:
##############################################
# $Id: myUtilsTemplate.pm 7570 2015-01-14 18:31:44Z rudolfkoenig $
#
# Save this file as 99_myUtils.pm, and create your own functions in the new
# file. They are then available in every Perl expression.

package main;

use strict;
use warnings;
use POSIX;

sub
myUtils_Initialize($$)
{
  my ($hash) = @_;
}

# Enter you functions below _this_ line.

sub recyclebinCounter($$)
{
  my ($device, $reading) = @_;
  my $days = ReadingsVal($device, $reading.'days', 'na');
  my $daysnext = ReadingsVal($device, $reading.'daysnext', 'na');
  my $color_days = ('1' eq $days ? 'red' : '2' eq $days ? 'darkorange' : 'green');

  return '<div style="width:16px;height:14px;border-radius:14px;color:white;background-color:'.
         $color_days.
         ';font-size:10px;font-weight:700;text-align:center;position:relative;padding-top:1%;'.
         'left:-29px;top:-4px;">'.$days.'</div>'.
         '<div style="width:16px;height:14px;border-radius:14px;color:white;'.
         'border:1px solid white;'.
         'font-size:10px;font-weight:700;text-align:center;position:relative;padding-top:1%;'.
         'left:-11px;top:-19px;">'.$daysnext.'</div>';
}

1;


Wo hab ich den Fehler gemacht?

Viele Grüße
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 23 Februar 2020, 20:54:39
Die ganzen Backslashes in deiner Readinggroup sind falsch. Was ich dort im ersten Beitrag gepostet habe, lässt sich nur per RAW Import 1:1 importieren.

Mach mal ein beliebiges Device auf, so das du Internals/Readings sehen kannst. Dann scrollst du gaaaannnzz nach unten und klickst Raw definition an (dritte von links). Dort löschst du alles raus und fügst das was ich gepostet habe ein. Dann noch Execute drücken und fertig. Das bereits existieren rg_KALENDER vorher noch löschen!

Hilft dir das weiter?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: xeenon am 05 März 2020, 01:49:20
Hallo, danke und sorry für die späte Antwort.

Geht ein wenig drunter und drüber im Moment.

Irgendwo ist der Hund drinnen. Es werden mir leider keine Termine angezeigt. Ich kann aber den Fehler nicht finden.

Internals:
   DEF        <Datum>,<Tag>,<Zeit>,<Termin>,<Ort>
KALENDER_VIEW:t_001_bdate,t_001_weekday,t_001_timeshort,t_001_summary,t_001_location
KALENDER_VIEW:t_002_bdate,t_002_weekday,t_002_timeshort,t_002_summary,t_002_location
KALENDER_VIEW:t_003_bdate,t_003_weekday,t_003_timeshort,t_003_summary,t_003_location
KALENDER_VIEW:t_004_bdate,t_004_weekday,t_004_timeshort,t_004_summary,t_004_location
KALENDER_VIEW:t_005_bdate,t_005_weekday,t_005_timeshort,t_005_summary,t_005_location
KALENDER_VIEW:t_006_bdate,t_006_weekday,t_006_timeshort,t_006_summary,t_006_location
KALENDER_VIEW:t_007_bdate,t_007_weekday,t_007_timeshort,t_007_summary,t_007_location
KALENDER_VIEW:t_008_bdate,t_008_weekday,t_008_timeshort,t_008_summary,t_008_location
KALENDER_VIEW:t_009_bdate,t_009_weekday,t_009_timeshort,t_009_summary,t_009_location
KALENDER_VIEW:t_010_bdate,t_010_weekday,t_010_timeshort,t_010_summary,t_010_location
KALENDER_VIEW:t_011_bdate,t_011_weekday,t_011_timeshort,t_011_summary,t_011_location
KALENDER_VIEW:t_012_bdate,t_012_weekday,t_012_timeshort,t_012_summary,t_012_location
KALENDER_VIEW:t_013_bdate,t_013_weekday,t_013_timeshort,t_013_summary,t_013_location
KALENDER_VIEW:t_014_bdate,t_014_weekday,t_014_timeshort,t_014_summary,t_014_location
KALENDER_VIEW:t_015_bdate,t_015_weekday,t_015_timeshort,t_015_summary,t_015_location
KALENDER_VIEW:t_016_bdate,t_016_weekday,t_016_timeshort,t_016_summary,t_016_location
KALENDER_VIEW:t_017_bdate,t_017_weekday,t_017_timeshort,t_017_summary,t_017_location
KALENDER_VIEW:t_018_bdate,t_018_weekday,t_018_timeshort,t_018_summary,t_018_location
KALENDER_VIEW:t_019_bdate,t_019_weekday,t_019_timeshort,t_019_summary,t_019_location
KALENDER_VIEW:t_020_bdate,t_020_weekday,t_020_timeshort,t_020_summary,t_020_location
   FUUID      5e530c63-f33f-91fb-9f48-6efec69db95566fd
   NAME       rg_KALENDER
   NR         15
   NTFY_ORDER 50-rg_KALENDER
   STATE      Initialized
   TYPE       readingsGroup
   changed    0
   mayBeVisible 1
   CONTENT:
   CONTENT2:
   DEVICES:
     ARRAY(0x2189f20)
   fhem:
     lastDefChange 1
     last_update 1583369133.39386
   helper:
     DEF       
     nameStyle  style="font-weight:bold;text-decoration:underline;"
     valueFormat {
  if ($READING =~ /bdate$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/bdate$//;
    if (0 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))
    {
      "Heute";
    }
    elsif (1 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))
    {
      "Morgen";
    }
    else
    {
      # the follwoing line strips the year of the date (remove it if needed)
      substr($VALUE, 0, 5);
    }
  }
  elsif ($READING =~ /weekday$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/weekday$//;
   
     # the follwoing line strips the weekday down to 3 chars (remove it if needed)
    substr($VALUE, 0, 3);
  }
  elsif ($READING =~ /summary$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/summary$//;
    my $link = ReadingsVal($DEVICE, $readingStart.'url', '');
    my $age = ReadingsVal($DEVICE, $readingStart.'age', undef);
    my $style = 'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"';
    if (defined($age))
    {
      $link =~ s/\>link\</ $style\>$VALUE \($age\)\</;
    }
    else
    {
      $link =~ s/\>link\</ $style\>$VALUE\</;
    }
    $link;
  }
}
     valueStyle {
  my $readingStart = $READING;
  $readingStart =~ s/(t_\d+_).+/$1/;
  'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"'
}
Attributes:
   nameStyle  style="font-weight:bold;text-decoration:underline;"
   nonames    1
   notime     1
   room       KALENDER
   valueFormat {
  if ($READING =~ /bdate$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/bdate$//;
    if (0 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))
    {
      "Heute";
    }
    elsif (1 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))
    {
      "Morgen";
    }
    else
    {
      # the follwoing line strips the year of the date (remove it if needed)
      substr($VALUE, 0, 5);
    }
  }
  elsif ($READING =~ /weekday$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/weekday$//;
   
     # the follwoing line strips the weekday down to 3 chars (remove it if needed)
    substr($VALUE, 0, 3);
  }
  elsif ($READING =~ /summary$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/summary$//;
    my $link = ReadingsVal($DEVICE, $readingStart.'url', '');
    my $age = ReadingsVal($DEVICE, $readingStart.'age', undef);
    my $style = 'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"';
    if (defined($age))
    {
      $link =~ s/\>link\</ $style\>$VALUE \($age\)\</;
    }
    else
    {
      $link =~ s/\>link\</ $style\>$VALUE\</;
    }
    $link;
  }
}
   valueStyle {
  my $readingStart = $READING;
  $readingStart =~ s/(t_\d+_).+/$1/;
  'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"'
}


Der Kalender von Gcalview ist voll mit Einträgen aus dem Kalender.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: trinitywhm am 05 März 2020, 07:53:01
Zitat von: shamal2008 am 21 Januar 2020, 18:32:20
Hallo,

sorry, leider nicht - 4.2.0

EDIT: bin jetzt draufgekommen, dass --client_id und --client_secret durch --client-id und --client-secret ersetzt wurden.
Jetzt ist die Autorisierung erfolgreich durchgegangen.

Ebenso habe ich einen Zustimmungsbildschirm erstellt und dem User in der Google-Dev-Console die Zugriffe auf den Kalender gewährt. Nach dem Durchklicken im Browser habe ich dann endlich einen Auth-Code bekommen, der funktioniert hat und die Files wurden erstellt.

Jetzt funktioniert das Teil wieder... lediglich das FHEM-Device muss ich nochmal anlegen, das hatte ich in der Zwischenzeit gelöscht  :'(

lg Shamal

@shamal2008 Kannst du vielleicht ein bisschen darauf eingehen was du in der Google-Dev-Console bei dem Zustimmungsbildschirm angegeben hast. Ich befürchte ich komm an der Stelle nicht weiter. Ich habe da zwar was angegeben, aber der Zugriff auf meine Kalender funktioniert dennoch nicht. Für ein paar Tipps wäre ich dankbar. Der Tipp mit der Schreibweise im Link war auch schon super!
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 05 März 2020, 09:35:25
Zitat von: xeenon am 05 März 2020, 01:49:20
Hallo, danke und sorry für die späte Antwort.

Geht ein wenig drunter und drüber im Moment.

Irgendwo ist der Hund drinnen. Es werden mir leider keine Termine angezeigt. Ich kann aber den Fehler nicht finden.

Internals:
   DEF        <Datum>,<Tag>,<Zeit>,<Termin>,<Ort>
KALENDER_VIEW:t_001_bdate,t_001_weekday,t_001_timeshort,t_001_summary,t_001_location
KALENDER_VIEW:t_002_bdate,t_002_weekday,t_002_timeshort,t_002_summary,t_002_location
KALENDER_VIEW:t_003_bdate,t_003_weekday,t_003_timeshort,t_003_summary,t_003_location
KALENDER_VIEW:t_004_bdate,t_004_weekday,t_004_timeshort,t_004_summary,t_004_location
KALENDER_VIEW:t_005_bdate,t_005_weekday,t_005_timeshort,t_005_summary,t_005_location
KALENDER_VIEW:t_006_bdate,t_006_weekday,t_006_timeshort,t_006_summary,t_006_location
KALENDER_VIEW:t_007_bdate,t_007_weekday,t_007_timeshort,t_007_summary,t_007_location
KALENDER_VIEW:t_008_bdate,t_008_weekday,t_008_timeshort,t_008_summary,t_008_location
KALENDER_VIEW:t_009_bdate,t_009_weekday,t_009_timeshort,t_009_summary,t_009_location
KALENDER_VIEW:t_010_bdate,t_010_weekday,t_010_timeshort,t_010_summary,t_010_location
KALENDER_VIEW:t_011_bdate,t_011_weekday,t_011_timeshort,t_011_summary,t_011_location
KALENDER_VIEW:t_012_bdate,t_012_weekday,t_012_timeshort,t_012_summary,t_012_location
KALENDER_VIEW:t_013_bdate,t_013_weekday,t_013_timeshort,t_013_summary,t_013_location
KALENDER_VIEW:t_014_bdate,t_014_weekday,t_014_timeshort,t_014_summary,t_014_location
KALENDER_VIEW:t_015_bdate,t_015_weekday,t_015_timeshort,t_015_summary,t_015_location
KALENDER_VIEW:t_016_bdate,t_016_weekday,t_016_timeshort,t_016_summary,t_016_location
KALENDER_VIEW:t_017_bdate,t_017_weekday,t_017_timeshort,t_017_summary,t_017_location
KALENDER_VIEW:t_018_bdate,t_018_weekday,t_018_timeshort,t_018_summary,t_018_location
KALENDER_VIEW:t_019_bdate,t_019_weekday,t_019_timeshort,t_019_summary,t_019_location
KALENDER_VIEW:t_020_bdate,t_020_weekday,t_020_timeshort,t_020_summary,t_020_location
   FUUID      5e530c63-f33f-91fb-9f48-6efec69db95566fd
   NAME       rg_KALENDER
   NR         15
   NTFY_ORDER 50-rg_KALENDER
   STATE      Initialized
   TYPE       readingsGroup
   changed    0
   mayBeVisible 1
   CONTENT:
   CONTENT2:
   DEVICES:
     ARRAY(0x2189f20)
   fhem:
     lastDefChange 1
     last_update 1583369133.39386
   helper:
     DEF       
     nameStyle  style="font-weight:bold;text-decoration:underline;"
     valueFormat {
  if ($READING =~ /bdate$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/bdate$//;
    if (0 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))
    {
      "Heute";
    }
    elsif (1 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))
    {
      "Morgen";
    }
    else
    {
      # the follwoing line strips the year of the date (remove it if needed)
      substr($VALUE, 0, 5);
    }
  }
  elsif ($READING =~ /weekday$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/weekday$//;
   
     # the follwoing line strips the weekday down to 3 chars (remove it if needed)
    substr($VALUE, 0, 3);
  }
  elsif ($READING =~ /summary$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/summary$//;
    my $link = ReadingsVal($DEVICE, $readingStart.'url', '');
    my $age = ReadingsVal($DEVICE, $readingStart.'age', undef);
    my $style = 'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"';
    if (defined($age))
    {
      $link =~ s/\>link\</ $style\>$VALUE \($age\)\</;
    }
    else
    {
      $link =~ s/\>link\</ $style\>$VALUE\</;
    }
    $link;
  }
}
     valueStyle {
  my $readingStart = $READING;
  $readingStart =~ s/(t_\d+_).+/$1/;
  'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"'
}
Attributes:
   nameStyle  style="font-weight:bold;text-decoration:underline;"
   nonames    1
   notime     1
   room       KALENDER
   valueFormat {
  if ($READING =~ /bdate$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/bdate$//;
    if (0 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))
    {
      "Heute";
    }
    elsif (1 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))
    {
      "Morgen";
    }
    else
    {
      # the follwoing line strips the year of the date (remove it if needed)
      substr($VALUE, 0, 5);
    }
  }
  elsif ($READING =~ /weekday$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/weekday$//;
   
     # the follwoing line strips the weekday down to 3 chars (remove it if needed)
    substr($VALUE, 0, 3);
  }
  elsif ($READING =~ /summary$/)
  {
    my $readingStart = $READING;
    $readingStart =~ s/summary$//;
    my $link = ReadingsVal($DEVICE, $readingStart.'url', '');
    my $age = ReadingsVal($DEVICE, $readingStart.'age', undef);
    my $style = 'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"';
    if (defined($age))
    {
      $link =~ s/\>link\</ $style\>$VALUE \($age\)\</;
    }
    else
    {
      $link =~ s/\>link\</ $style\>$VALUE\</;
    }
    $link;
  }
}
   valueStyle {
  my $readingStart = $READING;
  $readingStart =~ s/(t_\d+_).+/$1/;
  'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"'
}


Der Kalender von Gcalview ist voll mit Einträgen aus dem Kalender.

Wie heisst denn dein Kalender Device?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: xeenon am 05 März 2020, 15:28:11
Alles klar, danke.. ich konnte l und I nicht auseinander halten...

Nur noch schauen wie ich das vernünftig in FTUI bekomme, dann bin ich zufrieden
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: trinitywhm am 05 März 2020, 22:19:58
Zitat von: trinitywhm am 05 März 2020, 07:53:01
@shamal2008 Kannst du vielleicht ein bisschen darauf eingehen was du in der Google-Dev-Console bei dem Zustimmungsbildschirm angegeben hast. Ich befürchte ich komm an der Stelle nicht weiter. Ich habe da zwar was angegeben, aber der Zugriff auf meine Kalender funktioniert dennoch nicht. Für ein paar Tipps wäre ich dankbar. Der Tipp mit der Schreibweise im Link war auch schon super!

Ok, an der Stelle in der Google-Dev-Console bin ich glaube ich weiter gekommen. Ich hätte  Punkt 8 und 9 in dieser Anleitung genauer lesen und befolgen sollen: https://github.com/insanum/gcalcli/issues/497

Aber nichtsdestotrotz funktioniert es immernoch nicht. Ich bekomme eine Fehlermeldung im Log (beim update des Devices oder reboot von FHEM)
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 662.

Weiß jemand woran es denn jetzt noch liegt?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 05 März 2020, 23:19:29
Was für eine Gcalcli Version hast du denn? Wenn du verbose auf 5 stellst, dann bekommst du erweiterte Meldungen im Log. Vielleicht gibt das etwas her.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: trinitywhm am 06 März 2020, 09:52:34
Version ist 4.0.4.

Mit verbose 5 kam im Log noch eine andere Meldungen (ist ja klar...), aber unter anderem auch ein Link unter dem ich die Google Kalender API noch aktivieren musste. Das war wohl bisher nicht nötig, aber jetzt ist es das wohl schon. Denn kaum hatte ich diese aktiviert und ca. 5 Minuten gewartet, funktionieren alle meine Kalender wieder. Also wer das Problem auch hat, verbose 5 einschalten, Link aus Log öffnen und Kalender API aktivieren. Schon läufts wieder... Mal sehen wie lange bis das nächste Mal wieder was geändert wird.  ;)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 21 März 2020, 20:00:56
Hallo Mumpitzstuff,
mir ist aufgefallen, das obwohl "attr GoogleCalendar event-on-change-reading .." gesetzt ist, bei jedem "set GoogleCalendar update",
für existierende readings jedesmal wieder neue events generiert werden. Ist das beabsichtigt?

Hier das listing und der Auszug aus dem Eventmonitor.

Internals:
   DEF        900
   FUUID      dadaadad
   NAME       GoogleCalendar
   NOTIFYDEV  global
   NR         2588
   NTFY_ORDER 50-GoogleCalendar
   STATE      t: 4 td: 0 tm: 4
   TIMEOUT    900
   TYPE       GCALVIEW
   VERSION    1.0.9
   READINGS:
     2020-03-21 19:35:25   c-term          4
     2020-03-21 19:35:25   c-today         0
     2020-03-21 19:35:25   c-tomorrow      4
     2020-03-21 19:35:25   state           t: 4 td: 0 tm: 4
     2020-03-21 19:35:25   t_001_age       1
     2020-03-21 19:35:25   t_001_author    abc.def@gmail.com
     2020-03-21 19:35:25   t_001_bdate     22.03.2020
     2020-03-21 19:35:25   t_001_btime     00:00
     2020-03-21 19:35:25   t_001_daysleft  1
     2020-03-21 19:35:25   t_001_daysleftLong tomorrow
     2020-03-21 19:35:25   t_001_description
     2020-03-21 19:35:25   t_001_edate     23.03.2020
     2020-03-21 19:35:25   t_001_etime     00:00
     2020-03-21 19:35:25   t_001_location  1.1.2019
     2020-03-21 19:35:25   t_001_source    Geburtstage
     2020-03-21 19:35:25   t_001_sourcecolor green
     2020-03-21 19:35:25   t_001_summary   Alfred
     2020-03-21 19:35:25   t_001_timeshort all-day
     2020-03-21 19:35:25   t_001_url       <html><a href="https://www.google.com/calendar/event?eid=aaaaaaa" target="_blank">link</a></html>
     2020-03-21 19:35:25   t_001_weekday   Sunday
     2020-03-21 19:35:25   t_002_age       2
     2020-03-21 19:35:25   t_002_author    abc.def@gmail.com
     2020-03-21 19:35:25   t_002_bdate     22.03.2020
     2020-03-21 19:35:25   t_002_btime     00:00
     2020-03-21 19:35:25   t_002_daysleft  1
     2020-03-21 19:35:25   t_002_daysleftLong tomorrow
     2020-03-21 19:35:25   t_002_description
     2020-03-21 19:35:25   t_002_edate     23.03.2020
     2020-03-21 19:35:25   t_002_etime     00:00
     2020-03-21 19:35:25   t_002_location  1.1.2018
     2020-03-21 19:35:25   t_002_source    Geburtstage
     2020-03-21 19:35:25   t_002_sourcecolor green
     2020-03-21 19:35:25   t_002_summary   abc
     2020-03-21 19:35:25   t_002_timeshort all-day
     2020-03-21 19:35:25   t_002_url       <html><a href="https://www.google.com/calendar/event?eid=aaaaaaa" target="_blank">link</a></html>
     2020-03-21 19:35:25   t_002_weekday   Sunday
     2020-03-21 19:35:25   t_003_age       57
     2020-03-21 19:35:25   t_003_author    abc.def@gmail.com
     2020-03-21 19:35:25   t_003_bdate     22.03.2020
     2020-03-21 19:35:25   t_003_btime     00:00
     2020-03-21 19:35:25   t_003_daysleft  1
     2020-03-21 19:35:25   t_003_daysleftLong tomorrow
     2020-03-21 19:35:25   t_003_description
     2020-03-21 19:35:25   t_003_edate     23.03.2020
     2020-03-21 19:35:25   t_003_etime     00:00
     2020-03-21 19:35:25   t_003_location  1.1.1963
     2020-03-21 19:35:25   t_003_source    Geburtstage
     2020-03-21 19:35:25   t_003_sourcecolor green
     2020-03-21 19:35:25   t_003_summary   test
     2020-03-21 19:35:25   t_003_timeshort all-day
     2020-03-21 19:35:25   t_003_url       <html><a href="https://www.google.com/calendar/event?eid=aaa" target="_blank">link</a></html>
     2020-03-21 19:35:25   t_003_weekday   Sunday
     2020-03-21 19:35:25   t_004_author    abc.def@gmail.com
     2020-03-21 19:35:25   t_004_bdate     22.03.2020
     2020-03-21 19:35:25   t_004_btime     00:00
     2020-03-21 19:35:25   t_004_daysleft  1
     2020-03-21 19:35:25   t_004_daysleftLong tomorrow
     2020-03-21 19:35:25   t_004_description
     2020-03-21 19:35:25   t_004_edate     23.03.2020
     2020-03-21 19:35:25   t_004_etime     00:00
     2020-03-21 19:35:25   t_004_location  MusselDusseel
     2020-03-21 19:35:25   t_004_source    abc.def@gmail.com
     2020-03-21 19:35:25   t_004_sourcecolor brown
     2020-03-21 19:35:25   t_004_summary   Meet Moni in Müssing
     2020-03-21 19:35:25   t_004_timeshort all-day
     2020-03-21 19:35:25   t_004_url       <html><a href="https://www.google.com/calendar/event?eid=aaa" target="_blank">link</a></html>
     2020-03-21 19:35:25   t_004_weekday   Sunday
     2020-03-21 19:35:25   tomorrow_001_age 1
     2020-03-21 19:35:25   tomorrow_001_author abc.def@gmail.com
     2020-03-21 19:35:25   tomorrow_001_bdate 22.03.2020
     2020-03-21 19:35:25   tomorrow_001_btime 00:00
     2020-03-21 19:35:25   tomorrow_001_daysleft 1
     2020-03-21 19:35:25   tomorrow_001_daysleftLong tomorrow
     2020-03-21 19:35:25   tomorrow_001_description
     2020-03-21 19:35:25   tomorrow_001_edate 23.03.2020
     2020-03-21 19:35:25   tomorrow_001_etime 00:00
     2020-03-21 19:35:25   tomorrow_001_location 1.1.2019
     2020-03-21 19:35:25   tomorrow_001_source Geburtstage
     2020-03-21 19:35:25   tomorrow_001_sourcecolor green
.......
     2020-03-21 19:35:25   tomorrow_004_weekday Sunday
   helper:
Attributes:
   ageSource  location
   calendarDays 9
   calendarFilter abc.def@gmail.com,Geburtstage,Reminders
   calendarIncludeStarted Geburtstage
   calendarType standard
   comment    userAttr
calendarFilter:multiple-strict,abc.def@gmail.com,Contacts,Geburtstage,Holidays#in#Germany
   disable    0
   event-on-change-reading to.*_00[1-9]_[be]time:.*
   room       Calendar
   sendMyPush on
   showAge    1
   sourceColor abc.def@gmail.com:brown,Geburtstage:green,Reminders:#EE9A00
   updateInterval 900
   userattr   sendMyPush:on,off calendarFilter:multiple-strict,abc.def@gmail.com,Geburtstage,Holidays#in#Germany,Reminders calendarIncludeStarted:multiple-strict,abc.def@gmail.com,Geburtstage,Holidays#in#Germany,Reminders
   webCmd     update


Auszug aus dem Eventmonitor, bei 2x "set GoogleCalendar update":
2020-03-21 19:49:01 GCALVIEW GoogleCalendar update
2020-03-21 19:49:03 GCALVIEW GoogleCalendar tomorrow_001_btime: 00:00
2020-03-21 19:49:03 GCALVIEW GoogleCalendar tomorrow_001_etime: 00:00
2020-03-21 19:49:03 GCALVIEW GoogleCalendar tomorrow_002_btime: 00:00
2020-03-21 19:49:03 GCALVIEW GoogleCalendar tomorrow_002_etime: 00:00
2020-03-21 19:49:03 GCALVIEW GoogleCalendar tomorrow_003_btime: 00:00
2020-03-21 19:49:03 GCALVIEW GoogleCalendar tomorrow_003_etime: 00:00
2020-03-21 19:49:03 GCALVIEW GoogleCalendar tomorrow_004_btime: 00:00
2020-03-21 19:49:03 GCALVIEW GoogleCalendar tomorrow_004_etime: 00:00
2020-03-21 19:49:04 FBDECT Schalter_DS213 power: 1.07 W
2020-03-21 19:49:04 FBDECT Schalter_iNUC power: 10.01 W
2020-03-21 19:49:04 FBDECT Schalter_PiZero temperature: 23.0 C (measured)
2020-03-21 19:49:10 GCALVIEW GoogleCalendar update
2020-03-21 19:49:11 GCALVIEW GoogleCalendar tomorrow_001_btime: 00:00
2020-03-21 19:49:11 GCALVIEW GoogleCalendar tomorrow_001_etime: 00:00
2020-03-21 19:49:11 GCALVIEW GoogleCalendar tomorrow_002_btime: 00:00
2020-03-21 19:49:11 GCALVIEW GoogleCalendar tomorrow_002_etime: 00:00
2020-03-21 19:49:11 GCALVIEW GoogleCalendar tomorrow_003_btime: 00:00
2020-03-21 19:49:11 GCALVIEW GoogleCalendar tomorrow_003_etime: 00:00
2020-03-21 19:49:11 GCALVIEW GoogleCalendar tomorrow_004_btime: 00:00
2020-03-21 19:49:11 GCALVIEW GoogleCalendar tomorrow_004_etime: 00:00
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 22 März 2020, 18:02:24
Ja das ist richtig. Es werden bei jedem Update alle Einträge gelöscht und neu angelegt. Eventuell könnte man das etwas besser gestalten, bisher hat sich dazu aber keine Notwendigkeit ergeben, da Kalender in der Regel nichts hochdynamisches sind.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 22 März 2020, 18:19:46
ZitatAlso wer das Problem auch hat, verbose 5 einschalten, Link aus Log öffnen und Kalender API aktivieren. Schon läufts wieder...

Bei mir kommt da weiterhin
ZitatDie Anmeldung mit Google ist für diese App vorübergehend deaktiviert
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 22 März 2020, 19:36:30
ZitatJa das ist richtig. Es werden bei jedem Update alle Einträge gelöscht und neu angelegt. Eventuell könnte man das etwas besser gestalten, bisher hat sich dazu aber keine Notwendigkeit ergeben, da Kalender in der Regel nichts hochdynamisches sind.
Danke - dann muss ich das Intervall umstellen, und damit das zugehörige notify.

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 23 Juli 2020, 22:22:27
Zitat von: rabehd am 22 März 2020, 18:19:46
Bei mir kommt da weiterhin

Ich bekomme diese Meldung nun auch seit zwei Tagen. Ich bin nicht ganz sicher, befürchte aber, dass vor zwei Tagen ein Debian-Update mir eine neue Version von GCalcli untergejubelt hat. Ich habe GCalcli 4.1.1.

Muss ich downgraden? Oder gibt es eine Lösungsmöglichkeit mit dieser neueren GCalcli.Version. Mit verbose=5 bekomme ich

ERROR evaluating {GCALVIEW_DoEnd('kalender.gemeinsam||')}: Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 662.

Gruß
Christian
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 23 Juli 2020, 22:47:55
Ich verwende v4.2.0. Ich hoffe daran wird's nicht liegen ausschließen kann ich es aber auch nicht. Ansonsten schau mal ob einer der vor kurzem hinzugefügten Termine ein Semikolon enthält. Damit hat gcalcli leider Probleme, obwohl ich den Bug schon lange reportet habe.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 24 Juli 2020, 08:22:28
Zitat von: mumpitzstuff am 23 Juli 2020, 22:47:55
Ich verwende v4.2.0. Ich hoffe daran wird's nicht liegen ausschließen kann ich es aber auch nicht. Ansonsten schau mal ob einer der vor kurzem hinzugefügten Termine ein Semikolon enthält. Damit hat gcalcli leider Probleme, obwohl ich den Bug schon lange reportet habe.

Das mit dem Semikolon kann ich ausschließen. Am Abfllkalender habe ich seit Januar nichts verändert. Der hat das gleiche Problem wie der Familenkalender, wo ich mir das Semikolon eher vorstellen könnte.

Beide Kalender haben zur gleichen Zeit das Problem bekommen. Ich habe mal die history.log von apt angeschaut. Darin finde ich vom 21. Juli (dürfte der Tag sein, ab dem ich keine Kalenderupdates mehr bekomme) Upgrades für folgende Pakete:


perl-base:armhf (5.24.1-3+deb9u6, 5.24.1-3+deb9u7)
libservlet3.1-java:armhf (8.5.54-0+deb9u1, 8.5.54-0+deb9u2)
libopenjp2-7:armhf (2.1.2-1.1+deb9u4, 2.1.2-1.1+deb9u5)
dbus-x11:armhf (1.10.28-0+deb9u1, 1.10.32-0+deb9u1)
glib-networking-services:armhf (2.50.0-1, 2.50.0-1+deb9u1)
libcups2:armhf (2.2.1-8+deb9u5, 2.2.1-8+deb9u6)
libdbus-1-3:armhf (1.10.28-0+deb9u1, 1.10.32-0+deb9u1)
rake:armhf (10.5.0-2, 10.5.0-2+deb9u1)
libgnutls-openssl27:armhf (3.5.8-5+deb9u4, 3.5.8-5+deb9u5)
erlang-base:armhf (1:19.2.1+dfsg-2+deb9u2, 1:19.2.1+dfsg-2+deb9u3)
glib-networking:armhf (2.50.0-1, 2.50.0-1+deb9u1)
erlang-syntax-tools:armhf (1:19.2.1+dfsg-2+deb9u2, 1:19.2.1+dfsg-2+deb9u3)
dbus:armhf (1.10.28-0+deb9u1, 1.10.32-0+deb9u1)
mariadb-common:armhf (10.1.44-0+deb9u1, 10.1.45-0+deb9u1)
perl-modules-5.24:armhf (5.24.1-3+deb9u6, 5.24.1-3+deb9u7)
nfs-kernel-server:armhf (1:1.3.4-2.1, 1:1.3.4-2.1+deb9u1)
libdbi1:armhf (0.9.0-4+deb9u1, 0.9.0-4+deb9u2)
mariadb-server-core-10.1:armhf (10.1.44-0+deb9u1, 10.1.45-0+deb9u1)
libpython3.5:armhf (3.5.3-1+deb9u1, 3.5.3-1+deb9u2)
python3.5:armhf (3.5.3-1+deb9u1, 3.5.3-1+deb9u2)
python3.5-minimal:armhf (3.5.3-1+deb9u1, 3.5.3-1+deb9u2)
xdg-utils:armhf (1.1.1-1+deb9u1, 1.1.1-1+deb9u2)
python3.5-dev:armhf (3.5.3-1+deb9u1, 3.5.3-1+deb9u2)
cups-common:armhf (2.2.1-8+deb9u5, 2.2.1-8+deb9u6)
glib-networking-common:armhf (2.50.0-1, 2.50.0-1+deb9u1)
mariadb-server-10.1:armhf (10.1.44-0+deb9u1, 10.1.45-0+deb9u1)
libperl5.24:armhf (5.24.1-3+deb9u6, 5.24.1-3+deb9u7)
libexif12:armhf (0.6.21-2+deb9u1, 0.6.21-2+deb9u4)
libneon27-gnutls:armhf (0.30.2-2, 0.30.2-2+deb9u1)
idle-python3.5:armhf (3.5.3-1+deb9u1, 3.5.3-1+deb9u2)
erlang-crypto:armhf (1:19.2.1+dfsg-2+deb9u2, 1:19.2.1+dfsg-2+deb9u3)
libpython3.5-dev:armhf (3.5.3-1+deb9u1, 3.5.3-1+deb9u2)
mariadb-client-10.1:armhf (10.1.44-0+deb9u1, 10.1.45-0+deb9u1)
mariadb-server:armhf (10.1.44-0+deb9u1, 10.1.45-0+deb9u1)
mariadb-client-core-10.1:armhf (10.1.44-0+deb9u1, 10.1.45-0+deb9u1)
libmariadbclient18:armhf (10.1.44-0+deb9u1, 10.1.45-0+deb9u1)
libgnutls30:armhf (3.5.8-5+deb9u4, 3.5.8-5+deb9u5)
perl:armhf (5.24.1-3+deb9u6, 5.24.1-3+deb9u7)
cups-bsd:armhf (2.2.1-8+deb9u5, 2.2.1-8+deb9u6)
libpython3.5-stdlib:armhf (3.5.3-1+deb9u1, 3.5.3-1+deb9u2)
libcupsimage2:armhf (2.2.1-8+deb9u5, 2.2.1-8+deb9u6)
libpython3.5-minimal:armhf (3.5.3-1+deb9u1, 3.5.3-1+deb9u2)
cups-client:armhf (2.2.1-8+deb9u5, 2.2.1-8+deb9u6)
nfs-common:armhf (1:1.3.4-2.1, 1:1.3.4-2.1+deb9u1)
tzdata:armhf (2019c-0+deb9u1, 2020a-0+deb9u1)
influxdb:armhf (1.8.0-1, 1.8.1-1)


Neben MariaDB haben Perl und Python Patches bekommen. Das ganze ist noch Debian 9 (Squeeze).
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 24 Juli 2020, 16:18:25
Was kommt den raus wenn du im terminal den Müllkalender abrufst?

gcalcli agenda 07/24/2020 08/24/2020  --calendar "dein kalender" --details calendar --details calendar --details url --details location --details description --details email --tsv
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 24 Juli 2020, 17:20:57
Zitat von: mumpitzstuff am 24 Juli 2020, 16:18:25
Was kommt den raus wenn du im terminal den Müllkalender abrufst?

gcalcli agenda 07/24/2020 08/24/2020  --calendar "dein kalender" --details calendar --details calendar --details url --details location --details description --details email --tsv

Wenn ich "dein kalender" durch den Namen des Abfallkalenders ("Abfallkalender", egal ob gequoted oder nicht) ersetze und den Befehl als FHEM-User (sudo -u fhem) ausführe, bekomme ich die Oauth-Login-Aufforderung von Google mit Aufforderung zur Eingabe des Verifikations-Token. Das ist soweit korrekt, da es keine .gcalcli_oauth-Datei (mehr) gibt.

Die Anmeldung bei Google scheitert dann mit der schon oben geschriebenen Meldung "Die Anmeldung mit Google ist für diese App vorübergehend deaktiviert. Die Verwendung von Google Log-in wurde für diese App noch nicht bestätigt.".
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 24 Juli 2020, 17:41:02
Dann ist das dein Problem. In den vorhergehenden Beiträgen wurde das Thema schon besprochen. Es ist gelinde gesagt bescheiden. Trotzdem kannst du versuchen es zu lösen. Wenn es misslingt, dann bleibt dir nur auf ein anderes Modul auszuweichen. Ich habe das Problem nicht selbst und kann auch nicht unterstützen, da ich mir meinen aktuell noch funktionierenden Zugriff nicht versauen möchte.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 25 Juli 2020, 11:29:37
So, ich bin mit der Anleitung aus https://github.com/insanum/gcalcli#login-information einen Schritt weitergekommen und kann mit GCalcli nun wieder Termine abrufen - auf der Kommandozeile.

Das FHEM-Modul liefert mir bei bestehendem Login (getestet mit https://github.com/insanum/gcalcli#login-information) nun (wieder) die Meldung, die ich vor ein paar Tagen hatte, bevor ich zur vermeintlichen Problemlösung den Login erneuert habe:
ERROR evaluating {GCALVIEW_DoEnd('kalender.abfall||')}: Can't use string ("") as an ARRAY ref while "strict refs" in use at ./FHEM/57_GCALVIEW.pm line 662.

Ich habe noch einmal geprüft: Ein Semikolon in einem Termin habe ich nicht gefunden. Die Termine im Abfallkalender heißen "Restmüll", "Gelber Sack", "Blaue Tonne" und "BioTonne".
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 25 Juli 2020, 21:18:17
Bist du sicher das du unter dem fhem User die Termine abrufen kannst? Wenn das z.b. als Pi User funktioniert, dann funktioniert es nicht zwangsläufig innerhalb von fhem. Manchmal war es notwendig den Pfad zur Konfiguration mit dem Attribut configFolder anzugeben.

Innerhalb von Fhem kannst du das mal so testen:

{qx(gcalcli list);;}
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: cbl am 26 Juli 2020, 09:01:23
Zitat von: mumpitzstuff am 25 Juli 2020, 21:18:17
Bist du sicher das du unter dem fhem User die Termine abrufen kannst? Wenn das z.b. als Pi User funktioniert, dann funktioniert es nicht zwangsläufig innerhalb von fhem. Manchmal war es notwendig den Pfad zur Konfiguration mit dem Attribut configFolder anzugeben.

Innerhalb von Fhem kannst du das mal so testen:

{qx(gcalcli list);;}

Ein wiederholter Neustart von FHEM hat hier offenbar geholfen. Ich bekomme nun wieder Termine in FHEM angezeigt. Meine Beschreibung aus dem vorherigen Beitrag (https://github.com/insanum/gcalcli#login-information) ist damit die Lösung gewesen. Man braucht (zumindest zukünftig) die Client-ID und den Client-Key für neue Authentifizierungen und muss diese in der Datei .gcalclirc im Homeverzeichnis des FHEM-Users ablegen, bevor man den Verifikationstoken anfordert.
Stolperstein ist dann noch, dass diese Methode nicht bei allen API-Typen funktioniert. Es muss eine "native" API sein. Ich habe dafür noch ein altes Projekt vom Typ "andere" verwendet. Diesen Typ kann man aber mittlerweile auf der Google-Seite nicht mehr auswählen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 27 Juli 2020, 00:47:27
https://github.com/aristosv/google_auth/blob/master/README.md (https://github.com/aristosv/google_auth/blob/master/README.md)

Das hier hilft eventuell auch weiter.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Aladin222 am 02 November 2020, 13:53:59
Hallo zusammen ,

ich quäle mich gerade auch durch die blöde Verifizierung ....leider immer noch erfolglos !
OK, wenn ich mein eigenes Projekt anlege usw. dann erhalte ich die zwei keys ( Client ID und Client Secret )
wo hinterlege ich sie ? In welchem File und wie muss das von syntax her aussehen ....?
Wäre prima, wenn hier hier jemand weiter helfen könnte !
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 02 November 2020, 23:24:11
sudo -u fhem gcalcli list --client_id=xxxxxxxxxxxxxxx.apps.googleusercontent.com --client_secret=xxxxxxxxxxxxxxxxx


oder

sudo -u fhem gcalcli list --client-id=xxxxxxxxxxxxxxx.apps.googleusercontent.com --client-secret=xxxxxxxxxxxxxxxxx


Mit dem Standard Weg wie in Beitrag 1 beschrieben hast du es schon versucht? Ich hatte gehofft, das die das irgendwann noch mal in den Griff bekommen würden. Bei mir funktioniert alles immer noch, deshalb kann ich da nix rum fummeln.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Aladin222 am 03 November 2020, 05:32:22
Hallo und guten morgen :-)

Ja den Standardweg habe ich versucht ! Kam aber leider immer das die app nicht unterstützt wird ....

Habe nun mal meine client-id und client-secret probiert :

da kommt unter anderem folgende Fehlermeldung

/usr/lib/python3/dist-packages/oauth2client/_helpers.py:255: UserWarning: Cannot access /home/fhem/.gcalcli_oauth: No such file or directory
  warnings.warn(_MISSING_FILE_MESSAGE.format(filename))


und ein Link ...wenn ich den im Browser ausführe kommt:

Fehler 400: redirect_uri_mismatch
The redirect URI in the request, http://localhost:8090/, does not match the ones authorized for the OAuth client. To update the authorized redirect URIs, visit: https://console.developers.google.com/apis/credentials/oauthclient/${your_client_id}?project=${your_project_number}


was mich da am meisten verwirrt ist das http://localhost:8090   ???
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 03 November 2020, 08:24:21
/home/fhem... sieht schon mal komisch aus. In welchem Verzeichnis befindest du dich, wenn du den Befehl ausführst? Du solltest dich im FHEM Verzeichnis befinden, also dort wo auch die fhem.pl zu finden ist (/opt/fhem). Wenn es trotzdem nicht klappt, kannst du mal versuchen den config folder mit anzugeben:

--configFolder /opt/fhem

hinten an den Befehl dran hängen.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Aladin222 am 03 November 2020, 14:38:23
Hi @mumpitzstuff,

erstmal vielen Dank ,das du mithilfst ! :-)

Wollte heute morgen nur fix deinen Lösungsansatz ausprobieren ( war direkt nach der Nachtschicht ).

Also, meine normale Umgebung im Terminal nach dem einloggen als fhem User ist home/fhem dort befindet sich auch gcalcli
Mit dem Befehl

sudo -u fhem gcalcli list --client-id=xxxxxxxxxxx-2v7pnmc0ecptohtj0bmhgl2q35ti3a35.apps.googleusercontent.com --client-secret=x-xxxxxx_w8hQODL2H6mlazn

oder

sudo -u fhem gcalcli --config-Folder /opt/fhem list --client-id=xxxxxxxxxxx-2v7pnmc0ecptohtj0bmhgl2q35ti3a35.apps.googleusercontent.com --client-secret=x-xxxxxx_w8hQODL2H6mlazn

bekomme ich jeweils einen Link im Terminal erstellt, den ich dann im Browser nutze !
Zuerst bekomme ich eine Auswahl ,mein Googlekonto auszuwählen - das sieht richtig gut aus ...
Dann kommt folgende Meldung :

Diese App wurde nicht überprüft

Diese App wurde noch nicht von Google überprüft. Sie sollten nur fortfahren, wenn Sie den Entwickler als vertrauenswürdig ansehen.

Wenn Sie der Entwickler sind, reichen Sie eine Überprüfungsanfrage ein, um diesen Bildschirm entfernen zu lassen. Weitere Informationen

mit dem Button "erweitert" komme ich dann noch auf folgende Seite :

Diese App wurde noch nicht von Google überprüft, deshalb kann ihre Echtheit nicht bestätigt werden. Nicht überprüfte Apps können eine Gefahr für Ihre personenbezogenen Daten darstellen. Weitere Informationen

gcalcli öffnen (unsicher)

Also klicke ich den Button gcalcli öffnen ...

Jetzt sieht es echt so aus ,als wenn ich am Ziel wäre !!!
Es öffnet sich ein popup :


gcalcli Zugriff gewähren

Alle Kalender, die über Google Kalender verfügbar sind, aufrufen, bearbeiten, freigeben und endgültig löschen


Zulassen
Ablehnen



Natürlich bestätige ich mit zulassen ....

Auswahl bestätigen

renebartels212@gmail.com
Sie haben gcalcli folgende Berechtigungen erteilt:
Alle Kalender, die über Google Kalender verfügbar sind, aufrufen, bearbeiten, freigeben und endgültig löschen
gcalcli vertrauen?
Eventuell teilen Sie vertrauliche Informationen mit dieser Website oder App.In den Nutzungsbedingungen und der Datenschutzerklärung von gcalcli erfahren Sie alles zum Umgang mit Ihren Daten. In Ihrem Google-Konto können Sie die Zugriffsberechtigungen jederzeit einsehen oder entfernen.
Weitere Informationen zu den Risiken

Zulassen

Abbrechen
‪Deutsch‬



Auch das kann ich noch mit zulassen bestätigen !

Jetzt kommt leider die Ernüchterung :
Ich bekomme im Browser eine Fehlermeldung , das Safari keine Verbindung zum Server aufbauen kann .....grummel :-(

Safari kann die Seite ,,‎localhost:8090/?code=4/xxxxxxxxx-ydHjYut5quMhdDW1u-o3xxxxxxxmqT1Rac2lZCt-E&amp;scope=https://www.googleapis.com/auth/calendar" nicht öffnen, da Safari keine Verbindung zum Server ,,localhost" aufbauen kann

( Code habe ich mal an ein paar Stellen ausgeXt )

Meine Fhem Installation läuft auf einem Intel NUC in meinem Netzwerk , so wie ich es verstehe , hat Google versucht die Freigabe zu setzten , kommt aber auf den NUC nicht drauf ....sry das mit dem Localhost:8090 raffe ich nicht :-(
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 03 November 2020, 22:21:54
--noauth_local_webserver


Häng das mal hinten dran bitte. Dadurch wird ein lokaler Webserver aufgebaut, vermutlich genau das womit Google eine Verbindung aufbauen möchte.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Aladin222 am 03 November 2020, 23:46:09
Danke ! Versuche ich direkt morgen früh ...hänge noch auf der Nachtschicht *heul

(Edit)
Guten Morgen :-)

kurze Rückmeldung :
einfach hinten dran ging nicht , aber es läuft davor :-) Danke für deine Hilfe ....rest teste ich nach dem pennen :-)

sudo -u fhem gcalcli --noauth_local_webserver list --client-id=xxxxxxxxx-e8ldsjh7xxxxxxxxx2lo9v5.apps.googleusercontent.com --client-secret=xxxxxxxxxxxxxx
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Aladin222 am 05 November 2020, 22:04:13
Hallo zusammen ,

soweit rennt es nun auch bei mir :-)
Nun hätte ich aber direkt noch eine Frage :
Mit filterSource kann ich ja einen Match unterdrücken , gibt es auch eine Möglichkeit , mehrere zu unterdrücken ?
Mit Abfall,Schicht .... hatte ich probiert ....geht leider nicht
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 05 November 2020, 22:43:31
Das ist ein regex. Versuch mal:

Abfall|Schicht
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Aladin222 am 05 November 2020, 23:03:24
Super Danke ! funzt :-)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Aladin222 am 08 November 2020, 15:55:29
Hallo zusammen ,

ich bastel mir gerade einen Schichtkalender ,der aus Früh,Frei,Spät und Nachtschichten besteht.
Das lasse ich mir auch in einer readingsgroup anzeigen ...

Leider kann ich ja nur eine Sourcecolor vergeben ,womit dann in der Readingsgroup z.b. nur die Farbe blau angezeigt wird :-(
Wie bekomme ich es hin , das in der Readingsgroup nur die Nachtschicht blau angezeigt wird und Frühschichten in gelb usw. ?


Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Kusselin am 14 November 2020, 12:03:26
Hi, habe das Problem...wenn ich diesen Befehl eingebe
sudo -u fhem gcalcli --noauth_local_webserver list

und dann den Link kopiere und ich mich mit meinem Google Konto anmelden will komt die Meldung:

Die Anmeldung mit Google ist für diese App vorübergehend deaktiviert
Die Verwendung von Google Log-in wurde für diese App noch nicht bestätigt


Könnt Ihr mir sagen was ich da machen muss?

Danke
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 14 November 2020, 20:17:21
Zitat von: Aladin222 am 08 November 2020, 15:55:29
Hallo zusammen ,

ich bastel mir gerade einen Schichtkalender ,der aus Früh,Frei,Spät und Nachtschichten besteht.
Das lasse ich mir auch in einer readingsgroup anzeigen ...

Leider kann ich ja nur eine Sourcecolor vergeben ,womit dann in der Readingsgroup z.b. nur die Farbe blau angezeigt wird :-(
Wie bekomme ich es hin , das in der Readingsgroup nur die Nachtschicht blau angezeigt wird und Frühschichten in gelb usw. ?

Die ReadingGroup hat einen valueStyle, damit könnte das gehen. Dort müsstest du in Abhängigkeit vom Inhalt oder ähnlichem die entsprechend Farbe setzen können.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 14 November 2020, 20:21:28
Zitat von: Kusselin am 14 November 2020, 12:03:26
Hi, habe das Problem...wenn ich diesen Befehl eingebe
sudo -u fhem gcalcli --noauth_local_webserver list

und dann den Link kopiere und ich mich mit meinem Google Konto anmelden will komt die Meldung:

Die Anmeldung mit Google ist für diese App vorübergehend deaktiviert
Die Verwendung von Google Log-in wurde für diese App noch nicht bestätigt


Könnt Ihr mir sagen was ich da machen muss?

Danke

Das ist leider ziemlich bescheiden... Schau mal bitte hier nach, das scheint aktuell die einzige Möglichkeit zu sein gcalcli noch zu verwenden:

https://forum.fhem.de/index.php/topic,77502.msg1023613.html#msg1023613 (https://forum.fhem.de/index.php/topic,77502.msg1023613.html#msg1023613)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: fabse am 06 Dezember 2020, 17:33:14
Zitat von: mumpitzstuff am 14 November 2020, 20:21:28
Das ist leider ziemlich bescheiden... Schau mal bitte hier nach, das scheint aktuell die einzige Möglichkeit zu sein gcalcli noch zu verwenden:

https://forum.fhem.de/index.php/topic,77502.msg1023613.html#msg1023613 (https://forum.fhem.de/index.php/topic,77502.msg1023613.html#msg1023613)

ne, geht bei mir nicht....
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 06 Dezember 2020, 21:01:59
Was geht denn nicht?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 01 Februar 2021, 20:43:24
ZitatSchau mal bitte hier nach, das scheint aktuell die einzige Möglichkeit zu sein gcalcli noch zu verwenden:
Habs gerade probiert,
gcalcli geht nach der genauen Anleitung von Aurisnoctis, https://github.com/insanum/gcalcli/issues/580, -> Steps, loosely following comment #497 (comment)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Thurindot am 09 Februar 2021, 13:54:33
Moin.

Ich hab mich heute mit dem Modul beschäftigt, durch die Google-"Umgehung" gekämpft und auch Device inkl Readings im FHEM vorhanden. Um so mehr ärgere ich mich, dass ich offenbar einen Fehler in der ReadingsGroup übersehe.
Ich hab das Beispiel aus dem Eingangsposting gewählt und bekomme auch die Tabelle funktional angezeigt, inkl benutzerdefinierten Farben und Co. Trotzdem bekomme ich über der Liste weiterhin die Ausgabe der einzelnen Rohdaten der Termine untereinander weg angezeigt...

Sprich: erst die ganzen "Rohdaten" und dann das Listenelement der ReadingsGroup. Und mir will partout der Fehler nicht auffallen.


defmod rg_KALENDER readingsGroup GoogleCal <Datum>,<Tag>,<Zeit>,<Termin>,<Ort>\
GoogleCal:t_001_bdate,t_001_weekday,t_001_timeshort,t_001_summary,t_001_location\
GoogleCal:t_002_bdate,t_002_weekday,t_002_timeshort,t_002_summary,t_002_location\
GoogleCal:t_003_bdate,t_003_weekday,t_003_timeshort,t_003_summary,t_003_location\
GoogleCal:t_004_bdate,t_004_weekday,t_004_timeshort,t_004_summary,t_004_location\
GoogleCal:t_005_bdate,t_005_weekday,t_005_timeshort,t_005_summary,t_005_location\
GoogleCal:t_006_bdate,t_006_weekday,t_006_timeshort,t_006_summary,t_006_location\
GoogleCal:t_007_bdate,t_007_weekday,t_007_timeshort,t_007_summary,t_007_location\
GoogleCal:t_008_bdate,t_008_weekday,t_008_timeshort,t_008_summary,t_008_location\
GoogleCal:t_009_bdate,t_009_weekday,t_009_timeshort,t_009_summary,t_009_location\
GoogleCal:t_010_bdate,t_010_weekday,t_010_timeshort,t_010_summary,t_010_location\
GoogleCal:t_011_bdate,t_011_weekday,t_011_timeshort,t_011_summary,t_011_location\
GoogleCal:t_012_bdate,t_012_weekday,t_012_timeshort,t_012_summary,t_012_location\
GoogleCal:t_013_bdate,t_013_weekday,t_013_timeshort,t_013_summary,t_013_location\
GoogleCal:t_014_bdate,t_014_weekday,t_014_timeshort,t_014_summary,t_014_location\
GoogleCal:t_015_bdate,t_015_weekday,t_015_timeshort,t_015_summary,t_015_location\
GoogleCal:t_016_bdate,t_016_weekday,t_016_timeshort,t_016_summary,t_016_location\
GoogleCal:t_017_bdate,t_017_weekday,t_017_timeshort,t_017_summary,t_017_location\
GoogleCal:t_018_bdate,t_018_weekday,t_018_timeshort,t_018_summary,t_018_location\
GoogleCal:t_019_bdate,t_019_weekday,t_019_timeshort,t_019_summary,t_019_location\
GoogleCal:t_020_bdate,t_020_weekday,t_020_timeshort,t_020_summary,t_020_location
attr rg_KALENDER nameStyle style="font-weight:bold;;text-decoration:underline;;"
attr rg_KALENDER nonames 1
attr rg_KALENDER notime 1
attr rg_KALENDER room Kalender
attr rg_KALENDER valueFormat {\
  if ($READING =~ /bdate$/)\
  {\
    my $readingStart = $READING;;\
    $readingStart =~ s/bdate$//;;\
    if (0 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))\
    {\
      "Heute";;\
    }\
    elsif (1 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))\
    {\
      "Morgen";;\
    }\
    else\
    {\
      # the follwoing line strips the year of the date (remove it if needed)\
      substr($VALUE, 0, 5);;\
    }\
  }\
  elsif ($READING =~ /weekday$/)\
  {\
    my $readingStart = $READING;;\
    $readingStart =~ s/weekday$//;;\
    \
     # the follwoing line strips the weekday down to 3 chars (remove it if needed)\
    substr($VALUE, 0, 3);;\
  }\
  elsif ($READING =~ /summary$/)\
  {\
    my $readingStart = $READING;;\
    $readingStart =~ s/summary$//;;\
    my $link = ReadingsVal($DEVICE, $readingStart.'url', '');;\
    my $age = ReadingsVal($DEVICE, $readingStart.'age', undef);;\
    my $style = 'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "blue").'"';;\
    if (defined($age))\
    {\
      $link =~ s/\>link\</ $style\>$VALUE \($age\)\</;;\
    }\
    else\
    {\
      $link =~ s/\>link\</ $style\>$VALUE\</;;\
    }\
    $link;;\
  }\
}
attr rg_KALENDER valueStyle {\
  my $readingStart = $READING;;\
  $readingStart =~ s/(t_\d+_).+/$1/;;\
  'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "green").'"'\
}



... vllt erbarmt sich ja jemand und stößt mich mit der Nase auf das fehlende Komma, o.ä. ....

Danke.
Thuri
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 09 Februar 2021, 20:41:06
Bei mir sieht die erste Zeile so aus:

defmod rg_Dienstplan readingsGroup <Datum>,<Tag>,<Zeit>,<Termin>,<Ort>\

ich würde daher vermuten, das "GoogleCal" nicht dahin gehört, also es so aussehen müsste:

defmod rg_KALENDER readingsGroup <Datum>,<Tag>,<Zeit>,<Termin>,<Ort>\

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Thurindot am 10 Februar 2021, 11:40:12
Ich wusste, es ist irgendein "Unsinn" ...  ::)

Statt das Device mit GoogleCal als Bezug zu definieren, so wie ich dachte, hab ich da das Device nochmal ausgelesen. Daher das Reading nochmal.
Oh man, danke sehr.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 24 Februar 2021, 11:54:24
Mit der genauen Anleitung von Aurisnoctis, https://github.com/insanum/gcalcli/issues/580, -> nach "Steps, loosely following comment #497 (comment)", kann man den googlecalender mit diesem modul ( gcalcli ) weiter verwenden, allerdings muss man den Token jede Woche oder nach 10 Tage erneuern.

Kennt da jemand Abhilfe? Ich bekomme immer folgenden Fehler, und muss dann die Authentifizierung erneuern.

Zitatoauth2client.client.HttpAccessTokenRefreshError: invalid_grant: Token has been expired or revoked.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Invers am 26 Dezember 2021, 20:00:47
nicht mewhr funktioniert.

Ich bekomme aber beiu Punkt 3 der Anleitung aus dem ersten Post folgende Fehlermeldung:

Diese App ist blockiert
Diese App hat versucht, auf vertrauliche Daten in Ihrem Google-Konto zuzugreifen. Zum Schutz Ihres Kontos haben wir den Zugriff blockiert.


Bei der Paketinstllation verlief alles folgendermassen:

sudo apt-get install gcalcli
Ergebnis: gcalcli ist schon die neueste Version (4.3.0-1)

Ich weiss nicht, ob das notwendig ist, weil es nicht erläutert wurde, aber ich habes versucht:
sudo apt-get install git python-pip python-gdata python-dateutil python-gflags python-vobject python-parsedatetime

Ergebni:
Paket python-pip ist nicht verfügbar, wird aber von einem anderen Paket
referenziert. Das kann heißen, dass das Paket fehlt, dass es abgelöst
wurde oder nur aus einer anderen Quelle verfügbar ist.
Doch die folgenden Pakete ersetzen es:
  python3-pip

E: Für Paket »python-pip« existiert kein Installationskandidat.
E: Paket python-gdata kann nicht gefunden werden.
E: Paket python-dateutil kann nicht gefunden werden.
E: Paket python-gflags kann nicht gefunden werden.
E: Paket python-vobject kann nicht gefunden werden.
E: Paket python-parsedatetime kann nicht gefunden werden.


gcalcli --version
Ergebnis: gcalcli v4.3.0 (Eric Davis, Brian Hartvigsen, Joshua Crowgey)


sudo -u fhem gcalcli --noauth_local_webserver list

Ich habe den Code in den Browsedr kopiert. nun kommt nach der Auswahl des Googlekontos die folgende Fehlermeldung im Browser:
Diese App ist blockiert

Diese App hat versucht, auf vertrauliche Daten in Ihrem Google-Konto zuzugreifen. Zum Schutz Ihres Kontos haben wir den Zugriff blockiert.

Was kann/muss ich tun?
Bei Google wird gcalview als erlaubt gelistet.

DAnke im Voraus für die Hilfe.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 26 Dezember 2021, 20:15:55
https://github.com/insanum/gcalcli/issues/598 (https://github.com/insanum/gcalcli/issues/598)
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Invers am 26 Dezember 2021, 22:29:04
DAnke.
Ist das denn nötig? Ich habe einen Key. Den kann man aber nicht in Putty eingeben. Leider auch nicht in gcalview in fhem.
Kann ich denn den bestehenden Schlüssel nicht verwenden?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 27 Dezember 2021, 00:53:57
Wenn Google sagt das der Zugang geblockt wird kaum. Anscheinend wird ja der generierte Code schon geschickt, wird aber von Google dann abgelehnt wenn ich das richtig verstanden habe. In dem Ticket meinte noch jemand, das es vielleicht mit einem anderen Browser geht. Hast du das mal probiert?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Invers am 27 Dezember 2021, 10:29:36
Ich habe noch einmal mein altes System angeschlossen. Dort funktioniert nach wie vor alles korrekt.
Ich traue mich nicht, den Weg im Link zu gehen, da dann vielleicht gar keine Version mehr funktioniert.
Verschidene Browser haben auch nichts gebracht.
Ich werde wohl mein altes System wieder verwenden, da ich keine Lösung finden kann.
Dann erstmal vielen Dank.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 27 Dezember 2021, 11:28:12
Such doch mal auf deinem alten System das versteckte Verzeichnis .gcalcli_oauth und .gcalcli_cache. Kannst du die beiden Verzeichnisse + Inhalt auf das neue System übertragen? Vergiss nicht die Rechte richtig zu setzen. Eventuell musst du auch im neuen System das Verzeichnis als Attribut konfigurieren. Ich glaube configFolder oder sowas war das.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Invers am 27 Dezember 2021, 12:09:22
Die daten liegen bei mir im fhem-Ordner. Configfolder ist da nicht nötig, war im alten System auch nicht.
Die Daten habe ich kopiert und die Rechte zugewiesen. Hat leider auch nichts gebracht.
Ich brauche dann zwar keinen Google-code mehr, aber fhem meckert.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 27 Dezember 2021, 21:50:05
Was genau sagt fhem denn? Werden die Ordner überhaupt gefunden und verwendet?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Invers am 27 Dezember 2021, 21:58:39
Das kann ich dir nicht mehr sagen. Ich habe bereits die Installation archiviert und nutze die alte Installation weiter. Ich hatte noch einmal mit einem frisch installierten Bulleye und fhem probiert, ohne Rücksicherungen. aber das hat ebenfalls diesen Fehler hervorgerufen. Ich habe dann versucht, die Anleitung im Link zu befolgen, aber das funktioniert nicht. Meine Englischkenntnisse sind zu schlecht und die ganzen Abbildungen entsprechen nicht dem aktuellen Stand. Auch mit Englisch kann man dieser Anleitung ohne Vorkenntnisse nicht befolgen.

Ich werde mir wohl kein Backup mehr erstellen, da das Rückspielen nicht richtig funktioniert. Es sind zu viele Fallen. Ich mache künftig wieder ein Image von der ssd. Das kann ich zuverlässig zurückspielen und alles läuft. Ein neues Betriebssystem bekomme ich so natürlich nicht.
Solle aber trotzdem jemand noch eine zündende Idee haben, spiele ich das Image wieder auf. Ist kein Problem.

Danke für deine Unterstützung.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: shamal2008 am 19 August 2022, 20:48:47
Hallo in die Runde,

gibt es irgendwelchen neuen Erkenntnisse? - ich bekomme, egal wie oft ich neue Apps anlege und/oder nach Thread #497 ff. versuche einzurichten, immer "Die App wurde von Google geblockt".

Habt ihr zwischenzeitlich einen Erfolg gelandet?

Danke,
Shamal
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 20 August 2022, 22:45:54
Vielleicht hilft Dir das:
"Die App wurde von Google geblockt" habe ich, wenn ich mit GCALVIEW ein update mache, der dann fehlschlägt, und ich den den google link "Go to the following link in your browser:" mit dem falschen User generiere.
Also "export PYTHONIOENCODING=utf8 && gcalcli agenda ..." muss als user fhem ausgeführt werden, dann läufts bei mir durch. Schlecht erklärt, vielleicht hilft Dir das trotzdem.

Also "su - fhem"  -> "export PYTHONIOENCODING=utf8 && gcalcli agenda ..." -> als user fhem -> Go to the following link in your browser: "https://accounts.google.com/o/oauth2/v2/auth..." -> dann kannst Du im google Browser den Verification code generieren, und bei "Enter verification code:" eingeben.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Depechem am 22 August 2022, 10:41:27
Hallo zusammen,
ich habe seit langen folgende Fehlermeldungen täglich im Log.
Verbose ist auf 1 in global gesetzt. Im Modul selber nicht.

2022.08.20 23:34:47.098 1: PERL WARNING: Argument "'59" isn't numeric in addition (+) at ./FHEM/57_Calendar.pm line 536, <GEN4143793> line 1.
2022.08.20 23:34:47.098 1: PERL WARNING: Argument "23:59" isn't numeric in addition (+) at ./FHEM/57_Calendar.pm line 536, <GEN4143793> line 1.
2022.08.21 00:00:00.153 1: PERL WARNING: Argument "'59" isn't numeric in addition (+) at ./FHEM/57_Calendar.pm line 536, <GEN4145791> line 1.
2022.08.21 00:00:00.154 1: PERL WARNING: Argument "23:59" isn't numeric in addition (+) at ./FHEM/57_Calendar.pm line 536, <GEN4145791> line 1.
2022.08.21 05:34:47.283 1: PERL WARNING: Argument "'59" isn't numeric in addition (+) at ./FHEM/57_Calendar.pm line 536, <GEN4172446> line 1.
2022.08.21 05:34:47.284 1: PERL WARNING: Argument "23:59" isn't numeric in addition (+) at ./FHEM/57_Calendar.pm line 536, <GEN4172446> line 1.
2022.08.21 11:34:47.432 1: PERL WARNING: Argument "'59" isn't numeric in addition (+) at ./FHEM/57_Calendar.pm line 536, <GEN4202161> line 1.
2022.08.21 11:34:47.433 1: PERL WARNING: Argument "23:59" isn't numeric in addition (+) at ./FHEM/57_Calendar.pm line 536, <GEN4202161> line 1.


könnt ihr mir sagen was dies bedeutet und ob ich diese Meldungen ingnorieren kann?
Wie bekomme ich sie weg?

Vielen Dnak im Voraus.
Gruß Thomas
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: rabehd am 22 August 2022, 11:02:52
Das wäre doch ein anderes Modul.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Depechem am 22 August 2022, 12:59:55
Zitat von: rabehd am 22 August 2022, 11:02:52
Das wäre doch ein anderes Modul.

oh tut mir leid, falscher Bereich
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Sommerfeld am 19 Februar 2023, 20:51:19
Hallo zusammen,
ich versuche das Modul bei mir zum Laufen zu bringen. Leider kommt bei der Anmeldung beim Google Konto
die Fehlermeldung:
"Zugriff blockiert: Die Anfrage von gcalcli ist ungültig".
Der Versuch, wie im Post #485 beschrieben geht auch nicht.
Gibt es eine andere Lösung, die ich versuchen könnte?
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 19 Februar 2023, 23:19:58
https://forum.fhem.de/index.php/topic,77502.msg1232222.html#msg1232222

Hattest du das auch schon probiert? Ich kann leider nicht weiter helfen, da es sonst bei mir eventuell auch nicht mehr funktioniert und das möchte ich nicht riskieren.
Wenn das auch fehl schlägt, könntest du noch auf das andere Kalender Modul ausweichen, aber damit kenne ich mich leider gar nicht aus.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Sommerfeld am 20 Februar 2023, 08:41:21
Ja, das hatte ich schon probiert. Ohne Erfolg. Das andere Kalender Modul
habe ich auch, ist aber für meine Zwecke nicht so komfortabel.
Vielleicht hat noch jemand einen Tipp für mich.
Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: Jamo am 20 Februar 2023, 15:14:17
Hast Du das auch gemacht?
https://forum.fhem.de/index.php/topic,77502.msg1128191.html#msg1128191

Damit läufts bei mir, aber ich muss alle 8 Tage neu verifizieren, weil die App bei google bei mir nur als developer-app eingetragen ist..

Titel: Antw:Neues Modul: 57_GCALVIEW Google Kalender Viewer (+Abfall Kalender)
Beitrag von: mumpitzstuff am 20 Februar 2023, 21:04:27
Ich habe grad nochmal geschaut, aber in der Developer Konsole habe ich eine App mit dem Namen gcalcli erstellt und die Google Calendar API hinzugefügt und bei meinem Google Account sehe ich das was ich angehangen habe.