Hallo,
ich habe den alten Post geschlossen und hier im richtigen unterforum diesen erstellt.
Zitat03.02.2017 Update 57_CALVIEW.pm
- reading.*:_daysleftLong hinzugefügt - hier wird zu daysleft die verbleibende Zeit in Text ausgegeben ("heute","morgen", "in <n> Tagen")
Zitat29.01.2017 Update 57_CALVIEW.pm
- Attribute filterSummary hinzugefügt: hiermit kann man die anzuzeigenden Termine nochmal filtern nach <filtersouce>:<filtersummary>[,<filtersouce>:<filtersummary>]
- reading.*:_daysleft hinzugefügt welches die verbleibenden Tage zum Terminstart anzeigt
- Attribute "yobfield" erweitert um _summary - hier wird in summary nach der ersten 4stelligen Zahl gesucht und diese zur Altersberechnung genutzt. aus 08.12.1984 würde somit 1984 ermittelt werden
Zitat29.01.2017 Update widget_calview.js
- dem tui widget wurde die option "data-color:" gegegben welche den Text einfärbt
- data-detail um edatetimeiso,bdatetimeiso und daysleft erweitert
Zitat29.12.2016 Update
- Reading *._description für CALENDAR description hinzugefügt
- Reading *._age hinzugefügt welches im falle der aktivierten altersberechnung das alter enthält
- Attribute "isbirthday" hinzugfügt: 0 / nicht gesetzt = default und keine Altersberechnung
1 = altersberechnung im modul aktiv -> reading *._age
- Attribute "yobfield" hinzugfügt: - gibt an aus welchem reading das geburtsjahr für die altersberechnung kommt.
_description default wenn nicht gesetzt : geburtsjahr wird aus der beschreibung des termins geholt
_location : geburtsjahr wird aus der ortsangabe des termins geholt
- kleine codeverbesserungen
Die altersberechnung wird nur für den default readingsstyle eingeführt, nicht für CALVIEWs mit attr oldStyledReadings 1 !!!!!!!!
und anbei das um die 2 readings erweiterte widget für die tabletui
Download widget: https://github.com/chris1284/Widgets-for-fhem-tablet-uiErweiterungen/Anwendungen für Calview
Calview Geburtstage über Sonos ausgeben https://forum.fhem.de/index.php/topic,66443.0.html (von User ToM_ToM)
Hallo Chris,
Dann trag ich mich hier mal ein, damit ich nix verpasse ;)
..und Danke für die unermüdliche Arbeit.
Kvo1
tolles Modul. Ich trage mich auch mal ein.
Zitat von: chris1284 am 28 Dezember 2016, 18:12:33
Hallo,
ich habe den alten Post geschlossen und hier im richtigen unterforum diesen erstellt.
und anbei das um die 2 readings erweiterte widget für die tabletui
Hi Chris,
erstmal ein frohes neues Jahr 2017.
Das freut mich ja, dass mein Verbesserungswunsch mit dem Geburtstagsberechnung doch in das Modul gefunden hat.
Des Weiteren, wollte ich bzgl. des TabletUI Widgets noch erwähnen, dass du es doch dann auch wieder ins github repo pushen solltest, oder?
Gruß Constantin
Zitat von: uniqueck am 01 Januar 2017, 22:36:21
dass du es doch dann auch wieder ins github repo pushen solltest, oder?
da hast du natürlich völlig recht, kümmere ich mich drum.
Tolles Modul! Habe es eben gefunden und es macht fast alles was ich brauche! :)
Einziges Problem derzeit ist, dass es wohl bei wiederholenden Terminen diese als komplette Liste lädt. So habe ich nun 104 Termine, von denen allerdings der Großteil in der Vergangenheit liegt.
Gibt es einen Weg die Liste zu filtern, so dass nur zukünftige Termine erscheinen? Freue mich über Hilfe dazu :)
Danke noch mal für die Klasse Arbeit!
ja, das steuerst du allerdings im calendar mit dem attribut hideOlderThan (zb hideOlderThan 1 funktioniert für mich am besten)
Zitat von: chris1284 am 07 Januar 2017, 22:08:24
ja, das steuerst du allerdings im calendar mit dem attribut hideOlderThan (zb hideOlderThan 1 funktioniert für mich am besten)
Super! Vielen Dank. Das hilft weiter :)
Danke für die tolle Arbeit und das klasse Modul.
Ich habe nun eine Frage auf die ich bisher noch nix konkretes gefunden.
Sowohl meine Frau als auch ich nutzen einen Google-Kalender ( sind auch gegenseitig freigegeben)
Der iCal Export bei Google zieht aber immer nur MEINEN Kalender mit nur meinen Terminen :(
Kann ich das irgendwie hinbekommen das alle Termine per ical mitgenommen werden und/oder kann ich in calview evtl. einfach den Kalender von meiner Frau noch hinzufügen ?
Oder gibt es gar einen anderen Workaround ?
Würde ungern zweimal calview einbauen (also für jeden ein separates widget)
Vielen Dank schonmal für eure Hilfe
//bin fündig geworden - nichts für ungut
( https://forum.fhem.de/index.php/topic,64477.0.html )
@Constantin : der pullrequest ist gestartet
Hallo Chris,
Ist es vielleicht möglich das den CALVIEW beginn und ende Zeiten zugefügt wirden im ISO8601 Format?
Damit wird es einfacher CALVIEW Items in 'at' Items zu verwandeln.
Siehe der <datespec> in http://fhem.de/commandref_DE.html#at, dann verstehst du was ich meine.
Freundliche Grüße,
Paul
moin Paul,
du meinst so wie es in meiner testversion mit "att datestyle ISO8601" gesetzt aussieht ;) nur das im screenshot bei time das "e" noch fehlt, was aber in der aktuellen version bei mir vorhanden ist...
Super!
wenn keine auffälligkeiten sind gehts morgen ins update
ist eingecheckt. magst du mir noch sagen wozu du das verwenden willst ?
Ich könnt mir vorstellen zB Müllkalender
in der description ein set befehl für eine pushover benachrichtigung und ein at auf
define pushFromCalview at { ReadingsVal("view_abfall", "t_001_bdatetimeiso","2099-12-31T00:00:00");} {ReadingsVal("view_abfall", "t_001_description","2099-12-31T00:00:00");}
Zitat
t_001_bdate 20.01.2017
t_001_bdatetimeiso 2017-01-20T00:00:00
t_001_btime 00:00:00
t_001_description set PushMsg msg 'Papiermüll' 'Heute ist Papiermüll!' 'iPhone' 0 ''
t_001_edate 21.01.2017
t_001_edatetimeiso 2017-01-21T00:00:00
t_001_etime 00:00:00
t_001_mode next
t_001_source Kalender_Abfall
t_001_summary Papierabfall
müsste dannja ein at wie folgt ergeben
define pushFromCalview at 2017-01-20T00:00:00 set PushMsg msg 'Papiermüll' 'Heute ist Papiermüll!' 'iPhone' 0 ''
ich werde das mal testen ....
wäre ein gutes beispiel für cmdref wenn funzt
Zitat von: chris1284 am 18 Januar 2017, 06:55:23
ist eingecheckt. magst du mir noch sagen wozu du das verwenden willst ?
Ich könnt mir vorstellen zB Müllkalender
in der description ein set befehl für eine pushover benachrichtigung und ein at auf
define pushFromCalview at { ReadingsVal("view_abfall", "t_001_bdatetimeiso","2099-12-31T00:00:00");} {ReadingsVal("view_abfall", "t_001_description","2099-12-31T00:00:00");}
müsste dannja ein at wie folgt ergeben
define pushFromCalview at 2017-01-20T00:00:00 set PushMsg msg 'Papiermüll' 'Heute ist Papiermüll!' 'iPhone' 0 ''
ich werde das mal testen ....
wäre ein gutes beispiel für cmdref wenn funzt
Genau etwas wie dein Vorschlag. Ich habe es noch nicht ausgedacht, aber denke im richtung
summary: "summary1 | summary2"
define Action at btimeiso summary1
define Action at etimeiso summary2
Muß ausdenken wie es wirkt mit ändern der Item usw, aber das geht einfacher im Praxis.
Zitat von: Paul Guijt am 18 Januar 2017, 09:54:36
Genau etwas wie dein Vorschlag. Ich habe es noch nicht ausgedacht, aber denke im richtung
summary: "summary1 | summary2"
define Action at btimeiso summary1
define Action at etimeiso summary2
Muß ausdenken wie es wirkt mit ändern der Item usw, aber das geht einfacher im Praxis.
Hat jeder Item in einem Kalender ein einmaliges ID?
ZitatHat jeder Item in einem Kalender ein einmaliges ID?
ja, nur das problem bei zb serienterminenen ist das alle termine einer serie die selbe id haben.
mir ist heute noch eingefallen das man ggf ein notify auf das calview update legen müsste was dann aus den t_xxx/today_xxx/tomorrow_xxx at's erstellt.
müsste eine schleife sein die als zähler c-term/c-today/c-tomorrow haben um durch die termine zu gehen. man könnte auch stumpf immer bis 10 zählen zb und
ReadingsVal("view_abfall", "t_001_bdatetimeiso","2099-12-31T00:00:00")
würde falls das reading nicht existiert einfach ein fakedatum weit in der zukunft ausgeben , somit auch ein sinnloses at.
generell macht es denke ich nur sinn auf tomorrow zu gehen, da so die at's definitiv for dem termin erstellt werden (quasi zur laufzeit 1 tag früher). muss nur sichergestellt werden das der calendar pünktlich aktualisiert wird. das könnte man, wenn man es für stabil befindet auch automatisieren... mit attr createat today/tomorrow/all aber das ist zuweit in die zukunft gedacht (würde aber eine automatisierung auf calendarbasis ohne myutils ermöglichen)
Moin Chris,
Ist die Erweiterung auch im tui widget calview einheflossen.?
Gruß
Kvo1
wenn du die ISO erweiterung meinst, nein noch nicht
Zitatwenn du die ISO erweiterung meinst, nein noch nicht
nein, meinte ich nicht ... habe es aber weiter oben gefunden, sorry !
Zitatund anbei das um die 2 readings erweiterte widget für die tabletui
Download widget: https://github.com/chris1284/Widgets-for-fhem-tablet-ui
« Letzte Änderung: 10 Januar 2017, 08:07:17 von chris1284 »
sollte aber auch im fhemupdate sein, setstate hat vorgestern beide widgets (calview und uwz) in sein repo committed
Hallo Chris,
Ich sehe 't_001_edatetimiso' neben 't_001_edatetimeiso'.
Freundliche Grüße,
Paul
danke für den hinweis, kopierfehler..... wurde eben gefixed und ist morgen im update
update für widget_calview siehe post 1#
update für 57_CALVIEW.pm siehe post 1#
funktioniert super :)
vielen dank
Hi,
danke für deine Erweiterungen. Ich habe gestern davon gelesen und wollte sie heute testen. Das "Problem" mit den Terminen, welche in der Vergangenheit lagen konnte ich wie beschrieben lösen. Nun möchte ich die Darstellung auch in meinem FTUI nutzen... leider fehlt mir die Berechnung des Alters "t_001_age".
Als Versuch einer Lösung habe ich das Perl Modul Date::Parse mittels cpan installiert. Leider hat auch das nicht die gewünschten Berechnungen möglich gemacht.
Meine Frage an euch, was gibt es noch zu berücksichtigen ? Gibt es eine besondere Variable / Kennzeichnung des Geburtsjahres ? wie muss der Termin aussehen, damit die Berechnung funktioniert ?
Danke und Gruß
Edit:
Auszug aus der CR:
isbirthday
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.
Ich habe hier nun auch schon einige Varianten probiert. Bisher leider ohne erfolg. // Evtl. wichtige Info: Ich nutze einen Ical Link zu meinem Owncloud Kalender
isbirthday musst du setzen und natürlich dem modul sagen wo dein geburtsjahr gepflegt ist
https://fhem.de/commandref.html#CALVIEW / https://fhem.de/commandref_DE.html#CALVIEW
att yobfield setzen
zugegeben die cmd ref hat da ein paar definziete die ich gleich ausbügle ;-(
UPdate von heute siehe post 1
Danke für deine schnelle Reaktion.... mich hat das nicht in Ruhe gelassen und ich habe zeitgleich das Problem beheben können.
Lösung ist: Ich habe in die Beschreibung nur die Jahreszahl eingetragen UND den Kalender reloaded und nicht nur ein update gemacht.... so gehst nun.
Das Jobfield _description scheint also default zu sein.
Zitat von: Kermit20 am 03 Februar 2017, 15:30:33
Das Jobfield _description scheint also default zu sein.
ja, so stehts auch in der cmdref ;)
Zitatyobfield _description - (default) year of birth will be read from term description
Hallo Chris,
erstmal vielen Dank für das tolle Modul. Als Anfänger hätte zwei Fragen zu diesem Modul, ich möchte meine Termine in TabletUI darstellen. Was ich trotz intensiven lesen nicht hin bekomme ist , ich würde gerne das Datum ohne Jahreszahl haben und die Uhrzeit ohne Sekunden. Ist das irgendwie möglich?
Gruß Peter
ui, gute frage. das widget kann nicht, das modul auch nicht. ich bin gerade dabei einen vorschlag von chriss (https://forum.fhem.de/index.php/topic,63861.msg550874.html#msg550874) umzusetzen der dies ermöglicht.
wer will kann mal eine version mit internem swiper und neuer formatierung testen. es wird nun eine hbox verwendet deren elemente anzahl die breite des jeweiligen angibt.
den swiper könnt ihr wie folgt aktivieren:
Zitatdata-swiperstyle="yes"
mit in die definition aufnehmen. so wird nur wenig platz verwende um zb 10 termine zu zeigen mit allen optione.
ich will noch versuchen die anzahl termine im swiper elemnt variabel zu machen
in der version ist auch daysleftLong verfügbar
Anstehende Geburtstage über Sonos ausgeben
Hier gibt's eine kleine Anleitung wie man sich die anstehenden Geburtstage (heute, morgen, übermorgen) auf seinem Sonosplayer ansagen lassen kann.
Ich hatte das in die Codeschnipsel-Ecke gepackt, falls es jemand braucht. Aber da es stark mit dem CALVIEW zusammenhängt, hier nochmal der Link:
https://forum.fhem.de/index.php/topic,66443.0.html
Damit es nicht untergeht pack ich es mal mit in post 1.
Hallo,
erstmal vielen Dank für das tolle Forum ,dadurch hab ich schon einiges hinbekommen.
Ich hab Probleme mit CALVIEW.
Die Termine sind bei mir alle durcheinander.
Ich hab jetzt schon längere Zeit nach einer Lösung im Forum gesucht , aber leider nichts gefunden.
Internals:
CFGFN
DEF myKalender 1
INTERVAL 43200
KALENDER myKalender
NAME mycalview
NR 692
NTFY_ORDER 50-mycalview
STATE t: 10 td: 0 tm: 0
TYPE CALVIEW
Readings:
2017-02-23 18:17:23 c-term 10
2017-02-23 18:17:23 c-today 0
2017-02-23 18:17:23 c-tomorrow 0
2017-02-23 18:17:23 state t: 10 td: 0 tm: 0
2017-02-23 18:17:23 t_001_bdate 21.01.2016
2017-02-23 18:17:23 t_001_btime 06:00:00
2017-02-23 18:17:23 t_001_daysleft -399
2017-02-23 18:17:23 t_001_daysleftLong in -399 Tagen
2017-02-23 18:17:23 t_001_edate 21.01.2016
2017-02-23 18:17:23 t_001_etime 14:00:00
2017-02-23 18:17:23 t_001_mode next
2017-02-23 18:17:23 t_001_source myKalender
2017-02-23 18:17:23 t_001_summary Frühschicht
2017-02-23 18:17:23 t_002_bdate 28.01.2016
2017-02-23 18:17:23 t_002_btime 22:00:00
2017-02-23 18:17:23 t_002_daysleft -392
2017-02-23 18:17:23 t_002_daysleftLong in -392 Tagen
2017-02-23 18:17:23 t_002_edate 29.01.2016
2017-02-23 18:17:23 t_002_etime 06:00:00
2017-02-23 18:17:23 t_002_mode next
2017-02-23 18:17:23 t_002_source myKalender
2017-02-23 18:17:23 t_002_summary Nachtschicht
2017-02-23 18:17:23 t_003_bdate 29.01.2016
2017-02-23 18:17:23 t_003_btime 14:00:00
2017-02-23 18:17:23 t_003_daysleft -391
2017-02-23 18:17:23 t_003_daysleftLong in -391 Tagen
2017-02-23 18:17:23 t_003_edate 29.01.2016
2017-02-23 18:17:23 t_003_etime 22:00:00
2017-02-23 18:17:23 t_003_mode next
2017-02-23 18:17:23 t_003_source myKalender
2017-02-23 18:17:23 t_003_summary Spätschicht
2017-02-23 18:17:23 t_004_bdate 05.02.2016
2017-02-23 18:17:23 t_004_btime 06:00:00
2017-02-23 18:17:23 t_004_daysleft -384
2017-02-23 18:17:23 t_004_daysleftLong in -384 Tagen
2017-02-23 18:17:23 t_004_edate 05.02.2016
2017-02-23 18:17:23 t_004_etime 14:00:00
2017-02-23 18:17:23 t_004_mode next
2017-02-23 18:17:23 t_004_source myKalender
2017-02-23 18:17:23 t_004_summary Frühschicht
2017-02-23 18:17:23 t_005_bdate 12.02.2016
2017-02-23 18:17:23 t_005_btime 22:00:00
2017-02-23 18:17:23 t_005_daysleft -377
2017-02-23 18:17:23 t_005_daysleftLong in -377 Tagen
2017-02-23 18:17:23 t_005_edate 13.02.2016
2017-02-23 18:17:23 t_005_etime 06:00:00
2017-02-23 18:17:23 t_005_mode next
2017-02-23 18:17:23 t_005_source myKalender
2017-02-23 18:17:23 t_005_summary Nachtschicht
2017-02-23 18:17:23 t_006_bdate 15.02.2016
2017-02-23 18:17:23 t_006_btime 14:00:00
2017-02-23 18:17:23 t_006_daysleft -374
2017-02-23 18:17:23 t_006_daysleftLong in -374 Tagen
2017-02-23 18:17:23 t_006_edate 15.02.2016
2017-02-23 18:17:23 t_006_etime 22:00:00
2017-02-23 18:17:23 t_006_mode next
2017-02-23 18:17:23 t_006_source myKalender
2017-02-23 18:17:23 t_006_summary Spätschicht
2017-02-23 18:17:23 t_007_bdate 22.02.2016
2017-02-23 18:17:23 t_007_btime 06:00:00
2017-02-23 18:17:23 t_007_daysleft -367
2017-02-23 18:17:23 t_007_daysleftLong in -367 Tagen
2017-02-23 18:17:23 t_007_edate 22.02.2016
2017-02-23 18:17:23 t_007_etime 14:00:00
2017-02-23 18:17:23 t_007_mode next
2017-02-23 18:17:23 t_007_source myKalender
2017-02-23 18:17:23 t_007_summary Frühschicht
2017-02-23 18:17:23 t_008_bdate 29.02.2016
2017-02-23 18:17:23 t_008_btime 22:00:00
2017-02-23 18:17:23 t_008_daysleft -360
2017-02-23 18:17:23 t_008_daysleftLong in -360 Tagen
2017-02-23 18:17:23 t_008_edate 01.03.2016
2017-02-23 18:17:23 t_008_etime 06:00:00
2017-02-23 18:17:23 t_008_mode next
2017-02-23 18:17:23 t_008_source myKalender
2017-02-23 18:17:23 t_008_summary Nachtschicht
2017-02-23 18:17:23 t_009_bdate 01.03.2016
2017-02-23 18:17:23 t_009_btime 14:00:00
2017-02-23 18:17:23 t_009_daysleft -359
2017-02-23 18:17:23 t_009_daysleftLong in -359 Tagen
2017-02-23 18:17:23 t_009_edate 01.03.2016
2017-02-23 18:17:23 t_009_etime 22:00:00
2017-02-23 18:17:23 t_009_mode next
2017-02-23 18:17:23 t_009_source myKalender
2017-02-23 18:17:23 t_009_summary Spätschicht
2017-02-23 18:17:23 t_010_bdate 08.03.2016
2017-02-23 18:17:23 t_010_btime 06:00:00
2017-02-23 18:17:23 t_010_daysleft -352
2017-02-23 18:17:23 t_010_daysleftLong in -352 Tagen
2017-02-23 18:17:23 t_010_edate 08.03.2016
2017-02-23 18:17:23 t_010_etime 14:00:00
2017-02-23 18:17:23 t_010_mode next
2017-02-23 18:17:23 t_010_source myKalender
2017-02-23 18:17:23 t_010_summary Frühschicht
Attributes:
maxreadings 10
modes next
Bin leider totaler Anfänger und versuche mich durchzukämpfen. ::)
Tablet Ui sieht das dann so aus.
Was heißt bei dir durcheinander?
Für mich sieht das schön sortiert aus :o
sollten doch die nächsten 10termine sein?
dann hat er noch alte termine drin
das musst du wie so oft hier shcon genannt im calendar einstellen weil es nichts mit calview zu tun hat. das attribut heisst hideolderthan
Vielen Dank für deine Hilfe , die alten Termine sind jetzt weg.
Leider kommen immer noch nicht die nächsten 10Termine, dass muss am Schichtplan liegen.
Er macht nie die gleichen Termine in einer Woche .
Muss ich morgen mal in Ruhe testen.
Aber nochmals fettes Danke. :)
Liebe Entwickler,
Liebe Anwender,
ich bin relativ neu und richte derzeit FHEM auf einem Raspberry Pi ein.
Läuft auch alles super.
Nur mit dem Kalender hatte ich immer wieder Probleme.
Teilwiese wurden alte Termine angezeigt, die ich aber nicht löschen wollte, sonst hätte ich eine kleine Perl Funktion geschrieben.
Nachdem ich den Code von Calendar und Calview aufmerksam durchgelesen hatte, mußte ich feststellen, dass Termine die ich mir zur Erinnerung mit Uhrzeit eingetragen hatte, z.B. eBay Auktion, auch wenn sie beendet waren trotzdem bei der "get calender full all" als "start" angezeigt wurden.
Der Fehler lag aber bei mir. Die Definition lautet "start < aktuelle Zeit < ende".
Bei diesen Terminen hatte ich die gleiche Zeit für Start und Ende.
Nachdem jetzt 1 Minute Zeitunterschied besteht, wird alles Korrekt angezeigt.
Auch im Geburtstagskalender, nachdem im Beschreibungsfeld nur noch das Geburtsjahr steht.
Jetzt gehe ich an fullcalview und hoffe, dass ich diesen auch ans Laufen bekommen.
Und anschließend der direkte Download aus der cloud.
Nochmals herzlichen Dank an alle, die Ihre Fragen, Probleme, Feststellungen und Kommentare hier abgeben.
Diese Community hilft bei Problemen und der Ton ist angenehm.
Ich kenne auch anderes.
Euer CenterOfMadness
(Y) :) :D
@Chris1284: erstmal herzlichen Dank für das Modul! Ein kleiner Tipp noch - du schreibst auf der ersten Seite bei der Beschreibung im Originalpost (https://forum.fhem.de/index.php/topic,19922.msg134972.html#msg134972):
Zitat!Ihr müsst View_Abfall mit eurem Namen des CALVIEW devices ersetzen!
Ich habe mir den Kopf zerbroche, wo denn View_Abfall steht - denn es steht im Code überall View_All. Irgendwann bin ich dann drauf gekommen - ein Tippfehler/vermutlich Autokorrektur ;-) Mit der kleinen redaktionellen Änderung wäre vielen Noobs wie mir vielleicht geholfen ;-)
Herzliche Grüße
doc
habs korrigiert
Eine Frage, ist CALVIEW nonblocking? Seit ich es gestern drauf gemacht habe, habe ich regelmäßige disconnects bei meinem HMLan, welche direkt nach dem Update von CALVIEW kommen. Vorher hatte ich die nicht, daher gehe ich davon aus, dass es damit zutun hat.
ist nicht nonblocking. auf schwachen systemen kann ich mir vorstellen das es je nach kalenderanzahl und größe etwas dauert (weil es ja eigentlich 2 module sind die da arneiten müssen)
nach lesen der doku von blocing würde das auch für calview enormen aufwand bedeuten, egal ob ich die datenabfrage des calendars auslagere oder die gesamte updatefunktion, da blockingcall nur string zurück gibt und leider keine arrays. müsste ich ein wenig drauf rum denken, machbar wäre es die theoretisch möglichen ~12000 readings in strings zu packen
Bei mir werden keine Termine mehr angezeigt, nachdem ich den neuen Code mit dem get = all übernommen habe.
Bisher habe ich genutzt.
<div data-type="label" data-device="vCal_Geburtstagskalender" data-get="t_003_bdate" data-color="#FAA460" data-part="(\d\d\.\d\d\.).*" class="normal">
Jetzt wollte ich das vereinfachen, um nicht für jeden TERMIN eine Zeile zu schreiben.
<div data-type="calview" data-device="vCal_Geburtstagskalender" data-get="all" data-max="5" class="cell"></div>
Definiert ist das Ganze...
attr global userattr cmdIcon devStateIcon devStateStyle icon sortby structexclude webCmd widgetOverride
attr global altitude 108
attr global autoload_undefined_devices 1
attr global backup_before_update 0
attr global group Software
attr global logfile /opt/fhem/log/fhem-%Y-%m.log
attr global modpath .
attr global motd none
attr global mseclog 1
attr global room System
attr global sendStatistics never
attr global statefile /opt/fhem/log/fhem.save
attr global uniqueID ./FHEM/FhemUtils/uniqueID
attr global updateInBackground 1
attr global verbose 3
define Geburtstagskalender Calendar ical url https://xxxxxx 21600
attr Geburtstagskalender alias Geburtstagskalender
attr Geburtstagskalender group Kalender
attr Geburtstagskalender hideOlderThan 0
attr Geburtstagskalender room Büro
define vCal_Geburtstagskalender CALVIEW Geburtstagskalender 2 21600
attr vCal_Geburtstagskalender group Kalender
attr vCal_Geburtstagskalender maxreadings 5
attr vCal_Geburtstagskalender modes next
attr vCal_Geburtstagskalender room Büro
Was könnte da noch fehlen ?
Muss dass auch in die cfg ?
attr global exclude_from_update widget_fullcalview.js widget_weekprofile.js widget_calview.js widget_pagebutton.js 59_Wunderground.pm widget_weather.js
aktuelles widget aus dem github gladen? hat fhem nach dem kopieren ins fhem verzeichnis rechte darauf (passiert auf pi gerne mal weil man mit user pi kopiert)?
Die Rechte stehen bei user auf fhem und bei group auf dialout.
du hast keinen
data-detail=["...","..."]
teil definiert, das widget weiss nun zwar es soll alle temrine nehmen, aber nicht welche readingsdavon
du hast die auswahl zwischen folgenden optionen
["bdate", "btime","bdatetimeiso", "summary", "location","edate","etime","edatetimeiso","source","age","description","daysleft","daysleftLong"]
eine einfache view mit nur startdatum und terminüberschrift
<div data-type="calview" data-device="View_All" data-get="all" data-detail='["bdate","summary"]' data-max="5" data-color="red" class="cell"></div>
Hallo,
kurze Frage zu CALVIEW und dem Widget. Bisher habe ich den Kalender in TabletUI über eine ReadingsGroup eingebunden. Davon möchte ich aber weg hab aber jetzt das folgende Problem: Über das Notify hab ich in der ReadingsGroup als Datum immer "Heute", "Morgen" oder (wenn der Termin länger hin ist) das Datum stehen. Kann man das bei diesem Widget auch irgendwie einstellen oder muss man damit leben, dass er immer nur das Datum zeigt auch wenns es der heutige Tag ist?
Grüße
Stephan
Chris,
siehst Du eine Möglichkeit, in das Calview Widget noch eine Formatierung der Spalten einzubauen?
Vielen Dank.
Grüße Mave
Zitat von: StephanFHEM am 29 Mai 2017, 12:16:50
Hallo,
kurze Frage zu CALVIEW und dem Widget. Bisher habe ich den Kalender in TabletUI über eine ReadingsGroup eingebunden. Davon möchte ich aber weg hab aber jetzt das folgende Problem: Über das Notify hab ich in der ReadingsGroup als Datum immer "Heute", "Morgen" oder (wenn der Termin länger hin ist) das Datum stehen. Kann man das bei diesem Widget auch irgendwie einstellen oder muss man damit leben, dass er immer nur das Datum zeigt auch wenns es der heutige Tag ist?
Grüße
Stephan
das geht, siehe screenshot.
<div data-type="calview" data-device="View_All" data-get="all" data-detail='["daysleftLong","summary","age"]' data-max="8" class="cell"></div>
alternativ 3 calview-widgets wie folgt (bild 2)
<div data-type="calview" data-device="View_All" data-get="today" data-detail='["bdate","btime","etime","summary","age"]' data-showempty="false" data-max="4" class="cell"></div>
<div data-type="calview" data-device="View_All" data-get="tomorrow" data-detail='["bdate","btime","etime","summary","age"]' data-max="4" class="cell"></div>
<div data-type="calview" data-device="View_All" data-get="tomorrow" data-detail='["bdate","btime","etime","summary","age"]' data-max="4" class="cell"></div>
<div data-type="calview" data-device="View_All" data-get="all" data-detail='["bdate","btime","etime","summary","age"]' data-start="notomorrow" data-max="10" class="cell"></div>
Zitat von: Mave am 18 August 2017, 20:30:07
Chris,
siehst Du eine Möglichkeit, in das Calview Widget noch eine Formatierung der Spalten einzubauen?
Vielen Dank.
Grüße Mave
wie stellst du dir die fromatierungsoptionen vor?
Moin Chris,
vielen Dank für Deine schnelle Rückmeldung.
Im Moment sind alle Spalten gleich breit.
Bei den meisten Terminen wird aber Summary mehr Platz in der Breite beanspruchen als z.B. das Datum oder die Start-/Endzeiten.
Von daher wäre es aus meiner Sicht perfekt, wenn man im Parameter "data-detail" jeweils noch die Breite der Spalte (Prozentwert der Gesamtbreite) angeben könnte.
Desweiteren ist eine Angabe von Sekunden bei den Start- und Endzeiten aus meiner Sicht unnötig. Es wäre schön, wenn das ebenfalls in "data-detail" konfigurierbar wäre bzw. generell nicht angezeigt werden würde.
Zu guter Letzt wäre es noch das Sahnehäubchen auf dem Calview Widget, wenn ganztätige Termine nicht von 00:00:00 bis 00:00:00 angezeigt werden würden sondern ohne Zeitangaben oder mit "ganztägig" oder frei konfigurierbar.
Ach ja, ganz vergessen. Die Kirsche auf dem Sahnehäubchen wäre noch, wenn auch fortlaufende Termine mit Startzeit in der Vergangenheit und Endzeit in der Gegenwart oder Zukunft täglich angezeigt werden würden.
Derzeit behelfe ich mir damit, daß ich in unserem Google Familienkalender alle fortlaufenden Termine (wie z.B. Schulferien) als Ganztagestermin zum Startzeitpunkt anlege und dann entsprechend viele Wiederholungen einstelle. Ein Workaround, der allerdings den WAF nicht gerade steigert.
Vielen Dank.
Grüße Mave
Hallo Zusammen,
auch ich suche nach einer Möglichkeit das Calview Widget für mein iPad zu formatieren. (Danke Mave für den Thread Hinweis)
Momentan sieht es wie im angehängten Bild aus.
Die Konfig des Widgets in TabletUI lautet wie folgt:
Code: [Auswählen]
<li data-row="3" data-col="6" data-sizex="4" data-sizey="2" class="">
<header><div data-type="label" class="normal">Termine</div></header>
<div data-type="calview"
data-device="calview_all"
data-get="all"
data-max="7"
data-detail='["bdate","btime","etime","summary"]'
data-showempty="true"
class="top-align">
</div>
</li>
Ich dachte mit der Klasse top-align im Div Container wird zumindest der Text am oberen Rand der Zelle angezeigt aber dem ist leider nicht so. Er macht es immer zentriert zur Start- und Endzeit.
Weiterhin finde ich keine Möglichkeit den Text der Kalendereinträge zu verkürzen, sodass er mir die Tabellenspalten nicht zerschießt. Dies soll idealerweise immer gleich sein und wenn der Text zu lang ist einfach abschneiden. Ist dies mit dem Calview Widget möglich?
Sprich ich wünsche gern eine Zeile pro Eintrag. Wenn dieser zu lang ist, soll der Text abgeschnitten werden.
Über Hilfe wäre ich dankbar!
Viele Grüße
sTaN
Du könntest das mit einer normalen table lösen.
In deiner index, bzw. da wo das widget angezeigt werden soll
<li data-row="1" data-col="1" data-sizex="5" data-sizey="3" data-template="content/vkalender.html"></li>
und in der vkalender.html folgendes
<table class="medium" height="90%" width="100%" style="font-size:100%">
<tr>
<td>
<div data-type="label" data-substitution="toDate().ee()" data-device="vKalender" data-get="t_001_bdate"></div>
</td>
<td>
<div data-type="label" data-device="vKalender" data-get="t_001_bdate" data-part="(\d\d\.\d\d\.).*"></div>
</td>
<td>
<div data-type="label" data-device="vKalender" data-get="t_001_btime" data-part="(\d\d\:\d\d).*"></div>
</td>
<td>
<div data-type="label" data-device="vKalender" data-get="t_001_etime" data-part="(\d\d\:\d\d).*"></div>
</td>
<td class="r"><div data-type="label" data-device="vKalender" data-get="t_001_summary" style="min-width:14em;"></div></td>
</tr>
<tr>
<td>
<div data-type="label" data-substitution="toDate().ee()" data-device="vKalender" data-get="t_002_bdate"></div>
</td>
<td>
<div data-type="label" data-device="vKalender" data-get="t_002_bdate" data-part="(\d\d\.\d\d\.).*"></div>
</td>
<td>
<div data-type="label" data-device="vKalender" data-get="t_002_btime" data-part="(\d\d\:\d\d).*"></div>
</td>
<td>
<div data-type="label" data-device="vKalender" data-get="t_002_etime" data-part="(\d\d\:\d\d).*"></div>
</td>
<td class="r"><div data-type="label" data-device="vKalender" data-get="t_002_summary" ></div></td>
</tr>
</table>
usw...
Durch das data-substitution="toDate().ee()" wird das Datum in den jeweiligen Wochentag umgewandelt.
Zitat von: chris1284 am 19 August 2017, 18:53:22
wie stellst du dir die fromatierungsoptionen vor?
Hallo Chris,
wie stehen die Chancen, dass Du die Formatierungsvorschläge in das Widget mit aufnimmst?
Vielen Dank.
Grüße Mave
in der nächsten woche habe ich urlaub und wollte mich der sache annehmen. die "tabellenformatierung" (ich hatte an eine angabe der breite je spalte in % gedacht ) wäre dann optional zum standard
Perfekt.
Vielen Dank.
Ich möchte nochmal die Punkte zusammenfassen, die das Calview Widget - für mich - perfekt machen würden. Selbstverständlich ohne Anspruch auf Umsetzung.
- Formatierung der Spaltenbreite (z.B. Datum 15%, Uhrzeit 15%, Summary 70%)
- Formatierung von Datum und Uhrzeit (z.B. 03.09. ohne Jahreszahl und 08:40 Uhr ohne Sekunden). "heute" und "morgen" sollte auf alle Fälle weiterhin funktionieren.
- ganztägige Termine werden als "ganztägig" oder komplett ohne Uhrzeit angezeigt (der Einfachheit halber könnten - aus meiner Sicht - alle Termine, die um 00:00 Uhr beginnen, als ganztägig betrachtet werden. zur Not könnte man nicht ganztägige Termine um 00:01 Uhr beginnen lassen.
- Summaries, welche die Spaltenbreite überschreiten, werden nicht 2-reihig dargestellt sondern mit "..." abgeschnitten
- Sahnehäubchen wäre eine frei wählbare Einfärbung der Termine, je nachdem, aus welchem Kalender sie kommen (analog zum Google Kalender) und die Anzeige von laufenden Terminen (Startzeitpunkt in der Vergangenheit und Endzeitpunkt heute oder in der Zukunft).
Vielen Dank.
Grüße Mave
Zitat von: Mave am 03 September 2017, 08:52:02
- Formatierung der Spaltenbreite (z.B. Datum 15%, Uhrzeit 15%, Summary 70%)
würde ich frei wählbar machen
Zitat von: Mave am 03 September 2017, 08:52:02
- Formatierung von Datum und Uhrzeit (z.B. 03.09. ohne Jahreszahl und 08:40 Uhr ohne Sekunden). "heute" und "morgen" sollte auf alle Fälle weiterhin funktionieren.
denke ich gut machbar
Zitat von: Mave am 03 September 2017, 08:52:02
- ganztägige Termine werden als "ganztägig" oder komplett ohne Uhrzeit angezeigt (der Einfachheit halber könnten - aus meiner Sicht - alle Termine, die um 00:00 Uhr beginnen, als ganztägig betrachtet werden. zur Not könnte man nicht ganztägige Termine um 00:01 Uhr beginnen lassen.
so einfach ist es dann nicht. einen ganztägigen termin sollte man schon daran identifizieren dass er um 00:00:00 startet und am startag +1 um 00:00:00 endet. wäre eine modul-sache, nciht das widget
Zitat von: Mave am 03 September 2017, 08:52:02
- Summaries, welche die Spaltenbreite überschreiten, werden nicht 2-reihig dargestellt sondern mit "..." abgeschnitten
glaube ich nicht umsetzbar denn wie will man rausfinden das zb die angegebene spaltenbreite von x% zu klein für den text ist?
einfacher wäre es wenn man evtl formatieren kann das der tex der aus der zelle läuft einfach kein zeilenumbruch macht und alles ausßerhalb nicht sichtbar ist (keine ahnung ob das html hergibt)
Zitat von: Mave am 03 September 2017, 08:52:02
- Sahnehäubchen wäre eine frei wählbare Einfärbung der Termine, je nachdem, aus welchem Kalender sie kommen (analog zum Google Kalender)
sollte machbar sein.
Zitat von: Mave am 03 September 2017, 08:52:02
die Anzeige von laufenden Terminen (Startzeitpunkt in der Vergangenheit und Endzeitpunkt heute oder in der Zukunft).
wäre eine modul-sache, nicht des widgets
Okay, super.
Vielen Dank für Deine Rückmeldung.
Grüße Mave
Den Verbesserungsvorschlägen von Mave kann ich mich nur anschließen! Danke auch für das Feedback chris.
Bezüglich dem Abschneiden von Summarys könnte man ja vllt. ein attribut einbauen, was die maximale Anzahl an Buchstaben zulässt und ab dem X. Buchstaben wird angeschnitten bzw. ein "..." angehängt. So kann jeder anhand seiner Spaltenbreite festlege wieviel sichtbar sein soll.
Gruß
sTaN
Ich habe einige Änderungen im github abgelegt
https://github.com/chris1284/CALVIEW
https://github.com/chris1284/Widgets-for-fhem-tablet-ui
Zitat von: Mave am 03 September 2017, 08:52:02
- Formatierung der Spaltenbreite (z.B. Datum 15%, Uhrzeit 15%, Summary 70%)
- ist nun im widget per
data-detailwidth einstellbar
bsp:
... data-detail='["bdate","btime","etime","summary","age"]' data-detailwidth='["15","18","18","20","20"]' ...
bedeutet 15% bdate, 18% btime, 18% etime , ..... man sollte hier möglichst auf 100% kommen ;)
Zitat von: Mave am 03 September 2017, 08:52:02
- Formatierung von Datum und Uhrzeit (z.B. 03.09. ohne Jahreszahl und 08:40 Uhr ohne Sekunden). "heute" und "morgen" sollte auf alle Fälle weiterhin funktionieren.
- ist nun im widget per
data-dateformat="short" data-timeformat="short" einstellbar
Zitat von: Mave am 03 September 2017, 08:52:02
- Sahnehäubchen wäre eine frei wählbare Einfärbung der Termine, je nachdem, aus welchem Kalender sie kommen (analog zum Google Kalender)
- im widget muss dafür in
data-detail='[...,"sourcecolor",...]' aufgenommen werden
- im fhem-device muss das
attribut sourcecolor [kalendername]:[farbe],... gesetzt werden
bsp:
sourcecolor Kalender_Abfall:#b3dc6c,Kalender_Christian:#ffad46,Kalender_Geburtstage:#cca6ac
ich habe zb dne farbcode einfach im goolecalender kopiert
der rest ist in arbeit.
Super, vielen Dank.
Werde ich gleich mal testen....
Kleine Idee - aber ich will den anstehenden Weiterentwicklungen von chris1284 nicht entgegenstehen:
Ich würde noch ein Attribut data-class einführen und sinngemäß an den entsprechenden Stellen im Javascript einfügen, etwa so:
mytext += "<div data-type=\"label\" class=\"" + myclass + "\" style=\"color:"+color+";width:"+elem.data('detailwidth')[mycount]+"%;\">" + elem.getReading(readingPrefix+'_'+num+'_'+spalte).val.substr(0, datesubstr) + "</div>";
^^^^^^
(Ich habe hier den Value von data-class als Variable myclass eingefügt.)
Ich mag in der Tabelle nämlich keine zentrierten Texte, deshalb habe ich hier beim Aufruf des Widgets data-class="left-align" eingefügt - und siehe da: es funzt...
Man könnte auch large einfügen oder alles, was das UI so hergibt.
ZitatBezüglich dem Abschneiden von Summarys könnte man ja vllt. ein attribut einbauen, was die maximale Anzahl an Buchstaben zulässt und ab dem X. Buchstaben wird angeschnitten bzw. ein "..." angehängt.
Da gibt's doch schon eine standard CSS-Klasse (truncate) für. Evtl. kann man diese hier mit verwenden?
https://wiki.fhem.de/wiki/FHEM_Tablet_UI
CSS-Klassen -> Schriftstil -> truncate
VG, Thomas
Erstmal vielen Dank für das Widget. Gefällt mir richtig gut.
Ich habe das Problem, dass mir das Alter nicht angezeigt wird beim Geburtstagskalender in der TabletUI:
<div style="height: 10%;"
data-type="calview"
data-device="Geburtstage"
data-max="4"
data-showempty="true"
data-dateformat="short"
data-timeformat="short"
data-detail='["bdate","summary","age"]'
data-detailwidth='["20","60","20"]'
data-color="#575962"
data-get="all"></div>
Ich hätte aber noch einige Wünsche:
1. Wochentag anzeigen
2. Summary Text links oder rechtsbündig ausrichten
3. Ganztägige Termine evtl anstatt 00:00 Uhr keine Uhrzeit oder Tagestermin o.ä.
Viele Grüße
Zitat- ganztägige Termine werden als "ganztägig" oder komplett ohne Uhrzeit angezeigt
ich habe im modul selbst ein neues reading "_timeshort" eingebaut welches entweder "startzeit - endzeit" anzeigt (also zb 19:30:00 - 20:00:00 ) oder einen text für ganztägige termine.
dieser text kann per Attribut fulldaytext selbst gewählt werden. default ist "ganztägig". leer geht leider nicht da fhem keine leeren /leerzeichen attribute kennt. um das zu umgehen kann zb einfügen was dann in der tui ein leerzeichen ist.
die formatierung der "_timeshort" zeiten kann per attribut timeshort (1:0) auf zb 19:30 - 20:00 gekürzt werden
ZitatIch würde noch ein Attribut data-class einführen und sinngemäß an den entsprechenden Stellen im Javascript einfügen, etwa so:
das widget hat nun die von nageniil vorgeschlagene data-class, danke!
somit sind Laires anregen 2. und 3. wohl auch eingearbeitet
bsp
<div data-type="calview" data-device="View_All" data-get="all" data-detail='["bdate","timeshort","summary","age","sourcecolor"]'data-detailwidth='["15","25","50","10"]' data-class='left-align small' data-start="none" data-max="10" data-sourcecolor="yes" class="cell"></div>
attribut timeshort 1
attribut fulldaytext Ganztags
Genial chris!!!
Danke für die direkte Umsetzungen der Ideen. Weißt du schon, wann die die neue Version einchecken wirst? Werde sie dann gerne testen und einbauen. Oder bleiben diese erstmal nur in Github? Dann werde ich mich noch ein wenig gedulden müssen.
Gruß und danke noch mal!
sTaN
ich würde sagen ich checke das modul zum wochenende ein. das widget ist ja eh nur im github
Pardon. Meinte die Änderung des Moduls in fhem und die Änderung im offiziellen github für das Widget.
Oder bekommt man die Änderungen des Widgets gar nicht über den folgenden Befehl?
update all https://raw.githubusercontent.com/knowthelist/fhem-tablet-ui/master/controls_fhemtabletui.txt
Hallo Chris,
ich kenne mich mit der Materie (HTML, JS) ja ein bisschen aus. Ich habe mal bei den Zeilen, die die Container der einzelnen Elemente erstellen eine weitere Klasse hinzugefügt, so könnte man wenn man dem div Container eine eigene Klasse gibt, jede einzelne Spalte über CSS einzeln formatieren. Das Ergebnis sieht dann so aus:
Code in der FTUI html:
<div class="privateCal"
data-type="calview"
data-device="Privat"
data-max="4"
data-dateformat="short"
data-timeformat="short"
data-detail='["bdate", "btime", "summary"]'
data-detailwidth='["20","20","60"]'
data-color="#575962"
data-get="all"></div>
Mit der veränderten JS Datei im Anhang würde er jetzt jeder Spalte eine eigene Klasse geben, bestehend aus calview + Spaltennamen, z.B.
<div data-type="label" class="calview-bdate" style="color:#575962;width:20%;">09.09.</div>
Somit kann ich über die CSS Datei jede einzelne Spalte von jedem Kalender selber optisch anpassen (in diesem Fall die Spalte bdate des Kalenders privateCal:
.privateCal .calview-bdate{
color: green;
font-weight: bold;
text-align: center;
}
Das mit dem Wochentagen ist auch kein Problem, setzte ich mich heute abend mal ran.
Hallo Chris,
konnte nun doch nicht bis zum offiziellen Upload warten und habe deine geänderten Dateien mal manuell ausgetauscht. Absolute Klasse!!! Danke dafür.
An einem Problem scheitere ich allerdings, glaube aber es liegt an der Art, wie ich meine drei verschiedenen Kalender darstelle. UNd zwar bekomme ich die Farben der unterschiedlichen Kalendar nicht angezeigt.
Meine Widget Konfiguration sieht wie folgt aus:
<li data-row="3" data-col="6" data-sizex="4" data-sizey="2" class="">
<header><div data-type="label" class="normal">Termine</div></header>
<div data-type="calview"
data-device="calview_all"
data-get="today"
data-max="5"
data-detail='["bdate","timeshort","summary","sourcecolor"]'
data-detailwidth='["15","20","65"]'
data-dateformat="short"
data-timeformat="short"
data-showempty="true"
data-class="left-align large">
</div>
<div data-type="calview"
data-device="calview_all"
data-get="tomorrow"
data-max="5"
data-detail='["bdate","timeshort","summary","sourcecolor"]'
data-detailwidth='["15","20","65"]'
data-dateformat="short"
data-timeformat="short"
data-showempty="true"
data-class="left-align large">
</div>
<div data-type="calview"
data-device="calview_all"
data-get="all"
data-max="10"
data-detail='["bdate","timeshort","summary","sourcecolor"]'
data-detailwidth='["15","20","65"]'
data-dateformat="short"
data-timeformat="short"
data-start="notomorrow"
data-class="left-align large">
</div>
callview_all ist in fhem wie folgt definiert:
define calview_all CALVIEW WorkCalendar,PrivateCalendar,FamilyCalendar next 3600
Die sourcecolour habe ich natürlich bei jedem dieser Kalendar gesetzt, die wahrscheinlich nicht in callview_all übernommen werden.
Wie bekomme ich das am besten geregelt? Wenn ich callview_all folgendes attribut gebe funktioniert es auch nicht:
sourcecolor WorkCalendar:#b3dc6c,PrivateCalendar:#ffad46,FamilyCalendar:#cca6ac
Gruß
sTaN
enthalten die readings der view bereits die farbwerte korekt oder steht da noch white drin?
Zitat von: sTaN am 06 September 2017, 13:35:12
Pardon. Meinte die Änderung des Moduls in fhem und die Änderung im offiziellen github für das Widget.
Oder bekommt man die Änderungen des Widgets gar nicht über den folgenden Befehl?
update all https://raw.githubusercontent.com/knowthelist/fhem-tablet-ui/master/controls_fhemtabletui.txt
nein, da müsste ich immer in pull request an setstate senden und das dauerte bisher immer sehr lange.
Zitat von: chris1284 am 06 September 2017, 17:30:40
enthalten die readings der view bereits die farbwerte korekt oder steht da noch white drin?
Tatsächlich hat die View
callview_all die korrekten Farbwerte drin.
Bei den einzelnen Kalender Views steht allerdings white drin. Habe die Attribute jetzt bei den einzelnen Kalender Views mal gelöscht und nur beim
callview_all device gesetzt:
FamilyCalendar:#3fdfe7,WorkCalendar:#4986e7,PrivateCalendar:#16a765
Aber das scheint keinen Unterschied zu machen. Sie stehen in den Readings aber das iPad bleibt weiß
das ipad bleibt weiss... und wie sieht am pc aus? mal den browsercache geleert?
Leider bleibt es in beiden Fällen weiß. Cache jeweils schon geleert
Hallo chris1284,
leider weiß ich nicht, ob mitarbeit an dem Code für das Tablet UI Widget erwünscht ist.
Ich habe mir mal die widget_calview.js vorgenommen und überarbeitet (erstmal den Nicht-Swiper-Teil) Vielleicht magst Du Dir die Datei im Anhang mal angucken.
Wie schon im letzten Beitrag von mir geschrieben, beinhaltet die Datei die CSS Klassen Zuweisung für jede Spalte, so dass diese über CSS formatiert werden kann.
Ich habe auch eine Wochentagsanzeige integriert, die man mit
data-dayname="yes"
aktivieren kann.
Desweiteren habe ich den Code etwas optimiert.
Zunächst mal ganz herzlichen Dank an Chris, dass er sich unseren Wünschen nochmal angenommen und in Modul und Widget hat einfliessen lassen.
Kann man eigentlich irgendwo/irgendwie die Entwickler/Maintainer bewerten bzw. unterstützen?
Als Anfänger ist mir im Moment nicht ganz klar, wie ich die neuen Versionen automatisch in mein FHEM bekomme. Werden Modul und Widget nicht mit dem normalen Update eingespielt? Falls nicht, einfach die neuen Dateien herunterladen und die bestehenden Dateien überspielen?
Vielen Dank für sachdienliche Hinweise.
Grüße Mave
1)
Ich bekomme bei ganztägigen Terminen immer noch 00:00 - 00:00 angezeigt.
Muss ich dem Kalendermodul noch etwas mitgeben oder sollte es die ganztägigen Termine automatisch erkennen?
2)
Wie bekomme ich denn die Zeilenabstände zwischen meinen einzelnen "heute" Terminen wieder kleiner? Die waren bisher nicht da.
Vielen Dank.
Grüße Mave
Bei mir werden auch keine Farben im Kalender angezeigt. In den Readings stehen die Farben drin.
Grüße Mave
Ah, der Parameter data-sourcecolor="yes" hat gefehlt.
Jetzt werden die Farben korrekt angezeigt.
Grüße Mave
Oh man. Danke Mave. Das hat bei mir auch gefehlt. Leider übersehen, dass man diesen noch aktivieren muss!
Stand aber leider auch nirgends geschrieben. Habe ich nur durch Zufall entdeckt...
Naja zumindest hatte Chris es in seinem Codebeispiel in Beitrag #71 mit aufgeführt.
Zitat von: Mave am 07 September 2017, 09:27:20
1)
Ich bekomme bei ganztägigen Terminen immer noch 00:00 - 00:00 angezeigt.
Muss ich dem Kalendermodul noch etwas mitgeben oder sollte es die ganztägigen Termine automatisch erkennen?
2)
Wie bekomme ich denn die Zeilenabstände zwischen meinen einzelnen "heute" Terminen wieder kleiner? Die waren bisher nicht da.
Vielen Dank.
Grüße Mave
1. Ist noch nicht offiziell eingespielt
2. ich habe dem div vom Kalender einen style="height: 10%;" verpasst.
Laire,
ich habe mir Modul und Widget von Github heruntergeladen und eingespielt.
Sollte also funktionieren.
Vielen Dank.
Grüße Kai
Funktioniert bei Euch die Anzeige "ganztägig" für Termine die von heute 00:00 bis morgen 00:00 gehen?
Zitat von: Laire am 07 September 2017, 13:21:19
2. ich habe dem div vom Kalender einen style="height: 10%;" verpasst.
Wenn ich height auf 10% setze habe ich allerdings ein Problem mit Einträgen, die über zwei Zeilen hinaus gehen. Dann überlappen sich die Termine leider bzw. der mehrzeilige Termin überlappt die anderen.
Zitat von: chris1284 am 03 September 2017, 09:24:50
Zitat von: Mave am 03 September 2017, 08:52:02
- Summaries, welche die Spaltenbreite überschreiten, werden nicht 2-reihig dargestellt sondern mit "..." abgeschnitten
glaube ich nicht umsetzbar denn wie will man rausfinden das zb die angegebene spaltenbreite von x% zu klein für den text ist?
einfacher wäre es wenn man evtl formatieren kann das der tex der aus der zelle läuft einfach kein zeilenumbruch macht und alles ausßerhalb nicht sichtbar ist (keine ahnung ob das html hergibt)
Wenn es hierfür noch eine Lösung gäbe wäre ich rund um Glücklich. :)
Wie gesagt fände ich eine Funktion nicht schlecht, wo man die Anzahl an Buchstaben angeben könnte, die er anzeigen soll und ab z.B.: 40 Buchstaben soll er ein "..." dran hängen. Damit hätte ich das Problem mit der Überlappung geregelt und das ein langer Eintrag nicht mein ganzes Widget ausfüllt, wie es aktuell leider der Fall ist. Meistens handelt es sich dabei um Telefonkonferenzen die einfach viel zu langen Text enthalten und wo ich keinen Einfluss drauf habe.
@Mave: Bei mir wird ganztägig aus meinen Terminen von 00:00 - 00:00 gemacht. Hast du data-timeformat="short" gesetzt?
Gruß
sTaN
Ich habe timeshort auf 1 gesetzt.
In den Readings steht dann 00:00 - 00:00 anstatt 00:00:00 - 00:00:00
Die Frage ist, wieso da jetzt nicht ganztägig steht.
Mit dem Attribut "fulldaytext" habe ich auch schon herumgespielt, hat aber nichts geändert.
für die anzeige ganztägig muss der termin am folgetag enden um 00:00:00 ob nun timeshort 1 oder 0 ist für diese prüfung egal.
Hallo Chris,
ich habe das nochmal geprüft. Meine Ganztagstermine gehen vom aktuellen Tag 00:00 Uhr bis zum Folgetag 00:00 Uhr.
Hast Du noch eine Idee?
Grüße
Ich habe nochmal an meiner Version des Widgets für die Tablet UI gefeilt.
Ich würde mich freuen wenn Ihr es mal testet.
@Chris: ich habe versucht alles so gut wie möglich zu kommentieren. Kannst ja mal drüber schauen
Features:
Wochentaganzeige:
mit data-dayname="yes"
im HTML Code werden die Abkürzungen der Wochentagsnamen vor dem Datum angezeigt
Einzeilige Termine:
mit data-oneline="yes"
wird der Termin als Einzeiler dagestellt, wenn der Platz nicht ausreicht wird der Text abgeschnitten und durch ... ersetzt
Fix:
Die Zeilenhöhe sollte sich jetzt an den Inhalt orientieren.
Installation:
Die widget_calview.js aus dem Anhang herrunterladen und mit der widget_calview.js im Ordner "js" ersetzten.
Ich habe die aktuelle Modul-Version ins github und fhem eingepflegt. Die neuen Attribute sind nun auch dokumentiert für die commandref
@ Laire
vielen Dank, werde ich mir ansehen.
Ich störe mich nach einigem nachdenken noch an der Umsetzung der Wochentage. Hier würde ich eine perl / modulseitige Umsetzung bevorzugen da so die readings auch für andere Module zur verfügung stehen (zb readingsgroup). Man könnte dann auch einfach per Attribut noch steuern wie man die Anzeige will (gerade für unsere englischen User zb interessant oder für User die 3Zeichen pro Tag oder den ganzen Wochentagsnamen wollen)
@chris
Leider kenne ich mich mit Pearl überhaupt nicht aus. Bei JS, HTML und CSS helfe ich aber gerne weiter.
Chris,
hast Du noch eine Idee, warum bei mir "ganztägig" nicht angezeigt wird?
Ich habe alles versucht, weiß aber nicht mehr, was ich noch testen soll.
Kann es sich eventuell noch um einen Bug handeln?
Vielen Dank.
Grüße Mave
Zitat von: chris1284 am 12 September 2017, 19:20:54
Ich habe die aktuelle Modul-Version ins github und fhem eingepflegt. Die neuen Attribute sind nun auch dokumentiert für die commandref
Kann es sein, dass da noch eine ältere Version steht?
Zitat von: Laire am 11 September 2017, 18:58:44
Ich habe nochmal an meiner Version des Widgets für die Tablet UI gefeilt.
Ich würde mich freuen wenn Ihr es mal testet.
Hi Laire,
habe dein widget mal getestet. Die Option data-oneline ist genau das, was ich noch benötigt habe. Die langen Namen werden endlich am Ende abgeschnitten und mit ... ersetzt. Leider gibt es noch ein Fehler. Er zeigt mir in einer zusätzlichen Spalte die Farbcodes meiner Kalender an, siehe Screenshot.
EDIT: Achja und die ganztags Termine werden mit 00:00 - 00:00 angezeigt. Mit chris seinem Widget funktioniert die Anzeige mittels ganztägig.
EDIT2: Ich denke mal die Farbcodes werden dargestellt, da man unter data-detail='["bdate","timeshort","summary","sourcecolor"]' diese auch mit angibt. Was in chris seinem Widget allerdings nötig ist, damit die Einträge farbig dargestellt werden. Denke dies muss in deinem Widget lediglich ausgeblendet werden?!
Gruß
sTaN
Zitat von: sTaN am 08 September 2017, 22:52:15
@Mave: Bei mir wird ganztägig aus meinen Terminen von 00:00 - 00:00 gemacht. Hast du data-timeformat="short" gesetzt?
sTaN,
was wird denn bei Dir in dem Calview Modul angezeigt?
Steht dort ganztägig oder steht dort 00:00?
Vielen Dank.
Grüße Mave
Zitat von: CQuadrat am 13 September 2017, 11:09:35
Kann es sein, dass da noch eine ältere Version steht?
wo steht eine alter Version? seit heute ca 8uhr solltest du per update die
Zitat57_CALVIEW.pm 15056 2017-09-12 17:17:30Z chris1284
bekommen.
Zitat von: Mave am 13 September 2017, 06:56:15
Ich habe alles versucht, weiß aber nicht mehr, was ich noch testen soll.
Kann es sich eventuell noch um einen Bug handeln?
möglich. magst du mir eine ical schicken von dem calender (wenn keine sensiblen daten) + ein list des calview devices
Zitat von: sTaN am 13 September 2017, 14:43:20
Mit chris seinem Widget funktioniert die Anzeige mittels ganztägig....
Was in chris seinem Widget allerdings nötig ist, damit die Einträge farbig dargestellt werden. Denke dies muss in deinem Widget lediglich ausgeblendet werden?!
ich möchte eigentlich ungern hier 2 widget version im thread gleichzeitig diskutieren/supporten. das verwirrt sicher den ein oder anderen. ich bin noch nicht dazu gekommen laires anpassung mit meinem widget zusammen zu führen. stumpf seine version einpflegen will auch nicht (sieh deine meldungen was nicht geht und am ende muss im zweifel ich es supporten)
Ich kann da Chris nur beipflichten.
Seine Unterstützung anzubieten finde ich okay, aber ein modifiziertes Widget veröffentlichen finde ich unschön.
Just my 2 cents.
Grüße Mave
Zitat von: chris1284 am 13 September 2017, 18:09:19
möglich. magst du mir eine ical schicken von dem calender (wenn keine sensiblen daten) + ein list des calview devices
Chris,
vielen Dank für Dein Angebot. Schicke ich Dir zu.
Eine Frage noch: steht bei Dir "ganztägig" auch schon im Modul oder nur im Widget?
Grüße Mave
Hi chris,
nein da gebe ich dir Recht! Denke auch zwei Widgets machen keinen Sinn, da sein Widget bereits sehr gut ist. Mir hat lediglich die Option data-oneline in deinem widget noch gefehlt. Bin auch wieder auf deine Version zurück, da ich gern beim Standard bleiben möchte. Habe gesehen, dass Laire noch jede einzelne Zeile unterschiedlich formatieren kann, was ich für wenig sinnvoll erachte, da es in meinem Fall niemals funktionieren kann.
Ich warte mal ab, ob die die oneline Geschichte bei dir noch implementiert bekommst. Ansonsten bin ich gern bereit zu testen, um auch einen kleinen Beitrag zu leisten.
Gruß und danke für eure Mühe!
sTaN
Zitat von: chris1284 am 13 September 2017, 18:06:12
wo steht eine alter Version? seit heute ca 8uhr solltest du per update die bekommen.
Ich meinte das Widget.
ich habe nun die "oneline" Option bei mir im github drin. Diese jedoch in geänderter Ausführung da ich dies in einer Übersicht auch bei description und location sinnvoll halte
data-onelinesum yes/no summarry wird abgeschnitten und ... am ende gesetzt
data-onelinedesc yes/no description wird abgeschnitten und ... am ende gesetzt
data-onelineloc yes/no location wird abgeschnitten und ... am ende gesetzt
ich überlege es überall zu setzen und nur data-oneline einzubauen und dann auch datum, zeiten usw abzuschneiden wenn notwenig. wenn zb datum und zeiten abgeschnitten werden würde ich sagen hat eh jemand die spaltenbreite faslch gewählt. meinungen dazu?
die codeoptimierungen im hintergund sind für soweit logisch und es werden siche rdie meisten einfließen
Aus meiner Sicht reicht eine Option data-oneline für alles. Wie du sagst, ist die Spaltenbreite falsch gesetzt, wenn die Zeiten und das Datum angeschnitten werden aber sicher nicht verkehrt, wenn dies auch dort gemacht wird.
Werde es heute Abend gleich testen.
Zitat von: CQuadrat am 13 September 2017, 18:36:50
Ich meinte das Widget.
ja, da hatte keine historie, habe ich angepasst
Zitat von: chris1284 am 13 September 2017, 18:57:26
ja, da hatte keine historie, habe ich angepasst
Danke!
Zitat von: chris1284 am 13 September 2017, 18:48:12
ich habe nun die "oneline" Option bei mir im github drin. Diese jedoch in geänderter Ausführung da ich dies in einer Übersicht auch bei description und location sinnvoll halte
data-onelinesum yes/no summarry wird abgeschnitten und ... am ende gesetzt
data-onelinedesc yes/no description wird abgeschnitten und ... am ende gesetzt
data-onelineloc yes/no location wird abgeschnitten und ... am ende gesetzt
Abend Chris,
soeben deine Widget Version aus github geladen. Die oneline-Optionen funktionieren super. Die timeshort bzw. fulldaytext scheinbar leider nicht mehr.
Hatte heute Mittag deine eingecheckte 57_CALVIEW.pm Version über FHEM update geladen (57_CALVIEW.pm 15056 2017-09-12 17:17:30Z)
In den CALVIEW Readings steht 00:00 - 00:00 und das Attribut timeshort = 1 ist gesetzt. fulldaytext hatte ich zunächst nicht gesetzt, da es default ja "ganztägig" ist. Auch mit gesetztem Attribut bleibt die Anzeige auf 00:00 - 00:00. Mein <div> für die heute-Ansicht sieht wie folgt aus:
<div data-type="calview"
data-device="calview_all"
data-get="today"
data-max="5"
data-detail='["bdate","timeshort","summary","sourcecolor"]'
data-detailwidth='["20","30","50"]'
data-dateformat="short"
data-timeformat="short"
data-sourcecolor="yes"
data-showempty="true"
data-onelinesum="yes"
data-class="left-align large">
</div>
Also habe ich scheinbar das gleiche Thema wie Mave jetzt.
Was ich in Laires Version noch klasse fand, waren die Zeilenabstände zwischen den Terminen. Die sind in deiner Version etwas groß geraten, womit weniger auf mein Widget passen. Das Setzen von
style="height: 10%;" finde ich nicht so schön, da sich sonst bei mir die Termine überschneiden, weil ich ja 3 div container für today, tomorrow und no-tomorrow verwende. Aber vielleicht ist dies noch in den Optimierungen von Laire enthalten, die du implementieren wolltest?!
Im Anhang noch ein Vergleich der Darstellungen.
EDIT: Ich sehe gerade, dass die Zeilenabstände in den Screenhots komplett gleich aussehen. ::)
Allerdings habe ich diese auf meinem Mac im Safari gemacht. auf dem iPad 3 sind die Zeilenabstände unterschiedlich. Das ist mir jetzt nicht ganz klar, warum?! :o
Mit Laires Version passen genau 10 Zeilen drauf und mit deine Chris nur 8 und die 9. rutscht schon aus dem Widget raus.
Gruß
sTaN
die ganztags anzeige hatte wirklich einen bug. im github ist eine version die Mave gerade testet, mit der sollte es gehen.
das was du meinst mit den zeilenabstand kann nur am hboxstyle liegtn den Laire noch mit style="height:auto;" anpasst. dies ist im github nun auch drin
Funktioniert 👍
Herzlichen Dank an Chris für seine tolle Unterstützung.
Grüße Mave
Danke Chris für den schnellen Support!
Gerade aktualisiert. Ganztags Termine werden wieder als "ganztägig" erkannt und die Option hast du schon auf data-oneline umgestellt. Klappt auch hervorragend.
Trau mich schon gar nicht wieder etwas Negatives zu äußern aber an den Zeilenabständen hat sich trotz style="height:auto;" leider noch nichts verändert.
Noch mal vielen herzlichen Dank für die Umsetzung unserer Wünsche bisher!!!
sTaN
data-oneline reicht meiner Meinung nach aus.....
Vielen Dank.
Grüße Mave
ok, das modul ist dann heute im fhemupdate, das widget schaue ich mir heute abend nochmal an
Ich bin jetzt mit Modul und Widget absolut zufrieden.
Den Zeilenabstand habe ich mit "top-narrow-10" verkleinert.
Vielen Dank nochmal an Chris, dass er sich den Verbesserungsvorschlägen angenommen hat.
Grüße Mave
Hallo Zusammen,
bei mir funktioniert left-align irgendwie nicht:
data-class="left-align"
Grundsätzlich wird aber data-class berücksichtigt, da z.B.
data-class="left-align large"
zu größeren Buchstaben führt.
Benötige ich da noch eine CSS?
Danke und Gruß
Christoph
Moin,
ich habe jetzt noch 2 kleinere Problemchen.
1) Trotz data-showempty="true" wird bei mir kein Text angezeigt, wenn es heute oder morgen keine Termine gibt.
2) Lege ich einen Termin ohne Location an, dann zerschiesst es mir meine Termintabelle, weil die Termine ohne Location nach rechts verschoben dargestellt werden. Schön wäre es, wenn das Calview Widget bei einem Termin ohne Location ein Leerzeichen in die Spalte Location einfügen würde, damit die Tabelle sauber formatiert bleibt.
Grüße Mave
Bin jetzt erst auf das Thema "gestoßen", da ich mich erst seit Kurzem mit ftui befasse ;).
Ist es möglich, das Wiki zum Calview-Widget auf den aktuellen Stand zu bringen, damit die neuen Möglichkeiten an einer Stelle dokumentiert sind?
Danke, Uwe.
Was mir auch noch aufgefallen ist:
Bei einem Termin ohne Location wird die Location vom letzten Termin mit Location angezeigt.... :-[
Das Problem mit Location und der dann verschoben Ansicht ist mir auch auf gefallen. Erste versuche das durch zb Leerzeichen zu kompensieren hatten keinen Erfolg.
Wiki kann man anpassen, man muss nur einen wikiaccound haben. Wenn ich mal etwas Zeit habe vervollständige ich es mal.
@mave: das könnte ich bisher noch nicht beobachten und dürfte eigentlich nicht passieren weil jedes Mal ein anderes Reading gelesen wird und nicht pro Termin in der selben Variablen die Location gespeichert und überschrieben wird
Hallo,
ich versuche gerade, einen Abfallkalender in FHEM einzubinden, aber leider ohne Erfolg. Könnte da etwas Hilfe gebrauchen. Ich verwende aktuell noch kein TabletUI, würde das also erstmal hinten anstellen. Ich möchte in das normale FHEM eine Listenansicht mit den heutigen und kommenden Terminen haben. Ich habe mich nach der Anleitung hier: https://forum.fhem.de/index.php/topic,63575.0.html gerichtet.
Ich habe folgendes konfiguriert:
### ABFALLKALENDER
#ICAL
define ical_abfall Calendar ical file ./conf/abfall-2017-gt.ics
#CALVIEW
define calview_abfall CALVIEW ical_abfall 2
attr calview_abfall modes next
#READINGSGROUP
define readingsgroup_abfall readingsGroup <Zeile>,<Start>,<Start Zeit>,<Summary>,<Ende>,<End Zeit> calview_abfall
attr readingsgroup_abfall nonames 1
#NOTIFY
define notify_abfall notify calview_abfall:t:.* {\
my $i;;\
my $modtext = "<Datum>,<Zeit>,<Termin>,<Ort>,<Quelle> ";;\
\
for($i= 1;;$i<= ReadingsVal("calview_abfall","c-today", 0);;$i++){\
$modtext .= "calview_abfall:<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("calview_abfall","c-tomorrow", 0);;$i++){\
$modtext .= "calview_abfall:<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("calview_abfall","c-term", 0);;$i++){\
$modtext .= "calview_abfall: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");;\
}\
heraus kommt dabei siehe Anhang...
Hi,
ich bin gerade dabei, meine Nextcloud-Kalender über FHEM anzeigen zu lassen. Das funktioniert im Prinzip schon, nur habe ich ein Problem.
Wenn ich die commandref richtig interpretiere, kann man bei der Definition von CALVIEW mehrere Kalender-Namen angeben, damit diese in der View zu einem "zusammengefasst" werden. Das klappt bei mir leider nicht, hier werden immer nur die Daten des letzten angegebenen Kalenders übernommen.
Hier mal ein bisschen Code:
define KalenderMuell Calendar ical url https://... 3600
attr KalenderMuell room Test
define KalenderFeiertage Calendar ical url https://... 3600
attr KalenderFeiertage room Test
define AlleKalender CALVIEW KalenderMuell,KalenderFeiertage next
attr AlleKalender maxreadings 10
attr AlleKalender modes next
attr AlleKalender room Test
define kalenderTermine readingsGroup <Datum>,<Zeit>,<Termin> AlleKalender:t_001_bdate,t_001_btime,t_001_summary\
AlleKalender:t_002_bdate,t_002_btime,t_002_summary\
AlleKalender:t_003_bdate,t_003_btime,t_003_summary\
AlleKalender:t_004_bdate,t_004_btime,t_004_summary\
AlleKalender:t_005_bdate,t_005_btime,t_005_summary\
AlleKalender:t_006_bdate,t_006_btime,t_006_summary\
AlleKalender:t_007_bdate,t_007_btime,t_007_summary\
AlleKalender:t_008_bdate,t_008_btime,t_008_summary\
AlleKalender:t_009_bdate,t_009_btime,t_009_summary\
AlleKalender:t_010_bdate,t_010_btime,t_010_summary
attr kalenderTermine alias Termine
attr kalenderTermine group _KalenderView_
attr kalenderTermine mapping %READING
attr kalenderTermine nonames 1
attr kalenderTermine room Test
Siehe Screenshot der RG. Wenn ich bei CALVIEW nur einen Kalender angebe, dann funktioniert es auch (nur falls die Frage kommt, ob auch in beiden Kalendern Einträge vorhanden sind).
Irgendwie stehe ich nun auf dem Schlauch....
DecaTecm: wenn du mehrer Kalender in die view einbindest ERST readings checken, hier so,Late alle Termine beider Kalender auftauchen. Wenn das passt kannst du dich an die rg machen
Setze bei Müll und Feiertage im calendar bitte mal das Attribut hideolderthan auf 1
@afloria: das Problem sind Syntaxfehler (sehr wahrscheinlich). Editierst du die rg in der fhem.
@chris1284: Das war genau das Problem: Im CALVIEW wurden nur Termine des ersten Kalenders aufgeführt. Komischerweise hat hier erst das Setzen von hideolderthan auf 1 bei den Kalendern geholfen. Doch was bewirkt die "1" hier, in der CommandRef wird hier von <timespec> geredet? Wenn dies einfach auf 1 gesetzt wird, heißt das dann nicht eigentlich 1 Sekunde?
ich habe mir schon gedacht das es hilft. dieses attribut steuert wie alt termine sein dürfen die angezeigt werden. https://fhem.de/commandref.html#Calendar
indem fall korekt interpretiert 1s.
da du nur 2016er feiertage hattest war ganz logisch da dein müllkalender sehr wahrscheinlich nur 2017er termine beinhaltet und max readings auf 10 stand.
hättest du es auf 200 gestellt hättest du sicher nach dne ganzen 2016er feiertagen auch irgendwann 2017er termine aus beidne kalendern gesehen
Ach Scheibenkleister, die Feiertage waren ja alle von 2016. Ist ja dann irgendwie logisch, wenn nur diese angezeigt werden.
Jetzt klappt's auf jeden Fall, vielen Dank!
Ich stelle folgendes merkwürdige Verhalten fest:
Ich habe per "Calendar" zunächst einen Geburtstagskalender "abonniert", den ich vom Kalendermodul meiner Synology-NAS beziehe. Läuft ohne Probleme/Fehlermeldungen und zeigt bei Reading "modeUpcoming" auch eine Reihe schöne kryptische Einträge der Art:
20170211T2259119282blackbox;5b1b99125e644c6db73bbd9b675806e9;...
Ein get Geburtstage full all liefert (auszugsweise):
20170211T2259119282blackbox end 02.11.2016 00:00:00-03.11.2016 00:00:00 * Daniel
...
20170211T2259119282blackbox upcoming 02.11.2017 00:00:00-03.11.2017 00:00:00 * Daniel
...
20170211T2259119282blackbox upcoming 02.11.2018 00:00:00-03.11.2018 00:00:00 * Daniel
Alle anderen modes (modeEnd, modeEnded, modeXYZ etc.) zeigen gar keine Werte, außer:
tomorrow | Unknown argument tomorrow, choose one of update:noArg reload:noArg find text full summary location description alarm start end vcalendar:noArg vevents:noArg
Soll mich aber nicht stören, wenn sonst alles geht...
Also per "CALVIEW" die Readings für diesen Geburtstagskalender erzeugt. Hoppla: da steht doch tatsächlich als nächster Eintrag:
t_001_bdate 02.11.2016
Ist mir erst gar nicht aufgefallen, denn das Weblinkmodul zeigt mit CalendarAsHtml("Geburtstage","next") diesen Geburtstag schön am 02.11.2017 an
02.11.17 00:00 * Daniel
Im FTUI-Widget calview dagegen wird der Termin wieder dem Jahr 2016 zugeordnet:
02.11.2016 * Daniel
Irgendwas stimmt da nicht oder verstehe ich nicht...
Hab' selbst die Lösung gefunden:
Im Calendar-Device für die Geburtstage muss noch das Attribut hideOlderThan auf 1 gesetzt werden!
Mann, Mann, Mann - auf diese Abhängigkeiten muss man als "Newbie" aber auch erst mal kommen...
Besonders, wenn verschiedene Module/Widgets unterschiedliches Verhalten zeigen ("CalendarAsHTML" berücksichtigt offensichtlich gleich nur upcoming Events, CALVIEW und das FTUI-Widget dagegen nicht).
Nix für ungut: Tolles Modulpaket und Danke dafür!
Ich stehe gerade auf dem Schlauch.
Nachdem die Ganztagstermine schon mal richtig als "ganztags" angezeigt wurde, erscheinen jetzt alle ganztägigen Termine wieder mit 00:00-00:00
Chris, es wäre toll, wenn Du Dir das nochmal anschauen könntest.
Vielen Dank.
Grüße Mave
in der Tat ist das ein "witziges" verhalten. Termine der gleichen Serie werden teils mit ganztägig und teils mit 00:00:00 - 00:00:00 gezeigt. Jeder Termin wird aber eigentlich gleich abgearbeitet ???
ich bin dran
Fehler gefunden. die termine wurden bei tagen 01-09 mit 1-9 verglichen und ab 10 passte es dann wider weil die zahlen zweistellig waren ::)
im update ist die angepasste version dann morgen.
Hallo,
Erstmal danke für das Modul, nutze es jetzt super mit meinem owncloud Kalender. Allerdings ist in der Anleitung zur Anzeige in einer rg in der vorletzten Code Zeile im notify ein Fehler drin: "fhem("modify rg_View_All $modtext");" es müsste heißen "fhem("modify rg_ViewAll $modtext");". Bin noch Anfänger und habe mir stundenlang eine Wolf gesucht bis es gefunden habe :)
Gesendet von meinem VTR-L09 mit Tapatalk
Chris,
vielen Dank. Ich bin gespannt auf das Update morgen.
Könntest Du bitte bei Gelegenheit mal das Widget einchecken?
Vielen Dank.
Grüße Mave
Hallo Chris,
vielen Dank für das tolle Modul!
Kann man den Zeilenabstand zwischen der Terminen verkleinern?
Vielen Dank für die Rückmeldung
data-class 'top-narrow' ergänzen
zb
<div data-type="calview" data-device="View_All" data-get="all" data-detail='["bdate","timeshort","summary","age","sourcecolor"]'data-detailwidth='["15","15","35","5"]' data-oneline="yes" data-class='left-align top-narrow' data-start="none" data-sourcecolor="yes" data-max="10" class="cell"></div>
Zitat von: chris1284 am 05 Oktober 2017, 06:58:51
data-class 'top-narrow' ergänzen
...
Vielen Dank, habe gerade gesehen dass durch das Update in FHEM ich mir die von Hand kopierte Version aus dem Github wieder überschrieen habe. Muss ich heute Abend nochmal versuchen.
du kannst das modul aus dem Update excluden (attr exclude_from_update im global device)
Zitat von: chris1284 am 05 Oktober 2017, 19:48:33
Denkanstoß diendateinaus dem Update excluden (attr exclude_from_update im global device)
Um genau zu sein (für Anfänger wie mich):
attr global exclude_from_update www/tablet/js/widget_calview.js
es reicht auch
attr global exclude_from_update widget_calview.js
Morgen,
Danke für den/Tipps!
Wann wird denn die Version aus dem Github über das Update verfügbar sein?
Kann es sein damit ein Fehler im Modul ist? Folgendes ist mir aufgefallen, wenn ich es richtig verstehe bedeutet das Reading t_001_weekday der Wochentag als Zahl dargestellt. Bei mir steht in den Readings aber immer 2 egal welcher Tag (Montag Dienstag usw.)
Sollte nicht Montag 1 Dienstag 2 Mittwoch 3 usw. sein? Ich wollte mit dem Reading arbeiten und da ist es mir aufgefallen.
Hier ein List
Internals:
DEF kal_Mario_Schichten 1 21600
INTERVAL 21600
KALENDER kal_Mario_Schichten
NAME cv_Mario_Schichten
NR 1199
NTFY_ORDER 50-cv_Mario_Schichten
STATE t: 15 td: 1 tm: 1
TYPE CALVIEW
READINGS:
2017-10-09 13:13:53 c-term 15
2017-10-09 13:13:53 c-today 1
2017-10-09 13:13:53 c-tomorrow 1
2017-10-09 13:13:53 state t: 15 td: 1 tm: 1
2017-10-09 13:13:53 t_001_bdate 09.10.2017
2017-10-09 13:13:53 t_001_btime 21:20:00
2017-10-09 13:13:53 t_001_daysleft 0
2017-10-09 13:13:53 t_001_daysleftLong heute
2017-10-09 13:13:53 t_001_edate 10.10.2017
2017-10-09 13:13:53 t_001_etime 06:00:00
2017-10-09 13:13:53 t_001_mode next
2017-10-09 13:13:53 t_001_source kal_Mario_Schichten
2017-10-09 13:13:53 t_001_sourcecolor white
2017-10-09 13:13:53 t_001_summary Nachtschicht
2017-10-09 13:13:53 t_001_timeshort 21:20 - 06:00
2017-10-09 13:13:53 t_001_weekday 2
2017-10-09 13:13:53 t_002_bdate 10.10.2017
2017-10-09 13:13:53 t_002_btime 21:20:00
2017-10-09 13:13:53 t_002_daysleft 1
2017-10-09 13:13:53 t_002_daysleftLong morgen
2017-10-09 13:13:53 t_002_edate 11.10.2017
2017-10-09 13:13:53 t_002_etime 06:00:00
2017-10-09 13:13:53 t_002_mode next
2017-10-09 13:13:53 t_002_source kal_Mario_Schichten
2017-10-09 13:13:53 t_002_sourcecolor white
2017-10-09 13:13:53 t_002_summary Nachtschicht
2017-10-09 13:13:53 t_002_timeshort 21:20 - 06:00
2017-10-09 13:13:53 t_002_weekday 2
2017-10-09 13:13:53 t_003_bdate 11.10.2017
2017-10-09 13:13:53 t_003_btime 21:20:00
2017-10-09 13:13:53 t_003_daysleft 2
2017-10-09 13:13:53 t_003_daysleftLong in 2 Tagen
2017-10-09 13:13:53 t_003_edate 12.10.2017
2017-10-09 13:13:53 t_003_etime 06:00:00
2017-10-09 13:13:53 t_003_mode next
2017-10-09 13:13:53 t_003_source kal_Mario_Schichten
2017-10-09 13:13:53 t_003_sourcecolor white
2017-10-09 13:13:53 t_003_summary Nachtschicht
2017-10-09 13:13:53 t_003_timeshort 21:20 - 06:00
2017-10-09 13:13:53 t_003_weekday 2
2017-10-09 13:13:53 t_004_bdate 12.10.2017
2017-10-09 13:13:53 t_004_btime 21:20:00
2017-10-09 13:13:53 t_004_daysleft 3
2017-10-09 13:13:53 t_004_daysleftLong in 3 Tagen
2017-10-09 13:13:53 t_004_edate 13.10.2017
2017-10-09 13:13:53 t_004_etime 06:00:00
2017-10-09 13:13:53 t_004_mode next
2017-10-09 13:13:53 t_004_source kal_Mario_Schichten
2017-10-09 13:13:53 t_004_sourcecolor white
2017-10-09 13:13:53 t_004_summary Nachtschicht
2017-10-09 13:13:53 t_004_timeshort 21:20 - 06:00
2017-10-09 13:13:53 t_004_weekday 2
2017-10-09 13:13:53 t_005_bdate 13.10.2017
2017-10-09 13:13:53 t_005_btime 21:20:00
2017-10-09 13:13:53 t_005_daysleft 4
2017-10-09 13:13:53 t_005_daysleftLong in 4 Tagen
2017-10-09 13:13:53 t_005_edate 14.10.2017
2017-10-09 13:13:53 t_005_etime 07:10:00
2017-10-09 13:13:53 t_005_mode next
2017-10-09 13:13:53 t_005_source kal_Mario_Schichten
2017-10-09 13:13:53 t_005_sourcecolor white
2017-10-09 13:13:53 t_005_summary Nachtschicht
2017-10-09 13:13:53 t_005_timeshort 21:20 - 07:10
2017-10-09 13:13:53 t_005_weekday 2
2017-10-09 13:13:53 t_006_bdate 16.10.2017
2017-10-09 13:13:53 t_006_btime 13:21:00
2017-10-09 13:13:53 t_006_daysleft 7
2017-10-09 13:13:53 t_006_daysleftLong in 7 Tagen
2017-10-09 13:13:53 t_006_edate 16.10.2017
2017-10-09 13:13:53 t_006_etime 22:01:00
2017-10-09 13:13:53 t_006_mode next
2017-10-09 13:13:53 t_006_source kal_Mario_Schichten
2017-10-09 13:13:53 t_006_sourcecolor white
2017-10-09 13:13:53 t_006_summary Mittelschicht
2017-10-09 13:13:53 t_006_timeshort 13:21 - 22:01
2017-10-09 13:13:53 t_006_weekday 2
2017-10-09 13:13:53 t_007_bdate 17.10.2017
2017-10-09 13:13:53 t_007_btime 13:21:00
2017-10-09 13:13:53 t_007_daysleft 8
2017-10-09 13:13:53 t_007_daysleftLong in 8 Tagen
2017-10-09 13:13:53 t_007_edate 17.10.2017
2017-10-09 13:13:53 t_007_etime 22:01:00
2017-10-09 13:13:53 t_007_mode next
2017-10-09 13:13:53 t_007_source kal_Mario_Schichten
2017-10-09 13:13:53 t_007_sourcecolor white
2017-10-09 13:13:53 t_007_summary Mittelschicht
2017-10-09 13:13:53 t_007_timeshort 13:21 - 22:01
2017-10-09 13:13:53 t_007_weekday 2
2017-10-09 13:13:53 t_008_bdate 18.10.2017
2017-10-09 13:13:53 t_008_btime 13:21:00
2017-10-09 13:13:53 t_008_daysleft 9
2017-10-09 13:13:53 t_008_daysleftLong in 9 Tagen
2017-10-09 13:13:53 t_008_edate 18.10.2017
2017-10-09 13:13:53 t_008_etime 22:01:00
2017-10-09 13:13:53 t_008_mode next
2017-10-09 13:13:53 t_008_source kal_Mario_Schichten
2017-10-09 13:13:53 t_008_sourcecolor white
2017-10-09 13:13:53 t_008_summary Mittelschicht
2017-10-09 13:13:53 t_008_timeshort 13:21 - 22:01
2017-10-09 13:13:53 t_008_weekday 2
2017-10-09 13:13:53 t_009_bdate 19.10.2017
2017-10-09 13:13:53 t_009_btime 13:22:00
2017-10-09 13:13:53 t_009_daysleft 10
2017-10-09 13:13:53 t_009_daysleftLong in 10 Tagen
2017-10-09 13:13:53 t_009_edate 19.10.2017
2017-10-09 13:13:53 t_009_etime 22:02:00
2017-10-09 13:13:53 t_009_mode next
2017-10-09 13:13:53 t_009_source kal_Mario_Schichten
2017-10-09 13:13:53 t_009_sourcecolor white
2017-10-09 13:13:53 t_009_summary Mittelschicht
2017-10-09 13:13:53 t_009_timeshort 13:22 - 22:02
2017-10-09 13:13:53 t_009_weekday 2
2017-10-09 13:13:53 t_010_bdate 20.10.2017
2017-10-09 13:13:53 t_010_btime 13:21:00
2017-10-09 13:13:53 t_010_daysleft 11
2017-10-09 13:13:53 t_010_daysleftLong in 11 Tagen
2017-10-09 13:13:53 t_010_edate 20.10.2017
2017-10-09 13:13:53 t_010_etime 22:01:00
2017-10-09 13:13:53 t_010_mode next
2017-10-09 13:13:53 t_010_source kal_Mario_Schichten
2017-10-09 13:13:53 t_010_sourcecolor white
2017-10-09 13:13:53 t_010_summary Mittelschicht
2017-10-09 13:13:53 t_010_timeshort 13:21 - 22:01
2017-10-09 13:13:53 t_010_weekday 2
2017-10-09 13:13:53 t_011_bdate 23.10.2017
2017-10-09 13:13:53 t_011_btime 05:20:00
2017-10-09 13:13:53 t_011_daysleft 14
2017-10-09 13:13:53 t_011_daysleftLong in 14 Tagen
2017-10-09 13:13:53 t_011_edate 23.10.2017
2017-10-09 13:13:53 t_011_etime 14:00:00
2017-10-09 13:13:53 t_011_mode next
2017-10-09 13:13:53 t_011_source kal_Mario_Schichten
2017-10-09 13:13:53 t_011_sourcecolor white
2017-10-09 13:13:53 t_011_summary Frühschicht
2017-10-09 13:13:53 t_011_timeshort 05:20 - 14:00
2017-10-09 13:13:53 t_011_weekday 2
2017-10-09 13:13:53 t_012_bdate 24.10.2017
2017-10-09 13:13:53 t_012_btime 05:20:00
2017-10-09 13:13:53 t_012_daysleft 15
2017-10-09 13:13:53 t_012_daysleftLong in 15 Tagen
2017-10-09 13:13:53 t_012_edate 24.10.2017
2017-10-09 13:13:53 t_012_etime 14:00:00
2017-10-09 13:13:53 t_012_mode next
2017-10-09 13:13:53 t_012_source kal_Mario_Schichten
2017-10-09 13:13:53 t_012_sourcecolor white
2017-10-09 13:13:53 t_012_summary Frühschicht
2017-10-09 13:13:53 t_012_timeshort 05:20 - 14:00
2017-10-09 13:13:53 t_012_weekday 2
2017-10-09 13:13:53 t_013_bdate 25.10.2017
2017-10-09 13:13:53 t_013_btime 05:20:00
2017-10-09 13:13:53 t_013_daysleft 16
2017-10-09 13:13:53 t_013_daysleftLong in 16 Tagen
2017-10-09 13:13:53 t_013_edate 25.10.2017
2017-10-09 13:13:53 t_013_etime 14:00:00
2017-10-09 13:13:53 t_013_mode next
2017-10-09 13:13:53 t_013_source kal_Mario_Schichten
2017-10-09 13:13:53 t_013_sourcecolor white
2017-10-09 13:13:53 t_013_summary Frühschicht
2017-10-09 13:13:53 t_013_timeshort 05:20 - 14:00
2017-10-09 13:13:53 t_013_weekday 2
2017-10-09 13:13:53 t_014_bdate 26.10.2017
2017-10-09 13:13:53 t_014_btime 05:20:00
2017-10-09 13:13:53 t_014_daysleft 17
2017-10-09 13:13:53 t_014_daysleftLong in 17 Tagen
2017-10-09 13:13:53 t_014_edate 26.10.2017
2017-10-09 13:13:53 t_014_etime 06:00:00
2017-10-09 13:13:53 t_014_mode next
2017-10-09 13:13:53 t_014_source kal_Mario_Schichten
2017-10-09 13:13:53 t_014_sourcecolor white
2017-10-09 13:13:53 t_014_summary Frühschicht
2017-10-09 13:13:53 t_014_timeshort 05:20 - 06:00
2017-10-09 13:13:53 t_014_weekday 2
2017-10-09 13:13:53 t_015_bdate 27.10.2017
2017-10-09 13:13:53 t_015_btime 05:16:00
2017-10-09 13:13:53 t_015_daysleft 18
2017-10-09 13:13:53 t_015_daysleftLong in 18 Tagen
2017-10-09 13:13:53 t_015_edate 27.10.2017
2017-10-09 13:13:53 t_015_etime 14:01:00
2017-10-09 13:13:53 t_015_mode next
2017-10-09 13:13:53 t_015_source kal_Mario_Schichten
2017-10-09 13:13:53 t_015_sourcecolor white
2017-10-09 13:13:53 t_015_summary Frühschicht
2017-10-09 13:13:53 t_015_timeshort 05:16 - 14:01
2017-10-09 13:13:53 t_015_weekday 2
2017-10-09 13:13:53 today_001_bdate heute
2017-10-09 13:13:53 today_001_btime 21:20:00
2017-10-09 13:13:53 today_001_daysleft 0
2017-10-09 13:13:53 today_001_daysleftLong heute
2017-10-09 13:13:53 today_001_edate 10.10.2017
2017-10-09 13:13:53 today_001_etime 06:00:00
2017-10-09 13:13:53 today_001_mode next
2017-10-09 13:13:53 today_001_source kal_Mario_Schichten
2017-10-09 13:13:53 today_001_sourcecolor white
2017-10-09 13:13:53 today_001_summary Nachtschicht
2017-10-09 13:13:53 today_001_timeshort 21:20 - 06:00
2017-10-09 13:13:53 tomorrow_001_bdate morgen
2017-10-09 13:13:53 tomorrow_001_btime 21:20:00
2017-10-09 13:13:53 tomorrow_001_daysleft 1
2017-10-09 13:13:53 tomorrow_001_daysleftLong morgen
2017-10-09 13:13:53 tomorrow_001_edate 11.10.2017
2017-10-09 13:13:53 tomorrow_001_etime 06:00:00
2017-10-09 13:13:53 tomorrow_001_mode next
2017-10-09 13:13:53 tomorrow_001_source kal_Mario_Schichten
2017-10-09 13:13:53 tomorrow_001_sourcecolor white
2017-10-09 13:13:53 tomorrow_001_summary Nachtschicht
2017-10-09 13:13:53 tomorrow_001_timeshort 21:20 - 06:00
Attributes:
maxreadings 15
modes next
room ,Kalender
timeshort 1
Gruß BlasterX
Zitat von: jensbergemann am 08 Oktober 2017, 08:36:12
Morgen,
Danke für den/Tipps!
Wann wird denn die Version aus dem Github über das Update verfügbar sein?
das modul ist im fhem update! wenn du das widget meinst. keine ahnung
Zitat von: blasterx am 09 Oktober 2017, 13:34:38
wenn ich es richtig verstehe bedeutet das Reading t_001_weekday der Wochentag als Zahl dargestellt
nö. t_xxx bezeichnet einfach nur eine 3 stellige zahl welche einzig die anzahl der readings beziffert und durch diese bezeichnung sortiert fhemweb die readings/termine sauber nach ihrer zeitlichen abfolge.
wochentage werdne vom modul in keinsterweise ausgewertet oder berücksichtigt (noch nicht)
Danke für die Antwort. Das das t_xxx die Anzahl der Readings bedeutet war mir klar. Um es mal anders zu schreiben was bedeutet das Reading t_001_weekday? Ich dachte das weekday stellt den Wochentag in der Zahl dar wie zb. 2 für Dienstag.
Gruß BlasterX
aktuell noch nichts brauchbares (noch nicht)
OK. Trotzdem ein großes Danke für das hervorragende Modul. Also ist das Reading t_xxx_weekday noch nicht nutzbar und die 2 in meinen Readings ist ein fiktiver Wert?
Gruß BlasterX
es ist immer der Weekday als Zahl von "heute". Ich habe es bisher nur hin bekommen in perl den Wekkday von Datum x über libdate-calc-perl (Date::Calc) einzubauen. Was bedeutet dass man sich ein perl Modul installieren müsste. Diese Version läuft hier einwandfrei und zeigt sauber den Wochentagsnamen sowie den Wochetag als Zahl. Ich habe nur ein Problem das einzuchecken weil nach einem Update das Modul nicht lauffähig wäre bis man den Heinweis ließt das man Date::Calc (cpan) oder libdate-calc-perl (apt paket) installiert.
Zitat von: chris1284 am 09 Oktober 2017, 18:20:51
es ist immer der Weekday als Zahl von "heute". Ich habe es bisher nur hin bekommen in perl den Wekkday von Datum x über libdate-calc-perl (Date::Calc) einzubauen. Was bedeutet dass man sich ein perl Modul installieren müsste. Diese Version läuft hier einwandfrei und zeigt sauber den Wochentagsnamen sowie den Wochetag als Zahl. Ich habe nur ein Problem das einzuchecken weil nach einem Update das Modul nicht lauffähig wäre bis man den Heinweis ließt das man Date::Calc (cpan) oder libdate-calc-perl (apt paket) installiert.
Ich finde das ist ok. Du kannst ja die Leute entsprechend per Change Text und per Info hier benachrichtigen. Wenn sich daran jemand stören sollte, könnte man ja mal darüber nachdenken, ob man dafür nicht eine Funktion schreibt, Standardmäßig für jedes Module, wo dann die Abhängigkeiten angegeben werden, und wo dann in FHEM als auch im Log eine Info erscheint, sollte es nicht erfüllte Abhängigkeiten geben. Oder gar eine Routine die diese automatisch auf Wunsch installiert.
Warum brauchst du das für den weekday? Aktuell gibst du übrigens immer den weekday von morgen aus. Die Tage bis zum Termin rechnest du doch schon aus, deshalb ergibt sich dann:
($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time + (86400 * Tage bis Termin));
Das Ergebnis steht dann in $wday. Oder hab ich einen Denkfehler drin?
Vielen Dnak mumpitzstuff! Ich hatte nicht bedacht mit localtime zu rechnen...
Morgen ist das Modul im Fhem update, jetzt schon das widget sowie das Modul im github.
Es gibt 2 Readings neu: weekday (Wochentag Nr) weekdayname (der Wochentag ausgesprochen)
Es gibt ein neues Attribut weekdayname mit möglichen werten de-long, de-short,en-long,en-short
Werden weitere Sprachen benötigt könnte das sicher eingefügt werden
Hallo Chris,
vielen Dank für das tolle Widget mit den neuen Optionen.
Allerdings habe ich immer noch teilweise ein Problem mit den ganztägigen Terminen, mal sind sie richtig und manchmal steht immer noch 00:00 - 00:00 drin, obwohl sie lt. calView-Objekt von 00:00 des einen Tages bis 00:00 des Folgetages gehen (Bilder 1+2).
Außerdem bekomme ich im Widget das Alter nicht angezeigt, obwohl es im CalView-Objekt richtig drin steht (3. Bild).
<div data-type="calview"
data-device="vMyCalendar"
data-get="all"
data-start="notomorrow"
data-showempty="false"
data-max="10"
data-detail='["bdate","timeshort","summary","age"]'
data-detailwidth='["15","30","50","5"]'
data-oneline="yes"
data-dateformat="short"
data-timeformat="short"
data-class="left-align top-narrow-10">
</div>
Hast Du eine Idee.
Und wenn ich einen noch einen Wunsch äußern darf.
Besteht die Möglichkeit beim Reading timeshort festzulegen, ob man nur die Anfangszeit, die Endzeit oder beides angezeigt bekommt?
Ich bräuchte nur die Anfangszeit, möchte aber nicht auf die "Ganztagstermine" verzichten.
Oder kann man das anders lösen.
Vielen Dank. Thomas
das Alter im widget ist gefixed.
das Ganztagsproblem betrifft wohl aktuell nur Termine wo Start- und Endtag Monatsende und Anfang betreffen (die Prüfung ist sehr sehr simpel da sie nur schaut ist Startag + 1 = Endtag => beim Refo wäre das also nicht der Fall: 31 +1 = 32 und Endtag = 01....)
Ich schau es mir heute Nachmittag an
Das wird dein Problem bis auf ein paar Sonderfälle lösen.
if (($startDate ne $endDate) && ($startTime eq $endTime))
{
$appointment = 'ganztägig';
}
Sonderfall (nicht abgedeckt):
start: 01.01.2017 00:00
end: 02.02.2017 18:00
100% Lösung:
Berechne dir vom Startdatum/Zeit die Sekunden von 1970 an und von Enddatum/Zeit ebenfalls. Liegen dazwischen mindestens 86400 Sekunden, dann ist das ein Ganztagsevent mit einer Länge von mehr als 24h. Wobei das natürlich eine Definitionsfrage ist, ob ein halber Tag + ein dreiviertel Tag ein Ganztagesevent darstellt oder eben nicht. Aber auch das könnte man abfangen, da würde die Abfrage dann aber wesentlich komplizierter sein. Wenn es wirklich nötig ist, dann kann ich mir dazu noch mal Gedanken machen.
Falls jemand noch eine readingsgroup benötigt. Alles was ich gefunden habe, hat nur mit einem separaten Notify funktioniert... Maximal 20 Termine werden angezeigt, bei Bedarf kann das aber beliebig erweitert werden.
defmod rg_Kalender readingsGroup <Datum>,<Zeit>,<Termin>,<Ort>\
KALENDER_VIEW:t_001_bdate,t_001_timeshort,t_001_summary,t_001_location\
KALENDER_VIEW:t_002_bdate,t_002_timeshort,t_002_summary,t_002_location\
KALENDER_VIEW:t_003_bdate,t_003_timeshort,t_003_summary,t_003_location\
KALENDER_VIEW:t_004_bdate,t_004_timeshort,t_004_summary,t_004_location\
KALENDER_VIEW:t_005_bdate,t_005_timeshort,t_005_summary,t_005_location\
KALENDER_VIEW:t_006_bdate,t_006_timeshort,t_006_summary,t_006_location\
KALENDER_VIEW:t_007_bdate,t_007_timeshort,t_007_summary,t_007_location\
KALENDER_VIEW:t_008_bdate,t_008_timeshort,t_008_summary,t_008_location\
KALENDER_VIEW:t_009_bdate,t_009_timeshort,t_009_summary,t_009_location\
KALENDER_VIEW:t_010_bdate,t_010_timeshort,t_010_summary,t_010_location\
KALENDER_VIEW:t_011_bdate,t_011_timeshort,t_011_summary,t_011_location\
KALENDER_VIEW:t_012_bdate,t_012_timeshort,t_012_summary,t_012_location\
KALENDER_VIEW:t_013_bdate,t_013_timeshort,t_013_summary,t_013_location\
KALENDER_VIEW:t_014_bdate,t_014_timeshort,t_014_summary,t_014_location\
KALENDER_VIEW:t_015_bdate,t_015_timeshort,t_015_summary,t_015_location\
KALENDER_VIEW:t_016_bdate,t_016_timeshort,t_016_summary,t_016_location\
KALENDER_VIEW:t_017_bdate,t_017_timeshort,t_017_summary,t_017_location\
KALENDER_VIEW:t_018_bdate,t_018_timeshort,t_018_summary,t_018_location\
KALENDER_VIEW:t_019_bdate,t_019_timeshort,t_019_summary,t_019_location\
KALENDER_VIEW:t_020_bdate,t_020_timeshort,t_020_summary,t_020_location
attr rg_Kalender nonames 1
attr rg_Kalender notime 1
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";;\
}\
}\
}
Moin,
ich habe jetzt in der Sufu leider dazu nichts gefunden - werden evtl. im Kalender vorhandene Kategorien nicht mit ausgewertet? In meinen Readings ist jedenfalls nichts zu sehen, jedoch sind die Kategorien in der vom NextCloud abgeholten Kalender vorhanden:
BEGIN:VEVENT
DTSTAMP:20171030T080753Z
CREATED:20171030T073326Z
UID:libkcal-613483831.795
SEQUENCE:2
LAST-MODIFIED:20171030T080753Z
DESCRIPTION:einmaliger Feiertag wg. 500 Jahre Reformation Martin Luther
SUMMARY:Reformationstag
LOCATION:Bakum
CATEGORIES:Feiertag <=====
DTSTART;VALUE=DATE:20171031
DTEND;VALUE=DATE:20171101
TRANSP:TRANSPARENT
END:VEVENT
END:VCALENDAR
Dies ist jetzt nur ein Eintrag des fraglichen Kalenders ...
Hier die Kalenderdefinition:
ical url https://name:passwort@server/remote.php/dav/calendars/christoph/urlaubs-kalender/?export 86400
Ich würde die Kategorien nämlich gerne auswerten für verschiedene Aktionen innerhalb von fhem ... ;) (z.B. Roolofahren bei Urlaub etc :D)
Gruß, CHristoph
Die Frage ist ob die CATEGORIES schon vom Kalender ausgewertet werden. Musst du mal schauen, wenn ja kann mans in CALVIEW einbauen
Hm, zumindest ein get Kalender full all ergibt diesbezüglich nichts - ich habe einmal entsprechend für das Modul angefragt (https://forum.fhem.de/index.php?topic=79237.msg712184#msg712184) ...
Bei mir stehen für den heutigen Tage 2 Ganztagstermine - einmal mit "ganztags" und einmal mit "00:00-00:00".
Kann also nichts mit Monatsende zu tun haben....
ich brauch start und ende beider termine aus den readings
Zitat von: chris1284 am 08 November 2017, 18:04:56
Die Frage ist ob die CATEGORIES schon vom Kalender ausgewertet werden. Musst du mal schauen, wenn ja kann mans in CALVIEW einbauen
Moin,
in dieser Variante von 57_Calendar.pm (https://forum.fhem.de/index.php/topic,79237.msg714713.html#msg714713) ist eine Auswertung jetzt vorhanden - bisher ist es aber nur eine Testversion ...
Mal sehen, ob ich mir später selber das Calview-Modul mit meinen bescheidenen Kenntnissen anschauen und modifizieren kann ;) Natürlich habe ich gegen Hilfe nix einzuwenden :D
Gruß, Christoph
wenn es verfügbar ist baue ich es schnell ein, würde aber auf die Final warten
Zitat von: chris1284 am 13 November 2017, 18:00:48
wenn es verfügbar ist baue ich es schnell ein, würde aber auf die Final warten
Moin,
das scheint ja bald zu kommen ;)
Gruß, Christoph
Moin,
eine Testversion mit den Categories hat freundlicherweise Nils_ erstellt, und das scheint soweit zu funktionieren - zumindest bekomme ich jetzt das gewünschte Ergebnis ;)
Soweit ich verstanden habe, will Boris sein 57_Calendar-Modul auch entsprechend erweitern...
Gruß, Christoph
Moin,
Zitat von: chris1284 am 13 November 2017, 18:00:48
wenn es verfügbar ist baue ich es schnell ein, würde aber auf die Final warten
Boris hat das Feature jetzt eingecheckt - mit der CALVIEW von Nils_ funktioniert es prima
Gruß, Christoph
dann werde ich es heute einchecken
Calview ist i updat eund das widget im github
Moin,
supi, danke.
Dann kann ich mich jetzt ja mal an die geplanten Auswertungen machen ;)
Gruß, Christoph
Hallo zusammen,
eine Frage .. in der notify steht ja sinngemnäß der folgenden Code
m< $modtext = "<sometext>";
fhem("modify rg_ViewAll $modtext");
fhem("SAVE");}
Nach jedem Ausführen des notify events zeigt mir FHEM an, dass die Konfiguration geändert ist ....
Frage 1:
Ist das tatsächlich das korrekte Vorgehen, dass man eine Konfigurationsänderung machen muss, um eine readingGroup zu füllen?
Frage 2:
Wieso zieht das anschliessende fhem("SAVE") nicht?
Wenn ich die Konfiguration dann maunell speichere, dann ist es bis zum nächsten Notify auch wieder ok.
Danke schon mal im Vorraus.
https://forum.fhem.de/index.php/topic,63575.msg702037.html#msg702037 (https://forum.fhem.de/index.php/topic,63575.msg702037.html#msg702037)
Nimm das hier, da brauchst du kein Save.
Zitat von: mumpitzstuff am 30 November 2017, 16:52:44
https://forum.fhem.de/index.php/topic,63575.msg702037.html#msg702037 (https://forum.fhem.de/index.php/topic,63575.msg702037.html#msg702037)
Nimm das hier, da brauchst du kein Save.
Danke funktioniert !
Gerade fällt mir auf, dass im FTUI CalView Widget das Ende eines zu langen Eintrags nicht mehr mit .... gekürzt wird, obwohl das schonmal funktioniert hat.
Kann mir bitte jemand helfen?
Vielen Dank.
Grüße Mave
geht bei mir... https://github.com/chris1284/Widgets-for-fhem-tablet-ui
Hmm....funktioniert bei mir leider nicht (mehr). Hat mal funktioniert, ich erinnere mich.
data-oneline steht auf "yes"
irgendwas geändert? zeig mal die tui definition
Sorry, was meinst Du mit tui definition? :-[
Zitat von: Mave am 03 Dezember 2017, 13:09:16
Sorry, was meinst Du mit tui definition? :-[
Ich denke er mein Tablet UI Definition
Internals:
DEF ftui/ ./www/tablet/ Tablet-UI
NAME TABLETUI
NR 70
STATE TABLETUI
TYPE HTTPSRV
fhem:
directory ./www/tablet/
friendlyname Tablet-UI
infix ftui/
Attributes:
Ich meinte er wie du das Widget in der TUI eingebunden hast. Quasi drin HTML Code mit dem Widget :)
<div data-type="calview" data-device="Kalenderansicht" data-get="today" data-detail='["bdate","timeshort","summary"]' data-detailwidth='["15","22","63"]' data-class='left-align top-narrow-10' data-oneline="yes" data-showempty="false" class="cell"></div>
<div data-type="calview" data-device="Kalenderansicht" data-get="tomorrow" data-detail='["bdate","timeshort","summary"]' data-detailwidth='["15","22","63"]' data-class='left-align top-narrow-10' data-oneline="yes" data-showempty="false" class="cell"></div>
und was darum? bitte ein wenig mehr Code. du kannst ja auch mal eine Testseite einbauen wo nur das calview element drauf ist zb
<li data-row="1" data-col="1" data-sizex="4" data-sizey="4">
<div data-type="calview" data-device="View_All" data-get="all" data-detail='["bdate","timeshort","summary"]'data-detailwidth='["10","10","10"]' data-oneline="yes" data-class='left-align' data-start="none" data-sourcecolor="yes" data-max="20" class="cell"></div>
</li>
Hallo zusammen,
ich habe nun auch dieses "Problem mit dem roten Fragezeichen" seit einem Update vor ein paar Wochen. Der Kalender funktioniert nach wie vor sehr gut, aber ich bekomme immer wieder eine scheinbare Änderung angezeigt:
Last 10 structural changes:
modify rg_Termine_Christoph ,,
Auch mit vielen Recherchen habe ich das Problem bisher nicht beheben können:-/ Das "SAVE" habe ich ja drin, bzw. hatte ich ja vorher auch schon. Hier der Code, rot markiert die (glaube ich) kritische Stelle. Kann mir jemand bei der Lösung helfen? :-\
Kalender:
define ChristophKalender Calendar ical url http://www.google.com/calendar/ical/.../basic.ics
attr ChristophKalender hideOlderThan 3600
attr ChristophKalender verbose 0
CALVIEW:
define View_Christoph CALVIEW ChristophKalender 1
attr View_Christoph maxreadings 6
attr View_Christoph modes all
Automatische Aktualisierung:
define Kalenderakt at +*00:10:00 set View_Christoph update
Manuelle Kalenderaktualisierung:
define Kalenderaktualisierung dummy
attr Kalenderaktualisierung devStateIcon .*:refresh
attr Kalenderaktualisierung group Kalender
attr Kalenderaktualisierung icon time_calendar
attr Kalenderaktualisierung room Wohnung
attr Kalenderaktualisierung webCmd jetzt
define man_Kalenderaktualisierung notify Kalenderaktualisierung:jetzt set View_Christoph update
Hier der scheinbare Problemfall:
define at_KalenderTermine_Christoph at +*00:20:00 {\
my $i;;\
my $modtext = "<Datum>,<Beginn>,<Ereignis>,<Ende> ";;\
for($i= 1;;$i<= ReadingsVal("View_Christoph","c-term", 0);;$i++){\
$modtext .= "View_Christoph:t_".sprintf('%03d',$i)."_bdate,t_".sprintf('%03d',$i)."_btime,t_".sprintf('%03d',$i)."_summary,t_".sprintf('%03d',$i)."_etime ";;}\
fhem("modify rg_Termine_Christoph $modtext");;\
fhem("SAVE");;\
}
Readingsgroup:
define rg_Termine_Christoph readingsGroup <Datum>,<Beginn>,<Ereignis>,<Ende> View_Christoph:t_001_bdate,t_001_btime,t_001_summary,t_001_etime View_Christoph:t_002_bdate,t_002_btime,t_002_summary,t_002_etime View_Christoph:t_003_bdate,t_003_btime,t_003_summary,t_003_etime View_Christoph:t_004_bdate,t_004_btime,t_004_summary,t_004_etime View_Christoph:t_005_bdate,t_005_btime,t_005_summary,t_005_etime View_Christoph:t_006_bdate,t_006_btime,t_006_summary,t_006_etime
attr rg_Termine_Christoph group Kalender
attr rg_Termine_Christoph nameStyle style="font-weight:bold;;color:White"
attr rg_Termine_Christoph noheading 1
attr rg_Termine_Christoph nonames 1
attr rg_Termine_Christoph nostate 1
attr rg_Termine_Christoph notime 1
attr rg_Termine_Christoph room Wohnung
attr rg_Termine_Christoph sortby 02
attr rg_Termine_Christoph 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";;\
}\
}\
}
attr rg_Termine_Christoph valueStyle {\
if ($READING =~ /bdate/)\
{\
my $readingStart = $READING;;\
$readingStart =~ s/bdate//;;\
if (0 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))\
{\
'style="color:red;;;;font-weight:bold"';;\
}\
elsif (1 == ReadingsVal($DEVICE, $readingStart.'daysleft', -1))\
{\
'style="color:yellow;;;;font-weight:bold"';;\
}\
}\
}\
hab das Gleiche Problem mit dem SAVE (rote Fragezeichen)
Last 10 structural changes:
modify rgKalenderFamilie ,,
OK
hat jemand eine Idee?
1 Seite davor gabs schon eine mögliche Lösung.
https://forum.fhem.de/index.php/topic,63575.msg723734.html#msg723734 (https://forum.fhem.de/index.php/topic,63575.msg723734.html#msg723734)
Zitat von: mumpitzstuff am 20 Oktober 2017, 17:37:47
Falls jemand noch eine readingsgroup benötigt. Alles was ich gefunden habe, hat nur mit einem separaten Notify funktioniert... Maximal 20 Termine werden angezeigt, bei Bedarf kann das aber beliebig erweitert werden.
defmod rg_Kalender readingsGroup <Datum>,<Zeit>,<Termin>,<Ort>\
KALENDER_VIEW:t_001_bdate,t_001_timeshort,t_001_summary,t_001_location\
[...]
attr rg_Kalender nonames 1
attr rg_Kalender notime 1
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";;\
}\
}\
}
erstmal: danke dafür mumpitz.
Das hilft für den Anfang ungemein!
Problem was ich habe: es müllt mir das log voll mit:
2017.12.11 15:28:51 1: PERL WARNING: Useless use of a constant ("Heute") in void context at (eval 212161) line 8.
2017.12.11 15:28:51 1: PERL WARNING: Useless use of a constant ("Morgen") in void context at (eval 212161) line 12.
quasi bei jeder Aktualisierung.
Jemand einen guten Tip?
Zitat von: mumpitzstuff am 09 Dezember 2017, 23:12:12
1 Seite davor gabs schon eine mögliche Lösung.
https://forum.fhem.de/index.php/topic,63575.msg723734.html#msg723734 (https://forum.fhem.de/index.php/topic,63575.msg723734.html#msg723734)
Super, Danke!
Wenn's nicht geht vermutlich falsch kopiert.
Mach einen Raw Kontext auf, ersetze alles was drin steht mit dem was ich geschrieben habe, führe das aus und setzte nachträglich noch die Attribute, die werden glaub nicht übernommen.
das ganze hat ja funktioniert, nur leider mit den genannten log Einträgen.
Lag aber wohl eher daran, dass ich versucht habe das ganze um folgendes zu erweitern: ::)
$readingStart =~ s/timeshort//;
if ('00:00:00 - 00:00:00' eq ReadingsVal($DEVICE, $readingStart.'timeshort', -1))
{
"ganztägig";
}
Wäre dankbar, wenn mir das jemand zusammenschreiben kann - sprich: daysleft==00 => heute, daysleft==1 => morgen, und timeshort=='00:00:00 - 00:00:00' => ganztägig
Klingt für mich unlogisch. Ganztägig anstelle des Datums des Termins zu haben ist eher suboptimal. Vermutlich willst du stattdessen die Zeit des Termins durch ganztägig ersetzen. Ich muss mal gucken ob ich mir das heute Abend mal ansehen kann.
Zitat von: mumpitzstuff am 12 Dezember 2017, 13:45:46
Vermutlich willst du stattdessen die Zeit des Termins durch ganztägig ersetzen.
richtig. timshort stellt ja nur anfangs- und endzeit da, also "00:00:00 - 00:00:00".
{
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";
}
}
my $readingStart = $READING;
$readingStart =~ s/timeshort//;
if ('00:00:00 - 00:00:00' eq ReadingsVal($DEVICE, $readingStart.'timeshort', -1))
{
"ganztägig";
}
}
So funktioniert zwar beides, aber eben mit den genannten Fehlern. Ich kann halt kein Perl und hab mir da in skriptkiddy manier was zusammenkopiert.. :-[
Danke schonmal für die Unterstüzung!
{
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";
}
}
elsif ($READING =~ /timeshort/)
{
my $readingStart = $READING;
$readingStart =~ s/timeshort//;
if ('00:00:00 - 00:00:00' eq ReadingsVal($DEVICE, $readingStart.'timeshort', -1))
{
"ganztägig";
}
}
}
Versuchs mal eher so...
TOP! Vielen Dank !
Guten Morgen und frohes Neues Jahr,
Ich habe jetzt den kompletten Thread gelesen, auch viel zu ganztägigen Ereignissen, aber nichts was direkt mein Problem/meine Frage beantwortet.
Ich habe noch nicht alle Readings verstanden, aber c-today gibt doch an ob heute ein Termin ist, richtig? Wenn dem so ist, gibt es da ein Problem mit Ganztägigen und oder Serienterminen?
Ich habe zum Beispiel einen Kalender in dem die Feiertage stehen. Er zeigt für heute keinen Termin an obwohl der Termin noch läuft. Ich würde über Calview nämlich gern einfach auswerten ob c-today 1 hat, dann könnte ich mir die Auswertung der anderen Readings sparen.
Internals:
CFGFN
DEF ferien next 900
INTERVAL 900
KALENDER ferien
NAME CalViewFerien
NR 16758
NTFY_ORDER 50-CalViewFerien
STATE t: 2 td: 0 tm: 0
TYPE CALVIEW
READINGS:
2018-01-01 12:56:10 c-term 2
2018-01-01 12:56:10 c-today 0
2018-01-01 12:56:10 c-tomorrow 0
2018-01-01 12:56:10 state t: 2 td: 0 tm: 0
2018-01-01 12:56:10 t_001_bdate 24.12.2017
2018-01-01 12:56:10 t_001_btime 00:00:00
2018-01-01 12:56:10 t_001_categories
2018-01-01 12:56:10 t_001_daysleft -8
2018-01-01 12:56:10 t_001_daysleftLong in -8 Tagen
2018-01-01 12:56:10 t_001_description Dieser Kalender enthält zur Zeit die Ferien bis Januar 2022.
2018-01-01 12:56:10 t_001_edate 14.01.2018
2018-01-01 12:56:10 t_001_etime 00:00:00
2018-01-01 12:56:10 t_001_location Hessen
2018-01-01 12:56:10 t_001_mode next
2018-01-01 12:56:10 t_001_source ferien
2018-01-01 12:56:10 t_001_sourcecolor white
2018-01-01 12:56:10 t_001_summary Weihnachtsferien
2018-01-01 12:56:10 t_001_timeshort 00:00:00 - 00:00:00
2018-01-01 12:56:10 t_001_weekday 0
2018-01-01 12:56:10 t_001_weekdayname Sonntag
2018-01-01 12:56:10 t_002_bdate 26.03.2018
2018-01-01 12:56:10 t_002_btime 00:00:00
2018-01-01 12:56:10 t_002_categories
2018-01-01 12:56:10 t_002_daysleft 84
2018-01-01 12:56:10 t_002_daysleftLong in 84 Tagen
2018-01-01 12:56:10 t_002_description Dieser Kalender enthält zur Zeit die Ferien bis Januar 2022.
2018-01-01 12:56:10 t_002_edate 08.04.2018
2018-01-01 12:56:10 t_002_etime 00:00:00
2018-01-01 12:56:10 t_002_location Hessen
2018-01-01 12:56:10 t_002_mode next
2018-01-01 12:56:10 t_002_source ferien
2018-01-01 12:56:10 t_002_sourcecolor white
2018-01-01 12:56:10 t_002_summary Osterferien
2018-01-01 12:56:10 t_002_timeshort 00:00:00 - 00:00:00
2018-01-01 12:56:10 t_002_weekday 1
2018-01-01 12:56:10 t_002_weekdayname Montag
Attributes:
DbLogExclude .*
event-on-change-reading .*
maxreadings 2
modes next
room Kalender
Hallo zusammen,
ich würde gerne einen Familienkalender erstellen, leider gibt das der Googlekalender nicht her.
Ich hätte gerne in der einen Achse die Namen und in der anderen die Tage.
Hat dies schon jemand probiert oder einen Ansatz???
Hallo,
ist mein Wunsch so falsch oder hab ich jemand zum nachdenken bekommen???
gruß
Hallo,
ich habe heute ein Calview erstellt, wo 3 Kalender zusammen abgefragt werden. Nun wollte ich, das im Tablet UI die unterschiedlichen Kalender in verschiedenen Farben dargestellt werden. Nur funktioniert das bei mir leider nicht.
Hier meine Kalender:
Kalender1:
Internals:
DEF Kalender_Tanja_Torsten 1 21200
INTERVAL 21200
KALENDER Kalender_Tanja_Torsten
NAME vKalender_Tanja_Torsten
NR 39
NTFY_ORDER 50-vKalender_Tanja_Torsten
STATE t: 7 td: 1 tm: 0
TYPE CALVIEW
READINGS:
2018-01-27 11:01:56 c-term 7
2018-01-27 11:01:56 c-today 1
2018-01-27 11:01:56 c-tomorrow 0
2018-01-27 11:01:56 state t: 7 td: 1 tm: 0
.
.
.
Attributes:
maxreadings 10
modes modeAlarm,modeStart,modeStarted,modeUpcoming
room Kalender
sourcecolor #FF0000
weekdayformat de-short
Kalender2
Internals:
DEF Kalender_Denise 1 21200
INTERVAL 21200
KALENDER Kalender_Denise
NAME vKalender_Denise
NR 41
NTFY_ORDER 50-vKalender_Denise
STATE t: 10 td: 0 tm: 0
TYPE CALVIEW
READINGS:
2018-01-27 11:01:54 c-term 10
2018-01-27 11:01:54 c-today 0
2018-01-27 11:01:54 c-tomorrow 0
.
.
.
Attributes:
maxreadings 10
modes modeAlarm,modeStart,modeStarted,modeUpcoming
room Kalender
sourcecolor #00FF00
weekdayformat de-short
Kalender3
Internals:
DEF Kalender_Ben 1 21200
INTERVAL 21200
KALENDER Kalender_Ben
NAME vKalender_Ben
NR 43
NTFY_ORDER 50-vKalender_Ben
STATE t: 10 td: 0 tm: 0
TYPE CALVIEW
READINGS:
2018-01-27 11:01:54 c-term 10
2018-01-27 11:01:54 c-today 0
2018-01-27 11:01:54 c-tomorrow 0
.
.
.
Attributes:
maxreadings 10
modes next
room Kalender
sourcecolor #FFA500
weekdayformat de-short
Zusammengefügte Kalender:
Internals:
CFGFN
DEF Kalender_Tanja_Torsten,Kalender_Denise,Kalender_Ben next 3600
INTERVAL 3600
KALENDER Kalender_Tanja_Torsten,Kalender_Denise,Kalender_Ben
NAME Kalender_alle_Termine
NR 402
NTFY_ORDER 50-calview_all
STATE t: 27 td: 1 tm: 0
TYPE CALVIEW
READINGS:
2018-01-27 14:02:01 c-term 27
2018-01-27 14:02:01 c-today 1
2018-01-27 14:02:01 c-tomorrow 0
.
.
.
Attributes:
modes next
room Kalender
sourcecolor vKalender_Tanja_Torsten:#FF0000
vKalender_Denise:#00FF00
vKalender_Ben:#FFA500
und in der Ftui habe ich folgenden Code eingefügt:
<div data-type="calview"
data-device="Kalender_alle_Termine"
data-get="all"
data-dateformat="short"
data-timeformat="short"
data-detail='["bdate","btime","summary","sourcecolor"]'
data-detailwidth='["20","60"]'
data-sourcecolor="yes" >
</div>
Anscheinend habe ich irgendwas vergessen, leider weiß ich nicht was
dein Attribut Sourcecolor ist falsch
deines
sourcecolor vKalender_Tanja_Torsten:#FF0000
^- ein"v" zuviel
aber deine Kalender heißen Kalender_Tanja_Torsten,Kalender_Denise,Kalender_Ben
also muss das Attribut lauten
sourcecolor Kalender_Tanja_Torsten:#FF0000
die 3 anderen View v.... sind eigentlich überflüssig wenn du eh alle Calendar-Devices in einer View darstellen willst
In meinem Calview "Kalender_alle_Termine" werden ja 3 Kalender vereinigt. Wie bekomme ich es jetzt hin, dass Termine vom Kalender1 in Rot, Termine von Kalender3 in Orange und Termine von Kalender3 in Grün dargestellt wird?
Jetzt habe ich es nur so hinbekommen, dass die Termine vom Kalender1 in Rot dargestellt werden.
Edit:
Zusatzfrage:
Hat data-showempty noch eine funktion? Egal ob ich data-showempty="false"
oder data-showempty="true"
eingebe, das Widget bleibt leer. Ich dachte, da kommt eine Info wenn kein Termin ansteht, so habe ich zumindest Zeigt einen Text an, wenn keine Termine im angegebenen Zeitraum vorhanden sind verstanden.
Zitat von: Torsten_MG am 27 Januar 2018, 16:37:39
In meinem Calview "Kalender_alle_Termine" werden ja 3 Kalender vereinigt. Wie bekomme ich es jetzt hin, dass Termine vom Kalender1 in Rot, Termine von Kalender3 in Orange und Termine von Kalender3 in Grün dargestellt wird?
In dem du bei Calview Kalender_alle_Termine das Attribut Sourcecolor weiter füllst (wie es auch in der Commadref beschrieben steht):
sourcecolor Kalender_Tanja_Torsten:#FF0000,Kalender_Denise:#ffad46,Kalender_Ben:#006400
Zitat von: chris1284 am 27 Januar 2018, 17:40:14
In dem du bei Calview Kalender_alle_Termine das Attribut Sourcecolor weiter füllst (wie es auch in der Commadref beschrieben steht)
Hatte ich gemacht, aber ohne Wirkung. Erst nachdem ich gerade
set Kalender_alle_Termine update
gemacht habe, hat es funktioniert. Vorher hatte ich ein shutdown restart gemacht, aber das hatte nichts bewirkt :o
Jetzt habe ich aber noch ein Problem,
ich wollte eine Überschrift über den Terminen machen (Datum, Von, Bis, Termin).
Aber nun habe ich eine große Lücke zw. Überschrift und den Terminen. Siehe Bild.
Anbei noch der Code, den ich benutzt habe:<header><div data-type="label" class="large">Termine</div></header>
<div class="sheet">
<div class="row">
<div class="col-15">
<div class="yellow" data-type="label">Datum</div>
</div>
<div class="col-15">
<div class="yellow" data-type="label">Von</div>
</div>
<div class="col-15">
<div class="yellow" data-type="label">Bis</div>
</div>
<div class="col-50">
<div class="yellow" data-type="label">Termin</div>
</div>
</div>
<div class="row">
<div data-type="calview"
data-device="Kalender_alle_Termine"
data-get="all"
data-dateformat="short"
data-timeformat="short"
data-detail='["bdate","btime","etime","summary","sourcecolor"]'
data-detailwidth='["15","15","15","55"]'
data-sourcecolor="yes" >
</div>
</div>
</div>
EDIT:
Die Summe der 4 Col ist deshalb <100, weil sonst der Text Termin in die nächste Zeile rutscht, diese ist dann ca. in der Mitte des Bereiches
Zusatzfrage:
Hat data-showempty noch eine funktion? Egal ob ich data-showempty="false"
oder data-showempty="true"
eingebe, das Widget bleibt leer. Ich dachte, da kommt eine Info wenn kein Termin ansteht, so habe ich zumindest Zeigt einen Text an, wenn keine Termine im angegebenen Zeitraum vorhanden sind verstanden.
Ich habe noch eine Frage:
Ist es möglich einzelne Termine in einem Kalender andersfarbig zu Kennzeichnen?
In meinem Fall geht es um meinen Schichtkalender. Dort habe ich Frühschicht, Spätschicht, Nachtschicht & Urlaub drin. Diese würde ich gerne jeweils andersfarbig kennzeichnen.
Aktuell nur über einzelne Kalender für jede schicht. Theoretisch sollte ich die Farbzuordnung pro Kalender auch auf Termine adaptieren können. Ich schaue es mir mal an
In data-showempty war wirklich ein Syntaxfehler, ist behoben (im github)
Zitat von: chris1284 am 29 Januar 2018, 18:48:11
...
In data-showempty war wirklich ein Syntaxfehler, ist behoben (im github)
Aus irgendeinem Grund funktioniert es noch nicht bei mir :o
Ich habe die
widget_calview.js in den www/tablet/js-Ordner gepackt. Auch nochmal ein
shutdown restart gemacht. Aber weder bei
data-showempty="true"
noch bei
data-showempty="false"
wird mir was angezeigt
Es funktioniert auch nur bei data-get="today" und data-get="tomorrow". Ich bräuchte wenn es bei dir so definiert ist die tui-definition
Der Code sieht folgendermaßen aus:
<div data-type="calview"
data-device="Kalender_alle_Termine"
data-get="today"
data-dateformat="short"
data-timeformat="short"
data-showempty="true"
data-detail='["bdate","timeshort","summary","sourcecolor"]'
data-detailwidth='["20","20","60"]'
data-sourcecolor="yes" >
</div>
Leider funktioniert data-showempty="true" bei mir immer noch nicht. Ich habe aber noch etwas festgestellt.
Ich rufe mit meinem Calview Kalender_alle_Termine 20 Termine ab, Termin 19 & 20 sind u.a. ganztätige Termine, dort wird bei t_019_timeshort & t_020_timeshort 00:00-00:00 statt ganztägig angezeigt. Bei früheren Terminen passt das.
EDIT:
Das Problem hat sich jetzt verschoben. :o
Im Kalender sind jetzt alle Termine 1 raufgewandert. Nun sind die Termine auf 18 & 19 und werden auch da mit 00:00-00:00 statt ganztägig angezeigt. Was mich jetzt aber wundert, der neue Termin auf 20 ist auch ganztägig und da wird wieder ganztägig angezeigt :o . Ich habe jetzt nochmal alle Termine überprüft, alle sind als ganztägig markiert! Das Datum bei den Terminen sind bei 18 & 19 der 30.04. und bei Termin 20 der 11.05.
Hallo zusammen,
ich entdecke zur Zeit kleinen Freezes (6 Sekunden) meines FHEM Systems. Diese treten regelmäßig jede halbe Stunde auf.
Bei der Analyse bin ich dann auf die folgenden Sachen gestoßen:
Die folgenden Meldung finde ich im Log (verbose 5)
2018.02.09 08:29:55 3: CALVIEW myCalView - CALENDAR:MyCalendar triggered, updating CALVIEW myCalView ...
2018.02.09 08:30:02 5: CALVIEW myCalView - nextday = 10 , endday = 10 , startday = 09 , btime 00:00:00 , etime 00:00:00
.... scheint, doch dass das Auslesen des Kalenders 7 Sekunden dauert... und das blockierend?
Dazu passt dann auch die Ausgabe von apptime:
maxDly avgDly TS Max call param Max call
myCalView CALVIEW_Notify 6769 216 6789.92 31.43
Ich frage dort einen iCloud Kalender ab. Habt ihr eine Idee wie man die Freezes eliminieren kann?
Ich habe eine zweite FHEM Instanz auf meinem Pi dir nur solche Device inne hat. Hole mir dann per FHEM2FHEM die Daten in die Hauptinstanz ohne Blockieren.
Danke ;)
Also arbeitet das tatsächlich blocking? Wäre es nicht sinnvoll das zu ändern?
LG Thomas
Es ist nicht CALVIEW sondern das Calender Modul und da lässt sich kaum noch was machen. Gibt irgendwo ein Thread dazu wo pah (meine es war pah) versucht hat noch bissi was raus zu holen.
Dachte mir schon, dass das am Kalender Modul liegt.
Ne verrückte Idee (meine FHEM Kenntnisse sind noch zu rudimentär), könnte man nicht eine Art Proxy-Modul schreiben. Das Modul könnte dann solche Blocking Anfragen unabhängig vom Orginal-Modul non-blocking ausführen. Dem Orginl-Modul würde man dann anstatt der URL die ProxyURL geben, so dass der blocking Aufruf extrem schnell geht (da lokal und vorgecached vom Proxy Modul)
lg Darkt
https://forum.fhem.de/index.php/topic,56831.0.html lies dir das Thema durch und wenn du dann noch Ideen hast, raus damit :) Und es war nicht pah, sondern Dr. Boris Neubert damals ;)
Zitat von: Torsten_MG am 29 Januar 2018, 14:37:41
Ich habe noch eine Frage:
Ist es möglich einzelne Termine in einem Kalender andersfarbig zu Kennzeichnen?
In meinem Fall geht es um meinen Schichtkalender. Dort habe ich Frühschicht, Spätschicht, Nachtschicht & Urlaub drin. Diese würde ich gerne jeweils andersfarbig kennzeichnen.
Zitat von: chris1284 am 29 Januar 2018, 18:48:11
Aktuell nur über einzelne Kalender für jede schicht. Theoretisch sollte ich die Farbzuordnung pro Kalender auch auf Termine adaptieren können. Ich schaue es mir mal an
Hast du diesbezüglich schon was gemacht?
Zitat von: chris1284 am 29 Januar 2018, 18:48:11
In data-showempty war wirklich ein Syntaxfehler, ist behoben (im github)
Bei mir wird, wenn kein Termin ansteht nur ein leeres Feld angezeigt. Anscheinend habe ich da noch einen Fehler, aber welchen?
Hallo in die Runde!
Wie kann ich denn mehrtägige Termine kennzeichen? Gibts da schon eine Lösung?
Zitat von: Torsten_MG am 29 Januar 2018, 14:37:41
Ich habe noch eine Frage:
Ist es möglich einzelne Termine in einem Kalender andersfarbig zu Kennzeichnen?
In meinem Fall geht es um meinen Schichtkalender. Dort habe ich Frühschicht, Spätschicht, Nachtschicht & Urlaub drin. Diese würde ich gerne jeweils andersfarbig kennzeichnen.
Ich hab da mal was gebastelt. Vielleicht hilft es ja übergangsweise.
https://forum.fhem.de/index.php/topic,84301.0.html
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 $age = ReadingsVal($DEVICE, $readingStart.'age', undef);;\
if (defined($age))\
{\
$VALUE.' ('.$age.')';;\
}\
else\
{\
$VALUE;;\
}\
}\
}
attr rg_KALENDER valueStyle {\
my $readingStart = $READING;;\
$readingStart =~ s/(t_\d+_).+/$1/;;\
'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"'\
}
Ist nur kurz zusammen kopiert, aber versuchs mal damit. Auch hier musst du das sourcecolor Attribut verwenden.
Zitatich das Perl Modul Date::Parse mittels cpan installiert
kann mir da einer helfen , denke mal das deswegen mein Kalender nicht geht, habe leider keine Ahnung wie ich es installieren soll.
Dankeschön
http://www.bilder-upload.eu/show.php?file=cb611e-1520333141.jpg (http://www.bilder-upload.eu/show.php?file=cb611e-1520333141.jpg)
http://www.bilder-upload.eu/show.php?file=d07967-1520333185.jpg (http://www.bilder-upload.eu/show.php?file=d07967-1520333185.jpg)
Hallo,
ich habe mal eher eine Anfängerfrage.
Ich habe Ferien/Feiertage an Hand https://forum.fhem.de/index.php/topic,36244.0.html (dort Beitrag #7) übernommen. Das scheint zu funktionieren, zeigt aber erstmal naturgemäß nichts an. Dann wollte ich eine Liste. Leider bekomme ich das nicht hin. Und leider ist das mit den Calendar/Calview-Beispielen für mich sehr unübersichtlich.
Frage:
Das Codebeispiel aus https://forum.fhem.de/index.php/topic,19922.0.html (Beitrag #1) - ist das überhaupt noch aktuell? (Wirft bei mir Fehler.) Oder gibt es irgendwo ein aktuelleres Beispiel?
Nimm doch das aus Beitrag #221. Das aus Beitrag #1 ist mehr als suboptimal.
Danke für den Hinweis.
Das Codefragment aus #221 dieses Threads habe ich nun händisch (jaja) in fhem.cfg eingetragen. Und es wird von FHEM auch akzeptiert, das ist schon mal schön. Nur zeigt es außer einer leeren Tabelle nichts an. Weil da wohl die konkrete Verbindung zu meinem CALVIEW-define fehlt. Wie man die macht, weiß ich leider auch nicht.
So sieht das bei mir aus (Feiertage ist bei mir das Calendar-device): define myCalView CALVIEW Feiertage 2
attr myCalView group _KalenderView_
attr myCalView maxreadings 10
attr myCalView modes next
attr myCalView room 06 Kalender
#attr myCalView mapping %READING
#attr myCalView modes next
(Die letzten beiden auskommentiert, die scheint es nicht mehr zu geben.
Kannst Du (oder jemand) mir bitte sagen, wie man das richtig macht?
Poste mal beides zusammen. Dein CALVIEW Device und deine ReadingsGroup dazu. Die ReadingsGroup musst du natürlich angepasst haben und dein CALVIEW Device entsprechend eingetragen haben...
define Feiertage Calendar ical file www/calendar/feiertage_sachsen-anhalt_2018.ics 86400
attr Feiertage room Kontrollraum
define myCalView CALVIEW Feiertage 2
attr myCalView group _KalenderView_
attr myCalView maxreadings 10
attr myCalView modes next
attr myCalView room 06 Kalender
#attr myCalView mapping %READING
#attr myCalView modes next
define 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 06 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 $age = ReadingsVal($DEVICE, $readingStart.'age', undef);;\
if (defined($age))\
{\
$VALUE.' ('.$age.')';;\
}\
else\
{\
$VALUE;;\
}\
}\
}
attr rg_KALENDER valueStyle {\
my $readingStart = $READING;;\
$readingStart =~ s/(t_\d+_).+/$1/;;\
'style="color:'.ReadingsVal($DEVICE, $readingStart."sourcecolor", "white").'"'\
}
Ersetze mal in der Readingsgroup KALENDER_VIEW durch myCalView.
Ahh - Prinzip nun verstanden, danke!
Allerdings - ich weiß nicht ob das nun bug oder feature ist: Alle Termine sind weiß auf gelb. Auf den ersten Blick finde ich aber nur einmal "white" und habe das durch blue ersetzt - was ihn nicht sonderlich beeindruckte. Wird in dieser Konstruktion etwa die Schriftfarbe automatisiert je nach TAgesdifferenz verändert? Oder mache ich etwas falsch?
Und bitte noch eine Frage:
Da sind ja mehrere Kalender im Spiel, in den Beispielen Ferien, Feiertage, Abfall. Wie bekommt man denn mehrere Kalender in nur eine solche Tabelle?
Keine Ahnung wo das Gelb her kommt, aus der readingsGroup jedenfalls nicht. Da wird nur in Abhängigkeit vom Attribut sourcecolor die Schriftfarbe gesetzt. Der default Wert ist weiß. sourcecolor ist ein Attribut in deinem CALVIEW Device.
Theoretisch kann man mehrere Kalender in einer Readingsgroup anzeigen lassen, dann passt aber die Reihenfolge der Termine nicht mehr. Besser ist es ein CALVIEW mit allen Terminen zu haben und davon eine readingsGroup zu erstellen.
Zitat von: mumpitzstuff am 15 April 2018, 01:11:43
sourcecolor ist ein Attribut in deinem CALVIEW Device.
Ahhh - da wäre ich nicht im Traum darauf gekommen. War noch etwas hakelig - aber jetzt habe ich es. Danke!
Zitat von: mumpitzstuff am 15 April 2018, 01:11:43
Theoretisch kann man mehrere Kalender in einer Readingsgroup anzeigen lassen, dann passt aber die Reihenfolge der Termine nicht mehr. Besser ist es ein CALVIEW mit allen Terminen zu haben und davon eine readingsGroup zu erstellen.
Wie würde man das denn mit CALVIEW anstellen? Ich habe beispielhaft
define Feiertage Calendar ical file www/calendar/feiertage_sachsen-anhalt_2018.ics 86400
attr Feiertage room Kontrollraum
define Ferien Calendar ical file www/calendar/ferien_sachsen-anhalt_2018.ics 86400
attr Ferien room Kontrollraum
define myCalView CALVIEW Feiertage 2
attr myCalView group _KalenderView_
attr myCalView maxreadings 10
attr myCalView modes next
attr myCalView room 06 Kalender
attr myCalView sourcecolor Feiertage:black
#attr myCalView mapping %READING
#attr myCalView modes next
define rg_KALENDER readingsGroup <Datum>,<Tag>,<Zeit>,<Termin>,<Ort>\
...
Es wäre sehr schön, wenn Du das auch noch erklären würdest.
define <Name> CALVIEW <Kalendername(n) getrennt durch ','> <next> <updateintervall in sek (default 43200)>
Ich würde vermuten, das du ein CALVIEW Device erzeugen kannst und dort mehrere Calender Devices angeben kannst (durch Komma getrennt).
define test CALVIEW calender1,calender2,calender3 next 43200
Vergiss dann aber nicht die readingsGroup wieder an den neuen CALVIEW Namen anzupassen.
Du vermutest richtig. Ich habe das alles dank Deiner freundlichen Hinweise gut hinbekommen. Nun habe ich einen ganz einfachen Kalender (nur) mit Ferien und Feiertagen eines Bundeslandes. Dafür danke ich Dir herzlich.
Mein Problem war, dass ich am besten am Beispiel lerne. Bei calendar und calview gibt es aber keine Beispiele. Entweder sind die veraltet oder (vielleicht) sehr gut in dutzenden Forumseiten versteckt. Ich vermute, dass es vielen Anfängern ähnlich wie mir geht. Daher kann ich nun anbieten, meine derzeitige Einfach-Konfiguration als Beispiel in das Wiki einzuarbeiten. (Gern können wir meine Konfiguration vorher kritisch nochmals durchgehen.)
Übrigens habe ich eine neue Frage:
Vielleicht will man ja einen eigenen Kalender erstellen. Ich habe verstanden, dass Apple-Nutzer wegen des Formats iCal im Vorteil sind. Ich habe verstanden, dass ich mir online einen google-Kalender basteln kann. Beides widerstrebt mir, das ist privat.
Die Frage ist: Gibt es in den vielen dutzend Unterseiten einen Beitrag, der erklärt, dass die Erstellung und Fortführung eines iCal-Kalenders innerhalb von FHEM möglich ist - und wie man das macht?
(Sollte ich die Frage in einem neuen Thread stellen?)
Moin,
ich habe jetzt nicht alles verfolgt, auf was für Hardware Dein Fhem z.B. hier läuft, aber wenn das Gerät performant genug ist, kannst Du z.Bsp. auch einen NextCloud-Server (mit nginx als Webserver) installieren, der dann Deine Kalender per Caldav auslieferst. Und wenn Du im Router keine Freigabe nach draußen erstellst, bleibt das hübsch privat/lokal.
In Fhem selber ist mir ein Modul nicht bekannt, welches einen ical erstellen / weiterschreiben kann ...
Gruß Christoph
ps: ich habe das so gelöst, aber mit Freigabe, und die ganze Familie greift darauf zu ;-)
Gesendet von meinem SM-G930F mit Tapatalk
Such mal nach baikal oder radicale. Beides sind Tools die so was können.
Zitat von: mumpitzstuff am 16 April 2018, 06:58:12
Such mal nach baikal oder radicale. Beides sind Tools die so was können.
Zitat von: caldir65 am 16 April 2018, 06:31:34
Moin,
... auch einen NextCloud-Server (mit nginx als Webserver) installieren, der dann Deine Kalender per Caldav auslieferst.
Hilfe - da steht überall als erstes "Server/Client". Ich will doch keine Groupware nachbauen. Und vor Datenbanken jeder Art drücke ich mich seit fast 30 Jahren im Privaten konsequent. Nein, das mal lieber nicht.
Ich habe seit 200x einen simplen Perl-basierten Kalender, den baute mir ein Freund. Der tut ansich noch ganz gut, Kalendertermine sind heute ja nicht schöner als 2006. Datenbasis ist eine Datei, etwas CSV-ähnlich. Entweder lasse ich das umstricken oder ich schiebe über die komplette Datenbasis regelmäßig ein weiteres Perlscript, was mir dann ical-Format raushaut - welches ich aber erstmal verstehen muss ... dazu gleich.
Für erste Eingabetests fand ich für Gnome Day Planner 0.11 - auch nicht so der Traum: Fenstergröße nicht veränderbar, man kommt nicht an alle Felder. Ok, für Tests reicht es. Und das ging beim dritten Test prompt schief: Bei Geburtstagen fand FHEM die Sache gar nicht mehr lustig - und spielte nicht mit. Warum auch immer - ich habe noch nicht die Stelle/das Log gefunden, was das wissen könnte.
Reine Vermutung: Das Modul findet Attribute X-DP-* nicht gut.
Zitat von: caldir65 am 16 April 2018, 06:31:34
In Fhem selber ist mir ein Modul nicht bekannt, welches einen ical erstellen / weiterschreiben kann ...
Das ist wirklich schade. - Ich traue mich gar nicht zu fragen: Gibt es denn FHEM-Anwendungsbeispiele, die mit Freitextfeldern arbeiten, also im Webbrowser Formulare (FORM) erzeugen - und die FHEM anschließend irgendwie weiterverarbeitet?
Hallo,
ich möchte bei einem Reading (t_001_location) den Text ändern, wenn der Text einen bestimmten Inhalt hat:
nach dem Update des Kalenders hat das Reading t_001_location folgenden Inhalt: Brunnenweg, Köln
jetzt möchte ich, daß immer, wenn dieses Reading diesen Inhalt hat, das Reading auf "Home" gesetzt wird.
das hat bis vor einiger Zeit erfolgreich mit userReading funktioniert:
attr userReadings t_001_location:t_001_location.* {ReadingsVal($name,"t_001_location",0)=~/^Brunnenweg/?"Home":ReadingsVal($name,"t_001_location",0)}
Leider geht das irgendwie nicht mehr. Kann mir da einer weiterhelfen?
Gruß, Sascha
Moin,
ich habe folgendes Problem:
Obwohl ich das Intervall auf 6 Stunden gestellt habe, werden ständig (mal nach 30 Minuten, mal nach 2 Stunden, ganz selten mal nach den gewünschten 6 Stunden) meine Kalender eingelesen, was Perfmon immer wieder mit Aussetzern von 20 bis 50 Sekunden quittiert.
Vielen Dank.
Grüße Mave
Eine genauere Recherche hat ergeben, dass es nur einer von zwei Kalendern ist, der ständig getriggert wird.
Wer oder was verursacht den Trigger und wie kann man das abstellen?
Grüße Mave
Hat niemand eine Idee, woran das häufige Triggern liegen könnte?
Grüße Mave
Zitat von: Torsten_MG am 31 Januar 2018, 09:33:26
...
Ich rufe mit meinem Calview Kalender_alle_Termine 20 Termine ab, Termin 19 & 20 sind u.a. ganztätige Termine, dort wird bei t_019_timeshort & t_020_timeshort 00:00-00:00 statt ganztägig angezeigt. Bei früheren Terminen passt das.
...
Ich weiß ja nicht ob das schonmal bearbeitet hattest, aber in einem Calview von mir, wo ein ganztägiger Termin an Position 14 steht wird bei
t_014_timeshort wieder
00:00 - 00:00, statt
ganztägig angezeigt. Bei Terminen 5-10 die auch ganztägig sind, klappt es
Hallo miteinander,
das jüngste Update des Calendar-Moduls empfiehlt jetzt sehr nachdrücklich (nämlich durch zahlreiche Log-Einträge), das Calendar-Device künftig per "get events" abzufragen, siehe dazu diesen Thread (https://forum.fhem.de/index.php/topic,87846.0.html).
Gibt es dafür schon eine Lösung oder einen Workaround für CALVIEW?
Gruß
alpha1974
Moin chris,
siehst Du eine Chance, CALVIEW nonblocking zu machen?
Bei meinen Kalendern hängt FHEM bei jedem Update der Kalender für 20 bzw. 30 Sekunden.
Oder gibt es eine andere Möglichkeit, das hängen von FHEM zu umgehen?
Vielen Dank.
Grüße Mave
Zitat von: Mave am 26 Mai 2018, 10:22:37
Oder gibt es eine andere Möglichkeit, das hängen von FHEM zu umgehen?
CALVIEW nicht einsetzen, sondern die Möglichkeiten von CALENDAR für die Anzeige nutzen.
Zitat von: betateilchen am 26 Mai 2018, 11:23:45
CALVIEW nicht einsetzen, sondern die Möglichkeiten von CALENDAR für die Anzeige nutzen.
Was für die meisten komplizierter wäre als calview denke ich.
Ich müsste nur raus finden was in calview so lange dauert (liegt aber sicher auch an der Hardware da ich keinerlei lange Wartezeiten habe).
Da ich mit den neun Funktionen in Calendar eh etwas umstricken kann/muss die nächste Version evtl performanter
Zitat von: chris1284 am 29 Mai 2018, 17:50:22
Was für die meisten komplizierter wäre als calview denke ich.
das glaube ich eher nicht... 8)
Chris,
wenn ich Dir irgendwie helfen kann, die Performance Probleme zu analysieren, dann sag Bescheid.
Ich nutze CalView und auch das FTUI Widget unglaublich gerne.
Grüße Mave
https://github.com/chris1284/CALVIEW
im github ist eine auf das aktuelle Calendar-Modul angepasste 57_CALVIEW Version. Wer will kann ja mal testen. @Mave, evtl. ist es ja so schon etwas schneller
Chris,
super, vielen Dank.
Ein Problem ist noch seit einiger Zeit offen: immer wieder werden in FTUI ganztägige Termine nicht als ganztägig angezeigt sondern mit 00:00 - 00:00
Grüße Mave
Zitat von: chris1284 am 30 Mai 2018, 07:59:56
im github ist eine auf das aktuelle Calendar-Modul angepasste 57_CALVIEW Version. Wer will kann ja mal testen.
Sieht gut aus. Die Warnungen sind weg, Funktionseinschränkungen konnte ich bisher keine feststellen. Geschwindigkeitsprobleme hatte ich vorher schon keine.
Danke Chris!
Zitat von: mumpitzstuff am 12 Oktober 2017, 12:10:40
Das wird dein Problem bis auf ein paar Sonderfälle lösen.
if (($startDate ne $endDate) && ($startTime eq $endTime))
{
$appointment = 'ganztägig';
}
Sonderfall (nicht abgedeckt):
start: 01.01.2017 00:00
end: 02.02.2017 18:00
100% Lösung:
Berechne dir vom Startdatum/Zeit die Sekunden von 1970 an und von Enddatum/Zeit ebenfalls. Liegen dazwischen mindestens 86400 Sekunden, dann ist das ein Ganztagsevent mit einer Länge von mehr als 24h. Wobei das natürlich eine Definitionsfrage ist, ob ein halber Tag + ein dreiviertel Tag ein Ganztagesevent darstellt oder eben nicht. Aber auch das könnte man abfangen, da würde die Abfrage dann aber wesentlich komplizierter sein. Wenn es wirklich nötig ist, dann kann ich mir dazu noch mal Gedanken machen.
Die Lösung für das Ganztagesproblem hatte ich vor Monaten schon beschrieben. Die simple Lösung von oben sollte in den meisten Fällen ausreichend sein.
Durch calendar wird nun auch die Dauer geliefert zb 24H bei ganztägig. Dies werde ich einfach mit aufnehmen und für ganztägig verwenden. Weiter Nutzung wäre ein Reading für termindauer
Zitat von: chris1284 am 30 Mai 2018, 07:59:56
im github ist eine auf das aktuelle Calendar-Modul angepasste 57_CALVIEW Version. Wer will kann ja mal testen.
Hmm, doch auf ein Problem gestoßen: Die Readings werden zwar aktualisiert, wenn der Kalender upgedated wird, behalten aber immer ihren vorherigen Wert. Soll heißen, bei z.B.
t_001_bdate steht schon seit Tagen bei mir
28.05.2018.
Du hat sicher einen Termin in 001 stehen der seit 28.05. läuft und noch nicht beendet ist.
Bei mir steht alles auf heute / nächsten Termin
@chris1284:
Weißt du schon, wann du die neue Version in das FHEM Update integrieren wirst? Meine Logfiles freuen sich auch schon wieder schlanker zu werden. 8)
Gruß und danke für die tolle Arbeit!
Zitat von: chris1284 am 02 Juni 2018, 17:46:38
Du hat sicher einen Termin in 001 stehen der seit 28.05. läuft und noch nicht beendet ist.
Bei mir steht alles auf heute / nächsten Termin
Nein. Aber
hideOlderThan und/oder
cutoffOlderThan im Calendar-Device scheinen jetzt irgendwie etwas anders zu machen als vorher. Hab's aber wieder hinbekommen.
Danke!
Zitat von: sTaN am 04 Juni 2018, 08:39:14
@chris1284:
Weißt du schon, wann du die neue Version in das FHEM Update integrieren wirst? Meine Logfiles freuen sich auch schon wieder schlanker zu werden. 8)
Gruß und danke für die tolle Arbeit!
Ist eingechecked und morgen verfügbar. Das Update bezüglich der 24H / Ganztagserkennung kommt denke ich zum WE hin
Hallo Chris,
vielen Dank für die neue Version.
In der neuen Version nur eine Abfrage zu machen und die einzelnen Teile durch ,,|" zu trennen ist eine gute Idee.
Es schlägt aber leider fehl, wenn z.B. in ,,summary" oder ,,location" ein ,,|" enthalten ist.
ungewöhnlich aber hätte man mit rechnen können dort auch | zu finden (wahrscheinlich eine Kombi aus 2 Zeichen ). ich schaue nach eine Lösung
Seit heute schaut calview auf die Laufzeit geliefert von Calendar. wenn diese 86400 Sekunden ist dann wird ganztägig gesetzt
Hallo,
kann man den Tag "heute" und den Termin fett schreiben lassen? Der rest (also die anderen Tage) sollen so bleiben wie sie sind, also normal geschrieben.
Vielen Dank!
Habe das so im TabletUI:
<div data-type="calview" data-device="Calview_Geburtstage" data-get="all" data-detail='["daysleftLong","summary"]' data-detailwidth='["40","60"]' data-class='left-align small' data-start="none" data-max="3" data-sourcecolor="yes" class="cell bigger"></div>
Hallo,
bei mir werden auch vergangene Termine ausgegeben, gibt´s da auch ein Attribut/Filter o.ä. ?
Danke ...
Kalle
@FHEM-Wohnung: Falscher Thread. Dein Thema gehört in die TabletUI Kategorie. Geanuer gesagt ins Kalender-Widget. Such mal im Forum danach. Da gibt's was unter der Kategorie Frontend->TabletUI.
@KalleBlomquist: Schau mal in die Commandref bei Attribute von Calendar(https://fhem.de/commandref_DE.html#Calendar (https://fhem.de/commandref_DE.html#Calendar)). Es heißt: hideOlderThan.
attr deinKalender hideOlderThan 1
VG, Thomas
Mir scheint es, als würde Calview nicht mehr getriggert, wenn ein Temin zu Ende gegangen ist.
Früher hat der Calender Trigger den Termin aus Calview gelöscht.
@ToM_ToM
Funktioniert prima ... DANKE
Zitat von: Mave am 26 Juni 2018, 21:54:27
Mir scheint es, als würde Calview nicht mehr getriggert, wenn ein Temin zu Ende gegangen ist.
Früher hat der Calender Trigger den Termin aus Calview gelöscht.
Hat das Problem ausser mir niemand?
Vergangene Termine werden nicht mehr sofort gelöscht!
Ist die Frage ob der calendar in dem Fall überhaupt was macht. Wenn der nicht aktualisiert oder nach den letzten Änderungen ein anderes event auslöst kann calview nicht reagieren. Verbösert 5 auf calendar wenn ein Termin endet könnte hier aufschlussreich sein. Ich habe eh nur ganztägig Termine und keine Probleme mit alten Terminen
Habe heute mal drauf geachtet. Im Eventmonitor ist jedenfalls nichts aufgetaucht. Der Termin ist bei mir erst verschwunden, nachdem der Calender neu abgefragt wurde und der Termin dort mit HideOlderThan nicht mehr angezeigt wurde.
Zitat von: rischbiter123 am 02 Juli 2018, 17:18:35
Habe heute mal drauf geachtet. Im Eventmonitor ist jedenfalls nichts aufgetaucht. Der Termin ist bei mir erst verschwunden, nachdem der Calender neu abgefragt wurde und der Termin dort mit HideOlderThan nicht mehr angezeigt wurde.
Ich bin froh, dass ich nicht der Einzige bin.
Calview aktualisiert nicht mehr bei einem Calendar trigger bei Ende eines Termins.
Hier mal die Logausgabe bei Verbose=5
2018.07.02 17:35:00 4: Calendar Andi: Wakeup
2018.07.02 17:35:00 4: Calendar Andi: Checking times...
Bekomme das gleiche bei Beginn des Termins. Da ich gleichzeitig allerdings jedesmal ein Connection lost habe, kann ich nicht sagen, ob es vollständig ist.
Da Calview noch auf das event "triggered" vom calendar lauscht, ist die Beobachtung durchaus nachvollziehbar.
Ihr könnt ja mal in der 57_CALVIEW.pm die Zeile 372 ändern
von if ($event eq "triggered") {
aufif ($event eq "Wakeup") {
oderif ($event eq "Checking times...") {
ändern.
Dann sollte das notify wieder getriggered werden. Ich stelle bei mir mal das logging ein um zu sehen ob nach dem wakeup und checking times noch eine Art "fertig" Event kommt.
Werde ich machen. Komme aber erst Morgen dazu, gebe dann entsprechend Rückmeldung.
Es scheint nicht an Calview zu liegen. Hatte jetzt mal beides (Kalender und Calview) auf Verbose 5 und habe heute auch Events im Monitor bekommen.
2018-07-03 17:30:00 Calendar Andi changed: 69gjicb26hh36bb26hhj6b9k74rj4b9p68s38bb274q34cr5c5h6ce9l64googlecom end
2018-07-03 17:30:00 Calendar Andi end: 69gjicb26hh36bb26hhj6b9k74rj4b9p68s38bb274q34cr5c5h6ce9l64googlecom
2018-07-03 17:30:00 Calendar Andi modeUpcoming: 70o3cd9gc9j38b9h75im8b9kchi3gbb261gj6bb4clij8phm6sq3go9i74googlecom;6or6ad1o68qjcb9m6so34b9k64pm8b9ocdij2bb164p32phoc8sm2e1h6cgooglecom;acm27qo2clmloo5rje2n7a1730googlecom;n748798uj7mccp9c1gioeipqi4googlecom;bsgk6gopu43966a12uc4htpe1ggooglecom;s5h3fshrk7n5c3c9gqbsgdtv1ggooglecom;67qda2oasjcn0j3e5jkgtc267sgooglecom;bqvphdbifbthecdtm256avr6ksgooglecom;69gm2p9gcoo30bb16cr66b9kcpij8bb270smabb371hj0chm6co3ed356ggooglecom;60s3ee35c5im2bb1chj32b9k6cpj4b9pcgrmcbb570pj2p9mc9hmce9j74googlecom;c8o36phmccqj4b9pckqj6b9k6pij8b9p6cr38b9ockr3cp3370s68o9ncggooglecom;u9ovop6rtcsepj9mvrm8jkumvggooglecom;cosjadr468oj2bb2cos6cb9k6tj38bb2c4p3ib9ic8q6ad1gclh36dhkc4googlecom
2018-07-03 17:30:00 Calendar Andi modeAlarmOrStart:
2018-07-03 17:30:00 Calendar Andi modeChanged: 69gjicb26hh36bb26hhj6b9k74rj4b9p68s38bb274q34cr5c5h6ce9l64googlecom
2018-07-03 17:30:00 Calendar Andi modeStart:
2018-07-03 17:30:00 Calendar Andi modeEnd: Viel Text
2018-07-03 17:30:00 Calendar Andi modeEnded: 69gjicb26hh36bb26hhj6b9k74rj4b9p68s38bb274q34cr5c5h6ce9l64googlecom
2018-07-03 17:30:00 Calendar Andi triggered
2018-07-03 17:30:00 Calendar Andi nextWakeup: 2018-07-03 17:40:10
Calview hat dann auch brav auf triggered reagiert und neu eingelesen. Das Problem scheint zu sein, dass der Termin im Kalender drin bleibt, bis dieser das nächste Mal eingelesen wird und mit HideOlderThan bereits versteckt ist.
Muss nur leider gleich zum MRT, so dass ich diese Theorie heute nicht weiter testen kann.
Hallo,
und vielen Dank für das Modul. Mit den Terminen in gerodneten Readings kann ich jetzt auch vernünftig auf Ereignisse reagieren :-)
Eine Frage/Anmerkung hätte ich aber noch:
ich habe lange versucht die Termine wieder in einer Tabelle als Übersicht darzustellen bis ich den passenden Beitrag (https://forum.fhem.de/index.php?topic=49651.0) gefunden habe, da das Wiki leider in diesem Punkt nicht aktuell ist.
Wurde denn schon mal diskutiert die Erstellung der ReadingsGroup direkt in das Modul mit aufzunehmen. Es könnte ja ggf. über ein Attribut (de)aktivierbar geamcht werden. Ich war anfangs etwas verwundert, da nach meinem Empfinden das 'VIEW' irgendwie fehlt....
Grüße, Stephan
Hallo zusammen,
also ich weis ja nicht was ich falsch mache, ich beobachte den Thread hier schon ewig... Bei mir läuft Calview seit Monaten nicht mehr. Habe gerade frisches Update gezogen und als t_001_edate gibt er mir den 06.06.2017 aus ?!
Stell mal ein List Deines Calview und am Besten auch vom assoziierten Kalender ein.
Dem kann ich mich nur anschließen...seit das Calendermodul umgestellt wurde läuft mein Callview auch nicht mehr.
Meine Kalender werden korregt aktualisiiert,das stimmt auch alles so...doch Callview zeigt mir in der Übersicht Termine vom letzten Jahr nur noch an.
Hier mein List von Callview:
Internals:
DEF Schichtplan_Kalender,Kalender_Haussteuerung,Muelltonnen_Kalender 2 3600
INTERVAL 3600
KALENDER Schichtplan_Kalender,Kalender_Haussteuerung,Muelltonnen_Kalender
NAME vocalview2
NR 1462
NTFY_ORDER 50-vocalview2
STATE t: 10 td: 0 tm: 0
TYPE CALVIEW
READINGS:
2018-07-10 15:00:36 c-term 10
2018-07-10 15:00:36 c-today 0
2018-07-10 15:00:36 c-tomorrow 0
2018-07-10 15:00:36 state t: 10 td: 0 tm: 0
2018-07-10 15:00:36 t_001_bdate 02.06.2017
2018-07-10 15:00:36 t_001_btime 13:30
2018-07-10 15:00:36 t_001_categories
2018-07-10 15:00:36 t_001_daysleft -403
2018-07-10 15:00:36 t_001_daysleftLong in -403 Tagen
2018-07-10 15:00:36 t_001_description
2018-07-10 15:00:36 t_001_duration 30600
2018-07-10 15:00:36 t_001_edate 02.06.2017
2018-07-10 15:00:36 t_001_etime 22:00
2018-07-10 15:00:36 t_001_location
2018-07-10 15:00:36 t_001_mode next
2018-07-10 15:00:36 t_001_source Schichtplan_Kalender
2018-07-10 15:00:36 t_001_sourcecolor white
2018-07-10 15:00:36 t_001_summary Spätschicht
2018-07-10 15:00:36 t_001_timeshort 13:30 - 22:00
2018-07-10 15:00:36 t_001_weekday 5
2018-07-10 15:00:36 t_001_weekdayname Freitag
2018-07-10 15:00:36 t_002_bdate 02.06.2017
2018-07-10 15:00:36 t_002_btime 13:30
2018-07-10 15:00:36 t_002_categories
2018-07-10 15:00:36 t_002_daysleft -403
2018-07-10 15:00:36 t_002_daysleftLong in -403 Tagen
2018-07-10 15:00:36 t_002_description
2018-07-10 15:00:36 t_002_duration 30600
2018-07-10 15:00:36 t_002_edate 02.06.2017
2018-07-10 15:00:36 t_002_etime 22:00
2018-07-10 15:00:36 t_002_location
2018-07-10 15:00:36 t_002_mode next
2018-07-10 15:00:36 t_002_source Schichtplan_Kalender
2018-07-10 15:00:36 t_002_sourcecolor white
2018-07-10 15:00:36 t_002_summary Spätschicht
2018-07-10 15:00:36 t_002_timeshort 13:30 - 22:00
2018-07-10 15:00:36 t_002_weekday 5
2018-07-10 15:00:36 t_002_weekdayname Freitag
2018-07-10 15:00:36 t_003_bdate 02.06.2017
2018-07-10 15:00:36 t_003_btime 13:30
2018-07-10 15:00:36 t_003_categories
2018-07-10 15:00:36 t_003_daysleft -403
2018-07-10 15:00:36 t_003_daysleftLong in -403 Tagen
2018-07-10 15:00:36 t_003_description
2018-07-10 15:00:36 t_003_duration 30600
2018-07-10 15:00:36 t_003_edate 02.06.2017
2018-07-10 15:00:36 t_003_etime 22:00
2018-07-10 15:00:36 t_003_location
2018-07-10 15:00:36 t_003_mode next
2018-07-10 15:00:36 t_003_source Schichtplan_Kalender
2018-07-10 15:00:36 t_003_sourcecolor white
2018-07-10 15:00:36 t_003_summary Spätschicht
2018-07-10 15:00:36 t_003_timeshort 13:30 - 22:00
2018-07-10 15:00:36 t_003_weekday 5
2018-07-10 15:00:36 t_003_weekdayname Freitag
2018-07-10 15:00:36 t_004_bdate 02.06.2017
2018-07-10 15:00:36 t_004_btime 13:30
2018-07-10 15:00:36 t_004_categories
2018-07-10 15:00:36 t_004_daysleft -403
2018-07-10 15:00:36 t_004_daysleftLong in -403 Tagen
2018-07-10 15:00:36 t_004_description
2018-07-10 15:00:36 t_004_duration 28800
2018-07-10 15:00:36 t_004_edate 02.06.2017
2018-07-10 15:00:36 t_004_etime 21:30
2018-07-10 15:00:36 t_004_location
2018-07-10 15:00:36 t_004_mode next
2018-07-10 15:00:36 t_004_source Schichtplan_Kalender
2018-07-10 15:00:36 t_004_sourcecolor white
2018-07-10 15:00:36 t_004_summary Spätschicht
2018-07-10 15:00:36 t_004_timeshort 13:30 - 21:30
2018-07-10 15:00:36 t_004_weekday 5
2018-07-10 15:00:36 t_004_weekdayname Freitag
2018-07-10 15:00:36 t_005_bdate 02.06.2017
2018-07-10 15:00:36 t_005_btime 13:30
2018-07-10 15:00:36 t_005_categories
2018-07-10 15:00:36 t_005_daysleft -403
2018-07-10 15:00:36 t_005_daysleftLong in -403 Tagen
2018-07-10 15:00:36 t_005_description
2018-07-10 15:00:36 t_005_duration 30600
2018-07-10 15:00:36 t_005_edate 02.06.2017
2018-07-10 15:00:36 t_005_etime 22:00
2018-07-10 15:00:36 t_005_location
2018-07-10 15:00:36 t_005_mode next
2018-07-10 15:00:36 t_005_source Schichtplan_Kalender
2018-07-10 15:00:36 t_005_sourcecolor white
2018-07-10 15:00:36 t_005_summary Spätschicht
2018-07-10 15:00:36 t_005_timeshort 13:30 - 22:00
2018-07-10 15:00:36 t_005_weekday 5
2018-07-10 15:00:36 t_005_weekdayname Freitag
2018-07-10 15:00:36 t_006_bdate 02.06.2017
2018-07-10 15:00:36 t_006_btime 22:00
2018-07-10 15:00:36 t_006_categories
2018-07-10 15:00:36 t_006_daysleft -403
2018-07-10 15:00:36 t_006_daysleftLong in -403 Tagen
2018-07-10 15:00:36 t_006_description
2018-07-10 15:00:36 t_006_duration 28800
2018-07-10 15:00:36 t_006_edate 03.06.2017
2018-07-10 15:00:36 t_006_etime 06:00
2018-07-10 15:00:36 t_006_location
2018-07-10 15:00:36 t_006_mode next
2018-07-10 15:00:36 t_006_source Schichtplan_Kalender
2018-07-10 15:00:36 t_006_sourcecolor white
2018-07-10 15:00:36 t_006_summary Nachtschicht
2018-07-10 15:00:36 t_006_timeshort 22:00 - 06:00
2018-07-10 15:00:36 t_006_weekday 5
2018-07-10 15:00:36 t_006_weekdayname Freitag
2018-07-10 15:00:36 t_007_bdate 03.06.2017
2018-07-10 15:00:36 t_007_btime 00:00
2018-07-10 15:00:36 t_007_categories
2018-07-10 15:00:36 t_007_daysleft -402
2018-07-10 15:00:36 t_007_daysleftLong in -402 Tagen
2018-07-10 15:00:36 t_007_description
2018-07-10 15:00:36 t_007_duration 86400
2018-07-10 15:00:36 t_007_edate 04.06.2017
2018-07-10 15:00:36 t_007_etime 00:00
2018-07-10 15:00:36 t_007_location
2018-07-10 15:00:36 t_007_mode next
2018-07-10 15:00:36 t_007_source Schichtplan_Kalender
2018-07-10 15:00:36 t_007_sourcecolor white
2018-07-10 15:00:36 t_007_summary Urlaub
2018-07-10 15:00:36 t_007_timeshort ganztägig
2018-07-10 15:00:36 t_007_weekday 6
2018-07-10 15:00:36 t_007_weekdayname Samstag
2018-07-10 15:00:36 t_008_bdate 03.06.2017
2018-07-10 15:00:36 t_008_btime 05:00
2018-07-10 15:00:36 t_008_categories
2018-07-10 15:00:36 t_008_daysleft -402
2018-07-10 15:00:36 t_008_daysleftLong in -402 Tagen
2018-07-10 15:00:36 t_008_description
2018-07-10 15:00:36 t_008_duration 30600
2018-07-10 15:00:36 t_008_edate 03.06.2017
2018-07-10 15:00:36 t_008_etime 13:30
2018-07-10 15:00:36 t_008_location
2018-07-10 15:00:36 t_008_mode next
2018-07-10 15:00:36 t_008_source Schichtplan_Kalender
2018-07-10 15:00:36 t_008_sourcecolor white
2018-07-10 15:00:36 t_008_summary Frühschicht
2018-07-10 15:00:36 t_008_timeshort 05:00 - 13:30
2018-07-10 15:00:36 t_008_weekday 6
2018-07-10 15:00:36 t_008_weekdayname Samstag
2018-07-10 15:00:36 t_009_bdate 03.06.2017
2018-07-10 15:00:36 t_009_btime 05:00
2018-07-10 15:00:36 t_009_categories
2018-07-10 15:00:36 t_009_daysleft -402
2018-07-10 15:00:36 t_009_daysleftLong in -402 Tagen
2018-07-10 15:00:36 t_009_description
2018-07-10 15:00:36 t_009_duration 30600
2018-07-10 15:00:36 t_009_edate 03.06.2017
2018-07-10 15:00:36 t_009_etime 13:30
2018-07-10 15:00:36 t_009_location
2018-07-10 15:00:36 t_009_mode next
2018-07-10 15:00:36 t_009_source Schichtplan_Kalender
2018-07-10 15:00:36 t_009_sourcecolor white
2018-07-10 15:00:36 t_009_summary Frühschicht
2018-07-10 15:00:36 t_009_timeshort 05:00 - 13:30
2018-07-10 15:00:36 t_009_weekday 6
2018-07-10 15:00:36 t_009_weekdayname Samstag
2018-07-10 15:00:36 t_010_bdate 03.06.2017
2018-07-10 15:00:36 t_010_btime 05:00
2018-07-10 15:00:36 t_010_categories
2018-07-10 15:00:36 t_010_daysleft -402
2018-07-10 15:00:36 t_010_daysleftLong in -402 Tagen
2018-07-10 15:00:36 t_010_description
2018-07-10 15:00:36 t_010_duration 30600
2018-07-10 15:00:36 t_010_edate 03.06.2017
2018-07-10 15:00:36 t_010_etime 13:30
2018-07-10 15:00:36 t_010_location
2018-07-10 15:00:36 t_010_mode next
2018-07-10 15:00:36 t_010_source Schichtplan_Kalender
2018-07-10 15:00:36 t_010_sourcecolor white
2018-07-10 15:00:36 t_010_summary Frühschicht
2018-07-10 15:00:36 t_010_timeshort 05:00 - 13:30
2018-07-10 15:00:36 t_010_weekday 6
2018-07-10 15:00:36 t_010_weekdayname Samstag
Attributes:
icon Zoom-in
maxreadings 10
modes next
room Kalender
Vielleicht sieht ja jemand meinen Fehler warum keine aktuelle Kalenderdaten mehr in Callview bei mir sind.
Grüße Falkes
Welchen Wert hast Du im Kalender bei HideOlderThen oder CutOlderThen? Ich habe meins auf 5 Minuten (300) gesetzt, da mir vorher auch die ganzen alten Termine angezeigt wurden.
Genauso siehts bei mir auch aus... :-[
Bei HideOlderThen oder CutOlderThen habe ich gar nichts eingetragen. Das musste ich bisher auch nicht.Bevor das Kalenderupdate kam hatte ich auch keinerlei Probleme mit der Ansicht in Callview.
War bei mir auch so. Versuch es einfach mal, löschen kann man es ja immer noch wieder. Denk dann nur dran, den Kalender einmal neu einzulesen. Bei mir funktioniert es jetzt jedenfalls einwandfrei mit 4 verknüpften Kalendern.
Wow - das mit Hideolder ist des Rätsels Lösung - jetzt siehts wieder gut aus :) :) :)
DANKESCHÖN :)
Gern geschehen.
Vielen dank...das war auch bei mir die Rätsels Lösung - jetzt siehts auch wieder gut aus :)
Ein dickes Dankeschön !!!
Moin,
Ich wollte mal eine Variante zur Darstellung der Kalendereinträge in einer readingsgroup hier posten. In einem älteren Thread wurde das DEF der readingsGroup über ein notify befüllt. Diese Variante habe ich dahingehend angepasst, dass nur ein notify für alle Kalender benötigt wird. Ich bin zwar kein Entwickler aber würde denken, dass man dies theoretisch auch direkt in das Modul einbauen könnte (siehe meine Anfrage aus Post 273), da es eben recht generisch ist und sich nicht auf einen bestimmtes Device beschränkt.
hier das DEF des notify:
.*View:.* {
if (defined(AttrVal("$NAME","comment",undef))) {
my $ii;
my $jj;
my $modtext = AttrVal("rg_$NAME","comment","").' ';
my @fields = split /,/, AttrVal("$NAME","comment","");
for($ii= 1;$ii<= ReadingsVal("$NAME","c-today", 0);$ii++){
$modtext .= "$NAME:<Heute>";
for($jj= 2;$jj<= #$fields;$jj++) {
$modtext .= ",today_".sprintf('%03d',$ii)."_$fields[$jj]";}
$modtext .=" ";
}
for($ii= 1;$ii<= ReadingsVal("$NAME","c-tomorrow", 0);$ii++){
$modtext .= "$NAME:<Morgen>";
for($jj= 2;$jj<= #$fields;$jj++) {
$modtext .= ",tomorrow_".sprintf('%03d',$ii)."_$fields[$jj]";}
$modtext .=" ";
}
for($ii= 1;$ii<= ReadingsVal("$NAME","c-term", 0);$ii++){
if (ReadingsVal("$NAME","t_".sprintf('%03d',$ii)."_daysleft", 0) > 2) {
$modtext .= "$NAME:t_".sprintf('%03d',$ii)."_$fields[1]";
for($jj= 2;$jj<= #$fields;$jj++) {
$modtext .= ",t_".sprintf('%03d',$ii)."_$fields[$jj]";}
$modtext .=" ";
}
}
fhem("modify rg_$NAME $modtext");
fhem("SAVE");
}}
zur Erklärung:
- das notify triggert auf jedes Device, welches auf "View" endet. Dies ist bei mir so gewachsen, da ich zu jedem Kalender eben ein CALVIEW mit gleichem Namen+View angelegt habe
- zu jedem CALVIEW device muss eine readingsgroup mit gleichem namen und "rg_" Präfix existieren, damit dieses angepasst werden kann.
- die Readings, welche in der rg angezeigt werden sollen, werden aus dem Attribut "comment" des CALVIEW-Devices gelesen. hier darf nur die eigentliche Bezeichnung ohne laufende Nummer (also "bdate" statt "t_001_bdate") stehen. Einzelne Readings werden mit Komma getrennt.
- Für einen Tabellenkopf, wird die entsprechende Bezeichnung aus dem comment der rg gelesen. Die Synthax entspricht 1:1 der normalen definition (Bsp: <Datum>,<Uhrzeit>,<Termin>,....)
Ich hoffe es hilft dem einen oder anderen. Falls jemand noch Verbesserungsvorschläge hat, immer her damit :-)
Grüße, Stephan
Ein Device mittels Notify zu modifizieren und dann Save auszulösen ist so ziemlich die unsauberste Art und Weise sowas zu lösen (meine Meinung). Im Beitrag 221 gibt's eine Variante, die ohne sowas auskommt.
Zitat von: mumpitzstuff am 11 Juli 2018, 17:56:58
Ein Device mittels Notify zu modifizieren und dann Save auszulösen ist so ziemlich die unsauberste Art und Weise sowas zu lösen (meine Meinung). Im Beitrag 221 gibt's eine Variante, die ohne sowas auskommt.
Wie gesagt, ich bin kein Entwickler und wäre auch eher dafür die Funktionalität direkt ins Modul zu übernehmen.....
Die Grundidee stammt auch nicht von mir sondern habe ich aus einem Beitrag des Modulentwicklers übernommen. Den vorgeschlagenen Beitrag schaue ich mir aber dennoch mal an.
Edit: In #221 geht es soweit ich das sehe ja nur um die Farbe aber in #222 steht was mit defmod. Werde ich mal versuchen, dann sollte sich ja auch das vorherige anlegen der readingsGroup erübrigen.
Das, worum es mir hauptsächlich ging wird da jedoch nicht erreicht: ich möchte nicht für jeden Kalender ein eigenes notify oder dergleichen anlegen müssen, wo ich die Darstellung dann hardcode. Ich wollte lieber eine universellere und weniger statische Methode nutzen.
Gesendet von iPhone mit Tapatalk
@rischbiter123: Der Tipp mit dem HideOlderThen hat mir auch seh geholfen. Jetzt funktioniert Calview wieder so wie erwartet. Danke!
Hi Chris,
ist es möglich das Modul daingehend zu erweitern dass man auch Einträge hinzufügen kann?
Mir geht es hier primär um meinen Geburtstagskalender der als iCal-File vorliegt. Aktuell nutze ich Thunderbird um meinen Geburtstagskalender zu editieren.
Cooler wäre es jedoch wenn ich das Ganze direkt per FHEM machen könnte.
Ist dies möglich oder zu aufwändig?
VG, Thomas
Das wäre er eine Funktion für Calendar als für Calview da hier das Augenmerk auf der Darstellung der Daten aus Calendar liegt
ZitatDas wäre er eine Funktion für Calendar als für Calview da hier das Augenmerk auf der Darstellung der Daten aus Calendar liegt
Oh schon wieder die 2 verwechselt... ::)
Sorry. :)
Ich habe seit einem FHEM Update vor ca. 4 Wochen das Problem dass ich stündlich eine PERL WARNING im Log habe.
Habe etwas nachgeforscht und festgestellt dass der Eintrag immer beim Update meines FamKalView (CALVIEW) passiert.
2018.07.22 09:18:08 5: Cmd: >set FamKalView update<
2018.07.22 09:18:08 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 65093) line 1.
2018.07.22 09:18:08 5: CALVIEW FamKalView - All data:
Kann die Änderung am CALVIEW in Zeile 342 damit zu tun haben ?
https://github.com/mhop/fhem-mirror/commit/53e242ddc7447ebf9c90cde9999abb059963029a#diff-103eeeed4ff3837de5549fda357c67cd
Kann es sein dass '$d' ein '$D' sein sollte ?
Zitat von: HGButte am 22 Juli 2018, 09:41:00
Ich habe seit einem FHEM Update vor ca. 4 Wochen das Problem dass ich stündlich eine PERL WARNING im Log habe.
Habe etwas nachgeforscht und festgestellt dass der Eintrag immer beim Update meines FamKalView (CALVIEW) passiert.
Ich lese mal mit, gleiches Verhalten bei mir.
LG Thomas
Zitat von: HGButte am 22 Juli 2018, 09:41:00
Ich habe seit einem FHEM Update vor ca. 4 Wochen das Problem dass ich stündlich eine PERL WARNING im Log habe.
Habe etwas nachgeforscht und festgestellt dass der Eintrag immer beim Update meines FamKalView (CALVIEW) passiert.
2018.07.22 09:18:08 5: Cmd: >set FamKalView update<
2018.07.22 09:18:08 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 65093) line 1.
2018.07.22 09:18:08 5: CALVIEW FamKalView - All data:
Kann die Änderung am CALVIEW in Zeile 342 damit zu tun haben ?
https://github.com/mhop/fhem-mirror/commit/53e242ddc7447ebf9c90cde9999abb059963029a#diff-103eeeed4ff3837de5549fda357c67cd
Kann es sein dass '$d' ein '$D' sein sollte ?
Falscher Thread? Wende dich bitte an Marc Hoppe wenn du seine Version meines Modules verwendest. Hier geht es um mein Modul direkt aus dem FHEM Update oder aus meinem Git repo https://github.com/chris1284
Im offiziellen Modul gibt es der genannten Zeile kein $d und auch bisher keine solchen Fehler und es wurde auch noch keiner gemeldet. $d (siehe Calendar commandref) ist "the duration in seconds" und ist im Modul nur ein string und keine Variable. Zudem bei mir ein $D ($D the duration in human-readable form). Das scheint also eine Anpassung von Marc Hoppe zu sein die ich nicht supporte. Ist es absicht gewesen das Modul aus anderen Quellen in FHEM zu nutzen (ich frage weil evtl fehlt dir ja ein Feature im offiziellen Modul)
2018.07.22 18:35:54 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 1639485) line 1.
2018.07.22 18:35:54 1: stacktrace:
2018.07.22 18:35:54 1: main::__ANON__ called by (eval 1639485) (1)
2018.07.22 18:35:54 1: (eval) called by ./FHEM/57_Calendar.pm (588)
2018.07.22 18:35:54 1: Calendar::Event::formatted called by ./FHEM/57_Calendar.pm (2035)
2018.07.22 18:35:54 1: main::Calendar_Get called by fhem.pl (3584)
2018.07.22 18:35:54 1: main::CallFn called by ./FHEM/57_CALVIEW.pm (342)
2018.07.22 18:35:54 1: main::getsummery called by ./FHEM/57_CALVIEW.pm (92)
2018.07.22 18:35:54 1: main::CALVIEW_GetUpdate called by ./FHEM/57_CALVIEW.pm (374)
2018.07.22 18:35:54 1: main::CALVIEW_Notify called by fhem.pl (3584)
2018.07.22 18:35:54 1: main::CallFn called by fhem.pl (3504)
2018.07.22 18:35:54 1: main::DoTrigger called by fhem.pl (4531)
2018.07.22 18:35:54 1: main::readingsEndUpdate called by ./FHEM/57_Calendar.pm (3071)
2018.07.22 18:35:54 1: main::Calendar_CheckTimes called by ./FHEM/57_Calendar.pm (2581)
2018.07.22 18:35:54 1: main::Calendar_CheckAndRearm called by ./FHEM/57_Calendar.pm (2592)
2018.07.22 18:35:54 1: main::Calendar_SynchronousUpdateCalendar called by ./FHEM/57_Calendar.pm (2558)
2018.07.22 18:35:54 1: main::Calendar_ProcessUpdate called by FHEM/HttpUtils.pm (592)
2018.07.22 18:35:54 1: main::__ANON__ called by fhem.pl (720)
So siehts bei mir aus, Modul ist aus dem FHEM Update.
LG Thomas
ja, da ist erstmal ein log-Auszug. Aber leider sagt er nicht dass die Warnung von Calview kommt, könnte auch Calendar oder FHEM sein. stell die Frage mal ehr im Fhem bereich denn ich wüsste nichts mit der Meldung anzufangen, schon gar nicht in line 1
ein Calview Fehler wäre so gemeldet
ZitatPERL WARNING: Use of uninitialized value $d in concatenation (.) or string at ./FHEM/57_CALVIEW.pm ............
Ich habe keine spezielle Version von CALVIEW, zumindest nicht bewusst.
Ich habe 57_CALVIEW.pm bei mir lokal in Zeile 342 angepasst und zumindest seitdem keine Fehlermeldung mehr im Log.
Den Github Link habe ich von Google bei der Suche nach "github 57_calview.pm"
Hier sieht die Code Stelle genauso aus:
https://svn.fhem.de/fhem/trunk/fhem/FHEM/57_CALVIEW.pm
Prinzipiell meine ich diese Zeile.
CallFn($calendername, "GetFn", $defs{$calendername},("-","events","format:custom='\$U|\$T1|\$T2|\$S|\$L|\$DS|\$CA|\$d'"));
Zitat von: chris1284 am 22 Juli 2018, 19:42:03
ja, da ist erstmal ein log-Auszug. Aber leider sagt er nicht dass die Warnung von Calview kommt, könnte auch Calendar oder FHEM sein. stell die Frage mal ehr im Fhem bereich denn ich wüsste nichts mit der Meldung anzufangen, schon gar nicht in line 1
Sicher? Scheinbar sind da wirklich zwei Versionen von deinem Modul im Umlauf.
FHEM SVN:CallFn($calendername, "GetFn", $defs{$calendername},("-","events","format:custom='\$U|\$T1|\$T2|\$S|\$L|\$DS|\$CA|\$d'"))
github.com/chris1284:CallFn($calendername, "GetFn", $defs{$calendername},("-","events","format:custom='\$U|\$T1|\$T2|\$S|\$L|\$DS|\$CA'"))
LG Thomas
Stimmt, da habe ich mich selbst wohl etwas vermacht, sorry. Die Version im SVN ist die aktuellste mit $d für die neue Ganztagserkennung.
Ich habe getestet und es liegt am Calendat der bei Terminen ohne Laufzeit die Variabel nicht mit 0 füllt
Ihr könnt auch mal von Hand schauen ob die Meldung vom Calendar kommt in dem ihr dort folgendes ausführt
get [kalendername] events format:custom="$U|$T1|$T2|$S|$L|$DS|$CA|$d"
es müsste dann am Schluss jeder Zeile eine Zahl stehen und keine Meldung im Log.
Termine ohne Zahl am Ende generieren die Meldung
Zitat2018.07.23 07:48:26 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 33013) line 1.
Daraus resultiert nun im aktuellen (von heute 7022) Calview Modul ein Duration Reading mit Wert "keine Laufzeit"
Ich gebe das mal an Boris weiter.
Prima und danke.
Bei mir werden immer noch beendete Termine nicht automatisch und sofort aus CalView gelöscht. :-[
Das passiert auch leider erst, wenn der dazugehörige Kalender neu eingelesen wird und der Termin dort zu diesem Zeitpunkt nicht mehr auftaucht.
Sollte sich da inzwischen wieder was geändert haben, korrigiert mich bitte.
Ausserdem ist die shorttime neuerdings leer. :-[
Zitat von: Mave am 25 Juli 2018, 13:53:44
Ausserdem ist die shorttime neuerdings leer. :-[
ist gefixed. die Sache mit dem Termin: wenn Calendar nichts sagt kann Calview nichts wissen
Super, vielen Dank.
Hallo Zusammen,
ich bekomme jede Stunde auf eine Schlag folgende Meldungen ins log.
Seit Wochen suche ich immer mal wieder nach dem Fehler, finde ihn aber nicht.
Durch systematisches deaktivieren von den "notifys" die CALVIEW nutzen konnte ich es auf das CALVIEW Modul selbst eingrenzen.
Die Einträge im log sind seit einem update vor ein paar Monaten vorhanden.
Hoffentlich hat jemand eine Idee woran es liegen kann oder einen Tipp um dem ganzen auf die Schliche zukommen.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 278) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 279) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 280) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 281) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 282) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 283) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 284) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 285) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 286) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 287) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 288) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 289) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 290) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 291) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 292) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 306) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 307) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 308) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 309) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 310) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 311) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 312) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 313) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 314) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 315) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 316) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 317) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 318) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 319) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 320) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 321) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 322) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 323) line 1.
2018.07.31 16:51:43 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 324) line 1.
Vielen Dank im Vorraus
Alex
siehe vorherige Seite. Wann hast Du das letzte Update vom Modul gemacht?
LG
Andreas
Zitatsiehe vorherige Seite. Wann hast Du das letzte Update vom Modul gemacht?
Ja, das auf der vorherigen Seite habe ich gesehen. Daher hatte ich gehofft, dass mit der neuen Version von CALVIEW der Fehler nicht mehr auftritt.
Ich verwende folgende version:
57_CALVIEW.pm 17031 2018-07-26 17:17:50Z chris1284
Folgende Meldung kommt nach einem FHEM reboot:
2018.07.31 18:37:23 1: PERL WARNING: Use of uninitialized value in numeric eq (==) at ./FHEM/57_CALVIEW.pm line 226.
Gruß Alex
Das kann nur ein Termin ohne Laufzeit sein prüfe mal ob alle deine Termine ein Ende haben oder ob Start und Ende gleich sind oder Termine keine duration haben. In der Zeile wird geprüft ob die Laufzeit die Calendar liefert (eine Zahl oder nichts wenn ein nicht regelkonformer Termin verarbeitet wird) = 86400 (ein Tag) ist
Hi Chris.
Hast Du den Weg eigentlich weiter verfolgt?
Zitat von: chris1284 am 15 Februar 2017, 12:10:37
eine art "substsummary" attr wo jeder seinen quark selber definieren muss
Hintergrund meiner Frage ist, dass ich tatsächlich bei den erinnerungspflichtigen,wiederkehrenden Terminen eine Art Codierung habe.
Kristin (*1970) --> Geburtstag
UrOma (+2014) --> Todestag
Steffie (HZT 2016) --> Hochzeitstag
Moped (TdZ 1996) --> Tag der ersten Zulassung
Moped (1970) --> Gedenktag
Erstens würde ich gerne die Jahreszahl samt Codierung in der ReadingsGroupAnzeige/Ansage ausblenden können und zweitens würde ich gerne gerne ein Ansage wie "Die UrOma wird in 2 Tagen 4" ;D
Hättest Du/Ihr eine Idee, wie man das abbilden könnte?
Ich hatte schon an userReadings gedacht, aber der Lösungsweg fehlt leider noch
Danke und Grüße
mi.ke
Hi mi.ke,
die Lösung mit der Sprachausgabe gibt's wie im ersten Beitrag beschrieben, hier: https://forum.fhem.de/index.php/topic,66443.0.html (https://forum.fhem.de/index.php/topic,66443.0.html)
Deine Idee mit dem Todestag, Hochzeitstag usw. kannst du doch über die Kategorie abfangen.
VG, Thomas
ZitatDas kann nur ein Termin ohne Laufzeit sein prüfe mal ob alle deine Termine ein Ende haben oder ob Start und Ende gleich sind oder Termine keine duration haben. In der Zeile wird geprüft ob die Laufzeit die Calendar liefert (eine Zahl oder nichts wenn ein nicht regelkonformer Termin verarbeitet wird) = 86400 (ein Tag) ist
Hab 2 Screenshots angehangen.
Laut CALVIEW geht der Termin vom 20.08 0 Uhr bis 17.08 14 Uhr. ??? ??? Im Google Kalender ist dieser Tag als ganztägig eingetragen.
Dadurch wird auch keine duration angezeigt. Kommt der Fehler daher?
Danke und Gruß
Alex
mach auf deinem CALENDAR der diesen Termin liefert ein
Zitatget [kalendername] events format:custom="$U|$T1|$T2|$S|$L|$DS|$CA|$d"
Zitat von: mi.ke am 02 August 2018, 08:33:27
Hast Du den Weg eigentlich weiter verfolgt?
nee, muss mich mal einlesen was da angedacht war
Zitat von: chris1284 am 02 August 2018, 17:01:12
mach auf deinem CALENDAR der diesen Termin liefert ein
Output siehe Anhang
Gruß Alex
Wie vermutet haben die letzten Termine keine Laufzeit im Calendar weil kein End Datum und keine End Uhrzeit
Zitat von: ToM_ToM am 02 August 2018, 11:58:03
die Lösung mit der Sprachausgabe gibt's wie im ersten Beitrag beschrieben, hier: https://forum.fhem.de/index.php/topic,66443.0.html (https://forum.fhem.de/index.php/topic,66443.0.html)
Habe kein Sonos, aber ich schau mir's mal an.
Zitat von: ToM_ToM am 02 August 2018, 11:58:03
Deine Idee mit dem Todestag, Hochzeitstag usw. kannst du doch über die Kategorie abfangen.
Hilf mir mal, welche Kategorien?
Cheers
Zitat von: mi.ke am 03 August 2018, 10:48:55
Habe kein Sonos, aber ich schau mir's mal an.
Mit Hilfe des echoDevice Moduls lässt sich eine Ausgabe über Amazon Echo realisieren. Ich hatte dazu die Sonos-Funktion mal angepasst und im Forum bereit gestellt.
Gesendet von iPhone mit Tapatalk
ZitatHabe kein Sonos, aber ich schau mir's mal an.
Wenn du kein Sonos hast, musst du in dem Code nur die folgende Zeile auf deinen Sprachausgabe-Befehl anpassen:
fhem("set $Sonos_OutputDevice Speak $Sonos_OutputVolume de $Sonos_OutputText");
ZitatHilf mir mal, welche Kategorien?
Du kannst Kalendereinträgen Kategorien zuweisen. Wenn du z.B. eine iCal-Datei hast, öffnest du diese einfach mit Mozilla SunBird und kannst dort zu deinen Einträgen Kategorien hinterlegen. Diese tauchen dann im Reading ...categories... oder so auf (bin gerade auf Arbeit und weiß nicht aus dem Kopf wie das heißt).
Zitat von: chris1284 am 03 August 2018, 07:10:37
Wie vermutet haben die letzten Termine keine Laufzeit im Calendar weil kein End Datum und keine End Uhrzeit
Also ist es ein Fehler im Calendar Modul?
Weil laut Google Kalender ist der Tag als ganztägig markiert. Demnach müsste es entweder im Calender Modul ein Enddatum und eine Endzeit geben, oder CALVIEW müsste ein fiktives Ende setzten.
Gruß Alex
Zitat von: ToM_ToM am 03 August 2018, 12:46:03
Wenn du kein Sonos hast, musst du in dem Code nur die folgende Zeile auf deinen Sprachausgabe-Befehl anpassen:
fhem("set $Sonos_OutputDevice Speak $Sonos_OutputVolume de $Sonos_OutputText");
Du kannst Kalendereinträgen Kategorien zuweisen. Wenn du z.B. eine iCal-Datei hast, öffnest du diese einfach mit Mozilla SunBird und kannst dort zu deinen Einträgen Kategorien hinterlegen. Diese tauchen dann im Reading ...categories... oder so auf (bin gerade auf Arbeit und weiß nicht aus dem Kopf wie das heißt).
Na, da kann ich mit dem Gxxgle-Kalender ja lange suchen, ich dachte schon ich bin total blind.
Aber ich könnte die "nicht Geburtstage" in den description markieren, als das, was sie sind.
Zitat von: mi.ke am 02 August 2018, 08:33:27
Erstens würde ich gerne die Jahreszahl samt Codierung in der ReadingsGroupAnzeige/Ansage ausblenden können . . . .
und die Lösung ist:
attr xxx valueFormat { if ( $READING =~ m/.*summary/ ) { $VALUE =~ s/\(.*?\)//g; return $VALUE }}
wer es gebrauchen kann
Cheers
mi.ke
Zitat von: dogexan am 03 August 2018, 16:06:05
Also ist es ein Fehler im Calendar Modul?
Weil laut Google Kalender ist der Tag als ganztägig markiert. Demnach müsste es entweder im Calender Modul ein Enddatum und eine Endzeit geben, oder CALVIEW müsste ein fiktives Ende setzten.
Gruß Alex
Nö, ein Fehler bei google da sie nicht rfc konforme Termine erstellen / das Erstellen zulassen
https://forum.fhem.de/index.php/topic,89592.0.html
wobei meine ALLE im GoogleCalender erstellten Ganztagestermine immer eine Laufzeit haben / ein Ende haben. Hast du die Termine evtl. importiert oder nicht mit google-tools erstellt?
Erstell doch mal einen Testtermin direkt auf der Website bei google
Zitat von: chris1284 am 03 August 2018, 19:48:18
Nö, ein Fehler bei google da sie nicht rfc konforme Termine erstellen / das Erstellen zulassen
https://forum.fhem.de/index.php/topic,89592.0.html
wobei meine ALLE im GoogleCalender erstellten Ganztagestermine immer eine Laufzeit haben / ein Ende haben. Hast du die Termine evtl. importiert oder nicht mit google-tools erstellt?
Erstell doch mal einen Testtermin direkt auf der Website bei google
Du hast recht, selbst erstellte ganztägige Einträge, funktionieren einwandfrei.
Alle anderen Termine werden importiert. Optisch unterscheiden sie sich im Google Kalender nicht, aber im CALENDAR und CALVIEW eben schon.
Mal schauen ob ich an dem import was verändert bekomme, ansonsten muss ich wohl darauf hoffen, dass sich im CALENDAR Modul was ändert.
Vielen Dank für die Unterstützung! :D Ärgere mich schon zulange mit diesem "Fehler" rum. ::)
Gruß Alex
Hi Chris,
gibt es eine Möglichkeit oder könntest du diese einbauen, dass ich mir im CALVIEW-Eintrag auch die UID anzeigen lassen kann (z.B. per neuem Attribut showUID)?
Hintergrund: Ich suche einen Weg, meinen Kalendereintrag eindeutig zu identifizieren.
VG, Thomas
Hallo,
ich wollte im Tablet Ui das Datum bdate ohne Jahreszahl anzeigen lassen.
Darum habe ich folgenden Eintrag gemacht: <div class="autohide" data-type="label" data-device="Arbeiten" data-dateformat="short" data-get="t_001_bdate"></div>
Doch leider wird in der Tablet Ui das Datum immer noch mit Jahreszahl angezeigt.
Zitat von: chris1284 am 28 Dezember 2016, 18:12:33
Hallo,
ich habe den alten Post geschlossen und hier im richtigen unterforum diesen erstellt.
und anbei das um die 2 readings erweiterte widget für die tabletui
Download widget: https://github.com/chris1284/Widgets-for-fhem-tablet-ui
Erweiterungen/Anwendungen für Calview
Calview Geburtstage über Sonos ausgeben https://forum.fhem.de/index.php/topic,66443.0.html (von User ToM_ToM)
Wäre echt cool, wenn du die widget Änderungen auch unter https://github.com/knowthelist/fhem-tablet-ui hinzufügst, oder alternativ dein Repo für den Update Mechanismus anpasst, und die Dateien aus dem anderen Repo entfernt werden. Manuelles Updaten ist doof...
Zitat von: Torsten_MG am 09 August 2018, 17:39:46
Doch leider wird in der Tablet Ui das Datum immer noch mit Jahreszahl angezeigt.
Browser cache Problem? hier gehts
Zitat von: chris1284 am 16 August 2018, 18:52:19
Browser cache Problem? hier gehts
Habe den Cache geleert (den gesamten) ohne Erfolg
hi,
vielen dank erstmal für die klasse arbeit!
ich habe das problem, dass mit anscheinend nur die 10 ältesten termine angezeigt werden. Also aktuell termine aus 2017.
kann mir da jemand einen tip geben? wahrscheinlich müsste ich irgendwo die sortierung umstellen.
gruß erotikbaer
du musst dein CALENDAR Device richtig konfigurieren. Ein List könnte helfen
Vermutung:
im CALENDAR kein HideOlderThen gesetzt.
LG
Andreas
hi!
daaanke! das "im CALENDAR kein HideOlderThen gesetzt" war es.
:) vielen dank
@chris1284
Vielleicht sollte man das bei z.B. Maxreadings als Tip mit einfügen. Ich habe das Gefühl, das 'Problem' kommt alle 2-3 Wochen auf.
LG
Andreas
Zitat von: rischbiter123 am 21 September 2018, 22:27:54
@chris1284
Vielleicht sollte man das bei z.B. Maxreadings als Tip mit einfügen. Ich habe das Gefühl, das 'Problem' kommt alle 2-3 Wochen auf.
LG
Andreas
Da hast du wohl recht, ein Hinweis in der CMD-Ref wäre wohl ganz gut. E
@chris1284
Kannst du folgendes bitte im 57_CALVIEW beim nächsten Update mit anlegen?
sonnst muss ich das nach jeden Update immer selber anlegen :(
oder hat es einen Grund warum weekday und weekdayname weggelassen wurde?
#wenn termin heute today readings anlegen
readingsBulkUpdate($hash, "today_".sprintf ('%03d', $todaycounter)."_weekday", $termin->{weekday} );
readingsBulkUpdate($hash, "today_".sprintf ('%03d', $todaycounter)."_weekdayname", $termin->{weekdayname} );
und
#wenn termin morgen tomorrow readings anlegen
readingsBulkUpdate($hash, "tomorrow_".sprintf ('%03d', $tomorrowcounter)."_weekday", $termin->{weekday} );
readingsBulkUpdate($hash, "tomorrow_".sprintf ('%03d', $tomorrowcounter)."_weekdayname", $termin->{weekdayname} );
LG Heiko
ist eingebaut, weiß nicht warum es nicht drin war.
Top
@chris1284
Ich habe mich in letzter Zeit ein wenig intensiver mit dem Thema "CALVIEW" beschäftigt. Da ich dabei die Gelegenheit genutzt habe, die Wiki-Seite zu ergänzen, habe ich auch einige Tests durchgeführt.
Im Rahmen dieser Tests sind mir einige Ungereimtheiten in widget_calview.js aufgefallen:
- data-showempty="yes" und data-get="all" zeigt für den Fall, dass keine Termine vorhanden sind: "undefinedkeine Termine"
- die Anzahl der darstellbaren Spalten wird bei Verwendung der nicht darstellbaren Spalte "sourcecolor" falsch ermittelt
- das Modul enthält noch Codezeilen für nicht mehr unterstütze Attribute
- der Wert für die Spalte "age" wird fälschlischerweise gekürzt
- bei der Verwendung ohne data-detailwidth wird nur ein Eintrag dargestellt; auch wenn mehr dargestellt werden müssten
- einige Spalten werden nur bei Verwendung von data-detailwidth unterstützt
- data-class wird nur bei Verwendung von data-detailwidth unterstützt
- data-oneline wird nur bei Verwendung von data-detailwidth unterstützt
Diese Dinge habe ich bei mir lokal in widget_calview.js korrigiert und auch soweit getestet. Da die Änderungen etwas zahlreicher sind, verzichte ich auf eine Angabe der Änderungen und hänge stattdessen meine überarbeitete js-Datei an.
Es wäre nett, wenn Du dir die vorgenommenen Änderungen mal anschaust und (bei Gefallen) in die produktive Schiene übernimmst.
Viele Grüße
P.S.: data-swiperstyle habe ich mir noch nicht näher angeschaut, werde ich aber noch bei Gelegenheit nachholen.
Ich werde das gleich bei mir einbauen. Die Frage ist, wie es weiter geht, falls @chris1284 nicht reagiert. Und wie wir Wiedervorlage setzen, damit wir selbst das nicht vergessen.
Übrigens -eine Bitte- scheint es mir hilfreich, in der Datei unterhalb von
// Modifications chris1284 29.01.2018 - fixed showempty
Deinen Nick, Datum, Änderungen einzutragen. Das würde die Sache wohl erleichtern.
P.S: OT: Ich kannte Kontakt mit dem Maintainer des Moduls Calendar (@Dr. Boris Neubert ), er wird (oder hat schon) die fehlerhafte Behandlung bei fehlendem DTEND korrigieren.
Wenn das Widget erfolgreich von den Usern getestet wurde werde ich es gerne so hochladen und ins ftui repo aufnehmen lassen. Generell muss ich sagen stünde ich einer Maintainer-Änderung für das widget offen gegenüber. Ich nutze tui nicht mehr ...
Hallo zusammen,
ich habe in meiner fhem Installation gestern zu einer "alten" CALVIEW Definition "ZS_zs_CAL_View_Torsten" einen weiteren Kalender angefügt, den ich erst jetzt eingerichtet hatte. Das hat soweit auch prima funktioniert, die Termine aus dem neuen Kalender wurden gelesen und zusammen mit den Terminen des bisherigen Kalenders in einer entsprechenden ReadingsGroup dargestellt.
Jetzt nach einem Neustart von fhem war die ReadingsGroup leer und die CALVIEW "ZS_zs_CAL_View_Torsten" verschwunden. Dafür jede Menge Fehlermeldunge im LOG bzw. wurde auch meine fhem.cfg mit entsprechenden Einträgen gefüllt:
configfile: invalid Calendername "fcal", define it first\
./log/fhem.save: Please define ZS_zs_CAL_View_Torsten first\
Please define ZS_zs_CAL_View_Torsten first\
Please define ZS_zs_CAL_View_Torsten first\
Please define ZS_zs_CAL_View_Torsten first\
Please define ZS_zs_CAL_View_Torsten first\
Please define ZS_zs_CAL_View_Torsten first\
Please define ZS_zs_CAL_View_Torsten first\
Please define ZS_zs_CAL_View_Torsten first\
Please define ZS_zs_CAL_View_Torsten first\
...
Ich vermute, das liegt an der Reihenfolge der Definitionen in der fhem.cfg. Der alte Kalender steht vor der CALVIEW Definition, der neue Kalender steht am Ende der fhem.cfg. M.E. darf das aber nicht dazu führen, dass die fhem.cfg mit Fehlermeldungen gefüllt wird. Irgendwie sollte CALVIEW diese Situation abfangen...
Beste Grüße
Torsten
P.S.: Konnte aus einer Sicherung wieder alles herstellen.
Zitat von: ToKa am 30 Oktober 2018, 20:12:03
Ich vermute, das liegt an der Reihenfolge der Definitionen in der fhem.cfg. Der alte Kalender steht vor der CALVIEW Definition, der neue Kalender steht am Ende der fhem.cfg. M.E. darf das aber nicht dazu führen, dass die fhem.cfg mit Fehlermeldungen gefüllt wird.
Nö, führt hier zu keinen Problemen
ZitatIrgendwie sollte CALVIEW diese Situation abfangen...
Sicher nicht, das ist fhem Aufgabe und das funktioniert seit je her
Wie heißt der neue Kalender? Heißt er fcal?
Dessen Definition steht nachweisbar in fhem.cfg?
Die Definition des alten Kalenders ist auch noch da?
Solche Fehlermeldungen entstehen nach meiner Beobachtung, wenn man von Hand in der fhem.cfg editiert. Sie verschwinden mit dem nächsten Neustart von FHEM von alleine.
Wenn nach dem nächsten Neustart ein Kalender immer noch fehlt, schauen wir genauer.
Hallo zusammen,
ja der Kalender mit dem Namen fcal war der neu angelegte Kalender. Sowohl der alte als auch der neue Kalender waren noch in der fhem.cfg, nur die CALVIEW, die es schon lange gab, war in der fhem.cfg nicht mehr vorhanden.
Ich gehe immer noch davon aus, dass beim Neustart die CALVIEW den neuen Kalender nicht gefunden hat, da er zuletzt angelegt und damit in der fhem.cfg am Ende stand, so dass die CALVIEW nicht angelegt wurde. Da es mir nicht gleich aufgefallen war, habe ich mit Sicherheit an anderen Stellen Änderungen vorgenommen und gespeichert.
Und nein, ich habe nicht von Hand in der fhem.cfg editiert und mein fhem ist aktuell.
Aber jetzt läuft es?
Deine Aussage ist, dass die Definitionen der Kalender vor der Definition von CALVIEW stehen muss?
Ja es läuft, konnte die calview aus einer Sicherung wieder anlegen. Diese steht jetzt ziemlich am Ende meiner fhem.cfg.
Es ist ja nur eine Vermutung von mir dass es mit der Reihenfolge zu tun hat und eben nur eine der beiden Kalender vor dem calview und der andere nach der calview in der fhem.cfg stand.
@chris1284
Zitat
Generell muss ich sagen stünde ich einer Maintainer-Änderung für das widget offen gegenüber. Ich nutze tui nicht mehr ...
Da ich derzeit FTUI nutze und in nächster Zeit auch nicht wechseln will, könnte ich grundsätzlich die Pflege für das widget übernehmen.
Allerdings kann ich noch nicht so genau abschätzen, was alles mit der Übernahme verbunden ist; vielleicht könntest Du den Rahmen noch ein wenig weiter ausführen ... (ist GitHub notwendig ; gibt es einen FTUI-Entwickler-Leitfaden, o.ä. ; ...)
Viele Grüße
Zitatist GitHub notwendig ;
nein, ich fand es hilfreich da ich so direkt in knowthelist' repo comitten konnte und so die Leute per normaler TUI Updateroutine aktuell waren
Zitatgibt es einen FTUI-Entwickler-Leitfaden, o.ä. ; ...)
nicht das ich müsste, da musst du bei knowthelist (setstate im Forum) nachfragen.
Zitatwas alles mit der Übernahme verbunden ist;
Wünsche und gemeldete Fehler der Community umsetzen /beheben, ggf neue Funktionen aus Calview (also Readings) ins widget aufnehmen
@chris1284
Klingt machbar und ich würde sagen, der widget-Übernahme steht nicht mehr viel im Wege.
Das mit dem autom. Verteilen via FHEM-Update würde ich auf jeden Fall auch nutzen wollen.
Um die widget-Übernahme sinnvoll zu gestalten, würde ich mir also in den nächsten Tagen einen GitHub-Account zulegen. Anschließend könnten wir dann ja gemeinsam den Übernahmestand festlegen/austauschen sowie die commit-Möglichkeit für das autom. Verteilen besprechen/einrichten.
Oder bevorzugst Du eine andere Vorgehensweise?
Viele Grüße
Zitat von: OdfFhem am 06 November 2018, 05:07:37
Oder bevorzugst Du eine andere Vorgehensweise?
Ich bin zwar nicht gefragt - habe jetzt aber den Eindruck, dass da was schief geht.
Soweit ich recht verstand, laufen die FTUI-updates aus Nutzersicht automatisiert. Da wird ein GitHub-Account vermutlich nicht reichen.
Dazu siehe ansatzweise hier:
https://forum.fhem.de/index.php/topic,92158.msg846734.html#msg846734
Der GitHub-Account soll dazu dienen, den Entwicklungsstand von widget_calview.js zu versionieren und den commit mit dem FTUI-Masterstand zu ermöglichen.
Durch die Übernahme sollte kein Anwender lokal etwas ändern müssen. Klappt das autom. FTUI-Update heute, sollte es das auch morgen noch tun.
Ok. Verstanden. Danke.
GitHub-Account ist angelegt ...
Dann braucht du eigentlich nur eine Fork von knowthelist ziehen. darin kannst du dann das widget bearbeiten
Ich würde mich gerne Mal des Problems annehmen, dass mein FHEM bei einem Calendar Update für ca. 20 Sekunden blockiert ist.
Haben Andere ähnliche Probleme?
Ich würde offen gesagt nicht einmal mitbekommen, dass irgendwer oder irgendwas mein FHEM für 20 Sekunden blockiert. Daher möchte ich neugierig fragen, wie Dir das auffiel.
Hier mal ein Logauszug von Freezemon:
2019.01.20 07:52:08.481 5: CALVIEW Kalenderansicht - All data:
...
2019.01.20 07:52:08.484 5: CALVIEW Kalenderansicht - nextday = 21 , endday = 20 , startday = 20 , btime 13:00 , etime 18:00
2019.01.20 07:52:08.486 5: CALVIEW Kalenderansicht - nextday = 22 , endday = 22 , startday = 21 , btime 00:00 , etime 00:00
2019.01.20 07:52:08.488 5: CALVIEW Kalenderansicht - nextday = 22 , endday = 21 , startday = 21 , btime 15:00 , etime 18:00
2019.01.20 07:52:08.561 5: End notify loop for Kalenderansicht
2019.01.20 07:52:08.561 5: CALVIEW Kalenderansicht - CALENDAR:Kalender_Alexa successfully got all updates for CALVIEW Kalenderansicht (CALVIEW_Notify). Now process updates...
--- log skips 17.492 secs.
2019.01.20 07:52:26.053 5: End notify loop for Kalender_Alexa
2019.01.20 07:52:26.086 5: End notify loop for Kalender_Alexa
2019.01.20 07:52:26.087 4: Calendar Kalender_Alexa: process ended.
Obwohl Calendar nur 3 Termine für heute und morgen liefert, beschäftigt sich CALVIEW über 17 Sekunden mit ..... mit was eigentlich?
Freezemon - ok.
Ich kann gelegentlich mal bei mir dann parallel schauen. Aber nicht heute.
Und wenn FHEM alle 6 Stunden für 20 Sekunden einfriert, merkt man das auch im täglichen Betrieb.
Denn dann geht für 20 Sekunden gar nichts mehr, so als wäre FHEM tot.
Ich habe mit Boris Neubert schon im Calendar Modul gesucht, aber auch er sagt, dass das Problem von CALVIEW verursacht wird.
Mir ist nicht ganz klar, was CALVIEW im Moment des Calendar Updates macht. Und schon gar nicht, warum CALVIEW dazu 17 Sekunden benötigt.
@OdfFhem ist Dein Partner. Aber er ist offensichtlich nicht jeden Tag hier.
Ich kann lediglich in den nächsten Tagen Freezemon bei mir an den Start bringen ud schauen, wie es bei mir aussieht.
Zitat von: curt am 20 Januar 2019, 08:12:27
@OdfFhem ist Dein Partner. Aber er ist offensichtlich nicht jeden Tag hier.
Ich kann lediglich in den nächsten Tagen Freezemon bei mir an den Start bringen ud schauen, wie es bei mir aussieht.
Super, vielen Dank.
Die könntest aber einfach auch mal einen Calendar Update starten und in einem zweiten Fenster testen, ob FHEM noch reagiert.
Zitat
@OdfFhem ist Dein Partner.
Diese Aussage ist nicht ganz korrekt; ich habe nur den FTUI-Teil der CALVIEW-Implementierung übernommen. Das FHEM-Modul selbst wird weiterhin von
chris1284 betreut.
Zitat von: Mave am 20 Januar 2019, 08:09:52
Mir ist nicht ganz klar, was CALVIEW im Moment des Calendar Updates macht. Und schon gar nicht, warum CALVIEW dazu 17 Sekunden benötigt.
Was wird CALVIEW machen, natürlich die Termine vom Kalender aufarbeiten ;)
Zitat
019.01.20 07:52:08.561 5: CALVIEW Kalenderansicht - CALENDAR:Kalender_Alexa successfully got all updates for CALVIEW Kalenderansicht (CALVIEW_Notify). Now process updates...
--- log skips 17.492 secs.
2019.01.20 07:52:26.053 5: End notify loop for Kalender_Alexa
Now process updates... ist eigentlich schon das Ende der Calview verarbeitung!!!
Zitat
2019.01.20 07:52:26.053 5: End notify loop for Kalender_Alexa
2019.01.20 07:52:26.086 5: End notify loop for Kalender_Alexa
2019.01.20 07:52:26.087 4: Calendar Kalender_Alexa: process ended.
kommt wo anders her, dem Kalender will ich meinen. Calview hat keinerlei Log das so aussieht. Was der hier 20 Sekunden macht ... keine Ahnung. Wenn da 2 Notifys kommen, rennt calview auch 2 mal los was evtl zu solchen Hängern führen kann.
Hast du notifys auf Calendar?
hier ein sauberer Ablauf mit vielen Terminen
Zitat
2019.01.20 09:53:32 4: Calendar Kalender_Christian: Updating...
2019.01.20 09:53:32 4: Calendar Kalender_Christian: Getting data from URL <hidden>
2019.01.20 09:53:33 5: Calendar Kalender_Christian: HTTP response code 200
2019.01.20 09:53:33 4: Calendar Kalender_Christian: parsing data synchronously
2019.01.20 09:53:33 4: Calendar Kalender_Christian: merging data
2019.01.20 09:53:33 4: Calendar Kalender_Christian: 88 records processed, 0 new, 0 known, 88 modified, 0 changed.
2019.01.20 09:53:33 4: Calendar Kalender_Christian: creating calendar events
2019.01.20 09:53:33 4: Calendar Kalender_Christian: Checking times...
2019.01.20 09:53:33 5: CALVIEW View_All - CALENDAR:Kalender_Christian triggered, updating CALVIEW View_All (CALVIEW_Notify) ...
2019.01.20 09:53:33 5: CALVIEW View_All - All data:
...termin gedönse
2019.01.20 09:53:33 5: CALVIEW View_All - nextday = 16 , endday = 16 , startday = 15 , btime 00:00 , etime 00:00
2019.01.20 09:53:33 5: CALVIEW View_All - nextday = 16 , endday = 16 , startday = 15 , btime 00:00 , etime 00:00
2019.01.20 09:53:33 5: CALVIEW View_All - nextday = 18 , endday = 18 , startday = 17 , btime 00:00 , etime 00:00
2019.01.20 09:53:33 5: CALVIEW View_All - CALENDAR:Kalender_Christian successfully got all updates for CALVIEW View_All (CALVIEW_Notify). Now process updates...
2019.01.20 09:53:33 4: Calendar Kalender_Christian: process ended.
Guten Morgen,
Was hat es denn mit dieser Fehlermeldung im Log auf sich?
2019.01.20 09:50:05 1: PERL WARNING: Argument "" isn't numeric in numeric eq (==) at ./FHEM/57_CALVIEW.pm line 226.
Beste Grüße
Torsten
Zitat von: ToKa am 20 Januar 2019, 09:53:43
Guten Morgen,
Was hat es denn mit dieser Fehlermeldung im Log auf sich?
2019.01.20 09:50:05 1: PERL WARNING: Argument "" isn't numeric in numeric eq (==) at ./FHEM/57_CALVIEW.pm line 226.
Beste Grüße
Torsten
nicht konformer Termin. Kein Ende gesetzt oder Ende = Start
Danke für die schnelle Antwort. Dann sind wahrscheinlich meine ganztägigen Termine wieder zerschossen. Ich nutze verschiedene clients und irgendeiner macht aus den ganztägigen Terminen welche mit 0 Uhr als Start und Ende.
Grüße
Torsten
Zitat von: chris1284 am 20 Januar 2019, 09:57:42
nicht konformer Termin. Kein Ende gesetzt oder Ende = Start
Dass hatten wir schon: Termine ohne Ende sind ganztägig - und laut RFC sehr wohl konform. Und Joachim (?) hat das vor Monaten im Modul korrigiert.
ZitatDanke für die schnelle Antwort. Dann sind wahrscheinlich meine ganztägigen Termine wieder zerschossen. Ich nutze verschiedene clients und irgendeiner macht aus den ganztägigen Terminen welche mit 0 Uhr als Start und Ende.
Hab genau das selbe Problem mit den Terminen die keine Ende-Zeit haben. Mein gesammter FHEM log besteht eigentlich nur noch aus diesen Fehlermeldungen:
2019.01.21 16:49:17 1: PERL WARNING: Use of uninitialized value $d in concatenation (.) or string at (eval 1737) line 1.
Mir bringt es auch nichts, alle betroffen Tage im Google Kalender mit einer Endezeit zuversehen, denn sobald ein Client wieder die Termine synchroniersiert werden die vorher angepassten Termine wieder überschrieben und der Fehler ist wieder da. :-[
Ich wäre wirklich jemandem Verbunden der sich dieser Sache annehmen kann.
Gruß Alex
@dogexan
Die Holzhammermethode wäre im calview verbose auf 0 zu setzen, dann war es das mit den log-Einträgen ;-)
Ansonsten wird es schwierig, denn eigentlich müsste man bei dem Client ansetzen, der sich nicht standardkonform verhält.
Gesendet von iPhone mit Tapatalk
Zitat von: balli1187 am 21 Januar 2019, 18:56:50
Ansonsten wird es schwierig, denn eigentlich müsste man bei dem Client ansetzen, der sich nicht standardkonform verhält.
Erbitte Konkretisierung - wo verhält sich der Client nicht standardkonform?
Zitat von: curt am 21 Januar 2019, 19:00:41
Erbitte Konkretisierung - wo verhält sich der Client nicht standardkonform?
Siehe hier:
Zitat von: chris1284 am 20 Januar 2019, 09:57:42
nicht konformer Termin. Kein Ende gesetzt oder Ende = Start
Genau kenne ich den Standard auch nicht aber laut Chris wandelt ein Client die ganztägigen Termine in Termine mit einer Laufzeit=0.
Gesendet von iPhone mit Tapatalk
Das wird durch ständige Wiederholung nicht richtiger.
Zuständig ist RFC 5545. Dort steht:
Zitat
If such a "VEVENT" has a "DTEND" property, it MUST be specified as a DATE value also.
If --> falls
Also: Wenn es ein DTEND gibt, muss es auch einen Start geben.
Zitat
The "DTEND" property for a "VEVENT" calendar component specifies the non-inclusive end of the event. For cases where a "VEVENT" calendar component specifies a "DTSTART" property with a DATE value type but no "DTEND" nor "DURATION" property, the event's duration is taken to be one day.
Wenn es kein DTEND gibt, dann gilt das Ende des gleichen Tages. Steht ganz klar da.
@Dr. Boris Neubert hatte sich eine Notiz gemacht, um das in calendar zu ändern. Ich ging/gehe davon aus, dass das getan sei?
@chris1284
Hallo zusammen,
ich baue mir gerade ein FTUI zusammen und kann über das Calview Modul mir meinen Kalender bereits anzeigen lassen.
Nun möchte ich eigentlich mit device Color mir die Zeile heute rot Anzeigen lassen, morgen gelb und in* grün. Wie ist die Schreibweise für "in*" oder "in...x"?
meine config für FTUI
<li data-row="4" data-col="2" data-sizex="4" data-sizey="1">
<header>Kalender HomeSweetHome</header>
<div data-type="calview"
data-device="CV_Kalender_HSH"
data-get="all"
data-detail='["daysleftLong","summary","sourcecolor"]'
data-detailwidth='["20","60"]'
data-oneline="yes"
data-sourcecolor="yes"
class="left-narrow-2x"></div>
</li>
meine FHEM config sieht so aus:
###Google HSH_Kalender
define Kalender_HSH Calendar ical url ICALLINK 14400
attr Kalender_HSH group x_config
attr Kalender_HSH hideOlderThan 3600
attr Kalender_HSH icon taster_ch6_6
attr Kalender_HSH room Kalender
###CalView HSH_Kalender
define CV_Kalender_HSH CALVIEW Kalender_HSH 1 3600
attr CV_Kalender_HSH group x_config
attr CV_Kalender_HSH maxreadings 5
attr CV_Kalender_HSH modes next
attr CV_Kalender_HSH oldStyledReadings 0
attr CV_Kalender_HSH room Kalender
###RG HSH
define READ_KalHSH readingsGroup <Wann>,<Termin> CV_Kalender_HSH:t_001_daysleftLong,t_001_summary,t_ CV_Kalender_HSH:t_002_daysleftLong,t_002_summary,t_ CV_Kalender_HSH:t_003_daysleftLong,t_003_summary,t_ CV_Kalender_HSH:t_004_daysleftLong,t_004_summary,t_ CV_Kalender_HSH:t_005_daysleftLong,t_005_summary,t_
attr READ_KalHSH alias Termine HomeSHome
attr READ_KalHSH group Kalender
attr READ_KalHSH nameStyle style="font-weight:bold;;;;color:White"
attr READ_KalHSH nonames 1
attr READ_KalHSH room Kalender
attr READ_KalHSH valueStyle { if($DEVICE eq "CV_Kalender_HSH" && $VALUE eq "heute"){ 'style="color:red"'}elsif($DEVICE eq "CV_Kalender_HSH" && $VALUE eq "morgen"){ 'style="color:yellow"'}elsif($DEVICE eq "CV_Kalender_HSH" && $VALUE eq "in*"){ 'style="color:green"'}else{ 'style="color:white"'}}
ich habe mir für das FHEMFrontend etwas mit Farben gebastelt mit ValueStyle. Dennoch auch nicht das gewünschte Ergebniss das es die Ganze Zeile rot macht.
evtl hat jemand ein Tip
im Wiki habe ich nur gefunden wie man das mit mehreren Kalendern macht.
@patman1607
Mit dem Attribut sourcecolor kann man die Farbe für alle Einträge eines Kalenders festlegen, nicht die Farbe für einzelne Einträge eines Kalenders (s. https://fhem.de/commandref_DE.html#CALVIEW (https://fhem.de/commandref_DE.html#CALVIEW)).
Für Dein Vorhaben scheint dieses Attribut also zunächst eher unpassend. Allerdings könnte man z.B. mittels notify auf das standardmäßige Setzen von sourcecolor reagieren und den Wert abhängig von daysleft anpassen ...
Sollte das funktionieren, wäre die FTUI-Anzeige schon mal in Ordnung.
In der readingsgroup würde man dann auch auf die Verwendung von sourcecolor umschwenken ...
ZitatDie Holzhammermethode wäre im calview verbose auf 0 zu setzen, dann war es das mit den log-Einträgen ;-)
Verbose hab ich auf 0 bringt leider rein gar nichts. Scheinbar werden Perl Warnings durch verbose 0 nicht ignoriert :-\
ZitatDas wird durch ständige Wiederholung nicht richtiger.
Zuständig ist RFC 5545. Dort steht:
Zitat
If such a "VEVENT" has a "DTEND" property, it MUST be specified as a DATE value also.
If --> falls
Also: Wenn es ein DTEND gibt, muss es auch einen Start geben.
Zitat
The "DTEND" property for a "VEVENT" calendar component specifies the non-inclusive end of the event. For cases where a "VEVENT" calendar component specifies a "DTSTART" property with a DATE value type but no "DTEND" nor "DURATION" property, the event's duration is taken to be one day.
Wenn es kein DTEND gibt, dann gilt das Ende des gleichen Tages. Steht ganz klar da.
Denke das ist der korrekte Ansatz für dieses Problem.
Laut dem Client Supporter, ist der Client RFC konform.
Wollen wir also mal hoffen, dass der Fix es bald ins Calendar Modul schafft :D
Gruß Alex
@chris1284
Besteht die Aussicht auf ein Reading, das anzeigt, wann die CALVIEW zuletzt aktualisiert wurde?
Quasi ein Reading, dessen Wert selbst ein Zeitstempel ist.
Ich würde gerne dieses EINE Reading als Trigger verwenden, um auf Änderungen "aufmerksam" gemacht zu werden - statt der äußerst zahlreichen Einzelreadings.
Vielleicht verstehe ich die Frage nicht aber bekommst du die Änderungen nicht aus dem Timestamp des state?
Spätestens mit Event-on-Update state solltest du auch darauf triggern können oder übersehe ich da was?
Gesendet von iPhone mit Tapatalk
Deiner Argumentation würde ich für den Eigengebrauch grundsätzlich zustimmen.
Der Hintergedanke bei der Anfrage war aber eigentlich, das zugehörige FTUI-widget zu optimieren. Hier sind heute aus meiner Sicht zuviele Trigger aktiv und jeder ausgelöste Trigger führt zum vollständigen Aufbau der Kalenderansicht. Dieses Verhalten würde ich gerne optimieren und auf einen Trigger reduzieren.
Wenn ich nochmal genauer darüber nachdenke, dürfte es aber eigentlich auch kein Reading sein, da die Event-Auslösung zu stark von den individuellen Attribut-Einstellungen abhängt; ein Internal kann es aber wohl auch nicht sein, da hierfür meines (Halb)Wissens nach keinerlei in FTUI verwertbares Event ausgelöst wird.
Folglich sieht es so aus, dass über diesen Weg keine zuverlässige Optimierung machbar scheint. Vielleicht muss es dann doch besser ein neues widget-Attribut sein, dass standardmäßig das heutige Trigger-Verhalten unterstützt, aber die Reduktion auf ein Referenz-Reading zulässt.
Hallo, ich habe ein paar Problemchen :)
1. Die Sortierung bei Serienterminen funktioniert nicht richtig.
2. Ich habe 2 Kalender angebunden und diese werde auch nicht sortiert sondern hintereinander gehängt. Dies kann ja nicht Sinn der Sache sein im Calview mehrere Kalender hinzuzufügen wenn die Einträge von diesen nicht sortiert werden.
defmod SY_ViewKalender CALVIEW SY_KalenderAbfall1,SY_Kalender2 2 1800
attr SY_ViewKalender maxreadings 20
attr SY_ViewKalender modes next
Hat hierfür jemand eine Lösung?
Zitat von: OdfFhem am 24 Januar 2019, 09:35:36
@chris1284
Besteht die Aussicht auf ein Reading, das anzeigt, wann die CALVIEW zuletzt aktualisiert wurde?
Quasi ein Reading, dessen Wert selbst ein Zeitstempel ist.
Ich würde gerne dieses EINE Reading als Trigger verwenden, um auf Änderungen "aufmerksam" gemacht zu werden - statt der äußerst zahlreichen Einzelreadings.
Nimm doch den timestamp von state oder c-Term. Die werden immer mit geändert wenn die Aktualisierung lief.
Zitat von: obi am 18 Februar 2019, 18:06:10
Hallo, ich habe ein paar Problemchen :)
1. Die Sortierung bei Serienterminen funktioniert nicht richtig.
2. Ich habe 2 Kalender angebunden und diese werde auch nicht sortiert sondern hintereinander gehängt. Dies kann ja nicht Sinn der Sache sein im Calview mehrere Kalender hinzuzufügen wenn die Einträge von diesen nicht sortiert werden.
defmod SY_ViewKalender CALVIEW SY_KalenderAbfall1,SY_Kalender2 2 1800
attr SY_ViewKalender maxreadings 20
attr SY_ViewKalender modes next
Hat hierfür jemand eine Lösung?
Ohne mehr Input nicht. Die Termine sind interessant wenn es um deren Sortierung geht ( die mit standardkonformen Kalenden und Termine sauber funktioniert). Ein List des calview devices wäre interessant zu sehen
Hallo, nach einen Fhem update bekomme ich folgende Meldung im Log und keine Daten mehr im Kalender:
Zitat2019.02.24 16:37:01 1: Calendar Kalender: retrieval failed with HTTP response code 400
2019.02.24 16:37:01 1: Calendar Kalender: retrieved no or empty data
libio-socket-ssl-perl
ist installiert.
Mein DEF beginnt mit
ical url https://calendar.google.com/calendar/
Kann mir bitte jemand helfen?
Danke und Grüße, Michael
Erst ins Forum schauen, lesen und dann fragen - wenn es wirklich noch notwendig ist.
https://forum.fhem.de/index.php/topic,97810.0.html
Ausserdem hat Dein Problem überhaupt nichts mit CALVIEW zu tun.
sorry, habe ich nicht richtig gesehen.
tut mir leid.
Sorry - bei mir werden grundsätzlich keine Signaturen angezeigt, deshalb kannte ich Deinen dortigen Hinweis nicht.
Entweder
- Du nimmst das Calendar-Modul von gestern per restore
- Du wartest einfach bis zum Update morgen früh
- Du verwendest die Datei von diesem Link https://svn.fhem.de/trac/export/HEAD/trunk/fhem/FHEM/57_Calendar.pm
Alles gut, habe mir die .pm aus . dem SVN geladen.
Restore geht bei mir nicht mehr. (komisch, aber muss ich mal forschen)
Danke dir 1000 mal.
Jetzt geht alles wieder.
Lg, Michael
Hallo,
ich habe seit etwa vier Tagen ein Problem mit GCALVIEW. Bis gerade habe ich weder an FHEM (Update erst gerade gemacht, ohne Änderung) 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. Worüber stolpert das Modul jetzt?
Gruß
Christian
@cbl
Eine zielführende Antwort gibt's vermutlich eher in https://forum.fhem.de/index.php/topic,77502.0.html (https://forum.fhem.de/index.php/topic,77502.0.html)
Hallo,
ich habe hier nun ein paar Infos für mein Problem (bei mehreren Kalender werden die Termine in einer falschen Reihenfolge angezeigt).
Ich habe z. B. den Feiertagskalender von hier verwendet: https://www.schulferien.org/deutschland/ical/download/?tbid=46&j=2019&t=1 (https://www.schulferien.org/deutschland/ical/download/?tbid=46&j=2019&t=1)
Ein get events des Kalenders liefert alles richtig:
19.04.2019 00:00 24h Karfreitag
22.04.2019 00:00 24h Ostermontag
01.05.2019 00:00 24h Tag der Arbeit
30.05.2019 00:00 24h Christi Himmelfahrt
10.06.2019 00:00 24h Pfingstmontag
20.06.2019 00:00 24h Fronleichnam
03.10.2019 00:00 24h Tag der Deutschen Einheit
01.11.2019 00:00 24h Allerheiligen
25.12.2019 00:00 24h 1. Weihnachtsfeiertag
26.12.2019 00:00 24h 2. Weihnachtsfeiertag
Die Termine an sich sind aber nicht richtig sortiert.
Calendar:
nternals:
DEF ical url http://127.0.0.1:8083/fhem/data/SY_KalenderFeiertage.ics 21600
FUUID 5c7c2c3a-f33f-9281-8768-b4b3b677ba67a441
NAME SY_KalenderFeiertage
NOTIFYDEV global
NR 548
NTFY_ORDER 50-SY_KalenderFeiertage
STATE triggered
TYPE Calendar
READINGS:
2019-03-03 20:34:19 calname Neißestraße\, Neuss (Norf) [Mein-Abfallkalender.de]
2019-03-20 21:39:34 lastUpdate 2019-03-20 21:39:33
2019-03-03 20:34:19 modeAlarm
2019-03-03 20:34:19 modeAlarmOrStart
2019-03-03 20:34:19 modeAlarmed
2019-03-03 20:34:19 modeChanged
2019-03-03 20:34:30 modeEnd FT_2019_feiertag5c7b39d391811schulferienorg
2019-03-03 20:34:19 modeEnded
2019-03-03 20:34:19 modeStart
2019-03-03 20:34:19 modeStarted
2019-03-20 21:39:34 modeUpcoming FT_2019_feiertag5c7b39d394395schulferienorg;FT_2019_feiertag5c7b39d399de3schulferienorg;FT_2019_feiertag5c7b39d396716schulferienorg;FT_2019_feiertag5c7b39d3994deschulferienorg;FT_2019_feiertag5c7b39d39892cschulferienorg;FT_2019_feiertag5c7b39d3950a3schulferienorg;FT_2019_feiertag5c7b39d391b11schulferienorg;FT_2019_feiertag5c7b39d395fc5schulferienorg;FT_2019_feiertag5c7b39d399206schulferienorg;FT_2019_feiertag5c7b39d397709schulferienorg
2019-03-20 21:39:34 nextUpdate 2019-03-21 03:39:33
2019-03-20 21:39:34 nextWakeup 2019-03-21 03:39:33
2019-03-20 21:39:34 state triggered
helper:
bm:
Calendar_Get:
cnt 28
dmx -1000
dtot 0
dtotcnt 0
mTS 20.03. 06:19:47
max 0.00185108184814453
tot 0.0325570106506348
mAr:
HASH(0x55683d89bad8)
-
events
format:custom='$U|$T1|$T2|$S|$L|$DS|$CA|$d'
Calendar_Notify:
cnt 1057
dmx -1000
dtot 0
dtotcnt 0
mTS 20.03. 13:45:21
max 0.0018458366394043
tot 0.210391283035278
mAr:
HASH(0x55683d89bad8)
HASH(0x556836dfe9a8)
Calendar_Set:
cnt 25
dmx -1000
dtot 0
dtotcnt 0
mTS 20.03. 21:38:37
max 0.000885009765625
tot 0.00120139122009277
mAr:
HASH(0x55683d89bad8)
SY_KalenderFeiertage
reload
Attributes:
comment URL der Quelldaten: https://www.schulferien.org/deutschland/ical/
hideOlderThan 1d
Calview:
nternals:
DEF SY_KalenderFeiertage 2 21600
FUUID 5c7c2cb8-f33f-9281-69d0-0eb05dbaca4ed16d
INTERVAL 21600
KALENDER SY_KalenderFeiertage
NAME SY_ViewKalenderFeiertage
NR 549
NTFY_ORDER 50-SY_ViewKalenderFeiertage
STATE t: 10 td: 0 tm: 0
TYPE CALVIEW
READINGS:
2019-03-20 21:39:34 c-term 10
2019-03-20 21:39:34 c-today 0
2019-03-20 21:39:34 c-tomorrow 0
2019-03-20 21:39:34 state t: 10 td: 0 tm: 0
2019-03-20 21:39:34 t_001_bdate 19.04.2019
2019-03-20 21:39:34 t_001_btime 00:00
2019-03-20 21:39:34 t_001_categories
2019-03-20 21:39:34 t_001_daysleft 30
2019-03-20 21:39:34 t_001_daysleftLong in 30 Tagen
2019-03-20 21:39:34 t_001_description Alle Termine auf www.schulferien.org
2019-03-20 21:39:34 t_001_duration ganztägig
2019-03-20 21:39:34 t_001_edate 20.04.2019
2019-03-20 21:39:34 t_001_etime 00:00
2019-03-20 21:39:34 t_001_location
2019-03-20 21:39:34 t_001_mode next
2019-03-20 21:39:34 t_001_source SY_KalenderFeiertage
2019-03-20 21:39:34 t_001_sourcecolor white
2019-03-20 21:39:34 t_001_summary Karfreitag
2019-03-20 21:39:34 t_001_timeshort ganztägig
2019-03-20 21:39:34 t_001_weekday 5
2019-03-20 21:39:34 t_001_weekdayname Freitag
2019-03-20 21:39:34 t_002_bdate 22.04.2019
2019-03-20 21:39:34 t_002_btime 00:00
2019-03-20 21:39:34 t_002_categories
2019-03-20 21:39:34 t_002_daysleft 33
2019-03-20 21:39:34 t_002_daysleftLong in 33 Tagen
2019-03-20 21:39:34 t_002_description Alle Termine auf www.schulferien.org
2019-03-20 21:39:34 t_002_duration ganztägig
2019-03-20 21:39:34 t_002_edate 23.04.2019
2019-03-20 21:39:34 t_002_etime 00:00
2019-03-20 21:39:34 t_002_location
2019-03-20 21:39:34 t_002_mode next
2019-03-20 21:39:34 t_002_source SY_KalenderFeiertage
2019-03-20 21:39:34 t_002_sourcecolor white
2019-03-20 21:39:34 t_002_summary Ostermontag
2019-03-20 21:39:34 t_002_timeshort ganztägig
2019-03-20 21:39:34 t_002_weekday 1
2019-03-20 21:39:34 t_002_weekdayname Montag
2019-03-20 21:39:34 t_003_bdate 30.05.2019
2019-03-20 21:39:34 t_003_btime 00:00
2019-03-20 21:39:34 t_003_categories
2019-03-20 21:39:34 t_003_daysleft 71
2019-03-20 21:39:34 t_003_daysleftLong in 71 Tagen
2019-03-20 21:39:34 t_003_description Alle Termine auf www.schulferien.org
2019-03-20 21:39:34 t_003_duration ganztägig
2019-03-20 21:39:34 t_003_edate 31.05.2019
2019-03-20 21:39:34 t_003_etime 00:00
2019-03-20 21:39:34 t_003_location
2019-03-20 21:39:34 t_003_mode next
2019-03-20 21:39:34 t_003_source SY_KalenderFeiertage
2019-03-20 21:39:34 t_003_sourcecolor white
2019-03-20 21:39:34 t_003_summary Christi Himmelfahrt
2019-03-20 21:39:34 t_003_timeshort ganztägig
2019-03-20 21:39:34 t_003_weekday 4
2019-03-20 21:39:34 t_003_weekdayname Donnerstag
2019-03-20 21:39:34 t_004_bdate 20.06.2019
2019-03-20 21:39:34 t_004_btime 00:00
2019-03-20 21:39:34 t_004_categories
2019-03-20 21:39:34 t_004_daysleft 92
2019-03-20 21:39:34 t_004_daysleftLong in 92 Tagen
2019-03-20 21:39:34 t_004_description Alle Termine auf www.schulferien.org
2019-03-20 21:39:34 t_004_duration ganztägig
2019-03-20 21:39:34 t_004_edate 21.06.2019
2019-03-20 21:39:34 t_004_etime 00:00
2019-03-20 21:39:34 t_004_location
2019-03-20 21:39:34 t_004_mode next
2019-03-20 21:39:34 t_004_source SY_KalenderFeiertage
2019-03-20 21:39:34 t_004_sourcecolor white
2019-03-20 21:39:34 t_004_summary Fronleichnam
2019-03-20 21:39:34 t_004_timeshort ganztägig
2019-03-20 21:39:34 t_004_weekday 4
2019-03-20 21:39:34 t_004_weekdayname Donnerstag
2019-03-20 21:39:34 t_005_bdate 25.12.2019
2019-03-20 21:39:34 t_005_btime 00:00
2019-03-20 21:39:34 t_005_categories
2019-03-20 21:39:34 t_005_daysleft 280
2019-03-20 21:39:34 t_005_daysleftLong in 280 Tagen
2019-03-20 21:39:34 t_005_description Alle Termine auf www.schulferien.org
2019-03-20 21:39:34 t_005_duration ganztägig
2019-03-20 21:39:34 t_005_edate 26.12.2019
2019-03-20 21:39:34 t_005_etime 00:00
2019-03-20 21:39:34 t_005_location
2019-03-20 21:39:34 t_005_mode next
2019-03-20 21:39:34 t_005_source SY_KalenderFeiertage
2019-03-20 21:39:34 t_005_sourcecolor white
2019-03-20 21:39:34 t_005_summary 1. Weihnachtsfeiertag
2019-03-20 21:39:34 t_005_timeshort ganztägig
2019-03-20 21:39:34 t_005_weekday 3
2019-03-20 21:39:34 t_005_weekdayname Mittwoch
2019-03-20 21:39:34 t_006_bdate 26.12.2019
2019-03-20 21:39:34 t_006_btime 00:00
2019-03-20 21:39:34 t_006_categories
2019-03-20 21:39:34 t_006_daysleft 281
2019-03-20 21:39:34 t_006_daysleftLong in 281 Tagen
2019-03-20 21:39:34 t_006_description Alle Termine auf www.schulferien.org
2019-03-20 21:39:34 t_006_duration ganztägig
2019-03-20 21:39:34 t_006_edate 27.12.2019
2019-03-20 21:39:34 t_006_etime 00:00
2019-03-20 21:39:34 t_006_location
2019-03-20 21:39:34 t_006_mode next
2019-03-20 21:39:34 t_006_source SY_KalenderFeiertage
2019-03-20 21:39:34 t_006_sourcecolor white
2019-03-20 21:39:34 t_006_summary 2. Weihnachtsfeiertag
2019-03-20 21:39:34 t_006_timeshort ganztägig
2019-03-20 21:39:34 t_006_weekday 4
2019-03-20 21:39:34 t_006_weekdayname Donnerstag
2019-03-20 21:39:34 t_007_bdate 01.05.2019
2019-03-20 21:39:34 t_007_btime 00:00
2019-03-20 21:39:34 t_007_categories
2019-03-20 21:39:34 t_007_daysleft 42
2019-03-20 21:39:34 t_007_daysleftLong in 42 Tagen
2019-03-20 21:39:34 t_007_description Alle Termine auf www.schulferien.org
2019-03-20 21:39:34 t_007_duration ganztägig
2019-03-20 21:39:34 t_007_edate 02.05.2019
2019-03-20 21:39:34 t_007_etime 00:00
2019-03-20 21:39:34 t_007_location
2019-03-20 21:39:34 t_007_mode next
2019-03-20 21:39:34 t_007_source SY_KalenderFeiertage
2019-03-20 21:39:34 t_007_sourcecolor white
2019-03-20 21:39:34 t_007_summary Tag der Arbeit
2019-03-20 21:39:34 t_007_timeshort ganztägig
2019-03-20 21:39:34 t_007_weekday 3
2019-03-20 21:39:34 t_007_weekdayname Mittwoch
2019-03-20 21:39:34 t_008_bdate 01.11.2019
2019-03-20 21:39:34 t_008_btime 00:00
2019-03-20 21:39:34 t_008_categories
2019-03-20 21:39:34 t_008_daysleft 226
2019-03-20 21:39:34 t_008_daysleftLong in 226 Tagen
2019-03-20 21:39:34 t_008_description Alle Termine auf www.schulferien.org
2019-03-20 21:39:34 t_008_duration ganztägig
2019-03-20 21:39:34 t_008_edate 02.11.2019
2019-03-20 21:39:34 t_008_etime 00:00
2019-03-20 21:39:34 t_008_location
2019-03-20 21:39:34 t_008_mode next
2019-03-20 21:39:34 t_008_source SY_KalenderFeiertage
2019-03-20 21:39:34 t_008_sourcecolor white
2019-03-20 21:39:34 t_008_summary Allerheiligen
2019-03-20 21:39:34 t_008_timeshort ganztägig
2019-03-20 21:39:34 t_008_weekday 5
2019-03-20 21:39:34 t_008_weekdayname Freitag
2019-03-20 21:39:34 t_009_bdate 03.10.2019
2019-03-20 21:39:34 t_009_btime 00:00
2019-03-20 21:39:34 t_009_categories
2019-03-20 21:39:34 t_009_daysleft 197
2019-03-20 21:39:34 t_009_daysleftLong in 197 Tagen
2019-03-20 21:39:34 t_009_description Alle Termine auf www.schulferien.org
2019-03-20 21:39:34 t_009_duration ganztägig
2019-03-20 21:39:34 t_009_edate 04.10.2019
2019-03-20 21:39:34 t_009_etime 00:00
2019-03-20 21:39:34 t_009_location
2019-03-20 21:39:34 t_009_mode next
2019-03-20 21:39:34 t_009_source SY_KalenderFeiertage
2019-03-20 21:39:34 t_009_sourcecolor white
2019-03-20 21:39:34 t_009_summary Tag der Deutschen Einheit
2019-03-20 21:39:34 t_009_timeshort ganztägig
2019-03-20 21:39:34 t_009_weekday 4
2019-03-20 21:39:34 t_009_weekdayname Donnerstag
2019-03-20 21:39:34 t_010_bdate 10.06.2019
2019-03-20 21:39:34 t_010_btime 00:00
2019-03-20 21:39:34 t_010_categories
2019-03-20 21:39:34 t_010_daysleft 82
2019-03-20 21:39:34 t_010_daysleftLong in 82 Tagen
2019-03-20 21:39:34 t_010_description Alle Termine auf www.schulferien.org
2019-03-20 21:39:34 t_010_duration ganztägig
2019-03-20 21:39:34 t_010_edate 11.06.2019
2019-03-20 21:39:34 t_010_etime 00:00
2019-03-20 21:39:34 t_010_location
2019-03-20 21:39:34 t_010_mode next
2019-03-20 21:39:34 t_010_source SY_KalenderFeiertage
2019-03-20 21:39:34 t_010_sourcecolor white
2019-03-20 21:39:34 t_010_summary Pfingstmontag
2019-03-20 21:39:34 t_010_timeshort ganztägig
2019-03-20 21:39:34 t_010_weekday 1
2019-03-20 21:39:34 t_010_weekdayname Montag
helper:
bm:
CALVIEW_Notify:
cnt 1563731
dmx -1000
dtot 0
dtotcnt 0
mTS 20.03. 21:38:39
max 0.0695528984069824
tot 23.5105941295624
mAr:
HASH(0x55683d89c210)
HASH(0x55683d89bad8)
CALVIEW_Set:
cnt 33
dmx -1000
dtot 0
dtotcnt 0
mTS 20.03. 21:22:17
max 0.0655810832977295
tot 0.130854368209839
mAr:
HASH(0x55683d89c210)
SY_ViewKalenderFeiertage
update
Attributes:
maxreadings 20
modes next
Von der Logik her müssten die Termine doch nach Datum sortiert werden?
Kann hier jemand weiterhelfen?
Zitat von: obi am 20 März 2019, 21:52:32
Von der Logik her müssten die Termine doch nach Datum sortiert werden?
Kann hier jemand weiterhelfen?
stell mir mal die ical zur Verfügung
Zitat
2019-03-20 21:39:34 t_001_bdate 19.04.2019
2019-03-20 21:39:34 t_002_bdate 22.04.2019
2019-03-20 21:39:34 t_003_bdate 30.05.2019
2019-03-20 21:39:34 t_004_bdate 20.06.2019
2019-03-20 21:39:34 t_005_bdate 25.12.2019
2019-03-20 21:39:34 t_006_bdate 26.12.2019
2019-03-20 21:39:34 t_007_bdate 01.05.2019
2019-03-20 21:39:34 t_008_bdate 01.11.2019
2019-03-20 21:39:34 t_009_bdate 03.10.2019
2019-03-20 21:39:34 t_010_bdate 10.06.2019
da scheint in der Tat was nicht so ganz zu passen
Hallo Chris,
hier ist die ICAL. Das komische ist, dass ich gestern mal ein Update von Fhem gemacht habe und nun alles stimmt. Das gleiche hatte ich schon einmal bin mir aber nicht mehr ganz sicher. Nach einem Update von Fhem war es erst wieder richtig und dann wa der Fehler plötzlich wieder da.
Ich muss das mal nochmal weiter beobachten.
Irgendwas übersehe ich gerade.
Meine Readings beinhalten jede Menge t_001, today_001.
Keinerlei t_002 und so weiter.
Aktuell ist die 57_CALVIEW.pm, habe die extra per update solo auf Vordermann gebracht.
Wo stelle ich das bitte ein?
Im File:
BEGIN:VCALENDAR
PRODID:-+//Kalender
VERSION:2.0
METHOD:PUBLISH
X-WR-CALNAME:Geburtstagskalender
BEGIN:VEVENT
CATEGORIES:Geburtstagskalender
CLASS:PUBLIC
DTSTART;VALUE=DATE:20190413000000
DTEND;VALUE=DATE:20190413235959
SUMMARY:U
UID:20190413
END:VEVENT
BEGIN:VEVENT
CATEGORIES:Geburtstagskalender
CLASS:PUBLIC
DTSTART;VALUE=DATE:20190415000000
DTEND;VALUE=DATE:20190415235959
SUMMARY:K
UID:20190415
END:VEVENT
END:VCALENDAR
@Neuhier
Vermutlich hilft das hideLaterThan-Attribut im Calendar-Device bzw. das maxreadings-Attribut im CALVIEW-Device.
Ohne list der beiden Devices aber nur geraten ...
Kalender
READINGS:
2019-04-14 09:32:53 calname Geburtstagskalender
2019-04-14 09:32:53 lastUpdate 2019-04-14 09:32:52
2019-04-12 22:27:49 modeAlarm
2019-04-13 22:20:47 modeAlarmOrStart 20190413
2019-04-12 22:27:49 modeAlarmed
2019-04-12 22:27:49 modeChanged
2019-04-14 09:32:53 modeEnd 20190327;20190202;20190216;20190226;20190322
2019-04-12 22:27:49 modeEnded
2019-04-13 22:20:47 modeStart 20190413
2019-04-12 22:27:49 modeStarted
2019-04-14 09:32:53 modeUpcoming 20190620;20191206;20190427;20190515;20191228;20190501
2019-04-14 09:32:53 nextUpdate 2019-04-14 21:32:52
2019-04-14 09:32:53 nextWakeup 2019-04-14 12:35:09
2019-04-14 09:32:53 state triggered
Attributes:
hideLaterThan 30
hideOlderThan 1
oldreadings 1
room Kalender
update async
CALVIEW
INTERVAL 43200
KALENDER Birthday
NAME ViewAll
NR 297
NTFY_ORDER 50-ViewAll
STATE t: 1 td: 0 tm: 0
TYPE CALVIEW
READINGS:
2019-04-14 09:32:53 c-term 1
2019-04-14 09:32:53 c-today 0
2019-04-14 09:32:53 c-tomorrow 0
2019-04-14 09:32:53 state t: 1 td: 0 tm: 0
2019-04-14 09:32:53 t_001_bdate 13.04.2019
2019-04-14 09:32:53 t_001_btime 00:00
2019-04-14 09:32:53 t_001_categories Geburtstagskalender 2019
2019-04-14 09:32:53 t_001_daysleft -1
2019-04-14 09:32:53 t_001_daysleftLong in -1 Tagen
2019-04-14 09:32:53 t_001_description
2019-04-14 09:32:53 t_001_duration 131709
2019-04-14 09:32:53 t_001_edate 14.04.2019
2019-04-14 09:32:53 t_001_etime 12:35
2019-04-14 09:32:53 t_001_location
2019-04-14 09:32:53 t_001_mode next
2019-04-14 09:32:53 t_001_source Birthday
2019-04-14 09:32:53 t_001_sourcecolor white
2019-04-14 09:32:53 t_001_summary Uwe
2019-04-14 09:32:53 t_001_timeshort 00:00 - 12:35
2019-04-14 09:32:53 t_001_weekday 6
2019-04-14 09:32:53 t_001_weekdayname Samstag
Attributes:
maxreadings 5
oldreadings 1
room Kalender
weekdayformat de-long
Der von gestern müßte ja raus sein und der morgen drin.
@Neuhier
Zwei Dinge fallen auf:
Die Angaben bei DTSTART und DTEND haben nicht das erwartetete Format (<date>T<time>). Statt z.B. 20190415000000 müsste hier 20190415T000000 verwendet werden.
Das Calendar-Attribut hideLaterThan hat wohl eine falsche Zeitangabe; die verwendete bedeutet 30 Sekunden; vermutlich sollte hier eher etwas wie 30d - was 30 Tagen entspricht - angegeben werden
Mit den beiden Änderungen sollte es funktionieren ...
Ok, im Kalender das "T" dazwischensetzen.
Oder Zeitangabe komplett weglassen, sind ja ganztägige Termine.
Das mit dem "d" habe ich glatt überlesen. :-[
Aber es geht jetzt.
Danke ! :)
Hinweis auf PERL WARNING @chris1284 .
Mein System bzgl FHEM ist aktuell. Beim Neustart schaute ich mal, wer so alles rumnörgelt.
2019.05.06 17:38:37 1: PERL WARNING: Argument "" isn't numeric in numeric eq (==) at ./FHEM/57_CALVIEW.pm line 226.
Hoffe geholfen zu haben.
@OdfFhem
Ich fuhr gerade ein FHEM-Update. Und staunte nicht schlecht: calview kommt ganz unerwartet in quietschebunten (unlesbaren) Farben daher.
Falls Du das selbst nicht nachvollziehen kannst, liefere ich gern meinen FTUI-Eintrag sowie weitere notwendige Informationen.
@curt
Ich kann dies nicht direkt nachvollziehen.
Ich könnte aber vermuten, dass es vielleicht an den sourcecolor-Readings liegt. In der neuen Fassung reicht es aus, data-sourcecolor auf yes zu setzen; die zusätzliche Angabe der sourcecolor-Spalte ist nicht mehr notwendig. In diesem Fall sollte das Löschen oder das no-Setzen des data-sourcecolor-Attributes reichen.
Sollte es das nicht sein, bitte die HTML-Definition des calview-Widgets bereitstellen ...
@OdfFhem
Zitat von: OdfFhem am 27 Mai 2019, 07:12:19
Ich kann dies nicht direkt nachvollziehen.
Ok.
Zitat von: OdfFhem am 27 Mai 2019, 07:12:19
Ich könnte aber vermuten, dass es vielleicht an den sourcecolor-Readings liegt. In der neuen Fassung reicht es aus, data-sourcecolor auf yes zu setzen
Das ist schon auf "yes" - seit langem:
<li data-row="4" data-col="5" data-sizex="3" data-sizey="2">
<!-- https://forum.fhem.de/index.php?topic=91903.new;topicseen#new #15 -->
<div data-type="calview"
data-device="myCalView"
data-get="all"
data-max="5"
data-detail='["bdate","weekdayname","summary","age"]'
data-detailwidth='["22","18","60","10"]'
data-showempty="true"
data-onelinesum="yes"
data-sourcecolor="yes"
data-dateformat="short"
data-timeformat="short"
data-dayname="yes"
data-oneline="yes"
data-class='left-align'
>
</div>
</li>
Rein zur Sicherheit: Das Modul wird über den normalen Update-Zyklus von FHEM ausgeliefert? (Seit meinem Update vor ca 8 Stunden geht Dein Modul schief)
Oder hast Du da ein "aber-mal-andere-Modul-Version-aus-dem-Forum-laden" am Start?
@curt
Zitat
In diesem Fall sollte das Löschen oder das no-Setzen des data-sourcecolor-Attributes reichen.
Am Besten einfach das sourcecolor-Attribut löschen ...
Das Modul wird über das offizielle FTUI-Update ausgeliefert.
Zitat von: OdfFhem am 27 Mai 2019, 07:40:21
Am Besten einfach das sourcecolor-Attribut löschen ...
Done.
Jetzt sieht das wieder schick aus.
Danke!
Hallo,
ich bin neu hier und versuche so gut es geht ein eigenes Tablet-UI zu erstellen. Bei der Formatierung der Kalendereinträge habe ich eine Frage:
Gibt es eine Möglichkeit die Spalten unterschiedlich zu formatieren (eine linksbündig, eine rechtsbündig, die beiden innenliegenden inline)?
Danke.
@dewosch
Bislang (leider) nicht.
Schade. Trotzdem ein großes Dankeschön. Man fühlt sich wohl hier im Forum.
Dewosch
Ich habe bei mir folgendes im Log stehen:
2019.09.11 10:22:08.057 1: PERL WARNING: Argument "" isn't numeric in numeric eq (==) at ./FHEM/57_CALVIEW.pm line 226.
2019.09.11 10:22:08.057 1: stacktrace:
2019.09.11 10:22:08.057 1: main::__ANON__ called by ./FHEM/57_CALVIEW.pm (226)
2019.09.11 10:22:08.057 1: main::CALVIEW_GetUpdate called by fhem.pl (3295)
2019.09.11 10:22:08.057 1: main::HandleTimeout called by fhem.pl (673)
Gibt es hierfür eine Lösung?
Zitat von: michael.winkler am 11 September 2019, 12:15:20
Gibt es hierfür eine Lösung?
Ja, einfach die Suche bemühen und den Termin korrigieren
Zitat von: chris1284 am 12 September 2019, 05:51:40
Ja, einfach die Suche bemühen und den Termin korrigieren
Ich bin der Meinung dass das Modul solche Fehler erkennen sollte und damit dann umgehen kann. In meinem Fall handelt es sich ja nicht um manuell editierte Datei oder Ähnliches. Alle Termine wurden entweder über den Googlekalender eingetragen, oder über Outlook.
Es sollte doch für den Modulentwickler ein einfaches sein so einen Fehler anzufangen, und eventuell ein Reading mit dem entsprechendem (angeblichen defekten) Termin erzeugen.
Zitat von: michael.winkler am 12 September 2019, 10:00:11
Es sollte doch für den Modulentwickler ein einfaches sein so einen Fehler anzufangen, und eventuell ein Reading mit dem entsprechendem (angeblichen defekten) Termin erzeugen.
Auf Grund der wenigen Meldungen (1-3 im Jahr? gefühlt), keiner Funktionseinschränkung und meiner wenigen Zeit ist die Prio dafür sehr sehr gering....
Zitat von: chris1284 am 27 September 2019, 08:02:39
Auf Grund der wenigen Meldungen (1-3 im Jahr? gefühlt), keiner Funktionseinschränkung und meiner wenigen Zeit ist die Prio dafür sehr sehr gering....
Mein Log füllt sich immer noch mit der Fehlermeldung.
Wenn Du in das offiziellen Modul in die Zeile 225 folgendes einträgst, sollte die Meldung weg sein. Vielleicht hast Du ja dafür kurz Zeit.
$termin->{duration} = 0 if ($termin->{duration} eq "");
Moin,
erstmal danke für das Modul, habe jetzt meine beruflichen Termine mit ins FTUi eingebunden.
Meine Frage lautet, hat jemand schonmal versucht die Zeile komplett zu unterstreichen, damit es lesbarer wird?
@Kuehnhackel
Anmerkung: FTUI-Fragen gehören eigentlich in den FTUI-Forenbereich; das erhöht das "Antwort-Risiko" enorm ...
Vermutung: Du nutzt kein calview-Widget ... oder etwa doch ...
Mit calview-Widget könnte man die benutzereigene css-Datei folgendermaßen ergänzen:
.calview-row {
border-bottom-style: solid;
border-bottom-width: 2px;
}
Ohne calview-Widget kann man die reinen css-Angaben an geeigneter Stelle im style-Attribut unterbringen ...
Die angehängten Screenshots zeigen exemplarisch die Auswirkungen ...
Zitat von: OdfFhem am 13 Januar 2020, 06:56:01
@Kuehnhackel
Anmerkung: FTUI-Fragen gehören eigentlich in den FTUI-Forenbereich; das erhöht das "Antwort-Risiko" enorm ...
Vermutung: Du nutzt kein calview-Widget ... oder etwa doch ...
Mit calview-Widget könnte man die benutzereigene css-Datei folgendermaßen ergänzen:
.calview-row {
border-bottom-style: solid;
border-bottom-width: 2px;
}
Ohne calview-Widget kann man die reinen css-Angaben an geeigneter Stelle im style-Attribut unterbringen ...
Die angehängten Screenshots zeigen exemplarisch die Auswirkungen ...
Danke OldFhem,
habe jetzt auch das Calview-Widget im Wiki gefunden, danke für deinen Hinweis.
Vielen Dank der Tipp hat mir sehr geholfen.
Liebe Grüße
Ralf
Gibt es die Möglichkeit, das Reading 'duration' anders zu formatieren ?
In Sekunden ist das doch etwas schwierig zu lesen.
@Lichti
Das Reading selbst wird wohl eher nicht geändert.
Wenn Du eine andere Darstellung benötigst, hängt Deine Vorgehensweise vom verwendeten "Front-End" ab. Um eine Antwort zu finden, ist die Frage aber definitiv zu ungenau - dafür bräuchte man ein paar mehr Rahmeninformationen ...
Ich benutze zur Darstellung in das Widget calview in FTUI.
Ist zwar nicht so wichtig, aber es wäre schön, wenn man auch die Dauer anzeigen könnte.
In Sekunden schaut das allerdings nicht so gut aus.
@Lichti
Dann sollte Dein Problem lösbar sein: https://forum.fhem.de/index.php/topic,104498.0.html (https://forum.fhem.de/index.php/topic,104498.0.html)
Danke für den Hinweis. Werde ich mal testen.
Hab zwar viel gesucht, aber das hatte ich nicht gefunden.
Kann mir jemand erklären, wieso einige Einträge 01 und einige 02 heißen?
today_001_weekday 2
today_001_weekdayname Dienstag
today_002_daysleft 0
today_002_daysleftLong heute
Zitat von: Christian72D am 17 März 2020, 08:47:41
Kann mir jemand erklären, wieso einige Einträge 01 und einige 02 heißen?
today_001_weekday 2
today_001_weekdayname Dienstag
today_002_daysleft 0
today_002_daysleftLong heute
Würde mal darauf tippen, dass in deinem Kalender für heute zweit Einträge vorhanden sind ;-)
Gesendet von iPhone mit Tapatalk
Moin,
kommt -glaube ich-, wenn Du einen mehrtägigen Termin drin hast.
LG
Andreas
Zitat von: rischbiter123 am 17 März 2020, 14:09:03
kommt -glaube ich-, wenn Du einen mehrtägigen Termin drin hast.
Danke, dann muß ich umdisponieren. ;)