Modul für Terminansicht CALVIEW

Begonnen von chris1284, 08 Februar 2014, 13:18:31

Vorheriges Thema - Nächstes Thema

chris1284


skopel84

Hi zusammen
Bei mir werden die Termine nicht sauber als Tabelle angezeigt sondern eher als wirre Liste.


define Termine Calendar ical url https://calendar.google.com/calendar/ical/xxxxxxxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxc.ics 3600
attr Termine group Termine
attr Termine room Kalender

define Kalenderansicht CALVIEW Termine 1
attr Kalenderansicht group Termine
attr Kalenderansicht modes next
attr Kalenderansicht room Kalender

define RG_Kalenderansicht readingsGroup <Zeile>,<Start>,<Start Zeit>,<Summary>,<Ende>,<End Zeit> Kalenderansicht
attr RG_Kalenderansicht group Termine
attr RG_Kalenderansicht mapping %READING
attr RG_Kalenderansicht noheading 1
attr RG_Kalenderansicht nonames 1
attr RG_Kalenderansicht nostate 1
attr RG_Kalenderansicht notime 1
attr RG_Kalenderansicht room Kalender


Sorry das ich erst nach Hilfe frage und dann so ein Geheimnis machen  :o

Danke im Voraus

chris1284

da fehlt nur noch die definition des at / notify welches die rg füllt ;-)

skopel84

Und ich glaube genau das ist das Problem :-[

Wenn den code aus dem ersten Link übernehme und kopiere bekomme ich folgende Fehlermeldung

ERROR:

Unknown command my, try help. Unknown command my, try help. Unknown command for($i=, try help. Unknown command $i<=, try help. Unknown command $i++){, try help. Unknown command $modtext, try help. Unknown command }, try help. Unknown command for($i=, try help. Unknown command $i<=, try help. Unknown command $i++){, try help. Unknown command $modtext, try help. Unknown command }, try help. Unknown command for($i=, try help. Unknown command $i<=, try help. Unknown command $i++){, try help. Unknown command $modtext, try help. Unknown command }, try help. Unknown command fhem("modify, try help. Unknown command fhem("SAVE"), try help. Unknown command }, try help

chris1284

du musst er das leere notify definieren

define ntf_ViewAll notify View_All:t:.* {}

danach editierst du es und fügst zwischen den
Zitat{ }
den code ein my $i; ..... usw usw

skopel84

Vielen Vielen Dank.
Das war scheinbar der Hinweiß der gefehlt hat.

Super :)

Daergg

Guten Tag,

ich konnte bereits erfolgreich einen Google-Kalender und eine CALVIEW mit anschließender ReadingsGroup anlegen.

Dazu habe Ich aber noch eine Frage. Wie kann Ich die Termine aus dem Kalender mit Wochentagen (z.B. 01.11.16 Dienstag )anzeigen lassen?

Zur Zeit bekomme Ich nur das Datum (01.11.2016) und das Ereignis angezeigt.

Vielen Dank für die Unterstützung.

Gruß

chris1284

aktuell garnicht da es keine quelle gibt die den wochentag namentlich liefert. datetime / Time::Local sollte das aber realisierbar sein

uniqueck

@chris: siehe Abfallmodul da habe ich das auch umgesetzt und auch konfigurierbar gemacht, so dass selber gewählt werden kann, möchte ich ausgeschriebene Readings für die Wochentage oder lieber nur Mo Di Mi, .....
kannste quasi eins zu eins übernehmen.

Gruß Constantin

HenrikAachen

#714
Hi,

anscheinend bin ich auch zu blöd. Muss dazu sagen, dass ich absoluter Neuling bin.
Anbei meine Config:


define Kalenderansicht CALVIEW iCloud_family 1
attr Kalenderansicht alias Termine
attr Kalenderansicht group Termine
attr Kalenderansicht modes next
attr Kalenderansicht room Kalender

define RG_Kalenderansicht readingsGroup <Zeile>,<Start>,<Start Zeit>,<Summary>,<Ende>,<End Zeit> Kalenderansicht
attr RG_Kalenderansicht group Termine
attr RG_Kalenderansicht mapping %READING
attr RG_Kalenderansicht noheading 1
attr RG_Kalenderansicht nonames 1
attr RG_Kalenderansicht nostate 1
attr RG_Kalenderansicht notime 1
attr RG_Kalenderansicht room Kalender


define kalenderTermine readingsGroup <%time_calendar>,<Text>,<Zuletzt erfasst> myView
attr kalenderTermine alias Termine
attr kalenderTermine group Termine
attr kalenderTermine mapping %READING
attr kalenderTermine room Kalender
define ntf_ViewAll notify View_All:t:.* {my $i;; \
my $modtext = "<Datum>,<Zeit>,<Termin>,<Ort>,<Quelle> ";;\
\
for($i= 1;;$i<= ReadingsVal("View_All","c-today", 0);;$i++){\
$modtext .= "View_All:<Heute>,today_".sprintf('%03d',$i)."_btime,today_".sprintf('%03d',$i)."_summary,today_".sprintf('%03d',$i)."_location,today_".sprintf('%03d',$i)."_source ";;}\
\
for($i= 1;;$i<= ReadingsVal("View_All","c-tomorrow", 0);;$i++){\
$modtext .= "View_All:<Morgen>,tomorrow_".sprintf('%03d',$i)."_btime,tomorrow_".sprintf('%03d',$i)."_summary,tomorrow_".sprintf('%03d',$i)."_location,tomorrow_".sprintf('%03d',$i)."_source ";;}\
\
for($i= 1;;$i<= ReadingsVal("View_All","c-term", 0);;$i++){\
$modtext .= "View_All:t_".sprintf('%03d',$i)."_bdate,t_".sprintf('%03d',$i)."_btime,t_".sprintf('%03d',$i)."_summary,t_".sprintf('%03d',$i)."_location,t_".sprintf('%03d',$i)."_source ";;}\
\
fhem("modify rg_View_All $modtext");;\
fhem("SAVE");;\
}}




Es wird nicht gefüllt mit den Inhalten. Sehe kann ich sie aber unter den Terminen bei meiner Calview.


steimer-vl

#715
Hallo zusammen,

leider komme ich ohne Unterstützung nicht mehr weiter.

Habe wie im ersten Post angegeben eine ReadingGroup "rg_myCalView" angelegt und folgendes notify:


myCalView:t:.* {
my $i;
my $modtext = "<Datum>,<Zeit>,<Termin>,<Ort>,<Quelle> ";

for($i= 1;$i<= ReadingsVal("myCalView","c-today", 0);$i++){
$modtext .= "myCalView:<Heute>,today_".sprintf('%03d',$i)."_btime,today_".sprintf('%03d',$i)."_summary,today_".sprintf('%03d',$i)."_location,today_".sprintf('%03d',$i)."_source ";}

for($i= 1;$i<= ReadingsVal("myCalView","c-tomorrow", 0);$i++){
$modtext .= "myCalView:<Morgen>,tomorrow_".sprintf('%03d',$i)."_btime,tomorrow_".sprintf('%03d',$i)."_summary,tomorrow_".sprintf('%03d',$i)."_location,tomorrow_".sprintf('%03d',$i)."_source ";}

for($i= 1;$i<= ReadingsVal("myCalView","c-term", 0);$i++){
$modtext .= "myCalView:t_".sprintf('%03d',$i)."_bdate,t_".sprintf('%03d',$i)."_btime,t_".sprintf('%03d',$i)."_summary,t_".sprintf('%03d',$i)."_location,t_".sprintf('%03d',$i)."_source ";}

fhem("modify rg_myCalView $modtext");
fhem("SAVE");
}


die zuvor erstellte Readinggroup "rg_myCalView" wird zwar gefüllt, leider sieht der Inhalt folgendermaßen aus:


<Datum>,<Zeit>,<Termin>,<Ort>,<Quelle> myCalView:<Heute>,today_t: 9 td: 1 tm: 103d_btime,today_t: 9 td: 1 tm: 103d_summary,today_t: 9 td: 1 tm: 103d_location,today_t: 9 td: 1 tm: 103d_source myCalView:<Morgen>,tomorrow_t: 9 td: 1 tm: 103d_btime,tomorrow_t: 9 td: 1 tm: 103d_summary,tomorrow_t: 9 td: 1 tm: 103d_location,tomorrow_t: 9 td: 1 tm: 103d_source myCalView:t_t: 9 td: 1 tm: 103d_bdate,t_t: 9 td: 1 tm: 103d_btime,t_t: 9 td: 1 tm: 103d_summary,t_t: 9 td: 1 tm: 103d_location,t_t: 9 td: 1 tm: 103d_source myCalView:t_t: 9 td: 1 tm: 103d_bdate,t_t: 9 td: 1 tm: 103d_btime,t_t: 9 td: 1 tm: 103d_summary,t_t: 9 td: 1 tm: 103d_location,t_t: 9 td: 1 tm: 103d_source myCalView:t_t: 9 td: 1 tm: 103d_bdate,t_t: 9 td: 1 tm: 103d_btime,t_t: 9 td: 1 tm: 103d_summary,t_t: 9 td: 1 tm: 103d_location,t_t: 9 td: 1 tm: 103d_source myCalView:t_t: 9 td: 1 tm: 103d_bdate,t_t: 9 td: 1 tm: 103d_btime,t_t: 9 td: 1 tm: 103d_summary,t_t: 9 td: 1 tm: 103d_location,t_t: 9 td: 1 tm: 103d_source myCalView:t_t: 9 td: 1 tm: 103d_bdate,t_t: 9 td: 1 tm: 103d_btime,t_t: 9 td: 1 tm: 103d_summary,t_t: 9 td: 1 tm: 103d_location,t_t: 9 td: 1 tm: 103d_source myCalView:t_t: 9 td: 1 tm: 103d_bdate,t_t: 9 td: 1 tm: 103d_btime,t_t: 9 td: 1 tm: 103d_summary,t_t: 9 td: 1 tm: 103d_location,t_t: 9 td: 1 tm: 103d_source myCalView:t_t: 9 td: 1 tm: 103d_bdate,t_t: 9 td: 1 tm: 103d_btime,t_t: 9 td: 1 tm: 103d_summary,t_t: 9 td: 1 tm: 103d_location,t_t: 9 td: 1 tm: 103d_source myCalView:t_t: 9 td: 1 tm: 103d_bdate,t_t: 9 td: 1 tm: 103d_btime,t_t: 9 td: 1 tm: 103d_summary,t_t: 9 td: 1 tm: 103d_location,t_t: 9 td: 1 tm: 103d_source myCalView:t_t: 9 td: 1 tm: 103d_bdate,t_t: 9 td: 1 tm: 103d_btime,t_t: 9 td: 1 tm: 103d_summary,t_t: 9 td: 1 tm: 103d_location,t_t: 9 td: 1 tm: 103d_source


Es sieht so aus als ob er mit der Funktion sprintf() Probleme hätte, zumindest liest der die Readings nicht aus. Er postet immer wieder t: 9 td: 1 tm: 1 an Stelle der korrekten Nummer (Beispiel: er schreibt "today_t: 9 td: 1 tm: 103d_btime" anstatt von  today_001_bdate.

Vielen Dank vorab...

VG
Steffen

steimer-vl

#716
@HenrikAachen:
In deinem Notify sprichst du die reading group "rg_View_All" an, deine reading group heißt aber RG_Kalenderansicht.
Das solltest du in deinem notify anpassen.

Heißt:
View_All wird zu Kalenderansicht und
rg_View_All wird zu RG_Kalenderansicht

VG

steimer-vl

Hallo nochmal,

also ich hab es jetzt hinbekommen, musste mein notify anpassen, indem ich statt % jeweils %% geschrieben habe:


myCalView:t:.* {
my $i;
my $modtext = "<Datum>,<Zeit>,<Termin>,<Ort>,<Quelle> ";

for($i= 1;$i<= ReadingsVal("myCalView","c-today", 0);$i++){
$modtext .= "myCalView:<Heute>,today_".sprintf('%%03d',$i)."_btime,today_".sprintf('%%03d',$i)."_summary,today_".sprintf('%%03d',$i)."_location,today_".sprintf('%%03d',$i)."_source ";}

for($i= 1;$i<= ReadingsVal("myCalView","c-tomorrow", 0);$i++){
$modtext .= "myCalView:<Morgen>,tomorrow_".sprintf('%%03d',$i)."_btime,tomorrow_".sprintf('%%03d',$i)."_summary,tomorrow_".sprintf('%%03d',$i)."_location,tomorrow_".sprintf('%%03d',$i)."_source ";}

for($i= 1;$i<= ReadingsVal("myCalView","c-term", 0);$i++){
$modtext .= "myCalView:t_".sprintf('%%03d',$i)."_bdate,t_".sprintf('%%03d',$i)."_btime,t_".sprintf('%%03d',$i)."_summary,t_".sprintf('%%03d',$i)."_location,t_".sprintf('%%03d',$i)."_source ";}

fhem("modify rg_myCalView $modtext");
fhem("SAVE");
}


Das verstehe ich jetzt aber nicht, da das % Zeichen ja zwischen zwei '' steht?
Kann mir das einer erklären?

VG

HenrikAachen

Danke. Ich habe dies geändert wie folgt:


define Kalenderansicht CALVIEW iCloud_family 1
attr Kalenderansicht alias Termine
attr Kalenderansicht group Termine
attr Kalenderansicht modes next
attr Kalenderansicht room Kalender

define RG_Kalenderansicht readingsGroup <Zeile>,<Start>,<Start Zeit>,<Summary>,<Ende>,<End Zeit> Kalenderansicht
attr RG_Kalenderansicht group Termine
attr RG_Kalenderansicht mapping %READING
attr RG_Kalenderansicht noheading 1
attr RG_Kalenderansicht nonames 1
attr RG_Kalenderansicht nostate 1
attr RG_Kalenderansicht notime 1
attr RG_Kalenderansicht room Kalender


define kalenderTermine readingsGroup <%time_calendar>,<Text>,<Zuletzt erfasst> myView
attr kalenderTermine alias Termine
attr kalenderTermine group Termine
attr kalenderTermine mapping %READING
attr kalenderTermine room Kalender
define ntf_ViewAll notify Kalenderansicht:t:.* {my $i;; \
my $modtext = "<Datum>,<Zeit>,<Termin>,<Ort>,<Quelle> ";;\
\
for($i= 1;;$i<= ReadingsVal("Kalenderansicht","c-today", 0);;$i++){\
$modtext .= "Kalenderansicht:<Heute>,today_".sprintf('%03d',$i)."_btime,today_".sprintf('%03d',$i)."_summary,today_".sprintf('%03d',$i)."_location,today_".sprintf('%03d',$i)."_source ";;}\
\
for($i= 1;;$i<= ReadingsVal("Kalenderansicht","c-tomorrow", 0);;$i++){\
$modtext .= "Kalenderansicht:<Morgen>,tomorrow_".sprintf('%03d',$i)."_btime,tomorrow_".sprintf('%03d',$i)."_summary,tomorrow_".sprintf('%03d',$i)."_location,tomorrow_".sprintf('%03d',$i)."_source ";;}\
\
for($i= 1;;$i<= ReadingsVal("Kalenderansicht","c-term", 0);;$i++){\
$modtext .= "Kalenderansicht:t_".sprintf('%03d',$i)."_bdate,t_".sprintf('%03d',$i)."_btime,t_".sprintf('%03d',$i)."_summary,t_".sprintf('%03d',$i)."_location,t_".sprintf('%03d',$i)."_source ";;}\
\
fhem("modify RG_Kalenderansicht $modtext");;\
fhem("SAVE");;\
}}


Leider geht es immernoch nicht. Siehst du noch einen Fehler?
Danke.

steimer-vl

Hi,

Deine letzte Klammer } im notify scheint mir zuviel.
Am besten du legst zuerst ein leeres notify wie weiter oben von Chris beschrieben an und kopierst dir den an deine readinggroup und Calview angepassten Code ein.

Wurde denn dein notify angelegt?

VG