FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Kalendermodule => Thema gestartet von: DS_Starter am 03 Januar 2020, 09:54:09

Titel: 57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 03 Januar 2020, 09:54:09
Hallo miteinander,

da es mittlerweile eine von Synology zur Verfügung gestellte API für die Kalenderapplikation auf der DS gibt, dient dieses Modul zur Einbindung der Synology Kalender in FHEM.
Über die API ist es neben den normalen Lesefunktionalitäten auch möglich neue Einträge in den Kalendern zu erstellen bzw. Aufgaben zu erstellen. Diese Funktionalität ist allerdings zur Zeit noch nicht implementiert.
Die Kalendereinträge werden als Klartext zur Verfügung gestellt und werden dementsprechend in SSCal in sofort lesbaren Readings abgebildet.

Es werden sowohl Terminkalender als auch Aufgaben abgerufen/verarbeitet.

Der Wiki-Eintrag zu diesem Modul befindet sich hier: https://wiki.fhem.de/wiki/SSCal_-_Integration_des_Synology_Calendar_Servers

Das Modul ist im FHEM Repository enthalten und wird über den Standardkanal upgedated.

Aktuelle Entwicklungsversionen können aus meinem contrib-Verzeichnis bezogen werden.

Download:

"wget -qO ./FHEM/57_SSCal.pm https://svn.fhem.de/fhem/trunk/fhem/contrib/DS_Starter/57_SSCal.pm"


Danach Restart FHEM wie üblich.



Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: sliderffm am 04 Januar 2020, 11:56:23
Hallo Heiko,

also ich hätte auf jeden Fall Interesse an dem Modul!  :)


Gruß
Andreas
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: coolcat am 04 Januar 2020, 12:25:19
Hi,
Ja cool, weg vom Google Kalender
Viel Interesse 👍
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 04 Januar 2020, 12:37:26
Ok, ich sehe der Aufwand ist durchaus von Allgemeinen Interesse.  :)
Ich sehe zu den aktuellen Stand schonmal im Wiki zu dokumentieren. Es sind auf jeden Fall noch ein paar Hürden zu überwinden. Aber das ist nur eine Frage der Zeit ..

Ich melde mich hier wieder.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 19 Januar 2020, 15:37:51
Hallo miteinander,

hat nun doch etwas länger gedauert als gedacht, aber nun steht die Beta-Version bereit.
Sie funktioniert bei mir einwandfrei und ich hoffe natürlich bei euch ebenfalls.

Im Wiki habe ich auf der Seite:
https://wiki.fhem.de/wiki/SSCal_-_Integration_des_Synology_Calendar_Servers

den gegewärtigen Stand inklusive Definition und allen wissenswerten Dingen beschrieben.

Zur Zeit sind die Terminkalender integriert, die Aufgaben kommen noch später. Aber erstmal das soweit.

Download aus meinem contrib:


"wget -qO ./FHEM/57_SSCal.pm https://svn.fhem.de/fhem/trunk/fhem/contrib/DS_Starter/57_SSCal.pm"


Danach Restart FHEM wie üblich.

Über Testergebnisse freue ich mich wie immer.

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: sliderffm am 20 Januar 2020, 00:14:17
Hallo Heiko,

vielen dank für das Modul zum testen.  :)

Ich habe das Modul wie beschrieben runtergeladen und fhem neu gestartet.
Versuche ich die Definition eines Synology Kalenderdevices anzulegen, erhalte ich folgende Fehlermeldung und der fhem-Prozess wird beendet.

Undefined subroutine &main::SSChatBot_getclhash called at ./FHEM/57_SSCal.pm line 506.

Den Kalender habe ich dabei mit folgenden Befehl versucht anzulegen, mein https Port der Syno ist auf 15001 konfiguriert:

define SynCalSlider SSCal <IPAdresseDerSyno> 15001 https


Viele Grüße
Andreas
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: carlos am 20 Januar 2020, 02:06:10
Hallo
Bei mir das Gleiche, da ist wohl noch zu viel vom SSChatBot mit drin.
eine Änderung von SSChatBot_getclhash  in SSCal_getclhash hilft.
Dann funktionierts.

Gruß

Carlos
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 20 Januar 2020, 07:32:53
Guten Morgen,

ja sorry, da war noch ein Cut&Paste Fehler drin.  Denke es war die einzigste Stelle ;)
Habe es korrigiert und wieder ins contrib geladen.

Güße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: devo am 20 Januar 2020, 14:40:58
Hallo DS-Starter,

vielen Dank für dieses Modul. Ich habe es gerade installiert und getestet. Nachdem ich auf der Synology das Calendermodul installiert habe, die Zugangsdaten, wie beschrieben, eingerichtet habe ließ sich das Modul problemlos installieren. Mit set <name> calEventList lassen sich die Kalendereinträge abrufen. Bin sehr gespannt auf die weitere Entwicklung von SSCal.

Detlev
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: sliderffm am 20 Januar 2020, 19:13:10
Hallo  Heiko,

bei mir klappt leider die Authentifizierung nicht, entweder habe ich noch etwas auf der Syno falsch eingestellt ODER
es liegt an meinem Kennwort, welches Sonderzeichen beinhaltet wie Ausrufezeichen, Fragezeichen und ein Doppelpunkt.

Der Benutzer ist in der Gruppe administrators und ist auch für den Calendar zugelassen. Die Kalenderberechtigung ist auch
entsprechend gesetzt.

Im Logfile wird folgendes Protokolliert:
2020.01.20 19:02:11 4: SynCalSlider - --- Start Synology Calendar login ---
2020.01.20 19:02:11 4: SynCalSlider - credentials read from RAM: slider ********
2020.01.20 19:02:11 4: SynCalSlider - HTTP-Call login will be done with http timeout value: 60 s
2020.01.20 19:02:11 4: SynCalSlider - Call-Out now: https://192.168.10.3:15001/webapi/auth.cgi?api=SYNO.API.Auth&version=6&method=login&account=slider&passwd=*****&format=sid
2020.01.20 19:02:17 5: SynCalSlider - JSON decoded: {
  'error' => {
               'code' => 400
             },
  'success' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' )
}

2020.01.20 19:02:17 3: SynCalSlider - Login of User slider unsuccessful. Code: 400 - Invalid parameter of file operation - try again
2020.01.20 19:02:17 4: SynCalSlider - --- Start Synology Calendar login ---
2020.01.20 19:02:17 4: SynCalSlider - credentials read from RAM: slider ********
2020.01.20 19:02:17 2: SynCalSlider - ERROR - Login or privilege of user slider unsuccessful


Auf der Syno wird dabei folgendes Protokolliert:
User [slider] from [FHEM-IP-Adresse] failed to log in via [DSM] due to authorization failure


Mit den Sonderzeichen hatte ich auch schon einmal Probleme in diesem Thema hier:
https://forum.fhem.de/index.php/topic,106918.0.html


Gruß
Andreas
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 20 Januar 2020, 19:28:07
Hallo Andreas,

die Sonderzeichen werden es sein.
Ich passe das Modul an und melde mich wieder.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 20 Januar 2020, 20:08:31
Hallo Andreas,

so, bitte nochmal aus dem contrib ziehen.
Klappt jetzt auch mit einem solchen Passwort in meinem Test:  OC%uI5:!

Das Problem war das ":" darin.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: sliderffm am 21 Januar 2020, 00:24:03
Hallo Heiko,

viele Dank, das hast du ja ruckzuck gefixt :)

Die Authentifizierung funktioniert nun und auch die Kalender konnte ich dann entsprechend abrufen.

Allerdings erst nachdem ich die 2-Stufen Verifizierung ausgeschaltet hatte.
Ist diese eingeschaltet wird folgende Fehlermeldung protokolliert

Login of User <USERNAME> unsuccessful. Code: 406 - Cannot obtain user/group information from the account server - try again
ERROR - Login or privilege of user <USERNAME> unsuccessful


Wenn ich die API-Guide richtig verstehe, gibt es seit der DSM 4.2 die Möglichkeit folgendes bei dem API-Aufruf mitzugeben:
otp_code=123456&enable_device_token=yes

Ein Aufruf könnte eventl. dann so aussehen?!?
https://<SYNOIP>:<PORT>/webapi/auth.cgi?api=SYNO.API.Auth&version=6&method=login&account=<USERNAME>&passwd=<PASSWORT>&format=sid&otp_code=123456&enable_device_token=yes



Ohne der 2-Stufen Verifizierung kann man aber erstmal weiter testen.  ;)

Gruß
Andreas
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 21 Januar 2020, 00:38:17
ZitatWenn ich die API-Guide richtig verstehe, gibt es seit der DSM 4.2 die Möglichkeit folgendes bei dem API-Aufruf mitzugeben:
Ja, das hatte ich auch schon gesehen. Hatte nicht vermutet dass wir so schnell an diesen Punkt kommen.  :)

Dann werde ich diesen Teil mal als nächstes auf die Agenda von SSCal setzen ...

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 21 Januar 2020, 15:44:46
Hallo Andreas,

habe mir die API bezüglich otp_code angeschaut. Syno sagt es ist ein reservierter Key. DSM supportet (natürlich) 2-step Verifikation. Aber

ZitatHowever, WebAPI doesn't support it yet

Wahrscheinlich wird es erst später integriert. Da muss man sich wohl noch etwas gedulden.
Dann arbeite ich erstmal an den inhaltlichen Funktionalitäten weiter.

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 31 Januar 2020, 16:41:59
Hallo zusammen,

ich habe weiter am Modul gearbeitet.
Nun ist auch die Verarbeitung der Aufgaben mit integriert.

Dazu gibt es den set-Befehl calToDoList und neue Attribute filterCompleteTask und filterDueTask.

Download aus dem contrib wie im ersten Beitrag angegeben.
Das Wiki ist um die neuen Möglichkeiten ergänzt.

Gibt es eurerseits bereits erste Testergebnisse ?

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 01 Februar 2020, 14:52:48
Ich habe noch weitere Features eingebaut:

* set cleanCompleteTasks löscht alle als fertig gekennzeichneten Aufgaben der gewählten Aufgabenlisten
* set deleteEventId löscht die selektierte Event Id (Reading x_x_EventId) aus dem Kalender bzw. der Aufgabenliste. Eine Auswahl wird über eine Drop-Down Liste angeboten
* get apiInfo ruft die API-Infos neu vom Synology Calendar ab und zeigt diese Infos über ein Popup an.
* leere Readings werden vermieden

Das Wiki ist wieder entsprechend weitergeführt.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 02 Februar 2020, 21:04:13
Das Modul ist noch weiter gewachsen.
In der Detail- bzw. Raumansicht wird per default eine Kalenderübersicht mit den abgerufenen Terminen angezeigt.
Mit den Attributen calOverviewInRoom bzw. calOverviewInDetail kann man diese Sichten an/abschalten (0).

Außerdem gibt es den get-Befehl calAsHtml. Mit diesem Befehl öffnet sich ein Popup mit einer Termintabelle.
Habe zwei Bilder angehängt.

In eigenen Perl-Routinen (bzw. Einbindung in weblink) steht der Aufruf:

{ SSCal_calAsHtml ("<SSCal-Device>") }

zur Verfügung.

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: sliderffm am 02 Februar 2020, 22:21:58
Hallo Heiko,

Das freut mich, das es gewachsen ist.  :D

Ich habe es die ganze zeit am laufen und neue Termine werden im fhem korrekt angezeigt,
ich konnte bis jetzt keine Probleme beobachten. Geänderte oder gelöschte Termine werden
ebenfalls nach dem eingestellten Interval-Wert korrekt synchronisiert.

Den letzten Stand habe ich heute Abend bei mir installiert und die Aufgaben werde ich morgen genauer anschauen.


Gruß
Andreas
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 02 Februar 2020, 22:28:01
Freut mich Andreas, dass bis dato alles klappt.  :)
Ich weiß nicht wann du aktualisiert hast. Habe vllt. vor einer halben Stunde nochmal aktualisiert wegen einer kleinen Unschönheit. Evtl. nochmal ziehen und restarten.

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 03 Februar 2020, 17:42:12
Hallo miteinander,

ich habe ein Problem festgestellt, dass Aufgabenlisten nicht per Attribut interval aktualisiert werden konnten.
Das hängt mit unterschiedlichen API-Aufrufen zusammen, je nachdem ob man Terminkalender oder Aufgabenlisten automatisiert abrufen möchte.
Das Modul "weiß" ja nicht was man abrufen möchte.

Um das Problem zu beseitigen habe ich in der Definition einen zusätzlichen Parameter "Task" eingeführt, d.h. man definiert dadurch ein Aufgabenlisten-Device oder ein normales Terminkalenderdevice wenn man Task nicht hinzufügt wie bisher.

Hier ein paar Beispiele für Definitionen (stehen nun auch im Wiki):


define Appointments SSCal 192.168.2.10               # Terminkalender mit Adresse 192.168.2.10 und Standardport
define Calendar SSCal 192.168.2.10 5001 https        # Terminkalender mit HTTPS-Protokoll und entsprechendem Port
define Tasklist SSCAL ds.myds.org 5001 https Tasks   # Aufgabenliste mit HTTPS-Protokoll und entsprechendem Port


Der Devicetyp steht im Internal MODEL. Die verfügbaren Set werden entsprechend des MODEL abgeändert.

Weiterhin kann man nun mit dem Attribut calOverviewFields über eine Drop-Down Liste die in der generierten HTML-Tabelle (Raum/Detailansicht) anzuzeigenden Felder auswählen und diese sich dadurch so zusammenstellen wie man das möchte.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 04 Februar 2020, 20:41:56
Update neue Version 1.6.1:

* Attribute calendarShowInDetail, calendarShowInRoom wurden zu calOverviewInDetail, calOverviewInRoom umbenannt
* sind GPS-Daten im Kalenderereignis gespeichert, werden sie jetzt als Reading ordentlich aufbereitet
* sofern GPS-Daten geliefert werden und die Auswahl "Map" aus der Drop-Down Liste in den Kalenderübersichten vorhanden, ist ein Kartenlink mit einem Klick auf das Globussymbol erreichbar

VG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 04 Februar 2020, 20:53:41
Ich wollte natürlich auch mal dein neustes Werk testen , aber leider
2020.02.04 20:50:17 1: PERL WARNING: Use of uninitialized value $maxbnr in numeric le (<=) at ./FHEM/57_SSCal.pm line 3231.
kommt ständig
und dann kommt der FHEM restart :/ bedingt durch :
Undefined subroutine &JSON::boolean called at ./FHEM/57_SSCal.pm line 3180
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 04 Februar 2020, 20:57:38
Nabend Wzut,

sieht aus als wäre bei dir JSON nicht geladen. Kann ich mir aber kaum vorstellen.
Kannst du das mal checken ?

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 04 Februar 2020, 21:27:51
Die Warnung "Use of uninitialized value $maxbnr in numeric le (<=) at ./FHEM/57_SSCal.pm line 3231" habe ich gleich noch beseitigt, hat aber mit dem JSON-Fehler nichts zu tun.

Bei dem JSON-Fehler kann ich mir auch vorstellen, dass du vllt. eine alte Version des CPAN-Moduls im System hast ?

Bei mir kommt das als Version:


heiko@fhemtest:~$ dpkg -l |grep -i '\libjson-perl'
ii  libjson-perl                        4.02000-1                       all          module for manipulating JSON-formatted data
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 04 Februar 2020, 21:33:45
Heiko , du müsstest mich doch eigentlich gut genug kennen um zu wissen das ich immer mit alten Systemen arbeite ....
ii  libjson-perl                      2.90-1                             all          module for manipulating JSON-formatted data
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 04 Februar 2020, 21:39:47
ZitatHeiko , du müsstest mich doch eigentlich gut genug kennen um zu wissen das ich immer mit alten Systemen arbeite ....
klar ... ist mir doch gerade wie Schuppen von den Augen gefallen  :D

Nur war ich mir nicht sicher ob du auch die CPAN-Module nicht aktualisierst. Das sollte doch problemlos möglich sein, oder ?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 04 Februar 2020, 21:52:16
Habe es mal so umgebaut, dass man ohne diese Funktion aus JSON auskommt.
Vllt. klappt es jetzt auch bei dir.  ;)
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 04 Februar 2020, 21:53:44
na gut ich mach für dich wieder mal ne Ausnahme .... mit der 4.02 gibt es keine Restarts mehr und ich sehe jetzt sogar drei meiner Termine :)
[Klugscheisser on]
jetzt musst nur class= odd/even nachbessern und dann wird die Liste auch zum FHEM Zebra
[Klugscheisser off]
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 04 Februar 2020, 21:57:08
 :D ... und jetzt wollte ich dir was gutes tun. Aber so kommst du mal zu einer ktuellen JSON.  ;)

Ja, odd/even is klar ... ist das gut ? Ich war mir nicht so sicher ...
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 04 Februar 2020, 22:10:27
Habs zum Zebra gemacht.  :)
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 05 Februar 2020, 06:05:11
Zitat von: DS_Starter am 04 Februar 2020, 21:57:08
:D ... und jetzt wollte ich dir was gutes tun. Aber so kommst du mal zu einer ktuellen JSON.  ;)

Ja, odd/even is klar ... ist das gut ? Ich war mir nicht so sicher ...
naja war vllt doch nocht so schlecht die alte zu haben, ich könnte wetten damit sind noch mehr unterwegs.
ich denke es es keine Frage von gut oder schlecht sondern irgendwie FHEM Standart bei Listen (siehe Internals/Readings) immer den hell/dunkel Wechsel zu haben.
IMHO erhöht es die Lesbarkeit, aber das ist vermutlich auch Ansichtssache denn letztes Jahr beim SMA Thema habe ich gelernt das es FHEM Styles gibt die in beiden Klassen den gleichen Farbwert nutzen.

Edit : Stichwort Lesbarkeit
Ich tue mir immer etwas schwer mit den FHEM Datum/Zeit Strings , besonderes wenn auch noch zwei direkt hinter einander stehen wie bei Begin - End
kannst ja mal das testen ( vor der Ausgabe von $end )
$end = substr($end,11,8) if (substr($begin,0,10) eq substr($end,0,10));
damit haben Termine die am gleichen Tag enden nur die Uhrzeit, Damit das auch hübsch wird muss man noch an das TD ran und align='right' dazupacken.
Ich war erst verwundert das es nicht griff  und habe da auf deine class='sscal' ganz verzichtet. Nur aus Neugier warum setzt du die überhaupt in der Table ?

Und noch so ne blöde Idee :  wenn das Datum heute oder morgen ist es nicht anzeigen und durch den String heute / morgen ersetzen, eventuell via Attribut ein/aus schalltbar

Edit 2 : Im SMAPortal hast du bei allen Text Ausgaben immer global language geprüft , wäre hier für vllt auch angebacht für die Überschrift ?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 05 Februar 2020, 07:29:52
Morgen Wzut,

danke für deine guten Vorschläge. Die schaue ich mir heute Abend gleich mal mit an. Bin ja immer noch am schrauben an der Übersicht und habe da auch noch eine Idee. Den Style in der Table hatte ich mal bei rumprobieren gesetzt, hatte es dann auch rausgenommen weil sinnlos. Aktuell sind nur TD... definiert und in den <td> gesetzt.
Der Language check kommt auch noch  :)

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 06 Februar 2020, 00:14:23
@Wzut, habe alle deine Vorschläge umgesetzt. Auch der language Support ist drin.

Schaut mal wie es euch gefällt ...  :)

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 06 Februar 2020, 11:44:17
na schaut doch super aus !
Ich habe das SSCAL auf meinen Testystem laufen und dort sind auch noch vom Sommer die ganzen FHEM Styles drauf als das SMA HTML Thema aktuell war.
Ich habe sie nun wieder durchprobiert und es ist das gleiche wie damals in grün. Je nach Style sieht die HTML Tabelle etwas anderes aus,
bzw. bei den bekannten Problemkindern sogar nicht schön. Wenn du möchtest teste ich wieder die Ausgabe und mache dir Vorschläge für Klassen die dafür sorgen immer ein nahezu einheitliche Desgin der Tabelle zu bekommen. 
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 06 Februar 2020, 12:41:01
Hallo Wzut,

Ja, kannst du gern machen, würde mich freuen.
Ich kümmere mich dann noch um ein paar inhaltliche Themen die mir noch fehlen.

Grüsse,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 07 Februar 2020, 09:21:23
here are the results of the german jury :
a. manche Styles sind echt zickig wenn auf eine rechtsbündige TD direkt eine linksbündige folgt. Die haben so wenig Abstand zwischen Text und Rand in ihren TD Klassen definiert das die Buchstaben beider Zellen wie ein Wort aneinander kleben. Abstand bekommt man dann entweder durch setzen von border=1 in TABLE
oder man verzichtet ab der dritten Spalte auf linksbündige Ausgabe und zentriert alle. ( finde ich gar nicht so schlecht )

b. deine beiden $out .= "<tr><td>  </td></tr> erzeugen entweder über der ersten Tabellenzeile zwei Streifen oder aber die erste Zeile ist höher als die nachfolgenden. Ich würde ganz auf beide verzichten oder wenn die erste Zeile wirklich höher sein soll als die anderen direkt deren Höhe beinflussen.

c. ich würde auch auf den Einsatz der Klasse calw150 ganz verzichten und den Styles (besonders denen für Small Screens ) keine Vorschriften über Spaltenbereite machen. Genau diese brechen schon um Platz zu sparen Datum & Zeit der ersten beiden Spalten Trenn Leerzeichen um.

d. Du hast in der Überschrift bei Completion und dem nachfolgendem % ein <br>  das führt dazu das diese Ausgabe horizontal etwas aus der Reihe tanzt.
Ich würde entweder das <BR> durch ein &nbsp; ersetzen oder wenn es bleiben soll für alle TDs der Überschrift valign=top einsetzen.

e. das Weltkugel Icon bei Map : Würde ich dem User zur Wahl stellen ob Icon oder Text bzw. via Attribut mapicon ihn ganz frei wählen lassen welches Icon

f. Stichwort Icon(s) : wäre es nicht schön auch bei  Completion einen horizontalen Fortschrittsbalken zu haben ?
Man könnte entweder tricksen wie beim SMAPortal und mit gefärbten TDs arbeiten oder einen Satz neuer Icons (4 oder 10) einsetzen die  analog zu den heutigen Tor / Rollo % Icons das abbilden. ( Ich kann dir ja mal 5 svgs  [0,25,50,75,100] "malen" )
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 07 Februar 2020, 16:21:30
Hallo Wzut, @all,

wieder mal danke für deine Analyse  :)  Habe so einiges umgesetzt:

a) die rechtsbündige Formatierung ist komplett raus.

b) Diese beiden zeilen habe ich entfernt

c) habe ich auch entfernt, damit Datum/Zeit nicht umbrechen, stelle ich sie in separaten Feldern dar. Funktioniert dann hoffentlich auch in den anderen Styles so wie gewünscht.

d) ist mit &nbsp; ersetzt -> passt

e) sehr  umfassend und passend auf weitere Funktionalitäten umgebaut -> erläuternder Text unten

f) so ein Fortschrittsbalken fände ich super und nehme dein "Malangebot" auch gerne an.  :) Schade ist allerdings, dass der Syno-Kalender bzw. die API zur Zeit nur 0 oder 100% kennt. Abstufungen gibt es dabei nicht. Ich weiß nicht on Syno da noch etwas vorhat. Vllt. kann ich auch einen Featererequest platzieren, aber zur Zeit sagt die API Doku nur 0 oder 100. (Zwischenstufen könnte natürlich einfach mal testen, vllt. haben wir ja Glück und es geht auch das).

Bezüglich der MapIcons ist jetzt folgendes implementiert.
Mit dem Attribut tableColumnMap legt man fest ob ma in der Tabellenspalte "Map" ein Icon (Standard), einen Text  oder mit "data" die gespeicherten Koordinaten sehen möchte.
Die Eigenschaften von Icon und Text wird in einem Hash via Attribut tableSpecs festgelegt:


{
  "columnMapIcon"     => "it_i-net",
  "columnMapText"     => "Hier gehts zur Karte",
  "columnMapProvider" => "GoogleMaps",                           # OpenStreetMap oder GoogleMaps
}


In columnMapIcon hinterlegt man den Namen des gewünschten Icons. Mit columnMapText kann man den Text eingeben den man sehen möchte wenn man mit Attribut tableColumnMap "Text" auswählt.
Und zu guter letzt kann mit columnMapProvider kann man entweder GoogleMaps (Sandard) oder  OpenStreetMap definieren.

Wer da Ähnlichkeiten mit readingsGroup erahnt, täuscht sich nicht.  :D
Das war auch einer meiner Gründe es so zu gestalten weil readingsGroup mit über 3000 Usern sehr verbreitet und die Syntax bekannt ist.

Außerdem ist es gut erweiterbar denn ich habe noch die Vision, die einzelnen Events mit Kontext/Inhaltsabhängigen Icons versehen zu können. Die Möglichkeiten kann man über diesen Hash noch einbauen ... hab schon einen Plan ...

Aber würde mich freuen wieder Meinungen zu hören ...

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 07 Februar 2020, 17:51:56
c.) damit umgehst du zwar das eine Problem gibst aber den Small Screen Styles jetzt keine Chance mehr in der Breite wertvollen Platz einzusparen.
(müsste sich mal jemand mit dem Smartphone und entsprechenden Style anschauen )

f.) das is ja doof das die nur 0 oder 100 liefern :( Als Abhilfe könnte man natürlich anhand Start, Ende & Jetzt selbst die Prozentzahl bestimmen.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 07 Februar 2020, 19:56:08
c) Bei dem Start/Ende Datum/Zeit war bzw. ist mir wichtig dass die nicht umbrechen. Das finde ich äußerst unschön bzw. störend beim Lesen der Tabelle.
Aber ich probiere das auch mal mit meinem Tel aus. Man kann natürlich immer die Felderanzahl mit dem Attr calOverviewFields reduzieren wenn nötig.

f) naja nicht nur liefern, sondern auch setzen. Man kann den Erfüllungsgrad auch nur bei den Tasks setzen/lesen, Terminkalender kennt dieses Eigenschaft nicht. Selbst durch Start/Ende bestimmen wird auch schwierig weil man bei den Tasks nicht zwingend Start/Ende angeben muss. Mehrheitlich werden diese Einträge wahrscheinlich sogar ohne Zeit stehen.

Wenn du zu c) vllt. noch Ideen hast ... gerne  :)

LG,
Heiko

Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 07 Februar 2020, 20:14:48
Einfall ... ich könnte eine Eigenschaft "smallScreen" einführen die man in tablSpecs setzen kann. Wenn gesetzt werden (umbrechbare) Datumfelder erstellt .
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 07 Februar 2020, 22:33:29
Ich habe jetzt eine Eigenschaft "smallScreen" hinzugefügt mit der man den Tabellenaufbau steuern kann.
via Attribut tableSpecs sieht das dann so aus:


{
  "columnMapIcon"     => "it_i-net",
  "columnMapText"     => "Hier gehts zur Karte",
  "columnMapProvider" => "GoogleMaps",                           # OpenStreetMap oder GoogleMaps
  "smallScreen"       => "1",
}


Denke damit kann jeder User seine bevorzugte Variante einstellen.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 08 Februar 2020, 08:49:39
klar das kann man so machen, allerdings legt man sich so direkt für alle Endgeräte einheitlich fest.
Mein Verständis ( alte Styles und mehere WEB Devices ) -> je nach Port unterschiedlicher Style möglich
Sonderrolle f18 mit nur noch einem WEB Port -> FHEM erkennt welches Endgerät zugreift und wechselt die Darstellung selbstständig
aber bevor ich jetzt da was falsches sage lieber nochmal Rudi fragen

Beim SMAPortal war ich auch mal an einem Punkt wo ich vorhatte auszulesen welcher Styletyp gerade angesprochen wird und damit die Ausgabe zu steuern
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 08 Februar 2020, 09:02:57
Ja, da hast du recht Wzut. Ich könnte ja direkt aus dem verwendeten FW-Device das stylesheetPrefix Attr auslesen und dann entsprechend zu steuern -> alles was small im Value trägt bekommt small ...
Nö einfacher ... in der Eigenschaft smallScreen kann der Nutzer die Styles eintragen, bei denen er die Smallscreen Tabelle haben möchte. Total flexibel ...

Die einzelnen Ports im FW sind ja meines Wissens auch nicht fest einem bestimmten Devicetyp zugeordnet, auch wenn es sich vermutlich ein quasi Standard etabliert hat ?

Ich glaube diese Steuerung stelle ich noch etwas zurück bis ich inhaltlich soweit durch bin.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 08 Februar 2020, 10:35:09
Habe die Attribute calOverviewFields, calOverviewInDetail, calOverviewInRoom umbenannt in  tableFields, tableInDetail, tableInRoom. Das Wiki ist aktualisiert.

Das passt einfach besser in den Gesamtkontext mit tableSpecs und tableColumnMap.

Sorry wenn es Umstände beim Test bereitet, aber im Zuge des Modulaufbaus kommen immer mal wieder neue Erkenntnisse in die Umsetzung.

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 08 Februar 2020, 12:55:13
Nun kann man in der Eigenschaft smallScreen eine Komma getrennte Liste von Styles angeben für die man die Tabelle "small screen geeignet" darstellen möchte.


{
  "columnMapIcon"     => "it_i-net",
  "columnMapText"     => "Hier gehts zur Karte",
  "columnMapProvider" => "GoogleMaps",                           # OpenStreetMap oder GoogleMaps
  "smallScreen"       => "darksmallscreen,dark",                 # Komma getrennte Liste von Styles für small Screen Optimierung
}
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 08 Februar 2020, 18:43:43
Ich habe gerade mit dem Kalender gespielt -> neuen erstellt und mal Abfall Termine als Tagesereigniss mit 2 Wochen Wiederholung
Das Webinterface meint das das Tagesereigniss von 0:00 bis 23:59 geht.
In deinen Readings steht allerdings Start 0:00 und Ende 0:00 aber das Enddatum +1 zum Startdatum, dadurch wird natürlich das Ende Datum nicht unterdrückt.
Der Weg wäre jetzt den Termin eben nicht als Tagestermin zu setzen sondern als Zeit 0:00 bis 23:45
Kannst ja mal schauen ob dir die API Abfrage wirklich etwas anderes zurück gibt als die Webseite anzeigt.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 08 Februar 2020, 20:50:44
Hallo Wzut,

das war mir auch schon aufgefallen. Die API liefert so wie die Readings es ausschreiben, siehst du mit verbose 5:

{
                                     'evt_color' => undef,
                                     'dtstart' => '20200213T000000',
                                     'create_time' => undef,
                                     'priority_order' => 565,
                                     'status' => undef,
                                     'modify_time2' => 1578525240,
                                     'is_all_day' => $VAR1->{'data'}{'/Heiko/qmrae/'}[0]{'is_all_day'},
                                     'is_repeat_evt' => $VAR1->{'data'}{'/Heiko/qmrae/'}[11]{'is_all_day'},
                                     'tz_id' => undef,
                                     'class' => 'PUBLIC',
                                     'dav_etag' => '62970b1ff2c0f9883589a980442db556',
                                     'ical_uid' => 'plastic-xxxxxxxxxxxxxxxxxxx',
                                     'original_cal_id' => '/Heiko/dplzv/',
                                     'owner' => 1025,
                                     'location' => "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
                                     'evt_id' => 1599,
                                     'evt_notify_setting' => [
                                                               {
                                                                 'recurrence-id' => '',
                                                                 'time_format' => 'DURATION',
                                                                 'time_value' => '-PT300M',
                                                                 'alarm_action' => 'DISPLAY',
                                                                 'alarm_ical' => 'BEGIN:VALARM
TRIGGER:-PT300M
ACTION:DISPLAY
DESCRIPTION:Erinnerung: Gelbe Tonne
END:VALARM
'
                                                               }
                                                             ],
                                     'summary' => 'Gelbe Tonne',
                                     'percent_complete' => undef,
                                     'gps' => undef,
                                     'transp' => 'TRANSPARENT',
                                     'from_syno_app_url' => undef,
                                     'description' => 'Entsorgung: Gelbe Tonne',
                                     'priority' => 1,
                                     'evt_repeat_setting' => {
                                                               'repeat_rule' => undef
                                                             },
                                     'dtend' => '20200214T000000'
                                   }


Ich werde mal schauen ob ich an geeigneter Stelle eine Korrektur bei ganztägigen Events vornehmen kann.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 09 Februar 2020, 11:24:05
Habe Endedatum / Endezeit bei ganztägigen Events in der Readingdarstellung korrigiert. Entsprechend stellt sich nun die tabellarische Übersicht noch aufgeräumter dar.

Bitte mal testen, liegt wieder im contrib upgedated vor.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: ComputerZOO am 09 Februar 2020, 12:49:05
Moin,
mal doof in die Runde gefragt, ich habe das selbe Problem das Wzut (hatte), also eine veraltete libjson-perl-Version (2.97001-1). Bei mir crasht FHEM nun mit der (letzten) Meldung (vor dem Neustart) :
Undefined subroutine &JSON::boolean called at ./FHEM/57_SSCal.pm line 3245.

Und nach einem Neustart steht folgendes im Log:
PERL WARNING: Subroutine SSCal_jboolmap redefined at ./FHEM/57_SSCal.pm line 3241, <$fh> line 20850.

Wie komme ich an eine aktuelle(re) Version? sudo apt-get install libjson-perl sagt mir, das es sich bereits um die aktuellste Version handelt.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 09 Februar 2020, 16:17:07
Da du jetzt nach Wzut schon der zweite User mit dem Problem bist, habe ich das Modul jetzt so umgestaltet dass auch ältere JSON module passend sind (sollte zumindest klappen).
@ComputerZOO, ziehe bitte nochmal aus dem contrib und teste ob es damit erledigt ist.

Ganz allgemein halte ich die Perl Module aus dem CPAN schon seit einiger Zeit mit Hilfe von Loredos Installer-Modul aktuell.
Das Modul ist gemeinhin vllt. noch nicht so bekannt:

define fhemInstaller Installer

Installiert ein Device. Ich _glaube_ einmal pro Nacht prüft das Modul auf Aktualisierungen der Perl-Module und zeigt eine Info wenn Updates da sind. Ein "set ... updatePerl" updated die Perl-Module. Man kann auch neue Perl-Pakete installieren oder mit checkPrereqs auf fehlende prüfen.
Gibt ja wie immer verschiedene Wege, aber so mache ich es ... bis jetzt völlig stressfrei.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 09 Februar 2020, 17:12:48
Ist jetzt OT : aber das mit dem Installer mag ok sein wenn wir von CPAN Paketen reden für die es mit apt-get keine Installations Lösung gibt.
Aber so werden an apt vorbei Pakete aktualsiert und für den "unbedarften" User muss dass nicht immer stressfrei und logisch sein.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 09 Februar 2020, 17:54:32
Das mit dem Installer sollte man mit Sicherheit im richtigen Forum: Unterstützende Dienste  nochmal vertiefen.

Jedenfalls sollte jetzt auch ein älteres JSON ausreichen.  ;)
@Wzut , hast du die neueste Version mal angeschaut ?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 09 Februar 2020, 18:28:03
habe ich ...  ich trau mich fast es nicht zu sagen .... -> ja , aber
Wenn ich die Termine jetzt so zusammen mit anderen in einer Tabelle sehe ist die Endzeit wie im Webinterface 23:59:59, aber irgendwie wird er jetzt seiner Sonderrolle als Ganztags Termin nicht gerecht. Vllt doch das Enddatum als nächsten Tag anzeigen aber dafür komplett auf 00:00:00 und 23:59:59 verzichten ?
So nach dem Motto , Termine ganz ohne Uhrzeiten sind Tagestermine ?   

Achso Thema Sekunden , wofür ? Lassen sich doch bei der Eingabe gar nicht festlegen ?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 09 Februar 2020, 19:11:50
Ein "ja, aber ... " wird es immer geben .... wir suchen nur den bestmöglichen Kompromiss  :)

Die Sekunden kann ich in der Anzeige noch wegschneiden. Sie wird halt von der API geliefert und geht in diverse Berechnungen mit ein. Aber in der Anzeige werfe ich sie noch raus, spart auch Platz.

Zitat
Vllt doch das Enddatum als nächsten Tag anzeigen aber dafür komplett auf 00:00:00 und 23:59:59 verzichten ?
Die Uhrzeiten wegzulassen würde ich befürworten. Aber das Anfangsdatum / Endedatum würde ich doch auf demselben Tag lassen. Das würde für mich als User sofort einen Ganztagstermin verdeutlichen. Ansonsten würde ich erstmal grübeln warum das Endedatum keine Uhrzeit hat und einen Fehler vermuten.

Ich probiers mal ...
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 09 Februar 2020, 19:16:25
Zitat von: DS_Starter am 09 Februar 2020, 19:11:50
wir suchen nur den bestmöglichen Kompromiss  :)
ganz starke Seite von mir : faule Kompromisse machen und Ideen haben die andere abarbeiten müssen ....
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 09 Februar 2020, 19:56:12
So, habe es umgesetzt. Schau(t) mal bitte ...
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: ComputerZOO am 09 Februar 2020, 20:42:38
Zitat von: DS_Starter am 09 Februar 2020, 16:17:07
Da du jetzt nach Wzut schon der zweite User mit dem Problem bist, habe ich das Modul jetzt so umgestaltet dass auch ältere JSON module passend sind (sollte zumindest klappen.

Funktioniert jetzt. Thx.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 11 Februar 2020, 18:34:40
Hallo miteinander,

ich habe inzwischen reichlich Möglichkeiten zur Gestaltung der tabellarischen Terminübersicht in das Modul eingebaut.
Die Möglichkeiten, die sich nunmehr bieten, habe ich im Wiki ergänzt->

https://wiki.fhem.de/wiki/SSCal_-_Integration_des_Synology_Calendar_Servers#Darstellung_der_.C3.9Cbersichtstabelle_in_Raum-_und_Detailsicht_beeinflussen

Das Update liegt wieder in meinem contrib zum Download bereit.
Bitte FHEM nach dem Download des Moduls restarten.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 12 Februar 2020, 00:12:43
Nun sind noch der Wochentag des Startdatums als Reading verfügbar und ein paar mehr Felder für die Übersichtstabelle auswählbar.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 12 Februar 2020, 17:50:29
Ich habe die Tabellendarstellung noch um eine zuschaltbare Spalte "Symbol" erweitert. Damit kann man eine ganze Terminzeile grafisch kennzeichnen. Je nach Kalendermodel (Diary oder Task) wird ein anderes Standardicon angezeigt. Man kann das natürlich wieder seinen Wünschen entsprechend anpassen.

Wiki -> https://wiki.fhem.de/wiki/SSCal_-_Integration_des_Synology_Calendar_Servers#Gestaltung_der_Spalte_.22Symbol.22

Eine allgemeine Frage in die Runde ...

Bei der Beschäftigung mit dem Kalender ist mir eine Schwäche aufgefallen, die jetzt nicht SSCal-typisch ist, sondern sich vermutlich auch bei 57_Calendar findet.

Es geht dabei um die Events die ein Kalender erzeugt um darauf reagieren zu können. Einen Kalender updated man ja üblicherweise nicht so oft, also vielleicht nur stündlich oder jeden halben Tag usw.
Bei jedem Update werden selbstverständlich die Events generiert, d.h. z.B. ob ein Eintrag den Status upcoming, ended, started oder alarmed hat. Darauf kann man reagieren und andere Devices schalten. Aber in der Zeit zwischen den Updates können ja die Statuszustände wechseln ohne das ein Event generiert wird und somit z.B. die minutengenaue Steuerung von Devices über einen Kalender nicht funktioniert.

Vielleicht bin ich ja mittlerweile etwas betriebsblind geworden, aber wenn ich recht habe, würde ich SSCal eine Funktion spendieren die alle X Minuten (einstellbar) die Zeiten / Alarmzeiten der Kalendereinträge checkt und den Statuswechsel durch Readingaktualisierungen und Events signalisiert.

Dadurch könnte man recht leicht kalendergestützte Steuerungen aufbauen.

Habe ich bei dieser Betrachtung etwas übersehen oder ist es tatsächlich eine Lücke die es zu schließen gilt ?

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 12 Februar 2020, 19:11:14
Thema Events : finde ich gut ( geht ja in die Richtung die ich im Hinterkopf hatte mit Thermostate steuern)
Was mir nur unklar ist , wann genau willst du den Event erzeugen ? Direkt schon beim einlesen oder erst dann wenn dir Anfangsuhrzeit erreicht ist ? 
Die Anfangsuhrzeit hätte schon Charme weil man quasi Module wie weekdaytimer komplett damit ersetzen könnte, frei nach dem Motto ich trag einen beliebigen FHEM Befehl in den Kalender ein und wenn es soweit ist wird er blind ausgeführt , Syntaxprüfung und Fehlermeldung macht das Ziel Device

Ich bin eben mal durchs Wki gegangen, das wird langsam mit den Möglichkeiten der Darstellung echt komplex ....
und gleich mal ausprobiert (copy & paste) und FHEM abgeschossen :)
editier im Wiki dein Beispiel für columnSymbolIcon bei den Wochentagen und setze wie das Beispiel darüber den Block in geschweifte Klammern.
sonst gibt es Mecker im Log
Can't use string (""columnSymbolIcon" => [
        "...) as a HASH ref while "strict refs" in use at ./FHEM/57_SSCal.pm line 3262.


und was muß ich im Kalender eintragen um die Wochentage zu bekommen ? Die Spalte ist bei mir leer
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 12 Februar 2020, 19:26:49
Hi Wzut,

bin grad unterwegs und melde mich später nochmal.

Aber du musst das aktuelle Modul nochmal aus dem contrib ziehen und restarten.
Ich habe alle Beispiele aus dem Wiki bei mir durchgetestet.  :)

Wenn es dann immer noch Probleme geben sollte ... gucken wir später ...

LG
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 12 Februar 2020, 19:39:46
nein das Modul ist das Neuste , der Fehler ist im Wiki nur in dem einen Bespiel fehlen die {}
Wochentage habe ich jetzt auch , musste den Kalender neu abholen.
Und eins ist mir aufgefallen : Die Header Zeile für die Uhrzeit -> ----
a. brauchst du da keine language Unterscheidung da du immer die vier - ausgibst.
b. wäre schön wenn die auf '' gesetzt werden würden wenn die aktuelle Ausgabe nur Tagestermine enthält  und die beiden Spalten eh leer sind
(habs bei mir mal rausgworfen , sieht der Abfallkalender nun richtig schön aus)
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 12 Februar 2020, 20:05:24
ok, Uhrzeit lässt sich leicht entfernen wenn ich smalscreen definiere.
Aber ich hätte noch etwas : geh mal dein $out durch nach dem letzten möglichen header Feld <td>ID</td>
müsste noch ein
$out .='</tr>'
da du später in der Schelife (odd/even) ja wieder neu mit <tr> beginnst ( die meisten Browser verzeihen aber diesen HTML Fehler )
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 12 Februar 2020, 22:39:21
Hi Wzut,

so ... das Wiki-Beispiel habe ich korrigiert.  :o
Aber weil solche Fehlkonfigurationen immer vorkommen können, habe ich das Modul gleich noch "gehärtet" und in attrFn die Prüfung verschärft.

Das "$out .='</tr>'" ist auch ergänzt. 

Zitata. brauchst du da keine language Unterscheidung da du immer die vier - ausgibst.
Ja, habe ich extra so gelassen falls ich doch mal an dieser Stelle etwas anderes einfüge.

Danke dir für deine checks  :)

Thema Events ...

ZitatWas mir nur unklar ist , wann genau willst du den Event erzeugen ? Direkt schon beim einlesen oder erst dann wenn dir Anfangsuhrzeit erreicht ist ?
Idee ist folgende. Jeder Termineintrag hat ja das Reading "x_17_Status". Dieses Reading wird initial beim Einlesen des Kalenders abhängig  von seinen Daten bezüglich Begin/Endzeit und auch eventuell vorhandenen Erinnerungsterminen (x_x_x_notifyDateTime) auf einen Status upcoming, ended, started oder alarmed gesetzt. Dabei wird auch ein Event generiert.

Im Hintergrund läuft ein internal Timer der z.B. alle 60 Sekunden die Readings x_05_Begin, x_10_End und evtl. vorhandene x_80_x_notifyDateTime mit der aktuellen Zeit vergleicht. Sollte sich entsprechend der Bedingungen der Status ändern, wird das Reading "x_17_Status" entsprechend angepasst und auch ein Event mit dem neuen Status erzeugt.
Den Aufbau des Events müsste ich mir noch genau überlegen, sodass man aus dem Event neben dem Status gleich den Inhalt (Summary) erkennt.

Zum Beispiel:


2020-02-12 22:30:21.305 SSCal 02_17_StatusLong: alarmed||AZ Licht on
2020-02-12 22:30:21.305 SSCal 02_17_StatusLong: started||AZ Licht on
2020-02-12 22:30:21.305 SSCal 02_17_StatusLong: ended||AZ Licht on


Alarmed heißt das bald etwas losgehen soll. Der "started" Event bedeutet das AZ Licht einschalten. Dementsprechend wäre bei "ended" der mit "AZ Licht on" gestartete Vorgang beendet. Wenn man diese Prüfung im SSCal jede Minute laufen lässt, ließe sich damit eine minutengenaue Steuerung realisieren.

So die Theorie  ;)

Edit: Geht etwas einfacher. Man erstellt sich zwei Termine, einen mit "on", den zweiten mit "off". Der interne Timer würde dann die Events beim Statuswechsel erzeugen:


2020-02-12 22:30:00 SSCal 02_17_StatusLong: alarmed||AZ Licht on    -> keine Reaktion, ggf. "Vorbereitungen"
2020-02-12 22:30:00 SSCal 02_17_StatusLong: started||AZ Licht on      -> darauf reagiert man und schaltet das D on
2020-02-12 23:30:00 SSCal 02_17_StatusLong: ended||AZ Licht on        -> keine Reaktion
2020-02-12 23:30:00 SSCal 02_17_StatusLong: started||AZ Licht off      -> darauf reagiert man und schaltet das D off
2020-02-12 23:40:00 SSCal 02_17_StatusLong: ended||AZ Licht off       -> keine Reaktion


Grüße,
Heiko


Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 13 Februar 2020, 09:38:06
ok, Thema Events :
Ich denke wenn ich das schreiben müsste würde ich nicht auf einen extra Internal Timer setzen.
Bsp : Das beliebte command.ref "set lamp on" , man erstellt einen Kalendereintrag mit folgender Zeile
{ set lamp on }
erstes Zeichen { letzte Zeichen } bedeutet FHEM Befehl, nun würde ich beim Update wenn ich diese Bedienung finde ein temp at erstellen (room = hidden) mit der Anfangszeit und dem Befehl ohne die Klammern. Weiter tun must du dann gar nichts mehr , das at übernimmt ja den kompletten Rest.

Attribut tableSpecs
Ist nun sehr mächtig geworden und gut das du nun zusätzliche Prüfung eingebaut hast damit der User bei Fehleingaben nicht sein FHEM in den Keller zieht.
Aber : für dich elegant mit nur einem Attribut so viel erschlagen zu können, aber hoffentlich sind gerade mit der Syntax nicht die User überfordert 

HTML :
zum einen hätte ich einen Wunsch, entweder als Attribut oder als Schlüsselwort für tableSpecs  -> noHeader um die Header Zeile ganz zu unterdrücken.
Dann habe ich mal die HTML Ausgabe via Weblink vom Device abgekoppelt ( siehe Screenshot )
Ohne die äussere Device Table nimmt sich table gleich den ganzen Bildschirm statt sich mit dem Platz zufrieden zu geben der nötig ist.
Das war beim SMA Portal auch mal so , ich muß mal schauen mit welcher table class sich das unter Kontrolle halten lässt.
Desweiteren zeigt der Screenshot auch schön was passiert wenn im Header ein anderes align benutzt wird als in der TD darunter -> Status nach rechts verschoben in Bezug zum Datum 
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 13 Februar 2020, 09:58:10
Zitat
Bsp : Das beliebte command.ref "set lamp on" , man erstellt einen Kalendereintrag mit folgender Zeile
Code: [Auswählen]

{ set lamp on }

erstes Zeichen { letzte Zeichen } bedeutet FHEM Befehl, nun würde ich beim Update wenn ich diese Bedienung finde ein temp at erstellen (room = hidden) mit der Anfangszeit und dem Befehl ohne die Klammern. Weiter tun must du dann gar nichts mehr , das at übernimmt ja den kompletten Rest.
Ja stimmt, dann reicht ja eigentlich der eine Event beim Einlesen. Es bliebe nur noch die Sache mit den Event-Notifies. Damit meine ich die Terminerinnerungen die man im Kalender setzen kann. Also dass man sich 1 Tag + 2 Stunde + 1 Stunde + 5 Minuten vorher benachrichtigen lassen kann.  Vielleicht wäre dafür eine solche Routine hilfreich, mal überlegen ...

Zitataber hoffentlich sind gerade mit der Syntax nicht die User überfordert 
Ja, mal schauen was die User sagen. Aber ich hatte vermutet da diese Notation in readingsGroup schon sehr verbreitet/etabliert ist kommen die User gut mit zurecht.  :)

Zitatzum einen hätte ich einen Wunsch, entweder als Attribut oder als Schlüsselwort für tableSpecs  -> noHeader um die Header Zeile ganz zu unterdrücken.
Sehe ich mit vor.

ZitatDas war beim SMA Portal auch mal so , ich muß mal schauen mit welcher table class sich das unter Kontrolle halten lässt.
schau mal bitte gleich mit wie die Farbe im Header durch das Style gesteuert werden muss. Zur Zeit sind die Überschriften im default-Style schwarz, müssten m.M. nach aber im default-Style (fett) grün sein. Kann mich aber auch täuschen.

Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 13 Februar 2020, 10:06:42
Ich habe übrigens auch mal ein weblink angelegt mit


defmod SynCal.Abfall.WBL weblink htmlCode { SSCal_calAsHtml ("SynCal.Abfall",".*") }
attr SynCal.Abfall.WBL room Dienste->Kalender


... also ohne Gruppenzuordnung. Im default-Style sieht es noral aus, nur im dark-Style wird die Breite so ausgenutzt wie es bei dir zu sehen ist.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 13 Februar 2020, 13:03:38
Habe noch Einstellmöglichkeiten für noHeader und Align vorgenommen.


  "cellStyle"             => {
                               "noHeader"    => "1",                # 0 (default)  oder 1
                               "headerAlign" => "center",
                               "columnAlign" => "left",
                             },


siehe -> https://wiki.fhem.de/wiki/SSCal_-_Integration_des_Synology_Calendar_Servers#Allgemeine_Gestaltung_des_Tabellenheaders_und_der_Spalten
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 13 Februar 2020, 16:18:27
Zitat von: DS_Starter am 13 Februar 2020, 10:06:42
... also ohne Gruppenzuordnung. Im default-Style sieht es noral aus, nur im dark-Style wird die Breite so ausgenutzt wie es bei dir zu sehen ist.

Wirf mal einen Blick ins SMAPortal , ich hatte genau für den Fall sogar einen Kommentar hinterlassen :
Zitat
# Tabellen Ausgabe erzeugen
# Wenn Table class=block alleine steht, zieht es bei manchen Styles die Ausgabe auf 100% Seitenbreite
# lässt sich durch einbetten in eine zusätzliche Table roomoverview eindämmen



$out  .= "<table class='roomoverview'><tr><td style='text-align: center; padding-left:1px; padding-right:1px; margin:0px'><table class='block'>";
$out .= "</table></td></tr></table>";
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 13 Februar 2020, 18:49:26
Hi Wzut,

die Änderung ist jetzt auch drin. Danke dir ...

Sag mal ... kennst du eine Routine, die eine HTML-Augabe in ein Bild überführt ? Also ähnlich dem svg2png im SVG.
War der Meinung es hier schonmal gelesen zu haben.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 13 Februar 2020, 19:05:01
ähh jetzt hast du mich auf dem linken Fuß erwischt, meine auch mal was hier im Forum gelesen zuhaben in irgend einem Zusammenhang mit RSS , als es noch kein TabletUI und Brüder gab ? oder ich verwechsele es jetzt auch mit svg2png
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 13 Februar 2020, 19:32:42
<OT>
Hier hab ich was gefunden:

https://forum.fhem.de/index.php/topic,53500.msg455075.html#msg455075

bzw.

https://www.perlmonks.org/?node_id=172531

</OT>
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 14 Februar 2020, 14:33:52
Um die Verwendung des Kalenders für den Anwender bezüglich der Ableitung von FHEM Aktivitäten aus Kalendereinträgen zu erleichtern, erstellt die Version 1.11.0 (contrib) nun zusätzlich sogenannte composite-Events, z.B.:


2020-02-14 13:19:11.742 SSCal SynCal2 composite: 1983 2020-02-14T13:15:00 started {set lampe on}         
2020-02-14 13:19:11.811 SSCal SynCal2 composite: 1984 2020-02-14T15:15:00 alarmed {set lampe off}         
2020-02-14 13:35:31.082 SSCal SynCal2 composite: 1985 2020-02-14T18:00:00 upcoming {{ <Perl-Routine> }}   


Daraus kann man nun sehr einfach mit notifies o.ä. Werkzeugen ein at-Device erstellen/modifizieren um in FHEM Schaltvorgänge auszulösen.

Das Verfahren und ein konkretes Beispiel habe ich im Wiki beschrieben:
https://wiki.fhem.de/wiki/SSCal_-_Integration_des_Synology_Calendar_Servers#Reagieren_auf_Events_und_eine_FHEM-Aktivit.C3.A4t_erstellen

Ein großer Vorteil der beschriebenen Arbeitsweise ist, dass man einen Kalendereintrag auch nachträglich ändern kann und sich diese Änderung direkt auf das bereits erstellte at-Device auswirkt.

Prinzipiell könnte ich sogar die gesamte Funktionalität direkt im SSCal-Device abbilden und dem Nutzer den Umweg über das notify abnehmen. Das hätte sogar noch den Charme das ich ein bereits erstelltes at-Device wieder löschen könnte wenn man den Kalendereintrag entfernt. Momentan muss der Nutzer selbst dafür Sorge tragen.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 14 Februar 2020, 19:11:12
Das musste ich natürlich gleich mal ausprobieren, Serientermin erstellt jeden Tag gleiche Uhrzeit fünfmal wiederholend.
Das at ist da nur steht die Ausführungszeit auf dem letzten der fünf Termine, was auch logisch ist da sie alle die gleiche Event ID habe, d.h. beim einlesen sind die fünf Events vermutlich gerade mal so durchgerauscht. Das notify im Wiki ist ok für Einzeltermine. Was kann man tun um Serientermine genauso elegant zu behandeln ?
D.h. das at zeigt auf die nächste Zeit und schaltet erst weiter wenn es ausgeführt wurde, klingt schon fast so als wäre es ein Fall eventuell für DOIF ?   
Oder doch im Noitify auf die EventID keine Rücksicht nehmen und halt fünf ats anlegen lassen ?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 14 Februar 2020, 19:50:30
Bis zu Serinterminen war ich noch nicht gekommen.  :)

Ich würde den composit-Event noch um die Eigenschaft aus dem Reading x_x_isRepeatEvt erweitern. Dann kann man darauf reagieren und bei Einzelterminen so arbeiten wie gezeigt und bei Serienterminen jeweils ein separates at anlegen lassen. Evtl. noch eine Extension im Namen damit man das sofort unterscheiden kann.
Ich erweitere das nachher mal ....
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 14 Februar 2020, 22:19:23
Habe den Event noch erweitert mit isRepeat. Diese Events sehen nun so aus:

2020-02-14 13:19:11.742 SSCal SynCal2 composite: 1983 0 2020-02-14T13:15:00 started {set lampe on} 
2020-02-14 13:19:11.811 SSCal SynCal2 composite: 1984 0 2020-02-14T15:15:00 alarmed {set lampe off}   
2020-02-14 13:35:31.082 SSCal SynCal2 composite: 1985 1 2020-02-14T18:00:00 upcoming {{ <Perl-Routine> }}   

Das Notify habe ich jetzt so getestet:


SynCal.*:.*composite.*
{
  my ($PART0, $PART1)               = split(": ", $EVENT,2);;
  my ($id,$repeat,$isot,$tate,$cmd) = split(" ",  $PART1,5);;
  if ($tate =~ /upcoming|alarmed/ && $cmd =~ /^\s*\{(.*)\}\s*$/) {
    $cmd    = $1;
    if(!$repeat) {
        Log3($NAME, 3, "$NAME - Command received. Create/modify \"SSCal.$id\" - Timestamp: $isot, Command: $cmd");;
        fhem("defmod SSCal.$id at $isot $cmd");;
    } else {
        my $ao = $isot;
        $ao    =~ s/[-:]//g;
        Log3($NAME, 3, "$NAME - Command received. Create/modify \"SSCal.$id.$ao\" - Timestamp: $isot, Command: $cmd");;
        fhem("defmod SSCal.$id.$ao at $isot $cmd");;    
    }
  }
}


Damit lassen sich die at-Devices ebenfalls für Repeat-Events automatisch erstellen. Nur kann man diese erzeugten Devices nicht automatisch aktualisieren wenn man im Kalender Datum/Uhrzeit dieser Termine ändert. Das kriege ich vermutlich nur hin wenn ich das Management im Modul selbst vornehme.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 14 Februar 2020, 23:25:23
Ich denke, ich spendiere dem Modul noch ein Attribut womit der User ein autocreate von at-Devices bei der Erkennung von Terminen, die einen FHEM oder Perl-Befehl enthalten, einschalten kann.
In diesem Fall könnte man ebenfalls Serientermine automatisch anpassen bzw. löschen und erneut erstellen. Der User könnte sich mit dieser Funktionalität das eigene Management über notify o.ä. sparen.

Es wird aber eine zuschaltbare Funktion sein. Der User soll mit Hilfe composite Events die Möglichkeit haben. eigene Logiken aufzubauen.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 15 Februar 2020, 08:06:13
Moin,
das klingt alles gut. Ja dem User diese Freiheit zu lassen finde ich sehr wichtig.
Stichwort User : Schade ist an der ganzen Sache jetzt nur noch das man eine Synologie haben muß, d.h. wer andere Kalender nutzt dem entgeht echt etwas ..... 
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 15 Februar 2020, 08:18:26
Moin Wzut,

:)

ja leider geht das nur mit der Synology API. Bei mir habe ich bereits alles was ich bisher mit Kalender gemacht habe, auf das Modul umgestellt.
Das WE ist erstmal Ruhe von meiner Seite, fahre eine Runde in den Spreewald.

Danach gehts wieder weiter. Vielleicht gibt es übers WE noch ein paar Erleuchtungen und Testergebnisse anderer User.
Danke dir und bis später ...

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 15 Februar 2020, 09:10:46
Dann mal schönes WE. Mir ist beim neu anordnen der Kalender gerade etwas aufgefallen,
das Thema der zusätlichen roomoverview Table um table  block :
Steht die HTML Ausgabe im Device nimmt sich die Tabelle nicht den Platz den sie sollte, d.h. das zusätzliche roomoverview verhindert das.
Es müsste unterschieden werden ob die Anzeige direkt im Device erfolgt (keine umgebende Table) oder ob es sich um einen Weblink handelt (mit zusätzlicher Table )
Beim SMAPortal hatten wir das Problem in der Form nicht da die Ausgabe immer via weblink lief.   
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 15 Februar 2020, 20:02:58
habe gerade meinSSCal deaktiviert weil es das Log zumüllt :
2020.02.15 19:56:18 1: PERL WARNING: Character in 'C' format wrapped in pack at ./FHEM/57_SSCal.pm line 2786.
2020.02.15 19:56:18 1: stacktrace:
2020.02.15 19:56:18 1:     main::__ANON__                      called by ./FHEM/57_SSCal.pm (2786)
2020.02.15 19:56:18 1:     main::SSCal_sortVersion             called by ./FHEM/57_SSCal.pm (416)
2020.02.15 19:56:18 1:     main::SSCal_Set                     called by fhem.pl (3757)
2020.02.15 19:56:18 1:     main::CallFn                        called by fhem.pl (1886)
2020.02.15 19:56:18 1:     main::DoSet                         called by fhem.pl (1928)
2020.02.15 19:56:18 1:     main::CommandSet                    called by fhem.pl (2739)
2020.02.15 19:56:18 1:     main::getAllSets                    called by ./FHEM/01_FHEMWEB.pm (3179)
2020.02.15 19:56:18 1:     main::FW_devState                   called by ./FHEM/01_FHEMWEB.pm (3077)
2020.02.15 19:56:18 1:     main::FW_Notify                     called by fhem.pl (3757)
2020.02.15 19:56:18 1:     main::CallFn                        called by fhem.pl (3677)
2020.02.15 19:56:18 1:     main::DoTrigger                     called by fhem.pl (3136)
2020.02.15 19:56:18 1:     main::CommandTrigger                called by ./FHEM/57_SSCal.pm (2199)
2020.02.15 19:56:18 1:     main::SSCal_doCompositeEvents       called by ./FHEM/57_SSCal.pm (2152)
2020.02.15 19:56:18 1:     main::SSCal_createReadings          called by ./FHEM/57_SSCal.pm (2009)
2020.02.15 19:56:18 1:     main::SSCal_extractEventlist        called by ./FHEM/57_SSCal.pm (1444)
2020.02.15 19:56:18 1:     main::SSCal_calop_parse             called by FHEM/HttpUtils.pm (634)
2020.02.15 19:56:18 1:     main::__ANON__                      called by fhem.pl (751)
2020.02.15 19:56:18 1: PERL WARNING: Character in 'C' format wrapped in pack at ./FHEM/57_SSCal.pm line 2790.
2020.02.15 19:56:18 1: stacktrace:
2020.02.15 19:56:18 1:     main::__ANON__                      called by ./FHEM/57_SSCal.pm (2790)
2020.02.15 19:56:18 1:     main::SSCal_sortVersion             called by ./FHEM/57_SSCal.pm (416)
2020.02.15 19:56:18 1:     main::SSCal_Set                     called by fhem.pl (3757)
2020.02.15 19:56:18 1:     main::CallFn                        called by fhem.pl (1886)
2020.02.15 19:56:18 1:     main::DoSet                         called by fhem.pl (1928)
2020.02.15 19:56:18 1:     main::CommandSet                    called by fhem.pl (2739)
2020.02.15 19:56:18 1:     main::getAllSets                    called by ./FHEM/01_FHEMWEB.pm (3179)
2020.02.15 19:56:18 1:     main::FW_devState                   called by ./FHEM/01_FHEMWEB.pm (3077)
2020.02.15 19:56:18 1:     main::FW_Notify                     called by fhem.pl (3757)
2020.02.15 19:56:18 1:     main::CallFn                        called by fhem.pl (3677)
2020.02.15 19:56:18 1:     main::DoTrigger                     called by fhem.pl (3136)
2020.02.15 19:56:18 1:     main::CommandTrigger                called by ./FHEM/57_SSCal.pm (2199)
2020.02.15 19:56:18 1:     main::SSCal_doCompositeEvents       called by ./FHEM/57_SSCal.pm (2152)
2020.02.15 19:56:18 1:     main::SSCal_createReadings          called by ./FHEM/57_SSCal.pm (2009)
2020.02.15 19:56:18 1:     main::SSCal_extractEventlist        called by ./FHEM/57_SSCal.pm (1444)
2020.02.15 19:56:18 1:     main::SSCal_calop_parse             called by FHEM/HttpUtils.pm (634)
2020.02.15 19:56:18 1:     main::__ANON__                      called by fhem.pl (751)
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 16 Februar 2020, 07:53:16
Moin Wzut,
Wie hast du das denn geschafft ?  ;)

Habe mal remote geschaut. Meine Installationen laufen alle sauber nach wie vor.
Heute Abend bin ich wieder daheim und dann kann ich genauer schauen eas das sein könnte.

Grüsse,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 16 Februar 2020, 09:17:03
gute Frage .... ich hatte zwei Kalender am Start , den default My Calendar und Abfall
Abfall macht keine Probleme , Logeinträge nur beim aktualisieren von My Calendar. Da das der für die Events Tests ist habe ich nach und nach alle Termine gelöscht bis er leer war, ohne Erfolg. Die Einträge bleiben sind abergefühlt weniger geworden bei Abruf. Ich habe jetzt einen leeren Kalender erstellt und diesen angebunden :
Und wieder die Einträge im Log beim Abruf -> d.h. der obige Block vier mal.
verbose 5 Log des Abrufs
2020.02.16 09:15:34 5: Scal - Calendar selection for add queue: Eddy
2020.02.16 09:15:34 5: Scal - Add sendItem to queue - Idx: 376, Opmode: eventlist, API: CALEVENT, Method: list, Params: &cal_id_list=["/admin/qomuqv/"]&start=1581807600&end=1583103600&list_repeat=true
2020.02.16 09:15:34 4: Scal - ####################################################
2020.02.16 09:15:34 4: Scal - ###      start Synology Calendar operation         
2020.02.16 09:15:34 4: Scal - ####################################################
2020.02.16 09:15:34 4: Scal - Time selection start: 2020-02-16 00:00:00
2020.02.16 09:15:34 4: Scal - Time selection end: 2020-03-02 00:00:00
2020.02.16 09:15:34 4: Scal - API hash values already set - ignore get apisites
2020.02.16 09:15:34 4: Scal - start SendQueue entry index "376" (eventlist) for operation.
2020.02.16 09:15:34 5: Scal - HTTP-Call will be done with timeout: 20 s
2020.02.16 09:15:34 4: Scal - Call-Out: http://192.168.0.2:5000/webapi/entry.cgi?api=SYNO.Cal.Event&version=3&method=list&cal_id_list=["/admin/qomuqv/"]&start=1581807600&end=1583103600&list_repeat=true&_sid=<secret>
2020.02.16 09:15:34 1: PERL WARNING: Character in 'C' format wrapped in pack at ./FHEM/57_SSCal.pm line 2786.
2020.02.16 09:15:34 1: stacktrace:
2020.02.16 09:15:34 1:     main::__ANON__                      called by ./FHEM/57_SSCal.pm (2786)
2020.02.16 09:15:34 1:     main::SSCal_sortVersion             called by ./FHEM/57_SSCal.pm (416)
2020.02.16 09:15:34 1:     main::SSCal_Set                     called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (1886)
2020.02.16 09:15:34 1:     main::DoSet                         called by fhem.pl (1928)
2020.02.16 09:15:34 1:     main::CommandSet                    called by fhem.pl (2739)
2020.02.16 09:15:34 1:     main::getAllSets                    called by ./FHEM/01_FHEMWEB.pm (3179)
2020.02.16 09:15:34 1:     main::FW_devState                   called by ./FHEM/01_FHEMWEB.pm (1802)
2020.02.16 09:15:34 1:     main::FW_makeDeviceLine             called by ./FHEM/01_FHEMWEB.pm (1482)
2020.02.16 09:15:34 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1133)
2020.02.16 09:15:34 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (582)
2020.02.16 09:15:34 1:     main::FW_Read                       called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (754)
2020.02.16 09:15:34 1: PERL WARNING: Character in 'C' format wrapped in pack at ./FHEM/57_SSCal.pm line 2790.
2020.02.16 09:15:34 1: stacktrace:
2020.02.16 09:15:34 1:     main::__ANON__                      called by ./FHEM/57_SSCal.pm (2790)
2020.02.16 09:15:34 1:     main::SSCal_sortVersion             called by ./FHEM/57_SSCal.pm (416)
2020.02.16 09:15:34 1:     main::SSCal_Set                     called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (1886)
2020.02.16 09:15:34 1:     main::DoSet                         called by fhem.pl (1928)
2020.02.16 09:15:34 1:     main::CommandSet                    called by fhem.pl (2739)
2020.02.16 09:15:34 1:     main::getAllSets                    called by ./FHEM/01_FHEMWEB.pm (3179)
2020.02.16 09:15:34 1:     main::FW_devState                   called by ./FHEM/01_FHEMWEB.pm (1802)
2020.02.16 09:15:34 1:     main::FW_makeDeviceLine             called by ./FHEM/01_FHEMWEB.pm (1482)
2020.02.16 09:15:34 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1133)
2020.02.16 09:15:34 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (582)
2020.02.16 09:15:34 1:     main::FW_Read                       called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (754)
2020.02.16 09:15:34 1: PERL WARNING: Character in 'C' format wrapped in pack at ./FHEM/57_SSCal.pm line 2786.
2020.02.16 09:15:34 1: stacktrace:
2020.02.16 09:15:34 1:     main::__ANON__                      called by ./FHEM/57_SSCal.pm (2786)
2020.02.16 09:15:34 1:     main::SSCal_sortVersion             called by ./FHEM/57_SSCal.pm (416)
2020.02.16 09:15:34 1:     main::SSCal_Set                     called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (1886)
2020.02.16 09:15:34 1:     main::DoSet                         called by fhem.pl (1928)
2020.02.16 09:15:34 1:     main::CommandSet                    called by fhem.pl (2739)
2020.02.16 09:15:34 1:     main::getAllSets                    called by ./FHEM/01_FHEMWEB.pm (1495)
2020.02.16 09:15:34 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1133)
2020.02.16 09:15:34 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (582)
2020.02.16 09:15:34 1:     main::FW_Read                       called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (754)
2020.02.16 09:15:34 1: PERL WARNING: Character in 'C' format wrapped in pack at ./FHEM/57_SSCal.pm line 2790.
2020.02.16 09:15:34 1: stacktrace:
2020.02.16 09:15:34 1:     main::__ANON__                      called by ./FHEM/57_SSCal.pm (2790)
2020.02.16 09:15:34 1:     main::SSCal_sortVersion             called by ./FHEM/57_SSCal.pm (416)
2020.02.16 09:15:34 1:     main::SSCal_Set                     called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (1886)
2020.02.16 09:15:34 1:     main::DoSet                         called by fhem.pl (1928)
2020.02.16 09:15:34 1:     main::CommandSet                    called by fhem.pl (2739)
2020.02.16 09:15:34 1:     main::getAllSets                    called by ./FHEM/01_FHEMWEB.pm (1495)
2020.02.16 09:15:34 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1133)
2020.02.16 09:15:34 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (582)
2020.02.16 09:15:34 1:     main::FW_Read                       called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (754)
2020.02.16 09:15:34 1: PERL WARNING: Character in 'C' format wrapped in pack at ./FHEM/57_SSCal.pm line 2786.
2020.02.16 09:15:34 1: stacktrace:
2020.02.16 09:15:34 1:     main::__ANON__                      called by ./FHEM/57_SSCal.pm (2786)
2020.02.16 09:15:34 1:     main::SSCal_sortVersion             called by ./FHEM/57_SSCal.pm (416)
2020.02.16 09:15:34 1:     main::SSCal_Set                     called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (1886)
2020.02.16 09:15:34 1:     main::DoSet                         called by fhem.pl (1928)
2020.02.16 09:15:34 1:     main::CommandSet                    called by fhem.pl (2739)
2020.02.16 09:15:34 1:     main::getAllSets                    called by ./FHEM/98_JsonList2.pm (102)
2020.02.16 09:15:34 1:     main::CommandJsonList2              called by fhem.pl (1242)
2020.02.16 09:15:34 1:     main::AnalyzeCommand                called by fhem.pl (1095)
2020.02.16 09:15:34 1:     main::AnalyzeCommandChain           called by ./FHEM/01_FHEMWEB.pm (2687)
2020.02.16 09:15:34 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (913)
2020.02.16 09:15:34 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (582)
2020.02.16 09:15:34 1:     main::FW_Read                       called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (754)
2020.02.16 09:15:34 1: PERL WARNING: Character in 'C' format wrapped in pack at ./FHEM/57_SSCal.pm line 2790.
2020.02.16 09:15:34 1: stacktrace:
2020.02.16 09:15:34 1:     main::__ANON__                      called by ./FHEM/57_SSCal.pm (2790)
2020.02.16 09:15:34 1:     main::SSCal_sortVersion             called by ./FHEM/57_SSCal.pm (416)
2020.02.16 09:15:34 1:     main::SSCal_Set                     called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (1886)
2020.02.16 09:15:34 1:     main::DoSet                         called by fhem.pl (1928)
2020.02.16 09:15:34 1:     main::CommandSet                    called by fhem.pl (2739)
2020.02.16 09:15:34 1:     main::getAllSets                    called by ./FHEM/98_JsonList2.pm (102)
2020.02.16 09:15:34 1:     main::CommandJsonList2              called by fhem.pl (1242)
2020.02.16 09:15:34 1:     main::AnalyzeCommand                called by fhem.pl (1095)
2020.02.16 09:15:34 1:     main::AnalyzeCommandChain           called by ./FHEM/01_FHEMWEB.pm (2687)
2020.02.16 09:15:34 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (913)
2020.02.16 09:15:34 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (582)
2020.02.16 09:15:34 1:     main::FW_Read                       called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (754)
2020.02.16 09:15:34 1: PERL WARNING: Character in 'C' format wrapped in pack at ./FHEM/57_SSCal.pm line 2786.
2020.02.16 09:15:34 1: stacktrace:
2020.02.16 09:15:34 1:     main::__ANON__                      called by ./FHEM/57_SSCal.pm (2786)
2020.02.16 09:15:34 1:     main::SSCal_sortVersion             called by ./FHEM/57_SSCal.pm (416)
2020.02.16 09:15:34 1:     main::SSCal_Set                     called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (1886)
2020.02.16 09:15:34 1:     main::DoSet                         called by fhem.pl (1928)
2020.02.16 09:15:34 1:     main::CommandSet                    called by fhem.pl (2739)
2020.02.16 09:15:34 1:     main::getAllSets                    called by ./FHEM/01_FHEMWEB.pm (3179)
2020.02.16 09:15:34 1:     main::FW_devState                   called by ./FHEM/01_FHEMWEB.pm (2987)
2020.02.16 09:15:34 1:     main::FW_roomStatesForInform        called by ./FHEM/01_FHEMWEB.pm (669)
2020.02.16 09:15:34 1:     main::FW_initInform                 called by ./FHEM/01_FHEMWEB.pm (901)
2020.02.16 09:15:34 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (582)
2020.02.16 09:15:34 1:     main::FW_Read                       called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (754)
2020.02.16 09:15:34 1: PERL WARNING: Character in 'C' format wrapped in pack at ./FHEM/57_SSCal.pm line 2790.
2020.02.16 09:15:34 1: stacktrace:
2020.02.16 09:15:34 1:     main::__ANON__                      called by ./FHEM/57_SSCal.pm (2790)
2020.02.16 09:15:34 1:     main::SSCal_sortVersion             called by ./FHEM/57_SSCal.pm (416)
2020.02.16 09:15:34 1:     main::SSCal_Set                     called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (1886)
2020.02.16 09:15:34 1:     main::DoSet                         called by fhem.pl (1928)
2020.02.16 09:15:34 1:     main::CommandSet                    called by fhem.pl (2739)
2020.02.16 09:15:34 1:     main::getAllSets                    called by ./FHEM/01_FHEMWEB.pm (3179)
2020.02.16 09:15:34 1:     main::FW_devState                   called by ./FHEM/01_FHEMWEB.pm (2987)
2020.02.16 09:15:34 1:     main::FW_roomStatesForInform        called by ./FHEM/01_FHEMWEB.pm (669)
2020.02.16 09:15:34 1:     main::FW_initInform                 called by ./FHEM/01_FHEMWEB.pm (901)
2020.02.16 09:15:34 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (582)
2020.02.16 09:15:34 1:     main::FW_Read                       called by fhem.pl (3757)
2020.02.16 09:15:34 1:     main::CallFn                        called by fhem.pl (754)
2020.02.16 09:15:34 5: Scal - JSON returned: $VAR1 = {
          'data' => {},
          'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' )
        };

2020.02.16 09:15:34 4: Scal - Event parse mode: synchronous
2020.02.16 09:15:34 4: Scal - Opmode "eventlist" finished successfully, Sendqueue index "376" deleted.
2020.02.16 09:15:34 4: Scal - ####################################################
2020.02.16 09:15:34 4: Scal - ###      start Synology Calendar operation         
2020.02.16 09:15:34 4: Scal - ####################################################
2020.02.16 09:15:34 4: Scal - Sendqueue is empty. Nothing to do ...
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 16 Februar 2020, 18:28:36
Bin noch unterwegs ... aber hab eine idee.
Steht bei dir etwas in listSendQueue ?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 16 Februar 2020, 18:49:09
ZitatSendQueue is empty.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 16 Februar 2020, 18:57:16
Hmm, blöd
Passt nicht zu meiner theorie.  Hab gefunden


Character in 'C' format wrapped in pack

    (W pack) You said

        pack("C", $x)

    where $x is either less than 0 or more than 255; the "C" format is only for encoding native operating system characters (ASCII, EBCDIC, and so on) and not for Unicode characters, so Perl behaved as if you meant

        pack("C", $x & 255)

    If you actually want to pack Unicode codepoints, use the "U" format instead.



In der besagtrn Zeile des moduls kannst du mal das C gegen U tauschen. Hätte jetzt gedacht i der Queue wären statt schlüsselnummern irgendwelche non ascii zeichen enthalten.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 16 Februar 2020, 22:55:59
Ich gehe davon aus, dass ich das Problem gefixt habe. Es konnte m.M. nach nur vorkommen wenn keinerlei Terminreadings erstellt wurden.

Außerdem kann man jetzt mit dem Attribut createATDevs automatisch temporäre At-Devices erstellen lassen wenn Kommandos in Summary erkannt werden. Die erstellten at werden nicht in der cfg-Datei gespeichert und demzufolge gibt es auch kein rotes Fragezeichen als Kennzeichen einer Strukturänderung.

Das Wiki muss ich aber noch anpassen ....

Version 1.12.0 im contrib.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 17 Februar 2020, 09:57:20
also die Fehler sind weg, verstehen tue ich es aber nicht denn der My Calendar hatte ja Termine (also nicht leer) als es los ging.
Anyway, was gut ist kommt wieder ... (hoffentlich nicht)

Ich habe das mit dem createATDevs  probiert - klappt.
Allerdings bin ich mir z.Z. noch unsicher ob ich es in der Form nutzen werde oder doch lieber auf ein eigens Notify setze.
Grund : ich tue mich mit den ats und -temporary immer etwas schwer weil ich die Dinger nicht direkt greifen kann da sie ein gesetztes attr room ignorieren und das ist für mich wichtig. Ein ganz normales einmaliges at erzeugt auch kein rotes Fragezeichen lässt sich aber mit room an einen Raum binden.
( Ich habe mal zum Spaß deinen Code geändert so das im Kalender Eintrag Location ausgewertet und der Raum mit gesetzt wird.
leer = unsorted , ansonst der Raum Name in FHEM )
Man muß hier dem Anwender aber klar machen was er da tut, denn man sollte nicht auf die Idee kommen tägliche Serientermine für das ganze Jahr zu setzen und sich dann wundern das man 365 neue ats hat :) 

Achso vllt. noch eine Frage der Optik/Übersicht :
Z.z. muss der FHEM Befehl im Titel stehen, ich fände es übersichtlicher wenn es die Beschreibung wäre. Zumal man ja ganze Code Blöcke setzen kann und der Syno Kalender Editor da auch gleich ein viel größeres Eingabefeld bietet als der Einzeiler bei Titel.
 
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 17 Februar 2020, 10:12:04
Moin Wzut,

schön dass die Warnungen weg sind. Kann es auch nicht 100%ig nachvollziehen. Hatte bei mir nie solche Fehler, egal ob der Kalender leer war oder nicht. Aber egal, habe die Funktion an dieser Stelle umgebaut.

Also wenn normale ATS auch nicht zur Strukturänderung führen, stelle ich das um. Ich wollte zum Beispiel das comment noch aus Description füllen usw. Und den Raum per Default nach SSCal usw.
Dein Vorschlag ist gut ... ich switche heute Abend Mal um auf Description ...

Wenn du noch eine Idee für das Attr createATDevs ? Der Name gefällt mir nicht besonders gut, aber mir fällt nichts passenderes ein.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 17 Februar 2020, 11:56:02
ja normale einmalige at ist genau so gut, 2016 hat Rudi sich noch geweigert defmod dafür zu erweitern -> https://forum.fhem.de/index.php/topic,62188.msg536316.html#msg536316
ZitatWarum du "modify -temporary" brauchst, ist mir wiederum ein Raetsel: ein einmaliges at generiert kein rotes Fragezeichen

2018 hat er seine Meinung geändert und es getan  -> https://forum.fhem.de/index.php/topic,85545.msg798340.html#msg798340
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 17 Februar 2020, 20:09:34
Jetzt habe ich die Geschichte nochmal mit der automatischen Erstellung von at-Devices überarbeitet und gleich im Wiki umfassend beschrieben:

https://wiki.fhem.de/wiki/SSCal_-_Integration_des_Synology_Calendar_Servers#at-Devices_f.C3.BCr_Steuerungen_automatisch_erstellen_und_verwalten_lassen

Terminänderungen (Zeit/Inhalt) im Kalender werden in die at übernommen und diese auch gelöscht wenn im Kalender die Referenzen gelöscht werden.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 17 Februar 2020, 20:12:44
Wikl liest sich gut ! , Test morgen
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 18 Februar 2020, 07:20:40
also das schaut soweit gut aus auch was Änderungen an den Terminen betrifft.
Aber eine Sache ist mir jetzt aufgefallen :
Wenn man einen Serientermin erstellt Bsp täglich wiederholend ( x 5 ) und dann einen der Wiederholtermine löscht ist er in der Synyo Webansicht weg
aber er belibt in deiner Liste. Ich vermute du berechnest die Termine anhand des ersten Eintrags.
Oder Beispiel Abfallkalender : Start im Januar bsp Dienstag , Wiederholung bis Dezember. Verschiebt man nun irgendwo in der Liste einen Tag von Dienstag auf Mittwoch (Planänderung wegen Feiertag) dann ändert sich im Modul auch hier der Tag nicht.   
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 18 Februar 2020, 08:50:21
Moin Wzut,

die Berechnung erfolgt anhand der von der API geliefert Wiederholungsregeln. Du siehst es im Reading

0_70_repeatRule  FREQ=DAILY;COUNT=3

bzw. mit verbose 5 im Log:

'modify_time' => '2020-02-18 07:38:11.136041+00',
                                        'create_time' => '1582010590.7781',
                                        'priority' => undef,
                                        'evt_repeat_setting' => {
                                                                  'repeat_rule' => 'FREQ=DAILY;COUNT=3'
                                                                },
                                        'original_cal_id' => '/Heiko/igiwulwq/',


Grundsätzlich hast du aber recht. Ich sehe allerdings in den gelieferten Daten der API keinen Anhaltspunkt dass zum Beispiel ein Termin der Serie verschoben wurde.
Ich schaue nochmal genauer hin, aber wenn uns da nichts greifbares auffällt muß ich das erstmal in der Rubrik "Beschränkungen" im Wiki aufnehmen und mich mit Synology in Verbindung setzen.
Wenn du etwas sehen solltest, nehme ich gerne ...
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 18 Februar 2020, 09:20:06
Wenn man einen Termin aus einer Serie löscht, dann wird dieser Termin im 'evt_ical' vermerkt:

'evt_ical' => 'BEGIN:VCALENDAR

PRODID:-//Synology//EN
VERSION:2.0
BEGIN:VEVENT
CREATED:20200218T091032
LAST-MODIFIED:20200218T091032
DTSTAMP:20200218T091032
UID:20200218T091032-8c6c4abc@172.17.0.1
SEQUENCE:4
SUMMARY:Test1
TRANSP:TRANSPARENT
DTSTART;TZID=Europe/Berlin:20200218T130000
DTEND;TZID=Europe/Berlin:20200218T140000
DESCRIPTION:
LOCATION:
RRULE:FREQ=DAILY;COUNT=4
EXDATE:20200219T120000Z
EXDATE:20200220T120000Z
END:VEVENT

Anhand dieser Info kann ich es prüfen und entsprechend im SSCal-Device excludieren. Aber eine Uhrzeitänderung oder Verschiebung eines Termins einer Serie wird von der API nicht signalisiert oder habe es noch nicht entdeckt.
Zumindest die Löschung baue ich erstmal mit ein. Den Rest müssen wir sehen.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 18 Februar 2020, 10:00:07
Du machst das schon da bin ich zuversichtlich :)
BTW : Ich habe bisher den Abfallkalender jeden Januar von Hand in holiday eingepflegt (scheiss Arbeit da mein Entsorger keine ical zur Verfügung stellt sondern nur eine pdf)
Nun habe ich gedacht mach es simpel  drei Serientermine ab Januar definiert und die paar Ausnahmen angeklickt und um ein,zwei Tage verschoben, ratz fatz erledigt. Nun kommt es aber :
Ich habe den geändert Abfallkalender jetzt exportiert und in Outlook eingebunden -> die geänderten Tage stimmen !
Und noch besser, klicke ich einen geänderten Tag an um ihn wieder zu ändern sagt Outlook dieser Termin sei Teil einer Serie.
Du bist mit ical  Syntax sicher besser vertraut als ich aber wenn man mit einen Texteditor sich die exportierte ical Datei anschaut dann steht zuerst die Definition der Serie, danach folgt aber quasi als Ausnahme der erste verschobene Tag . Also müsste der Fall eigentlich in der rfc5545 stehen.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 18 Februar 2020, 10:11:14
ZitatAlso müsste der Fall eigentlich in der rfc5545 stehen
Ja, sehe ich genauso. Nur will ich ja nicht erst einen Kalender per ical exportieren und wieder importieren, dafür gib es ja 57_Calendar.
Dieses Modul stützt sich ja auf die API von Synology und die Informationen die diese Schnittstelle bringt.
Vielleicht haben die noch einen Bug oder aber ich sehe die Info nicht. Schau mal mit verbose 5 die Infos aus der Schnittstelle an. Wenn dir dort etwas dienliches auffällt ist es was für uns. Sonst muss ich wiklich mal an Syno ran.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 18 Februar 2020, 10:17:57
Ha, ich habs  :)

da hat sich der nicht gelöschte, aber veränderte Termin ganz unten versteckt.
.....
BEGIN:VEVENT
CREATED:20200218T091032
LAST-MODIFIED:20200218T091032
DTSTAMP:20200218T091032
UID:20200218T091032-8c6c4abc@172.17.0.1
SEQUENCE:5
SUMMARY:Test1
TRANSP:TRANSPARENT
DTSTART;TZID=Europe/Berlin:20200221T150000
DTEND;TZID=Europe/Berlin:20200221T160000
DESCRIPTION:
LOCATION:
RECURRENCE-ID;TZID=Europe/Berlin:20200221T130000
END:VEVENT
END:VCALENDAR',

Nun muss ich das Ganze "nur" noch sauber einbauen.  ;)
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 19 Februar 2020, 21:29:15
Hallo Wzut, @all,

geänderte oder gelöschte Serientermine werden nun auch durch das Modul registriert und entsprechend bei der Generierung von at-Befehlen berücksichtigt.

contrib Version 1.13.0.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 22 Februar 2020, 12:54:35
Ich habe noch einiges an Bugfixing betrieben. Zum Beispiel die Erinnerungstermine korrigiert wenn Termine in einer Serie verändert wurden oder wenn ein Termin einer Serie, die eigentlich nur Ganztagestermine enthält, ausnahmsweise nicht den ganzen Tag einnimmt.
Im letzteren  Fall wird die Struktur dieses Termins in der Übersichtstabelle angepasst.

Ist im contrib ...
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 23 Februar 2020, 09:39:48
Guten Morgen,

habe die Version 1.14.0 ins contrib gestellt.

Es gibt für beide Kalendertypen einheitlich ein set calUpdate um Einträge abzurufen.

Die jeweils für die Models Diary bzw. Tasks unterschiedlich vorhandenen setter calEventList bzw. calToDoList sind obsolete und entfernt !

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 24 Februar 2020, 19:16:58
Habe noch Korrekturen bei sich wiederholenden Terminen mit den Eigenschaften WEEKLY by DAY und MONTHLY by MONTHDAY
vorgenommen.
Grad mal ein bisschen Monolog hier  :D
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 24 Februar 2020, 19:37:45
*Heiko mal zart über den Kopf streichen*
Ich lese immer mit auch wenn nicht immer alles verstehe :)
Hab ich das jetzt richtig verstanden : Ich kann meinen Abfallkalender so primitiv anlegen und dann die Sondertermine verschieben, d.h. das Problem ist erledigt oder muß ich dazu den Kalender nochmal neu anlegen ?
Mit der Funktion FHEM Befehle in {} einbetten bin ich extrem glücklich und mir fallen da immer neue Sachen ein die ich bisher recht umständlich händeln musste
( Bsp weekday Timer mit zig Ausnahmen ) Ich denke unsere Schichtarbeiter mit unregelmäßigen Schichtzeiten wären begeistert wenn sie das endecken würden.
BTW: Gib doch mal den anderen Kalender Autoren einen dezent Wink mit dem Zaunpfahl, ich kann mir echt nicht vorstellen der Einzige zu sein (obwohl kein Schichtarbeiter)  der sich das schon immer gewünscht hat.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 24 Februar 2020, 19:46:18
Oh, danke ... :)

ZitatHab ich das jetzt richtig verstanden : Ich kann meinen Abfallkalender so primitiv anlegen und dann die Sondertermine verschieben, d.h. das Problem ist erledigt oder muß ich dazu den Kalender nochmal neu anlegen ?
Primitiv anlegen sollte nun reichen. Du musst nichts neu anlegen, nein.

Zitat
BTW: Gib doch mal den anderen Kalender Autoren einen dezent Wink mit dem Zaunpfahl, ich kann mir echt nicht vorstellen der Einzige zu sein (obwohl kein Schichtarbeiter)  der sich das schon immer gewünscht hat.
Ich hoffe die Mundpropaganda funktioniert ...  :D , sonst mache das gerne ...

Irgenwann muss ich die Commandref aufbauen und einchecken. Das macht wieder ganz viel "Spass"  ;)

ZitatMit der Funktion FHEM Befehle in {} einbetten bin ich extrem glücklich und mir fallen da immer neue Sachen ein die ich bisher recht umständlich händeln musste
Ich habe noch eingebaut, dass die erstellten at als probabaly associated with angezeigt werden.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 25 Februar 2020, 23:55:43
@Wzut, bist du denn schon mit den Anforderungen an eine Datenschnittstelle für deine MAX-Module weitergekommen ?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 26 Februar 2020, 06:59:26
Eine extra Schnittstelle ist nicht mehr nötig. Ich dachte damals an Schlüsselwörter aber du mit deiner {} Umsetzung bist da einen Schritt weiter gegangen.
D.h. der User muß jetzt keine neue MAX Kalender Syntax lernen/beachten sondern trägt das was er kennt in geschweifte Klammern halt direkt ein.
Bsp mal die Soll Temperatur in einem Raum anheben. Einen kompletten Heizplan wird sich niemand in den Kalender schreiben, das macht weekprofile viel besser. Das umschalten zwischen den verschiedenen Plänen kann er dann ja wieder mittels Kalendereintrag machen. 
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 26 Februar 2020, 08:01:42
Moin,

alles klar. Dann erstelle ich jetzt langsam die englische ComRef damit das Modul den Weg ins Repo finden kann.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: romakrau am 26 Februar 2020, 13:49:49
Hallo zusammen,

ich habe auf meinem NAS DS212+ drei Kalender die ich gerne in FHEM berücksichtigen würde. Allerdings konnte ich keine Calendar APp von Synology installieren. Gibt's wohl nicht für mein Modell. SSCal habe ich in der Version 1.15.0 laufen. Die Fehlermeldung lautet:

  READINGS:
     2020-02-26 13:43:07   Error           malformed JSON string received from Synology Calendar Server
     2020-02-26 13:43:07   Errorcode       900
     2020-02-26 13:43:07   QueueLength     3
     2020-02-26 10:26:56   modeAlarm       
     2020-02-26 10:26:56   modeAlarmOrStart
     2020-02-26 10:26:56   modeAlarmed     
     2020-02-26 10:26:56   modeChanged     
     2020-02-26 10:26:56   modeEnd         
     2020-02-26 10:26:56   modeEnded       
     2020-02-26 10:26:56   modeStart       
     2020-02-26 10:26:56   modeStarted     
     2020-02-26 10:26:56   modeUpcoming   
     2020-02-26 13:42:59   nextUpdate      Manual
     2020-02-26 11:28:17   nextWakeup      2020-02-26 12:28:17
     2020-02-26 13:43:07   state           Error


Das Logfile gibt folgendes aus:

2020.02.26 13:43:07 3: FHEMWEB WEB CSRF error: csrf_187673566890253 ne csrf_284899267770936 for client WEB_192.168.187.5_52097 / command shutdown restart. For details see the csrfToken FHEMWEB attribute.
2020.02.26 13:43:07 2: Kalender - ERROR - "listcal" SendQueue index "1" not executed. It seems to be a permanent error. Exclude it from new send attempt !
2020.02.26 13:43:07 2: Kalender - ERROR - "listcal" SendQueue index "2" not executed. It seems to be a permanent error. Exclude it from new send attempt !
2020.02.26 13:43:07 1: PERL WARNING: Use of uninitialized value $idx in hash element at ./FHEM/57_SSCal.pm line 941.
2020.02.26 13:43:07 1: PERL WARNING: Use of uninitialized value $idx in hash element at ./FHEM/57_SSCal.pm line 942.
2020.02.26 13:43:07 1: PERL WARNING: Use of uninitialized value $idx in hash element at ./FHEM/57_SSCal.pm line 950.
2020.02.26 13:43:07 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/57_SSCal.pm line 952.
2020.02.26 13:43:07 1: PERL WARNING: Use of uninitialized value $idx in concatenation (.) or string at ./FHEM/57_SSCal.pm line 952.
2020.02.26 13:43:07 2: Kalender - ERROR - "" SendQueue index "" not executed. It seems to be a permanent error. Exclude it from new send attempt !
2020.02.26 13:43:07 1: PERL WARNING: Argument "" isn't numeric in sort at ./FHEM/57_SSCal.pm line 1020.


Vielleicht kann mir jemand helfen.

Gruß Roman
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 26 Februar 2020, 13:55:12
Wenn es das Paket für deine Syno nicht gibt sieht es vermutlich nicht so gut aus.  :'(
Möglicherweise ist in dem Fall die API nicht vorhanden. Die Fehlermeldung oben riecht danach.
Sehr schade ....

Sicherheitshalber mach Mal ein Set ... listSendqueue und Zeig uns was da erscheint.

Edit: die gezeigten Readings kann ich nicht richtig deuten. Die gehören nicht alle zu SSCal per default.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: romakrau am 26 Februar 2020, 14:09:58
Das wäre aber schade. Ewig dieser Zwang zum Neukauf  >:(

Hier nun der Output of listSendqueue:

=> retryCount=>1, forbidSend=>malformed JSON string received from Synology Calendar Server
1 => retryCount=>1, params=>&is_todo=true&is_evt=true, opmode=>listcal, method=>list, forbidSend=>malformed JSON string received from Synology Calendar Server, api=>CALCAL
2 => retryCount=>1, params=>&is_todo=true&is_evt=true, opmode=>listcal, method=>list, forbidSend=>malformed JSON string received from Synology Calendar Server, api=>CALCAL
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 26 Februar 2020, 14:14:34
Hmm, hatte ich vermutet. Wenn du verbose 5 einschaltest und calUpdate ausführst, wirst du vermutlich als Antwort von der Syno bekommen dass die angeforderte Seite nicht existiert 404 mit einem ellenlangen Text (sinngemäß).

Manchmal kann man Pakete von Hand installieren wenn es die per Download für die CPU Architektur gibt. Kann ich aber erst heute Abend schauen, weiß den Link nicht aus dem Kopf.

Edit: diese Fehlereinträge kannst du mit purgeSendqueue entfernen.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: romakrau am 26 Februar 2020, 14:34:00
Hi ,
ich habe Hoffnung, siehe log. Muss vieleicht noch en User in die Gruppe Admin packen:
2020.02.26 14:28:11 4: https://192.168.187.200:5006/webapi/query.cgi?api=SYNO.API.Info&method=Query&version=1&query=SYNO.API.Auth,SYNO.Cal.Cal,SYNO.Cal.Event,SYNO.Cal.Sharing,SYNO.Cal.Todo,SYNO.API.Info: HTTP response code 401
2020.02.26 14:28:11 5: HttpUtils https://192.168.187.200:5006/webapi/query.cgi?api=SYNO.API.Info&method=Query&version=1&query=SYNO.API.Auth,SYNO.Cal.Cal,SYNO.Cal.Event,SYNO.Cal.Sharing,SYNO.Cal.Todo,SYNO.API.Info: Got data, length: 401
2020.02.26 14:28:11 5: HttpUtils response header:
HTTP/1.1 401 Authorization Required
Date: Wed, 26 Feb 2020 13:28:11 GMT
Server: Apache
WWW-Authenticate: Basic realm="SYNO_WebDAV Storage"
Content-Length: 401
Connection: close
Content-Type: text/html; charset=iso-8859-1
2020.02.26 14:28:11 5: Starting notify loop for Kalender, 1 event(s), first is Error
2020.02.26 14:28:11 5: End notify loop for Kalender
2020.02.26 14:28:11 4: Kalender - Data returned: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>401 Authorization Required</title>
</head><body>
<h1>Authorization Required</h1>
<p>This server could not verify that you
are authorized to access the document
requested.  Either you supplied the wrong
credentials (e.g., bad password), or your
browser doesn't understand how to supply
the credentials required.</p>
</body></html>

Gruß
Roman
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 26 Februar 2020, 14:37:55
Admingroup muss sein, ist auch Voraussetzung mit der API. 
Bin Mal gespannt  :)
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 26 Februar 2020, 14:43:01
Aber das sieht nach WebDAV aus. Passt auch zum 5006 Port. Und die Abfrage der APIs funktioniert normalerweise vor dem Login. Der kommt später.
Wenn es mit der API klappen sollte, dann mit Port 5000 bzw. 5001 für HTTPS.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: romakrau am 26 Februar 2020, 16:58:21
Hallo Heiko,

habe din Port auf 5001 geändert und bekomme folgenden Output:

2020.02.26 16:55:35 3: Kalender - no session ID found - get new one
2020.02.26 16:55:35 3: Kalender - no session ID found - get new one
2020.02.26 16:55:36 2: Kalender - ERROR - "listcal" SendQueue index "1" not executed. It seems to be a permanent error. Exclude it from new send attempt !
2020.02.26 16:55:36 2: Kalender - ERROR - "listcal" SendQueue index "2" not executed. It seems to be a permanent error. Exclude it from new send attempt !
2020.02.26 16:55:36 2: Kalender - ERROR - "" SendQueue index "" not executed. It seems to be a permanent error. Exclude it from new send attempt !

Allerdings läuft die Datenübernahme bis zu einem bestimmten Punkt und bricht dann ab:

Readings
Error

malformed JSON string received from Synology Calendar Server

2020-02-26 16:55:36
Errorcode

900

2020-02-26 16:55:36
QueueLength

3

2020-02-26 16:55:36
lastUpdate

2020-02-26 16:42:05

2020-02-26 16:42:06
modeAlarm


2020-02-26 15:36:10
modeAlarmOrStart


2020-02-26 15:36:10
modeAlarmed


2020-02-26 15:36:10
modeChanged


2020-02-26 15:36:10
modeEnd


2020-02-26 15:36:10
modeEnded


2020-02-26 15:36:10
modeStart


2020-02-26 15:36:10
modeStarted


2020-02-26 15:36:10
modeUpcoming

158270647599muellmaxde;158270647584muellmaxde;1582706475108muellmaxde;158270647543muellmaxde;158270647566muellmaxde;1582706475101muellmaxde;158270647553muellmaxde;15827064756muellmaxde;158270647592muellmaxde;158270647533muellmaxde;1582706475111muellmaxde;158270647523muellmaxde;158270647561muellmaxde;158270647573muellmaxde;158270647597muellmaxde;158270647588muellmaxde;158270647513muellmaxde;158270647585muellmaxde;158270647560muellmaxde;15827064758muellmaxde;158270647522muellmaxde;158270647519muellmaxde;158270647572muellmaxde;158270647537muellmaxde;1582706475105muellmaxde;158270647579muellmaxde;158270647586muellmaxde;158270647512muellmaxde;1582706475103muellmaxde;158270647557muellmaxde;158270647529muellmaxde;158270647564muellmaxde;158270647547muellmaxde;1582706475102muellmaxde;158270647539muellmaxde;158270647517muellmaxde;158270647580muellmaxde;158270647542muellmaxde;158270647568muellmaxde;158270647565muellmaxde;1582706475106muellmaxde;158270647552muellmaxde;158270647581muellmaxde;158270647527muellmaxde;158270647549muellmaxde;158270647559muellmaxde;1582706475112muellmaxde;158270647593muellmaxde;158270647532muellmaxde;158270647577muellmaxde;158270647534muellmaxde;158270647590muellmaxde;158270647578muellmaxde;158270647575muellmaxde;158270647525muellmaxde;158270647528muellmaxde;158270647544muellmaxde;158270647567muellmaxde;158270647591muellmaxde;1582706475104muellmaxde;158270647554muellmaxde;158270647583muellmaxde;158270647515muellmaxde;158270647518muellmaxde;158270647555muellmaxde;158270647558muellmaxde;158270647562muellmaxde;15827064759muellmaxde;158270647548muellmaxde;158270647545muellmaxde;1582706475109muellmaxde;158270647514muellmaxde;158270647574muellmaxde;158270647535muellmaxde;158270647596muellmaxde;158270647538muellmaxde;158270647524muellmaxde;158270647569muellmaxde;158270647556muellmaxde;158270647571muellmaxde;158270647563muellmaxde;158270647546muellmaxde;15827064753muellmaxde;1582706475110muellmaxde;158270647510muellmaxde;158270647587muellmaxde;158270647521muellmaxde;1582706475100muellmaxde;158270647570muellmaxde;15827064755muellmaxde;15827064754muellmaxde;158270647536muellmaxde;158270647598muellmaxde;158270647595muellmaxde;158270647520muellmaxde;158270647511muellmaxde;158270647530muellmaxde;158270647594muellmaxde;158270647551muellmaxde;158270647541muellmaxde;158270647589muellmaxde;158270647576muellmaxde;158270647526muellmaxde;15827064751muellmaxde;158270647540muellmaxde;158270647550muellmaxde;15827064757muellmaxde;158270647531muellmaxde;15827064752muellmaxde;158270647582muellmaxde;158270647516muellmaxde;1582706475107muellmaxde

2020-02-26 16:42:06
nextUpdate

Manual

2020-02-26 16:55:30
nextWakeup

2020-02-26 17:42:05

2020-02-26 16:42:06
state

Error

2020-02-26 16:55:36


Gruß Roman
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: romakrau am 26 Februar 2020, 17:02:02
Vielleicht hilft das weiter:
https://192.168.187.200:5000/webapi/query.cgi?api=SYNO.API.Info&method=Query&version=1&query=SYNO.API.Auth,SYNO.Cal.Cal,SYNO.Cal.Event,SYNO.Cal.Sharing,SYNO.Cal.Todo,SYNO.API.Info: Can't connect(2) to https://192.168.187.200:5000: SSL connect attempt failed error:1408F10B:SSL routines:ssl3_get_record:wrong version number
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: romakrau am 26 Februar 2020, 17:05:11
n. Versuch auf Port 5000:
Readings
Error

none

2020-02-26 17:03:01
Errorcode

none

2020-02-26 17:03:01
QueueLength

2

2020-02-26 17:03:05
lastUpdate

2020-02-26 16:42:05

2020-02-26 16:42:06
modeAlarm


2020-02-26 15:36:10
modeAlarmOrStart


2020-02-26 15:36:10
modeAlarmed


2020-02-26 15:36:10
modeChanged


2020-02-26 15:36:10
modeEnd


2020-02-26 15:36:10
modeEnded


2020-02-26 15:36:10
modeStart


2020-02-26 15:36:10
modeStarted


2020-02-26 15:36:10
modeUpcoming

158270647599muellmaxde;158270647584muellmaxde;1582706475108muellmaxde;158270647543muellmaxde;158270647566muellmaxde;1582706475101muellmaxde;158270647553muellmaxde;15827064756muellmaxde;158270647592muellmaxde;158270647533muellmaxde;1582706475111muellmaxde;158270647523muellmaxde;158270647561muellmaxde;158270647573muellmaxde;158270647597muellmaxde;158270647588muellmaxde;158270647513muellmaxde;158270647585muellmaxde;158270647560muellmaxde;15827064758muellmaxde;158270647522muellmaxde;158270647519muellmaxde;158270647572muellmaxde;158270647537muellmaxde;1582706475105muellmaxde;158270647579muellmaxde;158270647586muellmaxde;158270647512muellmaxde;1582706475103muellmaxde;158270647557muellmaxde;158270647529muellmaxde;158270647564muellmaxde;158270647547muellmaxde;1582706475102muellmaxde;158270647539muellmaxde;158270647517muellmaxde;158270647580muellmaxde;158270647542muellmaxde;158270647568muellmaxde;158270647565muellmaxde;1582706475106muellmaxde;158270647552muellmaxde;158270647581muellmaxde;158270647527muellmaxde;158270647549muellmaxde;158270647559muellmaxde;1582706475112muellmaxde;158270647593muellmaxde;158270647532muellmaxde;158270647577muellmaxde;158270647534muellmaxde;158270647590muellmaxde;158270647578muellmaxde;158270647575muellmaxde;158270647525muellmaxde;158270647528muellmaxde;158270647544muellmaxde;158270647567muellmaxde;158270647591muellmaxde;1582706475104muellmaxde;158270647554muellmaxde;158270647583muellmaxde;158270647515muellmaxde;158270647518muellmaxde;158270647555muellmaxde;158270647558muellmaxde;158270647562muellmaxde;15827064759muellmaxde;158270647548muellmaxde;158270647545muellmaxde;1582706475109muellmaxde;158270647514muellmaxde;158270647574muellmaxde;158270647535muellmaxde;158270647596muellmaxde;158270647538muellmaxde;158270647524muellmaxde;158270647569muellmaxde;158270647556muellmaxde;158270647571muellmaxde;158270647563muellmaxde;158270647546muellmaxde;15827064753muellmaxde;1582706475110muellmaxde;158270647510muellmaxde;158270647587muellmaxde;158270647521muellmaxde;1582706475100muellmaxde;158270647570muellmaxde;15827064755muellmaxde;15827064754muellmaxde;158270647536muellmaxde;158270647598muellmaxde;158270647595muellmaxde;158270647520muellmaxde;158270647511muellmaxde;158270647530muellmaxde;158270647594muellmaxde;158270647551muellmaxde;158270647541muellmaxde;158270647589muellmaxde;158270647576muellmaxde;158270647526muellmaxde;15827064751muellmaxde;158270647540muellmaxde;158270647550muellmaxde;15827064757muellmaxde;158270647531muellmaxde;15827064752muellmaxde;158270647582muellmaxde;158270647516muellmaxde;1582706475107muellmaxde

2020-02-26 16:42:06
nextUpdate

Manual

2020-02-26 17:03:01
nextWakeup

2020-02-26 17:42:05

2020-02-26 16:42:06
state

Error

2020-02-26 17:03:07


Jetzt lass ich es erstmal gut sein. SOnst wird der Thread zu lang.
Gruß
Roman
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 26 Februar 2020, 17:09:16
Du hast HTTPS angegeben und Port 5000. Das passt im Synology Standard nicht zusammen. 5000 ist http.

So nebenbei, du hast komische Readings die es teilweise per Standard im Modul garnicht gibt. Was hast du denn definiert ?

Ein list Kalender gibt Auskunft.

Aber ich bin generell skeptisch ob es ohne das Calendar Package überhaupt funktioniert ...
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 27 Februar 2020, 22:28:22
Hallo zusammen,

das Modul habe ich finalisiert, die Commandref erstellt und noch ein paar kleinere Fixes vorgenommen.
Ist im contrib.

Wenn ich/ihr kein Problem mehr feststellen sollte, checke ich das Modul zeitnah ins SVN ein.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 28 Februar 2020, 16:16:11
Die initiale Version 2.0.0 ist nun eingecheckt und morgen früh im Regelupdate.
Falls man automatisch at-Devices erstellen lässt um Befehlsausführungen zu planen, wird der Inhalt von Summary aus dem Termin als alias im generierten at verwendet. Damit sieht man am Namen des at gleich wozu es erstellt wurde.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: romakrau am 29 Februar 2020, 16:25:35
Der Zugriff auf die neue Version ist nicht möglich:

2020.02.29 16:19:37 UPD FHEM/57_SSCal.pm
2020.02.29 16:19:37 1 : open ./FHEM/57_SSCal.pm failed: Permission denied, trying to restore the previous version and aborting the update

Gruß
Roman
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 29 Februar 2020, 16:32:08
Hallo Roman,

lösche die alte Version einfach aus /opt/fhem/FHEM oder setze die Rechte auf die Datei als root (oder sudo):


chmod 775 57_SSCal.pm


Danach update .. fertig.

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: romakrau am 01 März 2020, 09:55:21
Danke Heiko,
zu meinem Problem mit dem Kalender aus der WebDAV von meinem DS212+ habe ich herausgefunden das der Zugriff soweit funktioniert das zumindest die UID der ICS-Daten gelesen werden. Werden im Beitrag 118 als 123456nnnnmuellmaxde angezeigt.
Ist aber egal ich werde die Termine als ICS Datei exportieren.  Bei statischen Daten ist das ein gangbarer Weg. Eine neue DS218+ kommt mir erstmal nicht ins Haus.
Danke und Gruß Roman
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 05 März 2020, 22:12:59
Hallo zusammen,

mit dem aktuellen Update sind die Möglichkeiten für eigene Steuerungen über SSCal noch erweitert worden. Nun gibt es zum Beipiel die Möglichkeit, automatisiert Urlaube/Abwesenheiten in eine holiday  Steuerdatei updaten zu lassen und somit via  holiday2we bzw. $we die Haussteuerung zu beeinflussen.

Im Wiki:
https://wiki.fhem.de/wiki/SSCal_-_Integration_des_Synology_Calendar_Servers#Urlaub.2FAbwesenheiten_automatisiert_in_holiday_Device_Steuerdatei_.C3.BCbernehmen

habe ich beschrieben wie man das machen kann. Das Beispiel kann eine Grundlage für eigene Erweiterungen sein.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Wzut am 06 März 2020, 07:27:52
alter Schwede, das Thema hat dich ja richtig gepackt ... und nun muß ich in meinem Alter schon wieder was dazulernen .... :) :) :)
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 06 März 2020, 09:20:47
Moin Wzut,

hatte grad so einen Flow  :D
Ja, in unserem Alter hat man es nicht leicht  ;) .... aber so bleiben wir (hoffentlich) noch eine Weile fit im Hirn  ;D  8)

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: rohlande am 12 März 2020, 19:26:54
Hallo Heiko,

Gibts was neues von Syno bezüglich:

Error

2-step verification code required


Möchte ungern meine Sicherheitsstufe herabsetzten!

VG denny
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 12 März 2020, 19:39:52
Hallo Denny,

nein gibt noch nichts Neues. Aber ich habe eine Anfrage an Syno laufen. Mal sehen was die Devs antworten.
Das DSM 7 ist ja in der Ankündigung. Vielleicht tut sich in diesem Rahmen etwas.

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Gidiano am 19 März 2020, 07:05:13
Hallihallo,

super Modul!
Leider werden meine credentials mit Fehler 407 nicht akzeptiert, ich tippe mal, dass es an der 2FA für die Gruppe admin liegt :-(
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 19 März 2020, 08:18:53
Moin,

ja, die API unterstützt momentan keine 2FA. Vorbereitet ist sie allerdings dafür wie ich der Doku gesehen habe.
Ich habe eine diesbzügliche Anfrage an Syno laufen was mit 2FA Unterstützung geplant ist. Abhängig davon werde ich auch nochmal nachhaken ob man die Notwendigkeit der admin-Mitgliedschaft des verwendeten Users nicht seitens Syno umbauen kann. Mir pesönlich ist dieser Zusammnhang nicht klar bzw. müsste m.M. nach nicht sein, ist aber momentan gegeben. Wenn ihr versucht ein nicht admin-Gruppenmitglied zu verwenden, klappt das nicht.

Tut mir leid nichts postiveres dazu mitteilen zu können, aber wir bleiben dran  :)

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Gidiano am 19 März 2020, 08:35:10
Danke für Deine umfangreiche Info!
Wenn Syno da was täte, wäre das natürlich fein. Sie raten ja dringend selbst zur 2FA für die Admin Accounts.
Harren wir also der Dingen.
Danke für Deinen enormen Einsatz!

Viele Grüße
Christian
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: rohlande am 19 März 2020, 08:41:26
Zitat von: Gidiano am 19 März 2020, 08:35:10
Danke für Deine umfangreiche Info!
Wenn Syno da was täte, wäre das natürlich fein. Sie raten ja dringend selbst zur 2FA für die Admin Accounts.
Harren wir also der Dingen.
Danke für Deinen enormen Einsatz!

Viele Grüße
Christian

Diesem Lob schließe ich mich 100% an!
Nur durch solche User hier ist es möglich solche Module zu erhalten und der Allgemeinheit zugäglich zu machen.
Besonders außergewöhnlich ist die WIKI Doku dazu.
Vielen Dank für Deinen Einsatz Heiko.
VG Denny
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 19 März 2020, 08:49:40
Vielen herzlichen Dank !  :D
Es freut mich wirklich sehr was ihr schreibt, zumal ich auch "nur" ein Hobbyprogrammierer bin und es mir auch nicht so as dem Ärmel rutscht.
Aber es macht Spaß wenn es anderen hilft die (Automatisierungs)Welt ein bisschen bunter, leichter und angenehmer zu machen.

Dank euch !

LG,
Heiko 
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 24 April 2020, 23:39:39
Hallo zusammen,

Synology hat eine neue Calendar Version 2.3.4-0631 herausgebracht.
Die Version ist NICHT mit dem Modul kompatibel.

Ich arbeite an der Anpassung.
Bis dahin bitte das Paket auf Synology nicht updaten.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 25 April 2020, 19:56:48
Hallo zusammen,

habe nun die mit Calendar Version 2.3.4-0631 kompatible Version in mein contrib geladen.
Ich werde die V noch einchecken, aber vorab könnt ihr zum Download in der FHEMWEB Kommandozeile inklusive der Ausführungszeichen angeben:


"wget -qO ./FHEM/57_SSCal.pm https://svn.fhem.de/fhem/trunk/fhem/contrib/DS_Starter/57_SSCal.pm"


Danach restarten.

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: THZ_Haus am 26 April 2020, 16:53:25
Hallo,
bei regelmäßigen Terminen werden leider Falsche Start/End Daten angezeigt.
Im Reading: 70_repeatRule

FREQ=MONTHLY;WKST=TU

wird dieses als Serientermin erkannt, das Datum aber nicht angepasst.

Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 26 April 2020, 17:30:09
Hallo THZ_Haus,

könnte sein dass ich diesen Serientyp noch nicht implementiert habe.
Bei meinem Synology Kalender gibt es nur monatliche Wiederholungen mit Wiederholungen nach

"Tag des Monats"  (FREQ=MONTHLY;COUNT=10;BYMONTHDAY=26)

bzw. nach

"Tag der Woche" (FREQ=MONTHLY;COUNT=10;BYDAY=4SU)

Gibt es in deinem Syno Kalender noch weitere Möglichkeiten bzw. womit hast du diese Termine erstellt ?
Nur damit ich es nachvollziehen kann. Im (meinem) Syno Kalender kann keine Termine mit Wiederholungstyp WKST erstellen.
Wahrscheinlich muss ich es noch nachimplementieren.


LG,
Heiko

Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: THZ_Haus am 26 April 2020, 17:52:09
Hallo DS_Starter, habe den Termin mit "Calendar" von Synology erstellt.
Es wurde aber auch kein Enddatum angegeben.
Im Anhang habe ich meine Einstellungen angefügt.
MfG
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 26 April 2020, 18:17:14
Das ist drollig, habe es genauso nachgestellt (siehe Anhang) und bekomme trotzdem Recurring Termine des Typs:

0_70_repeatRule  FREQ=MONTHLY;BYMONTHDAY=26

Klappt dann natürlich.
Muss ich irgendwie versuchen nachzuvollziehen.
Hilft mir jetzt zwar nicht, aber aus Interesse ... welche Synology / Calendar Version nutzt du ?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: THZ_Haus am 26 April 2020, 18:46:58
Hallo,
Version: 2.3.4 - 0631
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 26 April 2020, 20:06:05
Also irgendwie komme ich mit deiner Angabe nicht klar.
Habe nochmal in der RFC nachgelesen, die Angabe WKST sagt lediglich wann die Woche beginnt, bei dir also WKST=TU = Dienstag. Dienstag ? Really ?

Die Wiederholungsangabe, also BYMONTHDAY oder BYDAY, fehlt bei dir.

Stelle in deinem SSCal bitte verbose 5 ein und mache ein calUpdate. Im Log siehst du dann was die Syno liefert:

Zitat
2020.04.26 20:02:34.128 4: SynCal3 - ####################################################
2020.04.26 20:02:34.128 4: SynCal3 - ###      start Synology Calendar operation         
2020.04.26 20:02:34.129 4: SynCal3 - ####################################################
2020.04.26 20:02:34.141 4: SynCal3 - Time selection start: 2020-04-23 00:00:00
2020.04.26 20:02:34.142 4: SynCal3 - Time selection end: 2020-10-24 00:00:00
2020.04.26 20:02:34.142 4: SynCal3 - API hash values already set - ignore get apisites
2020.04.26 20:02:34.143 4: SynCal3 - start SendQueue entry index "28" (eventlist) for operation.
2020.04.26 20:02:34.143 5: SynCal3 - HTTP-Call will be done with timeout: 20 s
2020.04.26 20:02:34.144 4: SynCal3 - Call-Out: https://192.168.2.10:5001/webapi/entry.cgi?api=SYNO.Cal.Event&version=3&method=list&cal_id_list=["/Heiko/igiwulwq/"]&start=1587592800&end=1603490400&list_repeat=true&_sid=aSFVS1y6VTPfk14A0MIN235902
2020.04.26 20:02:34.334 5: SynCal3 - JSON returned: {
  'data' => {
              '/Heiko/igiwulwq/' => [
                                      {
                                        'is_repeat_evt' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
                                        'dtend' => '20200427',
                                        'summary' => 'Test Monthly',
                                        'evt_id' => 2069,
                                        'is_all_day' => $VAR1->{'data'}{'/Heiko/igiwulwq/'}[0]{'is_repeat_evt'},
                                        'owner' => 1025,
                                        'gps' => undef,
                                        'from_syno_app_url' => undef,
                                        'logged_user' => 1025,
                                        'description' => '',
                                        'caldav_type' => 'VEVENT',
                                        'dtstart' => '20200426',
                                        'class' => 'PUBLIC',
                                        'evt_color' => '',
                                        'dav_etag' => 'bfwjfapttzwuvtraqzgpsmohghzeqcni',
                                        'location' => '',
                                        'evt_notify_setting' => [
                                                                  {
                                                                    'alarm_ical' => 'BEGIN:VALARM
ACTION:DISPLAY
DESCRIPTION:This is an event reminder
TRIGGER;VALUE=DURATION:-PT3H
END:VALARM',
                                                                    'time_format' => 'DURATION',
                                                                    'recurrence-id' => '',
                                                                    'alarm_action' => 'DISPLAY',
                                                                    'time_value' => '-PT3H'
                                                                  }
                                                                ],
                                        'percent_complete' => undef,
                                        'modify_time' => '2020-04-26 18:01:46.719937+00',
                                        'priority_order' => 1032,
                                        'ical_uid' => '20200426T200131-ad288c94@172.17.0.1',
                                        'evt_repeat_setting' => {
                                                                  'repeat_rule' => 'FREQ=MONTHLY;BYMONTHDAY=26'
                                                                },
                                        'priority' => undef,
                                        'tz_id' => undef,
                                        'status' => undef,
                                        'owner_name' => 'Heiko',
                                        'evt_ical' => 'BEGIN:VCALENDAR
........

Wichtig ist der rote Teil, der die Wiederholung des Events liefert.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: THZ_Haus am 26 April 2020, 20:20:08
Hallo,
'evt_repeat_setting' => {
                                                                       'repeat_rule' => 'FREQ=MONTHLY;WKST=TU'
                                                                     },
                                             'gps' => undef,
                                             'owner' => 1028

Wie
ZitatDie Wiederholungsangabe, also BYMONTHDAY oder BYDAY, fehlt bei dir.
fehlen diese Daten.

Habe den Serientermin kpl. neu erstellt.
Jetzt klappts..
Evtl. wurde der Serientermin noch mit einer "älteren Kalender" version angelegt, und daher fehlten ihm jetzt die Wiederholungsangaben.
Danke trotzdem für die Mühen!


Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 26 April 2020, 21:14:24
Freut mich  :)
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 16 Mai 2020, 17:46:05
Hallo zusammen,

ich habe eine neue Version 2.4.0 ins contrib geladen.
Unter der Haube hat sich programmtechnisch so einiges geändert. Zum Beispiel ist das Modul auf Perl Packages umgestellt.
Für den User ändert sich nichts, außer eine Sache.

Falls ihr euch einen Weblink mit der Kalendergrafik angelegt haben solltet, also etwa so etwas:

     define SynCal.Abfall.WBL weblink htmlCode { SSCal_calAsHtml ("SynCal1","WEB.BLACK") }

Dann müsst ihr bitte nach download des neuen Moduls vor dem Restart diesen Weblink so abändern:

     define SynCal.Abfall.WBL weblink htmlCode { FHEM::SSCal::calAsHtml ("SynCal1","WEB.BLACK") }

Sonst wird dieser Weblink nach dem Restart nicht mehr funktionieren.
Für eigene Kreationen gilt das gleiche.

Ich warte mit dem Check-In noch etwas. Wer will kann in Ruhe testen und diese eventuelle Umstellung vornehmen.
Dann gibt es nach dem Rollout keinen Stress.

Download über die Kommandozeile:

"wget -qO ./FHEM/57_SSCal.pm https://svn.fhem.de/fhem/trunk/fhem/contrib/DS_Starter/57_SSCal.pm"

Und dann restart wie üblich.

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 24 Mai 2020, 09:00:50
Die neue Version ist eingecheckt und ab morgen früh im Update enthalten. Bitte obigen Hinweis beachten !
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Fredi69 am 06 Juli 2020, 10:21:53
Erst einmal vielen herzlichen Dank für diese gelungene Integration des Synology Kalender in fhem, großes Lob!
Ich nutze die Funktion der Urlaub/Abwesenheiten automatisiert in holiday Device Steuerdatei übernimmt.
Ich würde gerne die Signalwörter anpassen, bin aber in Perl nicht so fit.
Im Moment steht noch der Standard drin:
  my @SigList        = qw/Urlaub Abwesend/;   
Wie kann ich die SigList erweitern, so dass auch allen Einträge die mit "ferien" enden (Sommerferien, Herbstferien, usw.), erkannt werden?

Vielen Dank
Fredi
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 06 Juli 2020, 15:10:47
Hallo Fredi,

du ergänzt die Liste einfach mit weiteren Suchwörtern getrennt durch ein Leerzeichen.
Also z.B.


my @SigList        = qw/Urlaub Abwesend ferien/;


Die Ausdrücke sollten aber schon recht eindeutig sein. In dem Beispiel würde zum Beispiel auch der Term "Autohaus Betriebsferien beachten" gematcht. Besser ist es dann vllt. alles explizit einzutragen, also:


my @SigList        = qw/Urlaub Abwesend Sommerferien Winterferien/;


Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: THZ_Haus am 15 Dezember 2020, 17:08:57
Hallo,
im Log von FHEM stehen folgende Infos:
2.15 16:33:57 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in numeric le (<=) at ./FHEM/57_SSCal.pm line 1813.
2020.12.15 16:33:57 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in subtraction (-) at ./FHEM/57_SSCal.pm line 1814.
2020.12.15 16:33:57 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in addition (+) at ./FHEM/57_SSCal.pm line 1817.
2020.12.15 16:53:57 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in numeric le (<=) at ./FHEM/57_SSCal.pm line 1813.
2020.12.15 16:53:57 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in subtraction (-) at ./FHEM/57_SSCal.pm line 1814.
2020.12.15 16:53:57 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in addition (+) at ./FHEM/57_SSCal.pm line 1817.

Kann mir da aber keinen reim raus machen!?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 15 Dezember 2020, 17:32:17
Das scheint ein Fehler im Modul zu sein. Wahrscheinlich handelt es sich um einen sich monatlich an einem X.Wochentag zu wiederholenden Event zu sein ?

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: THZ_Haus am 15 Dezember 2020, 17:33:54
Hallo,
ZitatWahrscheinlich handelt es sich um einen sich monatlich an einem X.Wochentag zu wiederholenden Event zu sein ?
Wo/Wie kann ich das nachgucken?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 15 Dezember 2020, 17:37:45
Schaust du dir ein List vom Device an. Das ist interessant:

     2020-12-15 17:30:02   0_01_Summary    Testeintrag monatlich
     2020-12-15 17:30:02   0_05_Begin      2020-12-20 18:30:00
     2020-12-15 17:30:02   0_10_End        2020-12-20 19:30:00
     2020-12-15 17:30:02   0_15_Timezone   Europe/Berlin
     2020-12-15 17:30:02   0_17_Status     upcoming
     2020-12-15 17:30:02   0_20_daysLeft   5
     2020-12-15 17:30:02   0_25_daysLeftLong in 5 Tagen
     2020-12-15 17:30:02   0_30_Weekday    Sontag
     2020-12-15 17:30:02   0_50_isAllday   0
     2020-12-15 17:30:02   0_55_isRepeatEvt 1
     2020-12-15 17:30:02   0_70_repeatRule FREQ=MONTHLY;COUNT=6;BYDAY=3TU
     2020-12-15 17:30:02   0_80_0_notifyDateTime 2020-12-19 18:30:00
     2020-12-15 17:30:02   0_90_calName    Testkalender
     2020-12-15 17:30:02   0_98_EventId    2129
     2020-12-15 17:30:02   0_99_---------------------- --------------------------------------------------------------------

Ist natürlich nicht einfach wenn du viele Events in deinem selektierten Datumbereich hast. Man kann es temporär etwas eingrenzen mit den attr cutLaterDays, cutOlderDays.

Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: THZ_Haus am 15 Dezember 2020, 17:47:01
Sieht bei mir so aus:
Zitat1_17_Status
ended
2020-12-15 17:40:39
1_20_daysLeft
0
2020-12-15 17:40:39
1_25_daysLeftLong
in 0 Tagen
2020-12-15 17:40:39
1_30_Weekday
Dienstag
2020-12-15 17:40:39
1_50_isAllday
0
2020-12-15 17:40:39
1_55_isRepeatEvt
1
2020-12-15 17:40:39
1_70_repeatRule
FREQ=WEEKLY;WKST=MO;BYDAY=TU

Habe diesen Serien Termin kpl. gelöscht, jetzt mal abwarten ob die Meldungen wieder auftreten!
Danke für die schnelle Hilfe!
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 15 Dezember 2020, 17:49:59
Meldest dich einfach nochmal wenn es wiederkommt.
Aber ich schau mir die Stelle im Modul auch mal an.

LG
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: mobiljoe123 am 15 Dezember 2020, 19:49:07
Hallo Heiko,

mein Kalender "Mülltermine" wird nicht angezeigt. Kann es an den Umlauten liegen?

usedCalendars Ferien_Feiertage,OfficeCal,FamCal,M�lltermine

list
Internals:
   CREDENTIALS Set
   DEF        192.168.123.62
   FUUID      5e730d89-f33f-95bd-5100-ba4d19e331cabb6b
   FVERSION   57_SSCal.pm:v2.4.6-s23113/2020-11-08
   MODE       Automatic
   MODEL      Diary
   NAME       Terminkalender
   NR         434
   OPMODE     
   PROTOCOL   http
   RESEND     next planned SendQueue start: immediately by next entry
   SERVERADDR 192.168.123.62
   SERVERPORT 5000
   STATE      done
   TYPE       SSCal
   HELPER:
     CALFETCHED 1
     CREDENTIALS \[WzdY5qY3ZYW4:ilIkohsYxdvp@
     LOGINRETRIES 0
     PACKAGE    FHEM::SSCal
     SID        Pilcx3Sqo0VVFepJCStO5VFbJKtRLy10hRsQ_rEtEKMbD5ksxaIJrq3OJx8R5q1wbmZ_DtKAXnGmLacEhZNpLY
     VERSION    2.4.6
     VERSION_API 1.2.0
     VERSION_ErrCodes 1.3.4
     VERSION_SMUtils 1.20.6
     cutLaterDays 10
     cutOlderDays 1
     event-on-update-reading .*Summary,state
     interval   3600
     room       Kalender
     tableFields Symbol,Begin,End,DaysLeft,Weekday,Summary,Status,Location,Calendar
     usedCalendars Ferien_Feiertage,OfficeCal,FamCal,M�lltermine
     CALENDARS:
       FamCal:
         description
         id         /admin/rrgtncvv/
         privilege  RW
         publicshareid rKVp7V42w
         type       Event
       Ferien_Feiertage:
         description
         id         /admin/lvwrtg/
         privilege  RW
         publicshareid 9A26Ds439
         type       Event
       Inbox:
         description
         id         /admin/home_todo/
         privilege  RW
         publicshareid
         type       ToDo
       My Calendar:
         description
         id         /admin/home/
         privilege  RW
         publicshareid
         type       Event
       M�lltermine:
       M�lltermine:
         description
         id         /admin/ntsrji/
         privilege  RW
         publicshareid F7clFhcz9
         type       Event
       OfficeCal:
         description
         id         /admin/magsgfma/
         privilege  RW
         publicshareid TqQ1FAPCa
         type       Event
     tableSpecs:
       smallScreenStyles darksmallscreen,smallscreen
       cellStyle:
         columnAlign left
         columnDaysLeftAlign center
         columnLocationAlign left
         columnSummaryAlign left
         columnSymbolAlign center
         headerAlign center
         noHeader   0
       columnStateIcon:
         HASH(0x71de278)
         HASH(0x71de2d8)
         HASH(0x71ddb88)
   OLDREADINGS:
   READINGS:
     2020-12-15 19:02:46   00_01_Summary   TXXX"
     2020-12-15 19:02:46   00_03_Description https://join.signal-iduna.de/lXXX9

Tel:
0231135XXX7,,2905938#
     2020-12-15 19:02:46   00_05_Begin     2020-12-14 09:00:00
     2020-12-15 19:02:46   00_10_End       2020-12-14 10:00:00
     2020-12-15 19:02:46   00_15_Timezone  Europe/Berlin
     2020-12-15 19:02:46   00_17_Status    ended
     2020-12-15 19:02:46   00_30_Weekday   Monday
     2020-12-15 19:02:46   00_35_Location  HXXXkonferenz
     2020-12-15 19:02:46   00_50_isAllday  0
     2020-12-15 19:02:46   00_55_isRepeatEvt 0
     2020-12-15 19:02:46   00_80_0_notifyDateTime 2020-12-14 08:50:00
     2020-12-15 19:02:46   00_90_calName   OfficeCal
     2020-12-15 19:02:46   00_95_IcalUID   9bd255ca-993d-42b2-b1ab-f00904154375
     2020-12-15 19:02:46   00_98_EventId   3589
     2020-12-15 19:02:46   00_99_---------------------- --------------------------------------------------------------------
     2020-12-15 19:02:46   01_01_Summary   TXXX"
     2020-12-15 19:02:46   01_03_Description -zugesagt-

NXXX0
     2020-12-15 19:02:46   01_05_Begin     2020-12-14 18:00:00
     2020-12-15 19:02:46   01_10_End       2020-12-14 19:00:00
     2020-12-15 19:02:46   01_15_Timezone  Europe/Amsterdam
     2020-12-15 19:02:46   01_17_Status    ended
     2020-12-15 19:02:46   01_30_Weekday   Monday
     2020-12-15 19:02:46   01_35_Location  HXXXonferenz
     2020-12-15 19:02:46   01_50_isAllday  0
     2020-12-15 19:02:46   01_55_isRepeatEvt 0
     2020-12-15 19:02:46   01_80_0_notifyDateTime 2020-12-14 17:50:00
     2020-12-15 19:02:46   01_90_calName   OfficeCal
     2020-12-15 19:02:46   01_95_IcalUID   20201210T141929-351e2ae7@192.168.123.62
     2020-12-15 19:02:46   01_98_EventId   3984
     2020-12-15 19:02:46   01_99_---------------------- --------------------------------------------------------------------
     2020-12-15 19:02:46   02_01_Summary   SXXXi
     2020-12-15 19:02:46   02_05_Begin     2020-12-15 00:00:00
     2020-12-15 19:02:46   02_10_End       2020-12-15 23:59:59
     2020-12-15 19:02:46   02_17_Status    started
     2020-12-15 19:02:46   02_20_daysLeft  0
     2020-12-15 19:02:46   02_25_daysLeftLong in 0 Tagen
     2020-12-15 19:02:46   02_30_Weekday   Tuesday
     2020-12-15 19:02:46   02_50_isAllday  1
     2020-12-15 19:02:46   02_55_isRepeatEvt 0
     2020-12-15 19:02:46   02_90_calName   FamCal
     2020-12-15 19:02:46   02_95_IcalUID   c6238fd2-e5af-40d4-aead-c23d00f0a98d
     2020-12-15 19:02:46   02_98_EventId   3987
     2020-12-15 19:02:46   02_99_---------------------- --------------------------------------------------------------------
     2020-12-15 19:02:46   03_01_Summary   XXXe
     2020-12-15 19:02:46   03_03_Description https://join.signal-iduna.de/miXXX3B

Tel:
0231135XXX7,,1208161#
     2020-12-15 19:02:46   03_05_Begin     2020-12-15 10:45:00
     2020-12-15 19:02:46   03_10_End       2020-12-15 12:00:00
     2020-12-15 19:02:46   03_15_Timezone  Europe/Amsterdam
     2020-12-15 19:02:46   03_17_Status    ended
     2020-12-15 19:02:46   03_20_daysLeft  0
     2020-12-15 19:02:46   03_25_daysLeftLong in 0 Tagen
     2020-12-15 19:02:46   03_30_Weekday   Tuesday
     2020-12-15 19:02:46   03_35_Location  HXXXonferenz
     2020-12-15 19:02:46   03_50_isAllday  0
     2020-12-15 19:02:46   03_55_isRepeatEvt 0
     2020-12-15 19:02:46   03_80_0_notifyDateTime 2020-12-15 10:35:00
     2020-12-15 19:02:46   03_90_calName   OfficeCal
     2020-12-15 19:02:46   03_95_IcalUID   20201214T080058-cbf9bd1a@192.168.123.62
     2020-12-15 19:02:46   03_98_EventId   3988
     2020-12-15 19:02:46   03_99_---------------------- --------------------------------------------------------------------
     2020-12-15 19:02:46   04_01_Summary   WXXXu"
     2020-12-15 19:02:46   04_03_Description https://global.gotowebinar.com/join/511XXX4

UXXXd
     2020-12-15 19:02:46   04_05_Begin     2020-12-15 19:00:00
     2020-12-15 19:02:46   04_10_End       2020-12-15 20:00:00
     2020-12-15 19:02:46   04_15_Timezone  Europe/Berlin
     2020-12-15 19:02:46   04_17_Status    started
     2020-12-15 19:02:46   04_20_daysLeft  0
     2020-12-15 19:02:46   04_25_daysLeftLong in 0 Tagen
     2020-12-15 19:02:46   04_30_Weekday   Tuesday
     2020-12-15 19:02:46   04_35_Location  HXXXinar
     2020-12-15 19:02:46   04_50_isAllday  0
     2020-12-15 19:02:46   04_55_isRepeatEvt 0
     2020-12-15 19:02:46   04_80_0_notifyDateTime 2020-12-15 18:40:00
     2020-12-15 19:02:46   04_90_calName   OfficeCal
     2020-12-15 19:02:46   04_95_IcalUID   5c61beef-f79a-4b58-ae48-c8277594e368
     2020-12-15 19:02:46   04_98_EventId   3985
     2020-12-15 19:02:46   04_99_---------------------- --------------------------------------------------------------------
     2020-12-15 19:02:46   05_01_Summary   XXXI
     2020-12-15 19:02:46   05_03_Description https://join.signal-iduna.de/mXXXD

Tel:
0231135XXX7,,7375849#
     2020-12-15 19:02:46   05_05_Begin     2020-12-16 09:00:00
     2020-12-15 19:02:46   05_10_End       2020-12-16 10:30:00
     2020-12-15 19:02:46   05_15_Timezone  Europe/Amsterdam
     2020-12-15 19:02:46   05_17_Status    upcoming
     2020-12-15 19:02:46   05_20_daysLeft  1
     2020-12-15 19:02:46   05_25_daysLeftLong in 1 Tagen
     2020-12-15 19:02:46   05_30_Weekday   Wednesday
     2020-12-15 19:02:46   05_35_Location  HXXXkonferenz
     2020-12-15 19:02:46   05_50_isAllday  0
     2020-12-15 19:02:46   05_55_isRepeatEvt 0
     2020-12-15 19:02:46   05_80_0_notifyDateTime 2020-12-16 08:50:00
     2020-12-15 19:02:46   05_90_calName   OfficeCal
     2020-12-15 19:02:46   05_95_IcalUID   20201214T080156-0101733c@192.168.123.62
     2020-12-15 19:02:46   05_98_EventId   3989
     2020-12-15 19:02:46   05_99_---------------------- --------------------------------------------------------------------
     2020-12-15 19:02:46   06_01_Summary   WXXX1"
     2020-12-15 19:02:46   06_03_Description https://join.signal-iduna.de/miXXX28

Per Telefon teilnehmen
0404124XXX7,,68233705#
     2020-12-15 19:02:46   06_05_Begin     2020-12-16 10:30:00
     2020-12-15 19:02:46   06_10_End       2020-12-16 12:00:00
     2020-12-15 19:02:46   06_15_Timezone  Europe/Amsterdam
     2020-12-15 19:02:46   06_17_Status    upcoming
     2020-12-15 19:02:46   06_20_daysLeft  1
     2020-12-15 19:02:46   06_25_daysLeftLong in 1 Tagen
     2020-12-15 19:02:46   06_30_Weekday   Wednesday
     2020-12-15 19:02:46   06_35_Location  HomeOffice
     2020-12-15 19:02:46   06_50_isAllday  0
     2020-12-15 19:02:46   06_55_isRepeatEvt 0
     2020-12-15 19:02:46   06_80_0_notifyDateTime 2020-12-16 10:20:00
     2020-12-15 19:02:46   06_90_calName   OfficeCal
     2020-12-15 19:02:46   06_95_IcalUID   20201201T104919-1be4d443@192.168.123.62
     2020-12-15 19:02:46   06_98_EventId   3914
     2020-12-15 19:02:46   06_99_---------------------- --------------------------------------------------------------------
     2020-12-15 19:02:46   07_01_Summary   ABGESAGT: FXXXe)
     2020-12-15 19:02:46   07_03_Description BC2-Status: Cancelled
     2020-12-15 19:02:46   07_05_Begin     2020-12-17 10:00:00
     2020-12-15 19:02:46   07_10_End       2020-12-18 17:00:00
     2020-12-15 19:02:46   07_15_Timezone  Europe/Berlin
     2020-12-15 19:02:46   07_17_Status    upcoming
     2020-12-15 19:02:46   07_20_daysLeft  2
     2020-12-15 19:02:46   07_25_daysLeftLong in 2 Tagen
     2020-12-15 19:02:46   07_30_Weekday   Thursday
     2020-12-15 19:02:46   07_35_Location  AXXXeke
     2020-12-15 19:02:46   07_50_isAllday  0
     2020-12-15 19:02:46   07_55_isRepeatEvt 0
     2020-12-15 19:02:46   07_90_calName   OfficeCal
     2020-12-15 19:02:46   07_95_IcalUID   8c6d4494-f92b-4b80-8081-a0938d0386c2
     2020-12-15 19:02:46   07_98_EventId   2859
     2020-12-15 19:02:46   07_99_---------------------- --------------------------------------------------------------------
     2020-12-15 19:02:46   08_01_Summary   XXXBK
     2020-12-15 19:02:46   08_03_Description https://join.signal-iduna.de/miXXX5K

Tel:
0231135XXX7,,9954949#
     2020-12-15 19:02:46   08_05_Begin     2020-12-17 10:00:00
     2020-12-15 19:02:46   08_10_End       2020-12-17 13:00:00
     2020-12-15 19:02:46   08_15_Timezone  Europe/Amsterdam
     2020-12-15 19:02:46   08_17_Status    upcoming
     2020-12-15 19:02:46   08_20_daysLeft  2
     2020-12-15 19:02:46   08_25_daysLeftLong in 2 Tagen
     2020-12-15 19:02:46   08_30_Weekday   Thursday
     2020-12-15 19:02:46   08_35_Location  HXXXkonferenz
     2020-12-15 19:02:46   08_50_isAllday  0
     2020-12-15 19:02:46   08_55_isRepeatEvt 0
     2020-12-15 19:02:46   08_80_0_notifyDateTime 2020-12-17 09:50:00
     2020-12-15 19:02:46   08_90_calName   OfficeCal
     2020-12-15 19:02:46   08_95_IcalUID   20201214T080326-7ab57313@192.168.123.62
     2020-12-15 19:02:46   08_98_EventId   3990
     2020-12-15 19:02:46   08_99_---------------------- --------------------------------------------------------------------
     2020-12-15 19:02:46   09_01_Summary   FXXXto
     2020-12-15 19:02:46   09_05_Begin     2020-12-17 15:30:00
     2020-12-15 19:02:46   09_10_End       2020-12-17 16:30:00
     2020-12-15 19:02:46   09_15_Timezone  Europe/Amsterdam
     2020-12-15 19:02:46   09_17_Status    upcoming
     2020-12-15 19:02:46   09_20_daysLeft  2
     2020-12-15 19:02:46   09_25_daysLeftLong in 2 Tagen
     2020-12-15 19:02:46   09_30_Weekday   Thursday
     2020-12-15 19:02:46   09_35_Location  RöXXXen
     2020-12-15 19:02:46   09_50_isAllday  0
     2020-12-15 19:02:46   09_55_isRepeatEvt 0
     2020-12-15 19:02:46   09_80_0_notifyDateTime 2020-12-17 13:30:00
     2020-12-15 19:02:46   09_90_calName   OfficeCal
     2020-12-15 19:02:46   09_95_IcalUID   20201214T175902-e9d1a8a2@192.168.123.62
     2020-12-15 19:02:46   09_98_EventId   3992
     2020-12-15 19:02:46   09_99_---------------------- --------------------------------------------------------------------
     2020-12-15 19:02:46   10_01_Summary   RXXX1
     2020-12-15 19:02:46   10_03_Description https://join.signal-iduna.de/micXXX4B

Per Telefon teilnehmen
0231135XXX7,,5702599#
     2020-12-15 19:02:46   10_05_Begin     2020-12-18 10:00:00
     2020-12-15 19:02:46   10_10_End       2020-12-18 11:00:00
     2020-12-15 19:02:46   10_15_Timezone  Europe/Berlin
     2020-12-15 19:02:46   10_17_Status    upcoming
     2020-12-15 19:02:46   10_20_daysLeft  3
     2020-12-15 19:02:46   10_25_daysLeftLong in 3 Tagen
     2020-12-15 19:02:46   10_30_Weekday   Friday
     2020-12-15 19:02:46   10_35_Location  HXXXekonferenz
     2020-12-15 19:02:46   10_50_isAllday  0
     2020-12-15 19:02:46   10_55_isRepeatEvt 0
     2020-12-15 19:02:46   10_80_0_notifyDateTime 2020-12-18 09:50:00
     2020-12-15 19:02:46   10_90_calName   OfficeCal
     2020-12-15 19:02:46   10_95_IcalUID   e6bf1118-a296-45d0-847f-d719d234b590
     2020-12-15 19:02:46   10_98_EventId   3908
     2020-12-15 19:02:46   10_99_---------------------- --------------------------------------------------------------------
     2020-12-15 19:02:46   11_01_Summary   UrXXXb
     2020-12-15 19:02:46   11_05_Begin     2020-12-21 00:00:00
     2020-12-15 19:02:46   11_10_End       2020-12-23 23:59:59
     2020-12-15 19:02:46   11_17_Status    upcoming
     2020-12-15 19:02:46   11_20_daysLeft  6
     2020-12-15 19:02:46   11_25_daysLeftLong in 6 Tagen
     2020-12-15 19:02:46   11_30_Weekday   Monday
     2020-12-15 19:02:46   11_50_isAllday  1
     2020-12-15 19:02:46   11_55_isRepeatEvt 0
     2020-12-15 19:02:46   11_90_calName   FamCal
     2020-12-15 19:02:46   11_95_IcalUID   9a828b2b-c7ec-423a-953d-2b00ba33065d
     2020-12-15 19:02:46   11_98_EventId   3366
     2020-12-15 19:02:46   11_99_---------------------- --------------------------------------------------------------------
     2020-12-15 19:02:46   12_01_Summary   Weihnachtsferien
     2020-12-15 19:02:46   12_03_Description Weihnachtsferien 2020 in Hessen - Importiert von Ferienwiki.de
     2020-12-15 19:02:46   12_05_Begin     2020-12-21 00:00:00
     2020-12-15 19:02:46   12_10_End       2021-01-09 23:59:59
     2020-12-15 19:02:46   12_17_Status    upcoming
     2020-12-15 19:02:46   12_20_daysLeft  6
     2020-12-15 19:02:46   12_25_daysLeftLong in 6 Tagen
     2020-12-15 19:02:46   12_30_Weekday   Monday
     2020-12-15 19:02:46   12_50_isAllday  1
     2020-12-15 19:02:46   12_55_isRepeatEvt 0
     2020-12-15 19:02:46   12_90_calName   Ferien_Feiertage
     2020-12-15 19:02:46   12_95_IcalUID   2ad9f18c-3d67-448a-8b03-826d9acf241e
     2020-12-15 19:02:46   12_98_EventId   2763
     2020-12-15 19:02:46   12_99_---------------------- --------------------------------------------------------------------
     2020-12-15 19:02:46   13_01_Summary   ABGESAGT: TXXX"
     2020-12-15 19:02:46   13_03_Description https://join.signal-iduna.de/alXXXpfs

Tel:
0231135XXX7,,3080172#BC2-Status: Cancelled
     2020-12-15 19:02:46   13_05_Begin     2020-12-21 09:00:00
     2020-12-15 19:02:46   13_10_End       2020-12-21 10:00:00
     2020-12-15 19:02:46   13_15_Timezone  Europe/Berlin
     2020-12-15 19:02:46   13_17_Status    upcoming
     2020-12-15 19:02:46   13_20_daysLeft  6
     2020-12-15 19:02:46   13_25_daysLeftLong in 6 Tagen
     2020-12-15 19:02:46   13_30_Weekday   Monday
     2020-12-15 19:02:46   13_35_Location  HXXXnkonferenz
     2020-12-15 19:02:46   13_50_isAllday  0
     2020-12-15 19:02:46   13_55_isRepeatEvt 0
     2020-12-15 19:02:46   13_80_0_notifyDateTime 2020-12-21 08:50:00
     2020-12-15 19:02:46   13_90_calName   OfficeCal
     2020-12-15 19:02:46   13_95_IcalUID   778fa06f-f72a-4532-862a-2ac0c087bd42
     2020-12-15 19:02:46   13_98_EventId   3590
     2020-12-15 19:02:46   13_99_---------------------- --------------------------------------------------------------------
     2020-12-15 19:02:46   14_01_Summary   1. Weihnachtstag
     2020-12-15 19:02:46   14_03_Description 1. Weihnachtstag - Importiert von Ferienwiki.de
     2020-12-15 19:02:46   14_05_Begin     2020-12-25 00:00:00
     2020-12-15 19:02:46   14_10_End       2020-12-25 23:59:59
     2020-12-15 19:02:46   14_17_Status    upcoming
     2020-12-15 19:02:46   14_20_daysLeft  10
     2020-12-15 19:02:46   14_25_daysLeftLong in 10 Tagen
     2020-12-15 19:02:46   14_30_Weekday   Friday
     2020-12-15 19:02:46   14_50_isAllday  1
     2020-12-15 19:02:46   14_55_isRepeatEvt 0
     2020-12-15 19:02:46   14_90_calName   Ferien_Feiertage
     2020-12-15 19:02:46   14_95_IcalUID   363549f3-8b2b-46bc-8ae0-ec80f41884a2
     2020-12-15 19:02:46   14_98_EventId   2778
     2020-12-15 19:02:46   14_99_---------------------- --------------------------------------------------------------------
     2020-12-11 09:02:48   Error           none
     2020-12-11 09:02:48   Errorcode       none
     2020-12-15 19:02:46   QueueLength     0
     2020-12-15 19:02:46   lastUpdate      19:02:46
     2020-12-15 19:02:45   nextUpdate      Automatic - next polltime: 20:02:45
     2020-12-15 19:02:46   state           done
Attributes:
   cutLaterDays 10
   cutOlderDays 1
   event-on-update-reading .*Summary,state
   interval   3600
   room       Kalender
   tableFields Symbol,Begin,End,DaysLeft,Weekday,Summary,Status,Location,Calendar
   tableSpecs {
  "cellStyle"             => {
                               "noHeader"            => "0",
                               "headerAlign"         => "center",
                               "columnAlign"         => "left",
                               "columnSymbolAlign"   => "center",
                               "columnDaysLeftAlign" => "center",
   "columnLocationAlign" => "left",
   "columnSummaryAlign"  => "left",
                             },
  "columnStateIcon"       => [
                             {
                               "Status"   => "eq 'ended' ",
                               "icon"     => "ios-off",
                             },
                             {
                               "Status"   => "eq 'upcoming' ",
                               "icon"     => "ios-on-for-timer-green",
                             },
                             {
                               "Status"   => "eq 'upcoming' ",
                               "daysLeft" => ">= 4",
                               "icon"     => "ios-on-for-timer-blue",
                             },
                             ],
  "smallScreenStyles"     => "darksmallscreen,smallscreen",
}
   usedCalendars Ferien_Feiertage,OfficeCal,FamCal,M�lltermine


LG Jörg
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 15 Dezember 2020, 20:10:39
Zitatmein Kalender "Mülltermine" wird nicht angezeigt. Kann es an den Umlauten liegen?
Na klar, bin schockiert  ;)
Muss ich richten ...
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 16 Dezember 2020, 15:43:11
Ich habe das Problem mit Umlauten im Kalendernamen gefixt und ist morgen früh im Update enthalten.
Wenn du es jetzt schon haben/testen möchtest kannst du es aus meinem contrib nehmen.

Zum Download in der FHEMWEB Kommandozeile inklusive der Ausführungszeichen angeben und danach FHEM restarten:


"wget -qO ./FHEM/57_SSCal.pm https://svn.fhem.de/fhem/trunk/fhem/contrib/DS_Starter/57_SSCal.pm"


LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: mobiljoe123 am 16 Dezember 2020, 20:18:19
Danke.

Ich habs gleich mal testen wollen. Sehe den Kalender bzw. den Eintrag des Kalenders aber noch nicht.
Vielleicht kann ich mir das morgen nochmal anschauen.

LG
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 16 Dezember 2020, 20:22:45
Führe doch mal ein get <> getCalendars aus. In dem Popup sollte dein Kalender mit auftauchen.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: mobiljoe123 am 17 Dezember 2020, 07:08:14
Jetzt kann ich die Daten sehen. DANKE.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 25 Dezember 2020, 15:09:56
Hallo zusammen,

In habe einen Wiki-Beitrag (https://wiki.fhem.de/wiki/SSFile_-_Integration_der_Synology_File_Station#Backup_des_FHEM_Filesystems_.C3.BCber_Synology_Kalendereinplanunghttp://) erstellt, wie mit dem Synology Modulen SSCal und SSFile eine übersichtliche und Kalender gestützte Sicherungslösung für die Verzeichnisse des FHEM-Servers aufgebaut werden kann.

Schöne Feiertage,
Heiko


Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Fredi69 am 04 Januar 2021, 10:59:09
Ich habe heute folgende Meldungen im Log:
2021.01.04 09:16:05 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in numeric le (<=) at ./FHEM/57_SSCal.pm line 1815.
2021.01.04 09:16:05 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in addition (+) at ./FHEM/57_SSCal.pm line 1819.
2021.01.04 09:16:05 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in subtraction (-) at ./FHEM/57_SSCal.pm line 1816.


Kann mir da jemand helfen?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 04 Januar 2021, 13:29:50
ZitatIch habe heute folgende Meldungen im Log:
Ist wahrscheinlich das gleiche wie hier:
https://forum.fhem.de/index.php/topic,106963.msg1110943.html#msg1110943

Vielleicht kannst du ein paar mehr Infos liefern mit einem List vom Device wo man die Kalendereinträge sieht wenn das nichts geheimes ist.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: derHeimwerker am 17 Februar 2021, 14:10:26
Hallo zusammen,

beim Aufruf von "get meinKalender getCalendars" bekomme ich folgende Fehlermeldung:

fhemweb.js line 1:
SyntaxError: missing ) after argument list

Was habe ich da falsch gemacht?
Gruß
Thomas
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 17 Februar 2021, 17:17:56
Hallo Thomas,

da kann man nichts falsch machen.
FHEM System aktuell ? Insbesondere die FHEMWEB Komponenten ?

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: derHeimwerker am 17 Februar 2021, 19:01:43
Zitat von: DS_Starter am 17 Februar 2021, 17:17:56
Hallo Thomas,

da kann man nichts falsch machen.
FHEM System aktuell ? Insbesondere die FHEMWEB Komponenten ?

Grüße,
Heiko

Gerade ein aktuelles update gemacht. Fehler bleibt :-(

Auszug aus dem Log:
2021.02.17 18:59:35 3: SynologyCal - no session ID found - get new one
2021.02.17 19:00:10 3: SynologyCal - no session ID found - get new one
2021.02.17 19:00:11 2: SynologyCal - Session of User "kalender" terminated - session ID "IgoR5zSahrrYK3jsC-LYkKFi5qFT3Vl_JWQ2Szf6PdY95FA5_w-ay-fgufSxOGHJ0A46PY33fzgAD9AO-6JI10" deleted
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 17 Februar 2021, 19:54:37
Den Browser Cache mal geleert ?
Welche FHEMWEB Style verwendest du ?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: derHeimwerker am 17 Februar 2021, 20:05:27
Browser (firefox) Cache ist geleert.
Ich verwende den Flex Style.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 17 Februar 2021, 20:29:15
Hmm ... hab flex probiert. Klappt auch einwandfrei bei mir
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: derHeimwerker am 17 Februar 2021, 20:52:46
Komisch .. ein List zeigt mir, dass alle Kalender erkannt werden. Und jetzt sehe ich, dass ich morgen früh raus muss, um die Bio Tonne an die Straße zu stellen :-)
Funktioniert also auch trotz der Fehlermeldung.
Danke für die Hilfe!
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 17 Februar 2021, 21:09:36
ZitatFunktioniert also auch trotz der Fehlermeldung.
Ja klar, die Logik funktioniert, nur die Anzeige in der GUI nicht.  ;)
Aber trotzdem komisch...
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Cobra am 23 Mai 2021, 11:24:22
Hey zusammen,

bin gestern auf das Modul aufmerksam geworden und hab mich mal damit befasst.
Zuerst einmal ein dickes Danke an dich Heiko, macht immer wieder eine riesen Freude durch deine Module mehr mit der Syno in Verbindung mit FHEM machen zu können.

Jetzt habe ich aber ein kurioses Problem und zwar wollte ich den Teil umsetze aus dem Wiki mit den Urlaubstagen.

Also extra Kalender angelegt und alles fein säuberlich nach Wiki abgearbeitet.

Ich erstelle einen ganztägigen Termin für meinen kommenden Urlaub vom 14.6-18.6.

Allerdings zeigt mir jetzt FHEM an dass mein Urlaub vom 14.6. 00:00 Uhr bis 19.6. 01:59 Uhr geht
Also irgendwie 2 Stunden verlängert und dadurch wird mir der 19.6. natürlich dann auch als Urlaub in FHEM dargestellt.

Wo könnte ich da den Fehler gemacht haben?
Hier das List:
Internals:
   CFGFN     
   CREDENTIALS Set
   DEF        192.168.178.10
   FUUID      60a99f9c-f33f-38f1-d63e-c1338a5b44a16351
   FVERSION   57_SSCal.pm:v2.4.8-s23365/2020-12-16
   MODE       Automatic
   MODEL      Diary
   NAME       SynCal2
   NR         514
   OPMODE     
   PROTOCOL   http
   RESEND     next planned SendQueue start: immediately by next entry
   SERVERADDR 192.168.178.10
   SERVERPORT 5000
   STATE      <b>Status:</b> done - <b>Last Update</b>: 11:22:38 - <b>Next Update</b>: Automatic - next polltime: 11:29:17
   TYPE       SSCal
   HELPER:
     CALFETCHED 1
     CREDENTIALS T6>ofoFqY3ZYW4:i^1kmi^QrcvW}g5TSVUpyLY:HXy>F
     LOGINRETRIES 0
     PACKAGE    FHEM::SSCal
     SID        Dgv9Zgf0w63JYXxHPdo7O9jW-XQGkge5aj4MXsTV8y0mBsUr2s6iWNKBA52ZyXI1vTWbs_u1nfjw3nAboStmu4
     VERSION    2.4.8
     VERSION_API 1.2.0
     VERSION_ErrCodes 1.3.4
     VERSION_SMUtils 1.22.0
     alias      Synology Kalender Urlaubstage
     asyncMode  1
     createATDevs 1
     cutLaterDays 90
     cutOlderDays 1
     event-on-update-reading .*Summary.*,state
     group      Haussteuerung
     icon       time_calendar
     interval   400
     room       Dienste->Kalender
     stateFormat <b>Status:</b> state - <b>Last Update</b>: lastUpdate - <b>Next Update</b>: nextUpdate
     tableFields Begin,End,DaysLeft,Summary,Status,Calendar
     usedCalendars Urlaubstage
     CALENDARS:
       Haussteuerung Prod:
         description enthält produktive Termine mit FHEM-Kommandos die zeitgesteuert ausgeführt werden sollen
         id         /Cobra/usxokzc/
         privilege  RW
         publicshareid 5KFXR5DKU
         type       Event
       Inbox:
         description
         id         /Cobra/home_todo/
         privilege  RW
         publicshareid
         type       ToDo
       My Calendar:
         description
         id         /Cobra/home/
         privilege  RW
         publicshareid
         type       Event
       Urlaubstage:
         description
         id         /Cobra/ptadnk/
         privilege  RW
         publicshareid q8k313wUk
         type       Event
     RUNNING_PID:
       abortFn    FHEM::SSCal::blockingTimeout
       arg        SynCal2
       bc_pid     180
       finishFn   FHEM::SSCal::createReadings
       fn         FHEM::SSCal::extractEventlist
       loglevel   5
       pid        3336
       telnet     telnetForBlockingFn_1621723919_127.0.0.1_49038
       terminated 1
       timeout    200
       abortArg:
     tableSpecs:
       columnMapProvider GoogleMaps
       columnSymbolIcon time_manual_mode
       cellStyle:
         columnAlign center
         columnSummaryAlign left
         columnSymbolAlign center
         headerAlign center
         noHeader   0
       columnMapIcon:
         HASH(0x81a6dd8)
         HASH(0x7fcbf78)
       columnStateIcon:
         HASH(0x17a4540)
         HASH(0x7c8a638)
         HASH(0x17a8b18)
         HASH(0x8210a58)
   OLDREADINGS:
   READINGS:
     2021-05-23 11:22:38   0_01_Summary    Urlaub Juni
     2021-05-23 11:22:38   0_05_Begin      2021-06-14 00:00:00
     2021-05-23 11:22:38   0_10_End        2021-06-19 01:59:59
     2021-05-23 11:22:38   0_17_Status     upcoming
     2021-05-23 11:22:38   0_20_daysLeft   22
     2021-05-23 11:22:38   0_25_daysLeftLong in 22 Tagen
     2021-05-23 11:22:38   0_30_Weekday    Montag
     2021-05-23 11:22:38   0_50_isAllday   1
     2021-05-23 11:22:38   0_55_isRepeatEvt 0
     2021-05-23 11:22:38   0_90_calName    Urlaubstage
     2021-05-23 11:22:38   0_95_IcalUID    20210523T110303-5b3495b7@172.17.0.1
     2021-05-23 11:22:38   0_98_EventId    1027
     2021-05-23 11:22:38   0_99_---------------------- --------------------------------------------------------------------
     2021-05-23 02:22:56   Error           none
     2021-05-23 02:22:56   Errorcode       none
     2021-05-23 11:22:38   QueueLength     0
     2021-05-23 11:22:38   lastUpdate      11:22:38
     2021-05-23 11:22:37   nextUpdate      Automatic - next polltime: 11:29:17
     2021-05-23 11:22:38   state           done
   eventlist:
     data:
       /Cobra/ptadnk/:
         HASH(0x768b680)
Attributes:
   alias      Synology Kalender Urlaubstage
   asyncMode  1
   createATDevs 1
   cutLaterDays 90
   cutOlderDays 1
   event-on-update-reading .*Summary.*,state
   group      Haussteuerung
   icon       time_calendar
   interval   400
   room       Dienste->Kalender
   stateFormat <b>Status:</b> state - <b>Last Update</b>: lastUpdate - <b>Next Update</b>: nextUpdate
   tableFields Begin,End,DaysLeft,Summary,Status,Calendar
   tableSpecs {
  "cellStyle"  =>            {
                               "noHeader"           => "0",
                               "headerAlign"        => "center",
                               "columnAlign"        => "center",
                               "columnSymbolAlign"  => "center",
                               "columnSummaryAlign" => "left",
                             },
  "columnMapIcon"         => [{
                               "Status" => "eq 'ended' ",
                               "icon"   => "rc_WEB@grey",                               
                             },
                             {
                               "daysLeft" => ">= 1 ",
                               "icon"   => "rc_WEB",                               
                             }],
  "columnMapProvider"     => "GoogleMaps",
  "columnStateIcon"       => [
                             {
                               "Status"   => "eq 'ended' ",
                               "icon"     => "1px-spacer",
                             },
                             {
                               "Status"   => "eq 'started' ",
                               "icon"     => "10px-kreis-gruen",
                             },
                             {
                               "Status"   => "eq 'upcoming' ",
                               "icon"     => "10px-kreis-gelb",
                             },
                             {
                               "Status"   => "eq 'alarmed' ",
                               "icon"     => "10px-kreis-gruen",
                             },
                             ],
"columnSymbolIcon"       => "time_manual_mode",
}
   usedCalendars Urlaubstage



So sieht es in der Synology aus:
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 23 Mai 2021, 11:50:51
Hallo Cobra,

ich habe demnächst auch Urlaub, der allerdings richtig angezeigt wird.  ;)

Schalte im Device mal bitte verbose 5 ein und rufe deinen Kalender ab. Dann siehst du was von der API geliefert wird.
Mein Urlaub sieht im Log so aus:

{
                                     'original_cal_id' => '/Heiko/qmrae/',
                                     'priority_order' => 1302,
                                     'is_repeat_evt' => $VAR1->{'data'}{'/Heiko/ailiq/'}[11]{'is_repeat_evt'},
                                     'evt_color' => '',
                                     'dav_etag' => '23d3bb2d7a63e3942646ba28d053f750',
                                     'tz_id' => undef,
                                     'percent_complete' => undef,
                                     'class' => 'PUBLIC',
                                     'from_syno_app_url' => undef,
                                     'dtstart' => '20210607T000000',
                                     'dtend' => '20210621T000000',
                                     'gps' => undef,
                                     'is_all_day' => $VAR1->{'success'},
                                     'create_time' => '1611756645.29099',
                                     'modify_time2' => 1621333577,
                                     'status' => undef,
                                     'ical_uid' => '20210127T151045-0fb6161d@172.17.0.1',
                                     'evt_notify_setting' => [
                                                               {
                                                                 'recurrence-id' => '',
                                                                 'time_value' => '-PT3H',
                                                                 'alarm_action' => 'DISPLAY',
                                                                 'alarm_ical' => 'BEGIN:VALARM
TRIGGER:-PT3H
ACTION:DISPLAY
DESCRIPTION:Urlaub
END:VALARM
',

Du siehst die gelieferten Start/Endezeiten in dtstart/dtend.
Schau mal ob diese Lieferzeiten richtig sind.

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Cobra am 23 Mai 2021, 12:20:16
Hey Heiko,

nein, die Lieferzeiten passen da schon nicht.
Hier das Log:
021.05.23 12:15:58 5: SynCal2 - Calendar selection for add queue: Urlaubstage
2021.05.23 12:15:58 5: SynCal2 - Add Item to queue - Index 89:
{
  'api' => 'EVENT',
  'params' => '&cal_id_list=["/Cobra/ptadnk/"]&start=1621634400&end=1629583200&list_repeat=true',
  'opmode' => 'eventlist',
  'method' => 'list',
  'retryCount' => 0
}

2021.05.23 12:15:58 4: SynCal2 - ####################################################
2021.05.23 12:15:58 4: SynCal2 - ###      start Calendar operation eventlist   
2021.05.23 12:15:58 4: SynCal2 - ####################################################
2021.05.23 12:15:58 4: SynCal2 - Time selection start: 2021-05-22 00:00:00
2021.05.23 12:15:58 4: SynCal2 - Time selection end: 2021-08-22 00:00:00
2021.05.23 12:15:58 4: SynCal2 - API hash values already set - ignore get apisites
2021.05.23 12:15:58 4: SynCal2 - start SendQueue entry index "89" (eventlist) for operation.
2021.05.23 12:15:58 5: SynCal2 - HTTP-Call will be done with timeout: 20 s
2021.05.23 12:15:58 4: SynCal2 - Call-Out: http://192.168.178.10:5000/webapi/entry.cgi?api=SYNO.Cal.Event&version=3&method=list&cal_id_list=["/Cobra/ptadnk/"]&start=1621634400&end=1629583200&list_repeat=true&_sid=<secret>
2021.05.23 12:15:58 5: SynCal2 - JSON returned: {
  'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
  'data' => {
              '/Cobra/ptadnk/' => [
                                    {
                                      'transp' => 'OPAQUE',
                                      'priority_order' => 8,
                                      'summary' => 'Urlaub Juni',
                                      'from_syno_app_url' => undef,
                                      'class' => 'PUBLIC',
                                      'owner_name' => 'Cobra',
                                      'modify_time2' => '1621760615.6057',
                                      'original_cal_id' => '/Cobra/ptadnk/',
                                      'evt_repeat_setting' => {
                                                                'repeat_rule' => undef
                                                              },
                                      'ical_uid' => '20210523T110303-5b3495b7@172.17.0.1',
                                      'gps' => undef,
                                      'is_all_day' => $VAR1->{'success'},
                                      'create_time' => '1621760583.4569',
                                      'dtend' => '20210619T020000',
                                      'evt_id' => 1027,
                                      'dtstart' => '20210614T000000',
                                      'percent_complete' => undef,
                                      'location' => '',
                                      'description' => '',
                                      'owner' => 1027,
                                      'is_repeat_evt' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' ),
                                      'tz_id' => undef,
                                      'status' => undef,
                                      'priority' => undef,
                                      'dav_etag' => 'ftcvbwdvttkibrbcixyreogbwfvomqpc',
                                      'evt_color' => ''
                                    }
                                  ]
            }
}

2021.05.23 12:15:58 4: SynCal2 - Event parse mode: asynchronous
2021.05.23 12:15:58 5: SynCal2 - VCALENDAR extract of UID "20210523T110303-5b3495b7@172.17.0.1":
undef

2021.05.23 12:15:58 5: SynCal2 - Single event Begin: 2021-06-14, End: 2021-06-19
2021.05.23 12:15:58 4: SynCal2 - Argument list for SSCalWriteHoliday:
2021.05.23 12:15:58 4: SynCal2 - 4 06-14 06-19 Urlaub Juni
2021.05.23 12:15:58 4: SynCal2 - add line: 1 01-01 Neujahr
2021.05.23 12:15:58 4: SynCal2 - add line: 1 01-06 Heilige Drei Koenige
2021.05.23 12:15:58 4: SynCal2 - add line: 1 05-01 Tag der Arbeit
2021.05.23 12:15:58 4: SynCal2 - add line: 1 10-03 Tag der deutschen Einheit
2021.05.23 12:15:58 4: SynCal2 - add line: 1 11-01 Allerheiligen
2021.05.23 12:15:58 4: SynCal2 - add line: 1 12-25 1. Weihnachtstag
2021.05.23 12:15:58 4: SynCal2 - add line: 1 12-26 2. Weihnachtstag
2021.05.23 12:15:58 4: SynCal2 - add line:
2021.05.23 12:15:58 4: SynCal2 - add line: 2 -2 Karfreitag
2021.05.23 12:15:58 4: SynCal2 - add line: 2  1 Ostermontag
2021.05.23 12:15:58 4: SynCal2 - add line: 2 39 Christi Himmelfahrt
2021.05.23 12:15:58 4: SynCal2 - add line: 2 50 Pfingsten
2021.05.23 12:15:58 4: SynCal2 - add line: 2 60 Fronleichnam
2021.05.23 12:15:58 4: SynCal2 - add line:
2021.05.23 12:15:58 4: SynCal2 - add line: #####Urlaub#####
2021.05.23 12:15:58 4: SynCal2 - -> Start new list write into ./FHEM/FeiertageBW.holiday <-
2021.05.23 12:15:58 4: SynCal2 - 1 01-01 Neujahr
2021.05.23 12:15:58 4: SynCal2 - 1 01-06 Heilige Drei Koenige
2021.05.23 12:15:58 4: SynCal2 - 1 05-01 Tag der Arbeit
2021.05.23 12:15:58 4: SynCal2 - 1 10-03 Tag der deutschen Einheit
2021.05.23 12:15:58 4: SynCal2 - 1 11-01 Allerheiligen
2021.05.23 12:15:58 4: SynCal2 - 1 12-25 1. Weihnachtstag
2021.05.23 12:15:58 4: SynCal2 - 1 12-26 2. Weihnachtstag
2021.05.23 12:15:58 4: SynCal2 -
2021.05.23 12:15:58 4: SynCal2 - 2 -2 Karfreitag
2021.05.23 12:15:58 4: SynCal2 - 2  1 Ostermontag
2021.05.23 12:15:58 4: SynCal2 - 2 39 Christi Himmelfahrt
2021.05.23 12:15:58 4: SynCal2 - 2 50 Pfingsten
2021.05.23 12:15:58 4: SynCal2 - 2 60 Fronleichnam
2021.05.23 12:15:58 4: SynCal2 -
2021.05.23 12:15:58 4: SynCal2 - #####Urlaub#####
2021.05.23 12:15:58 4: SynCal2 - # Time of absence from Calendar SynCal2, updated: 2021-05-23 12:15:58
2021.05.23 12:15:58 4: SynCal2 - 4 06-14 06-19 Urlaub Juni
2021.05.23 12:15:58 4: SynCal2 - # End Time of absence from Calendar SynCal2
2021.05.23 12:15:58 4: SynCal2 - -> End new list <-
2021.05.23 12:15:58 4: SynCal2 - Opmode "eventlist" finished successfully, Sendqueue index "89" deleted.


Hm, dann scheint wohl irgend eine Einstellung in der Syno nicht zu passen?
Zeitzone hab ich schon geprüft aber an der kann es ja eigentlich auch nicht liegen denn sonst wäre ja auch am Start-Tag die Zeit versetzt? Und andere Kalendereinträge kommen mit den richtigen Uhrzeiten rüber.

Gruß Cobra
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 23 Mai 2021, 12:29:06
Das sieht mir nach einem Bug in der API aus.
Erstelle dir doch bitte einen beliebigen Dummy Eintrag im Kalender der terminlich vor deinem Urlaub liegt und rufe nochmal ab.
Mal schauen ob dann etwas anderes geliefert wird.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Cobra am 23 Mai 2021, 12:30:30
Hey Heiko,

auch wieder nen Ganztagestermin oder ein Eintrag über mehrere Tage oder nur nen Eintrag über 1-2 Stunden?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 23 Mai 2021, 12:32:09
Nimm ein Ganztagsereignis zum Test
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Cobra am 23 Mai 2021, 12:37:16
Den Testtermin liefert er richtig an, beim Urlaub sind es immer noch die 2 Stunden zu viel:

2021.05.23 12:35:58 5: SynCal2 - Calendar selection for add queue: Urlaubstage
2021.05.23 12:35:58 5: SynCal2 - Add Item to queue - Index 92:
{
  'method' => 'list',
  'retryCount' => 0,
  'opmode' => 'eventlist',
  'params' => '&cal_id_list=["/Cobra/ptadnk/"]&start=1621634400&end=1629583200&list_repeat=true',
  'api' => 'EVENT'
}

2021.05.23 12:35:58 4: SynCal2 - ####################################################
2021.05.23 12:35:58 4: SynCal2 - ###      start Calendar operation eventlist   
2021.05.23 12:35:58 4: SynCal2 - ####################################################
2021.05.23 12:35:58 4: SynCal2 - Time selection start: 2021-05-22 00:00:00
2021.05.23 12:35:58 4: SynCal2 - Time selection end: 2021-08-22 00:00:00
2021.05.23 12:35:58 4: SynCal2 - API hash values already set - ignore get apisites
2021.05.23 12:35:58 4: SynCal2 - start SendQueue entry index "92" (eventlist) for operation.
2021.05.23 12:35:58 5: SynCal2 - HTTP-Call will be done with timeout: 20 s
2021.05.23 12:35:58 4: SynCal2 - Call-Out: http://192.168.178.10:5000/webapi/entry.cgi?api=SYNO.Cal.Event&version=3&method=list&cal_id_list=["/Cobra/ptadnk/"]&start=1621634400&end=1629583200&list_repeat=true&_sid=<secret>
2021.05.23 12:35:58 5: SynCal2 - JSON returned: {
  'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
  'data' => {
              '/Cobra/ptadnk/' => [
                                    {
                                      'description' => '',
                                      'owner' => 1027,
                                      'is_repeat_evt' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' ),
                                      'percent_complete' => undef,
                                      'location' => '',
                                      'tz_id' => undef,
                                      'status' => undef,
                                      'priority' => undef,
                                      'dav_etag' => 'ftcvbwdvttkibrbcixyreogbwfvomqpc',
                                      'evt_color' => '',
                                      'priority_order' => 8,
                                      'transp' => 'OPAQUE',
                                      'class' => 'PUBLIC',
                                      'owner_name' => 'Cobra',
                                      'modify_time2' => '1621760615.6057',
                                      'summary' => 'Urlaub Juni',
                                      'from_syno_app_url' => undef,
                                      'original_cal_id' => '/Cobra/ptadnk/',
                                      'evt_repeat_setting' => {
                                                                'repeat_rule' => undef
                                                              },
                                      'ical_uid' => '20210523T110303-5b3495b7@172.17.0.1',
                                      'dtstart' => '20210614T000000',
                                      'gps' => undef,
                                      'create_time' => '1621760583.4569',
                                      'is_all_day' => $VAR1->{'success'},
                                      'dtend' => '20210619T020000',
                                      'evt_id' => 1027
                                    },
                                    {
                                      'dav_etag' => 'kqngkdswmwbhooyjfutwhjnwxcopfpsz',
                                      'status' => undef,
                                      'priority' => undef,
                                      'evt_color' => '',
                                      'location' => '',
                                      'percent_complete' => undef,
                                      'owner' => 1027,
                                      'is_repeat_evt' => $VAR1->{'data'}{'/Cobra/ptadnk/'}[0]{'is_repeat_evt'},
                                      'description' => '',
                                      'tz_id' => undef,
                                      'evt_repeat_setting' => {
                                                                'repeat_rule' => undef
                                                              },
                                      'ical_uid' => '20210523T123042-7497bbc1@169.254.181.151',
                                      'original_cal_id' => '/Cobra/ptadnk/',
                                      'dtend' => '20210611T000000',
                                      'evt_id' => 1028,
                                      'gps' => undef,
                                      'is_all_day' => $VAR1->{'success'},
                                      'create_time' => '1621765842.7592',
                                      'dtstart' => '20210610T000000',
                                      'transp' => 'OPAQUE',
                                      'priority_order' => 9,
                                      'from_syno_app_url' => undef,
                                      'summary' => 'Testtermin',
                                      'owner_name' => 'Cobra',
                                      'modify_time2' => '1621766015.94967',
                                      'class' => 'PUBLIC'
                                    }
                                  ]
            }
}

2021.05.23 12:35:58 4: SynCal2 - Event parse mode: asynchronous
2021.05.23 12:35:58 5: SynCal2 - VCALENDAR extract of UID "20210523T110303-5b3495b7@172.17.0.1":
undef

2021.05.23 12:35:58 5: SynCal2 - Single event Begin: 2021-06-14, End: 2021-06-19
2021.05.23 12:35:58 5: SynCal2 - VCALENDAR extract of UID "20210523T123042-7497bbc1@169.254.181.151":
undef

2021.05.23 12:35:58 5: SynCal2 - Single event Begin: 2021-06-10, End: 2021-06-10
2021.05.23 12:35:58 4: SynCal2 - Argument list for SSCalWriteHoliday:
2021.05.23 12:35:58 4: SynCal2 - 4 06-14 06-19 Urlaub Juni
2021.05.23 12:35:58 4: SynCal2 - add line: 1 01-01 Neujahr
2021.05.23 12:35:58 4: SynCal2 - add line: 1 01-06 Heilige Drei Koenige
2021.05.23 12:35:58 4: SynCal2 - add line: 1 05-01 Tag der Arbeit
2021.05.23 12:35:58 4: SynCal2 - add line: 1 10-03 Tag der deutschen Einheit
2021.05.23 12:35:58 4: SynCal2 - add line: 1 11-01 Allerheiligen
2021.05.23 12:35:58 4: SynCal2 - add line: 1 12-25 1. Weihnachtstag
2021.05.23 12:35:58 4: SynCal2 - add line: 1 12-26 2. Weihnachtstag
2021.05.23 12:35:58 4: SynCal2 - add line:
2021.05.23 12:35:58 4: SynCal2 - add line: 2 -2 Karfreitag
2021.05.23 12:35:58 4: SynCal2 - add line: 2  1 Ostermontag
2021.05.23 12:35:58 4: SynCal2 - add line: 2 39 Christi Himmelfahrt
2021.05.23 12:35:58 4: SynCal2 - add line: 2 50 Pfingsten
2021.05.23 12:35:58 4: SynCal2 - add line: 2 60 Fronleichnam
2021.05.23 12:35:58 4: SynCal2 - add line:
2021.05.23 12:35:58 4: SynCal2 - add line: #####Urlaub#####
2021.05.23 12:35:58 4: SynCal2 - -> Start new list write into ./FHEM/FeiertageBW.holiday <-
2021.05.23 12:35:58 4: SynCal2 - 1 01-01 Neujahr
2021.05.23 12:35:58 4: SynCal2 - 1 01-06 Heilige Drei Koenige
2021.05.23 12:35:58 4: SynCal2 - 1 05-01 Tag der Arbeit
2021.05.23 12:35:58 4: SynCal2 - 1 10-03 Tag der deutschen Einheit
2021.05.23 12:35:58 4: SynCal2 - 1 11-01 Allerheiligen
2021.05.23 12:35:58 4: SynCal2 - 1 12-25 1. Weihnachtstag
2021.05.23 12:35:58 4: SynCal2 - 1 12-26 2. Weihnachtstag
2021.05.23 12:35:58 4: SynCal2 -
2021.05.23 12:35:58 4: SynCal2 - 2 -2 Karfreitag
2021.05.23 12:35:58 4: SynCal2 - 2  1 Ostermontag
2021.05.23 12:35:58 4: SynCal2 - 2 39 Christi Himmelfahrt
2021.05.23 12:35:58 4: SynCal2 - 2 50 Pfingsten
2021.05.23 12:35:58 4: SynCal2 - 2 60 Fronleichnam
2021.05.23 12:35:58 4: SynCal2 -
2021.05.23 12:35:58 4: SynCal2 - #####Urlaub#####
2021.05.23 12:35:58 4: SynCal2 - # Time of absence from Calendar SynCal2, updated: 2021-05-23 12:35:58
2021.05.23 12:35:58 4: SynCal2 - 4 06-14 06-19 Urlaub Juni
2021.05.23 12:35:58 4: SynCal2 - # End Time of absence from Calendar SynCal2
2021.05.23 12:35:58 4: SynCal2 - -> End new list <-
2021.05.23 12:35:58 4: SynCal2 - Opmode "eventlist" finished successfully, Sendqueue index "92" deleted.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 23 Mai 2021, 12:40:46
Ich habe die Vermutung, dass es nur den zuerst im zurück gelieferten Termin im JSON betrifft.
Lösche doch jetzt deinen Urlaub nochmal komplett im Kalender und lege ihn erneut an. Ich möchte damit erreichen, dass er nach dem Dummy geliefert wird um die These zu überprüfen.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Cobra am 23 Mai 2021, 12:46:55
Okay, so liefert er es jetzt richtig an für den Urlaub aber den ersten Termin verschiebt er wieder:

2021.05.23 12:45:06 5: SynCal2 - Calendar selection for add queue: Urlaubstage
2021.05.23 12:45:06 5: SynCal2 - Add Item to queue - Index 94:
{
  'opmode' => 'eventlist',
  'api' => 'EVENT',
  'params' => '&cal_id_list=["/Cobra/ptadnk/"]&start=1621634400&end=1629583200&list_repeat=true',
  'retryCount' => 0,
  'method' => 'list'
}

2021.05.23 12:45:06 4: SynCal2 - ####################################################
2021.05.23 12:45:06 4: SynCal2 - ###      start Calendar operation eventlist   
2021.05.23 12:45:06 4: SynCal2 - ####################################################
2021.05.23 12:45:06 4: SynCal2 - Time selection start: 2021-05-22 00:00:00
2021.05.23 12:45:06 4: SynCal2 - Time selection end: 2021-08-22 00:00:00
2021.05.23 12:45:06 4: SynCal2 - API hash values already set - ignore get apisites
2021.05.23 12:45:06 4: SynCal2 - start SendQueue entry index "94" (eventlist) for operation.
2021.05.23 12:45:06 5: SynCal2 - HTTP-Call will be done with timeout: 20 s
2021.05.23 12:45:06 4: SynCal2 - Call-Out: http://192.168.178.10:5000/webapi/entry.cgi?api=SYNO.Cal.Event&version=3&method=list&cal_id_list=["/Cobra/ptadnk/"]&start=1621634400&end=1629583200&list_repeat=true&_sid=<secret>
2021.05.23 12:45:06 5: SynCal2 - JSON returned: {
  'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
  'data' => {
              '/Cobra/ptadnk/' => [
                                    {
                                      'tz_id' => undef,
                                      'owner' => 1027,
                                      'is_repeat_evt' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' ),
                                      'description' => '',
                                      'location' => '',
                                      'percent_complete' => undef,
                                      'evt_color' => '',
                                      'dav_etag' => 'xfivnybjhhkkvjzmuvyloqwrgrxygwje',
                                      'status' => undef,
                                      'priority' => undef,
                                      'owner_name' => 'Cobra',
                                      'modify_time2' => '1621766659.1723',
                                      'class' => 'PUBLIC',
                                      'from_syno_app_url' => undef,
                                      'summary' => 'Test',
                                      'priority_order' => 10,
                                      'transp' => 'OPAQUE',
                                      'dtstart' => '20210610T000000',
                                      'dtend' => '20210611T020000',
                                      'evt_id' => 1029,
                                      'gps' => undef,
                                      'is_all_day' => $VAR1->{'success'},
                                      'create_time' => '1621766329.01902',
                                      'evt_repeat_setting' => {
                                                                'repeat_rule' => undef
                                                              },
                                      'ical_uid' => '20210523T123849-1b98436f@169.254.181.151',
                                      'original_cal_id' => '/Cobra/ptadnk/'
                                    },
                                    {
                                      'dtstart' => '20210614T000000',
                                      'evt_id' => 1031,
                                      'dtend' => '20210619T000000',
                                      'create_time' => '1621766670.63052',
                                      'is_all_day' => $VAR1->{'success'},
                                      'gps' => undef,
                                      'ical_uid' => '20210523T124430-cafa1c1b@169.254.181.151',
                                      'evt_repeat_setting' => {
                                                                'repeat_rule' => undef
                                                              },
                                      'original_cal_id' => '/Cobra/ptadnk/',
                                      'modify_time2' => '1621766684.25804',
                                      'owner_name' => 'Cobra',
                                      'class' => 'PUBLIC',
                                      'from_syno_app_url' => undef,
                                      'summary' => 'Urlaub Juni',
                                      'priority_order' => 12,
                                      'transp' => 'OPAQUE',
                                      'evt_color' => '',
                                      'dav_etag' => 'ftbdlynvwaywikosjdhuioyfwffjkvxu',
                                      'status' => undef,
                                      'priority' => undef,
                                      'tz_id' => undef,
                                      'is_repeat_evt' => $VAR1->{'data'}{'/Cobra/ptadnk/'}[0]{'is_repeat_evt'},
                                      'owner' => 1027,
                                      'description' => '',
                                      'location' => '',
                                      'percent_complete' => undef
                                    }
                                  ]
            }
}

2021.05.23 12:45:06 4: SynCal2 - Event parse mode: asynchronous
2021.05.23 12:45:06 5: SynCal2 - VCALENDAR extract of UID "20210523T123849-1b98436f@169.254.181.151":
undef

2021.05.23 12:45:06 5: SynCal2 - Single event Begin: 2021-06-10, End: 2021-06-11
2021.05.23 12:45:06 5: SynCal2 - VCALENDAR extract of UID "20210523T124430-cafa1c1b@169.254.181.151":
undef

2021.05.23 12:45:06 5: SynCal2 - Single event Begin: 2021-06-14, End: 2021-06-18
2021.05.23 12:45:06 4: SynCal2 - Argument list for SSCalWriteHoliday:
2021.05.23 12:45:06 4: SynCal2 - 4 06-14 06-18 Urlaub Juni
2021.05.23 12:45:06 4: SynCal2 - add line: 1 01-01 Neujahr
2021.05.23 12:45:06 4: SynCal2 - add line: 1 01-06 Heilige Drei Koenige
2021.05.23 12:45:06 4: SynCal2 - add line: 1 05-01 Tag der Arbeit
2021.05.23 12:45:06 4: SynCal2 - add line: 1 10-03 Tag der deutschen Einheit
2021.05.23 12:45:06 4: SynCal2 - add line: 1 11-01 Allerheiligen
2021.05.23 12:45:06 4: SynCal2 - add line: 1 12-25 1. Weihnachtstag
2021.05.23 12:45:06 4: SynCal2 - add line: 1 12-26 2. Weihnachtstag
2021.05.23 12:45:06 4: SynCal2 - add line:
2021.05.23 12:45:06 4: SynCal2 - add line: 2 -2 Karfreitag
2021.05.23 12:45:06 4: SynCal2 - add line: 2  1 Ostermontag
2021.05.23 12:45:06 4: SynCal2 - add line: 2 39 Christi Himmelfahrt
2021.05.23 12:45:06 4: SynCal2 - add line: 2 50 Pfingsten
2021.05.23 12:45:06 4: SynCal2 - add line: 2 60 Fronleichnam
2021.05.23 12:45:06 4: SynCal2 - add line:
2021.05.23 12:45:06 4: SynCal2 - add line: #####Urlaub#####
2021.05.23 12:45:06 4: SynCal2 - -> Start new list write into ./FHEM/FeiertageBW.holiday <-
2021.05.23 12:45:06 4: SynCal2 - 1 01-01 Neujahr
2021.05.23 12:45:06 4: SynCal2 - 1 01-06 Heilige Drei Koenige
2021.05.23 12:45:06 4: SynCal2 - 1 05-01 Tag der Arbeit
2021.05.23 12:45:06 4: SynCal2 - 1 10-03 Tag der deutschen Einheit
2021.05.23 12:45:06 4: SynCal2 - 1 11-01 Allerheiligen
2021.05.23 12:45:06 4: SynCal2 - 1 12-25 1. Weihnachtstag
2021.05.23 12:45:06 4: SynCal2 - 1 12-26 2. Weihnachtstag
2021.05.23 12:45:06 4: SynCal2 -
2021.05.23 12:45:06 4: SynCal2 - 2 -2 Karfreitag
2021.05.23 12:45:06 4: SynCal2 - 2  1 Ostermontag
2021.05.23 12:45:06 4: SynCal2 - 2 39 Christi Himmelfahrt
2021.05.23 12:45:06 4: SynCal2 - 2 50 Pfingsten
2021.05.23 12:45:06 4: SynCal2 - 2 60 Fronleichnam
2021.05.23 12:45:06 4: SynCal2 -
2021.05.23 12:45:06 4: SynCal2 - #####Urlaub#####
2021.05.23 12:45:06 4: SynCal2 - # Time of absence from Calendar SynCal2, updated: 2021-05-23 12:45:06
2021.05.23 12:45:06 4: SynCal2 - 4 06-14 06-18 Urlaub Juni
2021.05.23 12:45:06 4: SynCal2 - # End Time of absence from Calendar SynCal2
2021.05.23 12:45:06 4: SynCal2 - -> End new list <-
2021.05.23 12:45:06 4: SynCal2 - Opmode "eventlist" finished successfully, Sendqueue index "94" deleted.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 23 Mai 2021, 12:51:41
Jo, ziemlich eindeutig ein Bug. Scheint mir dass beim ersten JSON Eintrag bei dtend die Zeitzone nicht richtig berücksichtigt wird.
Werde ich Syno mal melden.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 23 Mai 2021, 12:53:07
Was ist wenn du den Dummy auf einen Nicht-Ganztagstermin umänderst ?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Cobra am 23 Mai 2021, 12:55:19
Da kommt die Zeit dann korrekt an, hab den Termin in der Syno von 8-9 Uhr eingetragen:

2021.05.23 12:54:14 5: SynCal2 - Calendar selection for add queue: Urlaubstage
2021.05.23 12:54:14 5: SynCal2 - Add Item to queue - Index 96:
{
  'opmode' => 'eventlist',
  'params' => '&cal_id_list=["/Cobra/ptadnk/"]&start=1621634400&end=1629583200&list_repeat=true',
  'api' => 'EVENT',
  'retryCount' => 0,
  'method' => 'list'
}

2021.05.23 12:54:14 4: SynCal2 - ####################################################
2021.05.23 12:54:14 4: SynCal2 - ###      start Calendar operation eventlist   
2021.05.23 12:54:14 4: SynCal2 - ####################################################
2021.05.23 12:54:14 4: SynCal2 - Time selection start: 2021-05-22 00:00:00
2021.05.23 12:54:14 4: SynCal2 - Time selection end: 2021-08-22 00:00:00
2021.05.23 12:54:14 4: SynCal2 - API hash values already set - ignore get apisites
2021.05.23 12:54:14 4: SynCal2 - start SendQueue entry index "96" (eventlist) for operation.
2021.05.23 12:54:14 5: SynCal2 - HTTP-Call will be done with timeout: 20 s
2021.05.23 12:54:14 4: SynCal2 - Call-Out: http://192.168.178.10:5000/webapi/entry.cgi?api=SYNO.Cal.Event&version=3&method=list&cal_id_list=["/Cobra/ptadnk/"]&start=1621634400&end=1629583200&list_repeat=true&_sid=<secret>
2021.05.23 12:54:15 5: SynCal2 - JSON returned: {
  'data' => {
              '/Cobra/ptadnk/' => [
                                    {
                                      'tz_id' => 'Europe/Berlin',
                                      'location' => '',
                                      'percent_complete' => undef,
                                      'owner' => 1027,
                                      'is_repeat_evt' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' ),
                                      'description' => '',
                                      'evt_color' => '',
                                      'dav_etag' => 'bhxhzijpuokaaewwtlreokqnglxzmrza',
                                      'status' => undef,
                                      'priority' => undef,
                                      'from_syno_app_url' => undef,
                                      'summary' => 'Test',
                                      'owner_name' => 'Cobra',
                                      'modify_time2' => '1621767233.87235',
                                      'class' => 'PUBLIC',
                                      'transp' => 'OPAQUE',
                                      'priority_order' => 10,
                                      'dtend' => 'TZID=Europe/Berlin:20210610T090000',
                                      'evt_id' => 1029,
                                      'gps' => undef,
                                      'create_time' => '1621766329.01902',
                                      'is_all_day' => $VAR1->{'data'}{'/Cobra/ptadnk/'}[0]{'is_repeat_evt'},
                                      'dtstart' => 'TZID=Europe/Berlin:20210610T080000',
                                      'evt_repeat_setting' => {
                                                                'repeat_rule' => undef
                                                              },
                                      'ical_uid' => '20210523T123849-1b98436f@169.254.181.151',
                                      'original_cal_id' => '/Cobra/ptadnk/'
                                    },
                                    {
                                      'percent_complete' => undef,
                                      'location' => '',
                                      'description' => '',
                                      'owner' => 1027,
                                      'is_repeat_evt' => $VAR1->{'data'}{'/Cobra/ptadnk/'}[0]{'is_repeat_evt'},
                                      'tz_id' => undef,
                                      'priority' => undef,
                                      'status' => undef,
                                      'dav_etag' => 'ftbdlynvwaywikosjdhuioyfwffjkvxu',
                                      'evt_color' => '',
                                      'transp' => 'OPAQUE',
                                      'priority_order' => 12,
                                      'summary' => 'Urlaub Juni',
                                      'from_syno_app_url' => undef,
                                      'class' => 'PUBLIC',
                                      'owner_name' => 'Cobra',
                                      'modify_time2' => '1621766684.25804',
                                      'original_cal_id' => '/Cobra/ptadnk/',
                                      'evt_repeat_setting' => {
                                                                'repeat_rule' => undef
                                                              },
                                      'ical_uid' => '20210523T124430-cafa1c1b@169.254.181.151',
                                      'gps' => undef,
                                      'is_all_day' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
                                      'create_time' => '1621766670.63052',
                                      'dtend' => '20210619T000000',
                                      'evt_id' => 1031,
                                      'dtstart' => '20210614T000000'
                                    }
                                  ]
            },
  'success' => $VAR1->{'data'}{'/Cobra/ptadnk/'}[1]{'is_all_day'}
}

2021.05.23 12:54:15 4: SynCal2 - Event parse mode: asynchronous
2021.05.23 12:54:15 5: SynCal2 - VCALENDAR extract of UID "20210523T123849-1b98436f@169.254.181.151":
undef

2021.05.23 12:54:15 5: SynCal2 - Single event Begin: 2021-06-10, End: 2021-06-10
2021.05.23 12:54:15 5: SynCal2 - VCALENDAR extract of UID "20210523T124430-cafa1c1b@169.254.181.151":
undef

2021.05.23 12:54:15 5: SynCal2 - Single event Begin: 2021-06-14, End: 2021-06-18
2021.05.23 12:54:15 4: SynCal2 - Argument list for SSCalWriteHoliday:
2021.05.23 12:54:15 4: SynCal2 - 4 06-14 06-18 Urlaub Juni
2021.05.23 12:54:15 4: SynCal2 - add line: 1 01-01 Neujahr
2021.05.23 12:54:15 4: SynCal2 - add line: 1 01-06 Heilige Drei Koenige
2021.05.23 12:54:15 4: SynCal2 - add line: 1 05-01 Tag der Arbeit
2021.05.23 12:54:15 4: SynCal2 - add line: 1 10-03 Tag der deutschen Einheit
2021.05.23 12:54:15 4: SynCal2 - add line: 1 11-01 Allerheiligen
2021.05.23 12:54:15 4: SynCal2 - add line: 1 12-25 1. Weihnachtstag
2021.05.23 12:54:15 4: SynCal2 - add line: 1 12-26 2. Weihnachtstag
2021.05.23 12:54:15 4: SynCal2 - add line:
2021.05.23 12:54:15 4: SynCal2 - add line: 2 -2 Karfreitag
2021.05.23 12:54:15 4: SynCal2 - add line: 2  1 Ostermontag
2021.05.23 12:54:15 4: SynCal2 - add line: 2 39 Christi Himmelfahrt
2021.05.23 12:54:15 4: SynCal2 - add line: 2 50 Pfingsten
2021.05.23 12:54:15 4: SynCal2 - add line: 2 60 Fronleichnam
2021.05.23 12:54:15 4: SynCal2 - add line:
2021.05.23 12:54:15 4: SynCal2 - add line: #####Urlaub#####
2021.05.23 12:54:15 4: SynCal2 - -> Start new list write into ./FHEM/FeiertageBW.holiday <-
2021.05.23 12:54:15 4: SynCal2 - 1 01-01 Neujahr
2021.05.23 12:54:15 4: SynCal2 - 1 01-06 Heilige Drei Koenige
2021.05.23 12:54:15 4: SynCal2 - 1 05-01 Tag der Arbeit
2021.05.23 12:54:15 4: SynCal2 - 1 10-03 Tag der deutschen Einheit
2021.05.23 12:54:15 4: SynCal2 - 1 11-01 Allerheiligen
2021.05.23 12:54:15 4: SynCal2 - 1 12-25 1. Weihnachtstag
2021.05.23 12:54:15 4: SynCal2 - 1 12-26 2. Weihnachtstag
2021.05.23 12:54:15 4: SynCal2 -
2021.05.23 12:54:15 4: SynCal2 - 2 -2 Karfreitag
2021.05.23 12:54:15 4: SynCal2 - 2  1 Ostermontag
2021.05.23 12:54:15 4: SynCal2 - 2 39 Christi Himmelfahrt
2021.05.23 12:54:15 4: SynCal2 - 2 50 Pfingsten
2021.05.23 12:54:15 4: SynCal2 - 2 60 Fronleichnam
2021.05.23 12:54:15 4: SynCal2 -
2021.05.23 12:54:15 4: SynCal2 - #####Urlaub#####
2021.05.23 12:54:15 4: SynCal2 - # Time of absence from Calendar SynCal2, updated: 2021-05-23 12:54:15
2021.05.23 12:54:15 4: SynCal2 - 4 06-14 06-18 Urlaub Juni
2021.05.23 12:54:15 4: SynCal2 - # End Time of absence from Calendar SynCal2
2021.05.23 12:54:15 4: SynCal2 - -> End new list <-
2021.05.23 12:54:15 4: SynCal2 - Opmode "eventlist" finished successfully, Sendqueue index "96" deleted.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 23 Mai 2021, 12:58:41
Interessant, deswegen fällt sowas nur auf wenn der erste Termin in der JSON-Liste ein Ganztagstermin ist.  :o
Na ob ich das den Synokollegen begreiflich rüber bringen kann  :) .. mal schauen.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Cobra am 23 Mai 2021, 13:00:28
Danke dir auf jeden Fall für deine Mühe, schauen wir mal was die Kollegen rausfinden.

Wünsch dir noch schöne Pfingst-Feiertage.

Gruß
Cobra
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 23 Mai 2021, 13:01:24
Ebenso !  :D

LG
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 23 Mai 2021, 21:07:23
Habe eine Mitteilung an Synology erstellt. Jetzt heißt es warten ...
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: juergen012 am 24 Mai 2021, 17:40:30
Hallo,
nachdem ich mich heute 2 stunden mit dem Modul rumgeärgert habe, musste ich feststellen, das die 2FA nicht unterstützt wird..Ich wollte von GOOgle Calendar zu diesem Modul wechseln. Kalender Sync etc. funktioniert einwandfrei. Nur der Zugriff aus FHEM nicht tolle Wurst...
Beste Grüße
Jürgen K.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 24 Mai 2021, 17:52:36
2FA wird von der API zur Zeit nicht unterstützt. Vllt. baut Syno es später noch ein, wer weiß.

ZitatNur der Zugriff aus FHEM nicht tolle Wurst...
Was fehlt dir denn ?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: juergen012 am 24 Mai 2021, 18:19:39
Danke für die superschnelle Antwort.
Ich meinte, nachdem ich alles eingerichtet hatte, wollte ich das Modul in FHEM aktivieren..was ja leider mit 2FA nicht klappt. Der User muss ja in der Admin Gruppe sein. Somit kann ich das Modul nicht verwenden, da ich meine Sicherheitsstufe nicht ändern möchte .SCHADE!!
Beste Grüße
Jürgen K.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 24 Mai 2021, 18:31:05
Hallo Jürgen,

ja das tut mir leid. Wenn Syno diese Möglichkeit bietet, baue ich sie mit ein.
Dass der User Mitglied der Admin-Gruppe sein muß, habe ich bei Synology auch schon moniert weil mir der Sinn dessen nicht aufgegangen war. Muß man sehen was sich da tut.

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: juergen012 am 24 Mai 2021, 18:32:22
Alles klar. Ich bleibe am Ball.. Vielen Dank!!
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 27 Mai 2021, 17:27:23
Hallo Cobra, @all,

die Synology Kollegen haben sich sehr zügig des Problems mit dem "dtend" angenommen. Sonntag Abend hatte ich die Meldung aufgegeben und die deutschen Kollegen haben die Sache auch sofort nach Taiwan ins Development Team gegeben.
Die Taiwanesischen Developer haben es sich auf meiner Syno angeschaut (ich hatte extra einen Testkalender erstellt) und bereits heute kam die Antwort:

Zitat
Dear User,

Thank you for waiting.

Our developer has confirmed the issue was due to 'dtned' got converted to local time, but 'dtstart' was converted UTC time.

Please convert 'dtend' back to UTC time before the issue is fixed.

Hope this helps and please let us know if further assistance is needed.

Yours Truly,

Technical Support

Wayne

Das Syno Team hat die Sache als Fehler aufgenommen und wird es sicherlich bald lösen. Mal schauen ob ich den vorgeschlagenen Workaround zwischenzeitlich einbaue oder ob wir einfach warten bis die Kollegen es gefixt haben.

Wenn die genauso schnell mit dem Fixen sind wie bei der Untersuchung kann ich mir den Workaround wohl sparen.  ;)

Top Support insgesamt von Synology, ich bin wirklich begeistert.  :)

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 20 Juni 2021, 09:57:09
Hallo zusammen,

Syno hat vor einigen Tagen (zwei Wochen?) die neue Version 2.4.1-0817 veröffentlicht.
Nach meinen Tests besteht der Issue aber weiterhin.
Habe Syno darüber informiert.

Grüße,
Heiko


Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Cobra am 11 Juli 2021, 17:01:41
Hey Heiko,

zum Kalender bekomme ich leider auch kein Login mehr hin in DSM7.
Gibt es hier ein vergleichbares Attribut wie bei SSCam was man nehmen könnte?

Gruß Cobra
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 11 Juli 2021, 17:09:41
Ich hatte es befürchtet.  :(
So ein Attr gibt es bisher nicht, aber ich werde es oder etwas vergleichbares kurzfristig einbauen.
Bisschen Geduld.  ;)

LG
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 11 Juli 2021, 20:37:12
Hallo cobra,

im contrib liegt eine angepasste Version zum Test.
Ich habe die API fest adaptiert. Damit passt es auch bei zukünftigen API-Änderungen bis ich neue Features einbaue sofern Syno die Doku mal anpasst. Ist bisher noch die alte Doku verfügbar.

Brauchst also nichts setzen außer Restart nach dem Download.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Cobra am 12 Juli 2021, 17:33:36
Hey Heiko,

konnte leider erst jetzt testen aber die neue Version funktiert bis jetzt problemlos.
Vielen Dank

Gruß Cobra
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 12 Juli 2021, 17:38:46
Danke für die Rückmeldung. Ich checke die V ein, dann wird sie morgen früh per Update verteilt.

LG
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: SeppiDeluxe am 07 November 2021, 10:40:21
Hallo liebe SSCal - Nutzer Gemeinde,

ich nutze seit Jahren die alte Kalenderfunktion für verschiedenste Sachen. I.d.R. im Schema

Terminanfang: mach dies
Terminende: mach das

Das ganze wird mit einem get event ... auf das Kalenderdevice durchgeführt, gesplittet und auf Dummys getriggert.

Da ich auch ein großer Synofan bin und bereits sukzessive die SSXXX Module einatme, hatte ich mich bereits letztes Jahr am SSCAL versucht und dann an der gleichen Stelle wie dieses Jahr aufgegeben.

Unbestritten eigentlich ein "idiotensicheres" Wiki, aber ich kriege es nicht - einfach - hin.

Ziel:

Termin hat im Subjekt den Startbefehl und mach von mir aus auch nen Auto-at. Jetzt kommts, wie fange ich das Terminende ab und wo hinterlegt ich ggf. im Termin die Befehlsroutine?

Anderenfalls muss ich mir wohl wieder notifys basteln die die Eventtrigger vom SSCAL auseinander nehmen und dann wieder Routine basteln.

Danke für Feedback wenn ich etwas triviales überlesen habe.

Schönen Sonntag an alle
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 07 November 2021, 15:26:25
Hallo Seppi,

naja das ist relativ einfach. Wenn du ein automatisches AT zur Steuerung eines Devices (an/aus) nutzen willst, erstellst du zwei Kalendereinträge.
Einen Eintrag mit dem Startzeitpunkt der für "An" gelten soll mit dem dazugehörigen Startbefehl im Subjekt. Und einen weiteren Eintrag mit dem Startzeitpunkt der für "Aus" gelten soll mit dem dazugehörigen Stoppbefehl im Subjekt.

In beiden Fällen ist der Ende-Termin im Kalendereintrag nicht wichtig. Ich stelle den einfach ein paar Minuten später ein.
Im Anhang zwei Screenshots die das Vorgehen verdeutlichen. Du siehst das Einschalten und Ausschalten einer Umwälzpumpe.

Notify und andere Varianten gehen natürlich auch. Aber die automatische AT-Erstellung arbeitet komplett ohne Events was zur Entlastung des Systems beiträgt.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: moonsorrox am 17 Juni 2022, 00:04:45
Ich wollte nun die Tage auch mal ein Synolgy Kalender für Backups anlegen (dafür gibt es einen Wikieintrag) aber bei mir gibt es beim abholen des Kalenders wohl Probleme.

Ich nutze die DSM7.1
Was ich nicht verstehe ist warum er den default port der Syno 2x rein schreibt, dass könnte der Fehler wohl schon sein, oder.?
der User ist richtig und Status ist running

Das device holt nichts von der Synology ab, folgende Fehler sind im Log.

2022.06.16 23:43:02 3: SynControl - no session ID found - get new one
2022.06.16 23:41:52 2: SynControl - ERROR - Login or privilege of user moonsorrox unsuccessful
2022.06.16 23:41:52 2: SynControl - error while requesting http://10.0.0.33:5000:5000/webapi/entry.cgi?api=SYNO.API.Auth&version=6&method=Login&account=moonsorrox&passwd=xxxxxxxx&format="sid" - http://10.0.0.33:5000:5000/webapi/entry.cgi?api=SYNO.API.Auth&version=6&method=Login&account=moonsorrox&passwd=xxxxxxxx&format="sid": malformed or unsupported URL



hier mal ein List vom device
Internals:
   CFGFN     
   CREDENTIALS Set
   DEF        10.0.0.33:5000
   FUUID      62a9f53c-f33f-b063-0df5-c0b91ee459b321a4
   FVERSION   57_SSCal.pm:v2.4.9-s24736/2021-07-12
   MODE       Automatic
   MODEL      Diary
   NAME       SynControl
   NR         1917
   OPIDX      1
   OPMODE     listcal
   PROTOCOL   http
   RESEND     next planned SendQueue start: immediately by next entry
   SERVERADDR 10.0.0.33:5000
   SERVERPORT 5000
   STATE      <b>Status:</b> running - <b>Last Update</b>: lastUpdate - <b>Next Update</b>: Automatic - next polltime: 00:07:01
   TYPE       SSCal
   eventCount 179
   HELPER:
     CALFETCHED 0
     CREDENTIALS e[>|epOkFHg[WQH]3RIKmO{V6RWRC
     LOGINRETRIES 3
     PACKAGE    FHEM::SSCal
     VERSION    2.4.9
     VERSION_API 1.3.0
     VERSION_ErrCodes 1.3.5
     VERSION_SMUtils 1.23.2
     alias      Synology Kalender FHEM52
     asyncMode  1
     createATDevs 1
     cutLaterDays 2
     cutOlderDays 1
     event-on-update-reading .*Summary,state
     group      Synology-Backup
     icon       time_calendar
     interval   400
     room       SSCal,Software Geräte->HWR
     stateFormat <b>Status:</b> state - <b>Last Update</b>: lastUpdate - <b>Next Update</b>: nextUpdate
     tableFields Begin,End,DaysLeft,Weekday,Summary,Status,Calendar
     usedCalendars FHEM52-Backup
     CL:
       1:
         Authenticated 1
         AuthenticatedBy allowedWEB
         AuthenticatedUser fhem
         BUF       
         FW_ID      10062
         LASTACCESS 1655415787.57192
         NAME       WEB_10.0.0.11_2241
         NR         10062
         PEER       10.0.0.11
         PORT       2241
         SNAME      WEB
         SSL       
         STATE      Connected
         TEMPORARY  1
         TYPE       FHEMWEB
         canAsyncOutput 1
         encoding   UTF-8
         stacktrace  TcpServer_Close:325 FW_Undef:3480 FW_closeInactiveClients:3476 HandleTimeout:702
         READINGS:
           2022-06-16 23:42:21   state           Connected
     tableSpecs:
       columnMapProvider GoogleMaps
       columnSymbolIcon time_manual_mode
       cellStyle:
         columnAlign center
         columnSummaryAlign left
         columnSymbolAlign center
         headerAlign center
         noHeader   0
       columnMapIcon:
         HASH(0x5569d2206038)
         HASH(0x5569d23ac108)
       columnStateIcon:
         HASH(0x5569d165e630)
         HASH(0x5569d16dfe20)
         HASH(0x5569d26e8498)
         HASH(0x5569d1d1a6d0)
   OLDREADINGS:
   READINGS:
     2022-06-16 23:41:37   Errorcode       none
     2022-06-16 23:41:37   QueueLength     17
     2022-06-17 00:00:21   nextUpdate      Automatic - next polltime: 00:07:01
     2022-06-16 23:43:02   state           running
Attributes:
   alias      Synology Kalender FHEM52
   asyncMode  1
   createATDevs 1
   cutLaterDays 2
   cutOlderDays 1
   event-on-update-reading .*Summary,state
   group      Synology-Backup
   icon       time_calendar
   interval   400
   room       SSCal,Software Geräte->HWR
   stateFormat <b>Status:</b> state - <b>Last Update</b>: lastUpdate - <b>Next Update</b>: nextUpdate
   tableFields Begin,End,DaysLeft,Weekday,Summary,Status,Calendar
   tableSpecs {
  "cellStyle"  =>            {
                               "noHeader"           => "0",
                               "headerAlign"        => "center",
                               "columnAlign"        => "center",
                               "columnSymbolAlign"  => "center",
                               "columnSummaryAlign" => "left",
                             },
  "columnMapIcon"         => [{
                               "Status" => "eq 'ended' ",
                               "icon"   => "rc_WEB@grey",                               
                             },
                             {
                               "daysLeft" => ">= 1 ",
                               "icon"   => "rc_WEB",                               
                             }],
  "columnMapProvider"     => "GoogleMaps",
  "columnStateIcon"       => [
                             {
                               "Status"   => "eq 'ended' ",
                               "icon"     => "1px-spacer",
                             },
                             {
                               "Status"   => "eq 'started' ",
                               "icon"     => "10px-kreis-gruen",
                             },
                             {
                               "Status"   => "eq 'upcoming' ",
                               "icon"     => "10px-kreis-gelb",
                             },
                             {
                               "Status"   => "eq 'alarmed' ",
                               "icon"     => "10px-kreis-gruen",
                             },
                             ],
"columnSymbolIcon"       => "time_manual_mode",
}
   usedCalendars FHEM52-Backup
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 17 Juni 2022, 08:56:27
Moin,

Zitat
Was ich nicht verstehe ist warum er den default port der Syno 2x rein schreibt, dass könnte der Fehler wohl schon sein, oder.?

Deine Definition ist nicht richtig. Du gibst IP und Port nur durch Leerzeichen getrennt an (Commandref), also so:


define Appointments SSCal 192.168.2.10 5001 https


Im deinem Fall der Verwendung von http und dem Standardport reicht einfach:


define SynControl SSCal 10.0.0.33


Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: moonsorrox am 17 Juni 2022, 12:30:38
Genau das hatte ich schon und dann bekomme ich den Login Error.
Habe die Anmelde Prozedur nochmal s gemacht mit
set SynControl credentials

aber es bleibt beim Login Error.
Kann er evtl. mit dem Passwort Probleme haben weil ich dort Sonderzeichen drin habe.??
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 17 Juni 2022, 12:35:25
Zitat
Kann er evtl. mit dem Passwort Probleme haben weil ich dort Sonderzeichen drin habe.??
Ich meine mögliche Sonderzeichen berücksichtigt zu haben. Aber nobody ist perfekt.
Wenn du das Attr showPassInLog setzt. siehst du das Passwort was an die Syno übermittelt wird im Log.
Falls da etwas nicht passt bitte Bescheid geben. Du kannst auch eine Auszug aus dem Log posten und das PW durch *** ersetzen.
Das müssen wir ja nicht sehen.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: moonsorrox am 17 Juni 2022, 12:45:26
Danke für dein Unterstützung..!
Ja egal was ich einstelle bei showPassInLog ob nun "1" oder "0" es wird im log gar kein Passwort übermittelt.

Die Fehler im log sehen so aus.
2022.06.17 12:43:49 2: SynControl - ERROR - Login or privilege of user moonsorrox unsuccessful
2022.06.17 12:43:49 3: SynControl - Login of User moonsorrox unsuccessful. Code: 400 - No such account or the password is incorrect - try again
2022.06.17 12:43:47 2: SynControl - ERROR - Login or privilege of user moonsorrox unsuccessful
2022.06.17 12:43:47 3: SynControl - Login of User moonsorrox unsuccessful. Code: 400 - No such account or the password is incorrect - try again
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 17 Juni 2022, 12:47:21
Sorry, du musst auch verbose 4 oder 5 im Device einschalten, sonst sind die Meldungen nicht so ausführlich.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: moonsorrox am 17 Juni 2022, 12:51:42
Alles klar sieht schon besser aus, dass übertragene Passwort ist richtig
2022.06.17 12:49:27 4: SynControl - Call-Out now: http://10.0.0.33:5000/webapi/entry.cgi?api=SYNO.API.Auth&version=6&method=Login&account=moonsorrox&passwd=xxxxxxxxxxx&format="sid"
2022.06.17 12:49:27 4: SynControl - HTTP-Call login will be done with httptimeout-Value: 60 s
2022.06.17 12:49:27 4: SynControl - Credentials read from RAM: moonsorrox xxxxxxxxxx
2022.06.17 12:49:27 4: SynControl - --- Begin Function login ---
2022.06.17 12:49:27 3: SynControl - Login of User moonsorrox unsuccessful. Code: 400 - No such account or the password is incorrect - try again

        };
          'success' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' )
                     },
                       'code' => 400
          'error' => {
2022.06.17 12:49:27 5: SynControl - JSON decoded: $VAR1 = {
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 17 Juni 2022, 12:53:54
Mir wäre zwar jetzt neu dass die API bestimmte Sonderzeichen nicht "verträgt". Aber testen kannst du es ja mal ohne.
Welche verwendest du denn ?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: moonsorrox am 17 Juni 2022, 12:54:49
ich verwende die '#'
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 17 Juni 2022, 12:56:57
Hmm, ist jetzt m.M. nach nichts besonderes. Zumal sie ja richtig der API übergeben werden.
Kannst du nur mal ohne dieses Zeichen testen.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: moonsorrox am 17 Juni 2022, 12:58:42
warte ich mache mal kurz ein neues einfaches Passwort in die Synology
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: moonsorrox am 17 Juni 2022, 13:29:05
OK ich habe jetzt das Passwort geändert und es funktioniert, er holt erst mal Kalender ab und auch kein Login Fehler mehr
Er hat also unter DSM7.1 mit dem Login und der Raute '#' ein Problem.

Ja Mist das konnte ich nicht wissen..!
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 17 Juni 2022, 13:33:10
Ja, ich auch nicht.  ;)
Ich versuche es mal übers WE bei mir nachzustellen und wenn ich zum gleichen Ergebnis komme erstelle ich einen Hinweis in Commandref / Wiki bzw. schreibe mal an Syno.

LG
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: moonsorrox am 17 Juni 2022, 13:35:57
Ich werde mal mit einem anderen Account auf der Synology den Benutzer moonsorrox komplett löschen und nochmal neu erstellen und vergebe ein Passwort mit der # und melde mich hier ob das dann evtl. funktioniert.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: moonsorrox am 17 Juni 2022, 18:08:58
Ich habe jetzt nochmal komplett einem neuen Benutzer auf der Synology erstellt und das passwort mit Sonderzeichen '#' aber es funktioniert dann der Login nicht mehr.!
Bekomme also weiterhin einen login Fehler
2022.06.17 18:03:31 2: SynControl - ERROR - Login or privilege of user moonsorrox unsuccessful
2022.06.17 18:03:31 4: SynControl - Credentials read from RAM: moonsorrox xxxxxx#xxxxxx#
2022.06.17 18:03:31 4: SynControl - --- Begin Function login ---
2022.06.17 18:03:31 3: SynControl - Login of User moonsorrox unsuccessful. Code: 400 - No such account or the password is incorrect - try again
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 18 Juni 2022, 13:09:44
Ich konnte das von dir gemeldete Problem bei mir nachstellen bzw. bestätigen und habe bei Synology ein Ticket aufgemacht.
Mal schauen was die Kollegen antworten.

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: moonsorrox am 18 Juni 2022, 13:12:04
Vielen Dank für die Unterstützung, mal schauen wie lange das wohl dauert  ;)
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 18 Juni 2022, 13:17:00
Bin auch gespannt.  ;)
Das betrifft übrigens auch Zeichen wie "&", also reservierte Zeichen im URL-Umfeld. Mit URL-Encoding habe ich es schon versucht, was aber nicht funktioniert hat. Zeichen wie "{}" funktionieren problemlos.
Ich vermute die Problemzeichen müssen irgendwie escaped werden was aber nicht beschrieben ist. Wir werden sehen ...
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 29 Juni 2022, 21:24:48
Synology hat sehr zügig auf mein Ticket geantwortet und hat auch die Lösung mitgeteilt. Es müssen im Passwort die Zeichen


+ / ? % # & =


kodiert werden.
Ich bin jetzt erst dazu gekommen es zu implementieren und zu testen.
Im Prinzip trifft es für alle Sysnology Module zu. Deswegen gibt es morgen früh eine neue Version SMUtils im Update.
Damit sollte das Problem dann beseitigt sein und du/ihr könnt diese Zeichen im PW verwenden.

Grüße,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: moonsorrox am 30 Juni 2022, 14:32:10
vielen Dank
ich habe mal das Update heute gemacht und mein Login Error ist erstmal weg.
Nun kann ich mal weiter konfigurieren ob das nun auch alles funktioniert.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: phoenix-anasazi am 15 Juli 2022, 11:46:36
Hallo DS_Starter,

ich habe das selbe Problem wie THZ_Haus im Dezember 2020:

Zitat von: THZ_Haus am 15 Dezember 2020, 17:08:57
Hallo,
im Log von FHEM stehen folgende Infos:
2.15 16:33:57 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in numeric le (<=) at ./FHEM/57_SSCal.pm line 1813.
2020.12.15 16:33:57 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in subtraction (-) at ./FHEM/57_SSCal.pm line 1814.
2020.12.15 16:33:57 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in addition (+) at ./FHEM/57_SSCal.pm line 1817.
2020.12.15 16:53:57 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in numeric le (<=) at ./FHEM/57_SSCal.pm line 1813.
2020.12.15 16:53:57 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in subtraction (-) at ./FHEM/57_SSCal.pm line 1814.
2020.12.15 16:53:57 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in addition (+) at ./FHEM/57_SSCal.pm line 1817.

Kann mir da aber keinen reim raus machen!?

Ich habe täglich nach jeder Aktualisierung des Kalenders folgendes im Log stehen:
2022.07.15 11:35:14 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in numeric le (<=) at ./FHEM/57_SSCal.pm line 1822.
2022.07.15 11:35:14 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in addition (+) at ./FHEM/57_SSCal.pm line 1826.
2022.07.15 11:35:14 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in subtraction (-) at ./FHEM/57_SSCal.pm line 1823


Ich habe einige wiederkehrende Termine die auch auf verschiedenen Wochentagen liegen. Habe diese aber auch schon gelöscht und neu angelegt und auch mit cutOlderDays und cutLaterDays versucht einzugrenzen. Aber der Fehler kommt sogar, wenn ich auf einen Tag eingrenze an dem gar keine Termine liegen, also auch keine abgerufen werden. Hast du irgendeine Idee an was das liegen könnte?
Das Modul funktioniert einwandfrei, auch mit der Fehlermeldung. Die ist nur etwas lästig, weil sie halt jeden Tag auftaucht und mir das Log vollspammt ;-) Und unterdrücken kann ich die ja nicht...

Vielen Dank schonmal.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 15 Juli 2022, 21:06:05
Hallo,

ich habe dir eine Testversion in meinem contrib bereitgestellt.
Zum Download in der FHEMWEB Kommandozeile inklusive der Anführungszeichen angeben und danach FHEM restarten:


"wget -qO ./FHEM/57_SSCal.pm https://svn.fhem.de/fhem/trunk/fhem/contrib/DS_Starter/57_SSCal.pm"


Mit verbose 1 gibt es dann eine Logausgabe:


<name> - TEST - rByDay: ....


Poste dann bitte die Logausgabe. Damit sehe ich hoffentlich mehr.
Es hilft auch wenn du die Definition eines Beispieltermins aus deinem Kalender postest.
Der Inhalt kann anonym sein, den muss ich nicht wissen.

Grüße,
Heiko

Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: phoenix-anasazi am 15 Juli 2022, 21:46:50
Hallo,

habe mir die Testversion geladen. Das Log gibt jetzt folgendes aus:
2022.07.15 21:37:19 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in concatenation (.) or string at ./FHEM/57_SSCal.pm line 1810.
2022.07.15 21:37:19 1: Cal_Syno - TEST - rByDay: 1SU, numOfAppointmentDay:
2022.07.15 21:37:19 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in numeric le (<=) at ./FHEM/57_SSCal.pm line 1822.
2022.07.15 21:37:19 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in addition (+) at ./FHEM/57_SSCal.pm line 1826.
2022.07.15 21:37:19 1: PERL WARNING: Use of uninitialized value $numOfAppointmentDay in subtraction (-) at ./FHEM/57_SSCal.pm line 1823.
2022.07.15 21:37:19 1: Cal_Syno - TEST - rByDay: 1SA, numOfAppointmentDay:
2022.07.15 21:37:19 1: Cal_Syno - TEST - rByDay: 1MO, numOfAppointmentDay:
2022.07.15 21:37:19 1: Cal_Syno - TEST - rByDay: 2SA, numOfAppointmentDay: 


Zum Beispiel ein 2-wöchentlicher Termin:
     2022-07-15 21:37:19   7_01_Summary    <TITLE>
     2022-07-15 21:37:19   7_05_Begin      2022-07-18 09:00:00
     2022-07-15 21:37:19   7_10_End        2022-07-18 10:00:00
     2022-07-15 21:37:19   7_15_Timezone   Europe/Paris
     2022-07-15 21:37:19   7_17_Status     upcoming
     2022-07-15 21:37:19   7_20_daysLeft   3
     2022-07-15 21:37:19   7_25_daysLeftLong in 3 Tagen
     2022-07-15 21:37:19   7_30_Weekday    Montag
     2022-07-15 21:37:19   7_50_isAllday   0
     2022-07-15 21:37:19   7_55_isRepeatEvt 1
     2022-07-15 21:37:19   7_70_repeatRule FREQ=WEEKLY;WKST=MO;INTERVAL=2;BYDAY=MO
     2022-07-15 21:37:19   7_80_0_notifyDateTime 2022-07-18 09:00:00
     2022-07-15 21:37:19   7_90_calName    My Calendar
     2022-07-15 21:37:19   7_95_IcalUID    XXXXXXX
     2022-07-15 21:37:19   7_98_EventId    6365
     2022-07-15 21:37:19   7_99_---------------------- --------------------------------------------------------------------


Ein wöchentlicher Termin:
     2022-07-15 21:42:07   1_01_Summary    <TITLE>
     2022-07-15 21:42:07   1_05_Begin      2022-07-15 13:00:00
     2022-07-15 21:42:07   1_10_End        2022-07-15 14:00:00
     2022-07-15 21:42:07   1_15_Timezone   Europe/Berlin
     2022-07-15 21:42:07   1_17_Status     ended
     2022-07-15 21:42:07   1_20_daysLeft   0
     2022-07-15 21:42:07   1_25_daysLeftLong in 0 Tagen
     2022-07-15 21:42:07   1_30_Weekday    Freitag
     2022-07-15 21:42:07   1_50_isAllday   0
     2022-07-15 21:42:07   1_55_isRepeatEvt 1
     2022-07-15 21:42:07   1_70_repeatRule FREQ=WEEKLY;WKST=MO;BYDAY=FR
     2022-07-15 21:42:07   1_80_0_notifyDateTime 2022-07-15 12:45:00
     2022-07-15 21:42:07   1_90_calName    Gemeinsam
     2022-07-15 21:42:07   1_95_IcalUID    XXXXXX
     2022-07-15 21:42:07   1_98_EventId    6093
     2022-07-15 21:42:07   1_99_---------------------- --------------------------------------------------------------------


Vielen Dank.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 15 Juli 2022, 22:06:55
Ja, danke. Schaue ich mir an.

Schönen Abend
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 16 Juli 2022, 07:53:26
Guten Morgen,

es gelingt mir nicht das Problem nachzustellen.
Die Probetermine habe ich bei mir angelegt und es funktioniert tadellos.
Mir ist aufgefallen, dass der relevante Parameter BYDAY=MO so gesetzt wird wie es vorgesehen ist, was auch bei dir der Fall ist.
Allerdings sind bei dir auch Einträge vorhanden, die z.B.  rByDay: 1MO (d.h. wäre BYDAY=1MO) enthalten. Diese Einträge verursachen die Fehlermitteilung durch die Ziffer vor dem Wochentagskürzel. Im einfachsten Fall könnte ich Ziffern eleminieren, würde aber gern verstehen woher sie kommen.

Kann es sein, dass es alte Einträge sind, die nicht mit dem Synology Kalender angelegt wurden ?
Kannst du bitte einen Screenshot des Kalendereintrags machen wie ich ihn beispielhaft hier angehängt habe ?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 16 Juli 2022, 08:27:32
Ich konnte jetzt das Problem identifizieren und beheben.
Es kam bei einem monatlich wiederholenden Termin mit Wiederholungsintervall "Tag der Woche" vor. (Screenshot)

Eine korrigierte Version zum Test liegt wieder im Contrib.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: phoenix-anasazi am 16 Juli 2022, 10:15:15
Guten Morgen,

super, das ging ja schnell. Habe jetzt keine Fehlermeldung mehr.
Ich lege meine Termine in der Regel am Handy an (Android, App: Business Calender 2). Und ich habe tatsächlich auch monatliche Termine, die an bestimmten Wochentagen kommen. Die waren jetzt aber eigentlich nicht in der Auswahl, die ich mit CutOlder/YoungerDays eingeschränkt hatte...  :o

Funktioniert (auch ohne CutXxxDays, also mit Standard-Intervall und inklusive mindestens einem monatlichen Termin mit Wochentag im Intervall), werde es noch beobachten und mich melden, falls doch noch etwas auffällig ist.
Dir erstmal vielen Dank und ein schönes Wochenende!
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 16 Juli 2022, 10:28:48
Danke für die Rückmeldung. Ich checke die neue Version im Laufe des Tages ein sodass der Fix morgen früh im Update enthalten ist.

Zitat
...
Die waren jetzt aber eigentlich nicht in der Auswahl, die ich mit CutOlder/YoungerDays eingeschränkt hatte...

Ja, nur intern werden die Daten die der Kalender liefert zunächst bewertet und führten zu der Fehlermeldung.

Falls noch etwas auffallen sollte sagst einfach Bescheid.
Die auch ein schönes WE.

LG
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: moonsorrox am 26 Juli 2022, 18:20:45
Ich hatte heute mal ein Fhem Update gemacht und habe seitdem jede Menge Meldungen im Log, ich habe auch gesehen das beim Update das SSL Modul dabei war.
Diese Einträge hatte ich bisher so nie dabei, was muss ich hier machen, damit die Einträge nicht mehr kommen.?

Die Logeinräge sehen so aus
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-05 18:00:00, end: 2022-07-05 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-06 18:00:00, end: 2022-07-06 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-07 18:00:00, end: 2022-07-07 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-08 18:00:00, end: 2022-07-08 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-09 18:00:00, end: 2022-07-09 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-10 18:00:00, end: 2022-07-10 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-12 18:00:00, end: 2022-07-12 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-13 18:00:00, end: 2022-07-13 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-14 18:00:00, end: 2022-07-14 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-15 18:00:00, end: 2022-07-15 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-16 18:00:00, end: 2022-07-16 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-17 18:00:00, end: 2022-07-17 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-19 18:00:00, end: 2022-07-19 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-20 18:00:00, end: 2022-07-20 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-21 18:00:00, end: 2022-07-21 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-22 18:00:00, end: 2022-07-22 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-23 18:00:00, end: 2022-07-23 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-24 18:00:00, end: 2022-07-24 18:15:00)
2022.07.26 18:14:35 4: SynControl - Ignore WEEKLY event - out of selected time LIMITS (Backup FHEM IP10.0.0.52 (inkrementelle Sicherung) , start: 2022-07-29 18:00:00, end: 2022-07-29 18:15:00)
2022.07.26 18:14:35 4: SynControl - Recurring params - FREQ: MONTHLY, COUNT: 9999999, INTERVAL: 1, BYMONTHDAY: 17, BYDAY: , UNTIL:
2022.07.26 18:14:35 4: SynControl - Ignore MONTHLY event - out of selected time LIMITS (Backups FHEM IP10.0.0.52 Vormonat löschen , start: 2022-06-17 10:15:00, end: 2022-06-17 10:30:00)
2022.07.26 18:14:35 4: SynControl - Ignore MONTHLY event - out of selected time LIMITS (Backups FHEM IP10.0.0.52 Vormonat löschen , start: 2022-07-17 10:15:00, end: 2022-07-17 10:30:00)
2022.07.26 18:14:35 4: SynControl - Ignore MONTHLY event - out of selected time LIMITS (Backups FHEM IP10.0.0.52 Vormonat löschen , start: 2022-08-17 10:15:00, end: 2022-08-17 10:30:00)
2022.07.26 18:14:35 4: SynControl - Opmode "eventlist" finished successfully, Sendqueue index "25" deleted.
2022.07.26 18:14:35 4: SynControl - delete device: SSCal.SynControl.1036.20220727T180000
2022.07.26 18:14:35 4: SynControl - delete device: SSCal.SynControl.1036.20220728T180000
2022.07.26 18:14:35 4: SynControl - Command detected. Create device "SSCal.SynControl.1036.20220727T180000" with type "at".
2022.07.26 18:14:35 4: SynControl - Command detected. Create device "SSCal.SynControl.1036.20220728T180000" with type "at".
2022.07.26 18:14:44 3: resource, /lights/bridge_HUESensor28, not available
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 26 Juli 2022, 20:35:05
Das ist eine normale Ausgabe mit verbose 4 sofern wie ausgeschrieben die time LIMITS in den Attr cutLaterDays  bzw. cutOlderDays  überschritten werden.

verbose 3 oder kleiner im Device setzen.

LG
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Fredi69 am 11 August 2022, 09:17:46
Ich möchte ich erst einmal für die Synology Module recht herzlich bedanken, gerne nutze ich schon lange die Integration.
Ich nutze auch die Urlaub/Abwesenheiten automatisiert in holiday Device Steuerdatei übernehmen Funktion aus dem Wiki.
Wie kann ich die Funktion dahingehend einschränken, nur auf einen bestimmten Kalender zuzugreifen und nicht alle Kalender auszuwerten?

Danke
Fredi69
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 11 August 2022, 09:59:04
Hallo Fredi,

freut mich wenn dir die Module hilfreich sind.  :)

Zitat
Wie kann ich die Funktion dahingehend einschränken, nur auf einen bestimmten Kalender zuzugreifen und nicht alle Kalender auszuwerten?

Einfach den/die relevanten Kalender der Syno über das Attr usedCalendars auswählen.

LG
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Fredi69 am 11 August 2022, 10:04:54
Zitat von: DS_Starter am 11 August 2022, 09:59:04
Einfach den/die relevanten Kalender der Syno über das Attr usedCalendars auswählen.

Danke, aber ich will ja nur bei der Urlaubserkennung (Routine SSCalToHoliday) auf einen Kalender einschränken oder stehe ich auf dem Schlauch?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 11 August 2022, 10:07:36
Na eher stehe ich auf dem Schlauch  ;)
Hatte es falsch verstanden.
Nein, zur Zeit geht das nicht, aber ich werde mir es kurzfristig anschauen damit man das machen kann.

LG
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Fredi69 am 11 August 2022, 15:16:24
Zitat von: DS_Starter am 11 August 2022, 09:59:04
Einfach den/die relevanten Kalender der Syno über das Attr usedCalendars auswählen.

Ich habe mir erstmal so beholfen, in dem ich eine zweite Instanz von SSCal aufgesetzt habe und über das Attr usedCalendars nur den einen gewünschte Kalender ausgewählt habe.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 11 August 2022, 15:21:40
Das ist schon der richtige Weg um einen bestimmten Kalender auf der Syno auszuwählen mit dem man arbeiten will.
Man kann mehrere/viele SSCal-Devices anlegen je nach Bedarf.

Ich war der Meinung du hast verschiedene Holiday-Devices und wolltest eines davon als Ziel für Einträge auswählen oder hatte ich das falsch interpretiert ?
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Fredi69 am 12 August 2022, 11:06:57
Nein, ich wollte in der Routine SSCalToHoliday nur einen Kalender auswerten, nicht alle Kalender.
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 12 August 2022, 11:19:15
Ja dann passt es so wie du es gemacht hast. Genau dazu ist das Attr usedCalendars gedacht.
Works as designed.

LG
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Haxlefax am 08 Dezember 2022, 17:54:10
Guten Abend,
ich suche jetzt schon länger einen Hinweis, wie ich ein SSCAL-Kalender in ftui einbinde. Die Subroutine SSCal_calAsHtml versteh ich nicht zu nutzen. Vielleicht ist es so einfach, dass bisher niemand ein Wort darüber verloren hat, aber ich stehe zu dem Thema total auf dem Schlauch. Alle Suchen sowohl im Forum, Wiki als auch Google brachten mir keinen Hinweis. Mag vielleicht jemand einem Anfänger wie mir da einen Tipp geben. Ich würde mich sehr freuen und danke schon mal ganz herzlich!!!
Grüße
Holger
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 10 Dezember 2022, 08:35:08
Guten Morgen,

ich persönlich nutze FTUI nicht (nehme Dashboard) und kann dir nicht sagen ob mein Hinweis 100%ig funktioniert.
Aber ein Weg wäre zunächst ein Weblink Device anzulegen.
Dafür bietet SSCal die Funktion an, siehe Hilfe zu "get ... calAsHtml", zum Beispiel:

Zitatdefine SynCal.Abfall.WBL weblink htmlCode { FHEM::SSCal::calAsHtml ("SynCal.Abfall") }

Die weblink Erstellung habe ich auch im Wiki beschrieben: https://wiki.fhem.de/wiki/SSCal_-_Integration_des_Synology_Calendar_Servers#Termintabelle_als_Weblink_einf.C3.BCgen

Dieses Weblink Device kannst du dann in FTUI einbinden.
Ich habe dafür diesen Beitrag https://forum.fhem.de/index.php?topic=111803.0 bzw. diese Seite: https://github.com/nesges/Widgets-for-fhem-tablet-ui/wiki/iframe gefunden. Vllt. hilft das.

Sicherlich gibt es dafür noch weitere Wege.

LG,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Haxlefax am 15 Dezember 2022, 20:59:09
Guten Abend Heiko,
ich komme erst jetzt dazu, mich für Deine Antwort zu bedanken. Leider klappt es bei mir nicht:

define SynCalFamWBL weblink htmlCode { SSCal_calAsHtml ("FamCal") }
#   CFGFN     
#   DEF        htmlCode { SSCal_calAsHtml ("FamCal") }
#   FUUID      639b7bac-f33f-3b3e-6413-8d346ddee943e72c
#   LINK       { SSCal_calAsHtml ("FamCal") }
#   NAME       SynCalFamWBL
#   NR         459
#   STATE      initialized
#   TYPE       weblink
#   WLTYPE     htmlCode
#
setstate SynCalFamWBL initialized



Bringt nur einen Fehler "Undefined subroutine &main::SSCal_calAsHtml called at (eval 43389134) line 1."

Hättest Du vielleicht noch einen Tipp für mich zur Definition?

Danke vielmals
Holger
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 15 Dezember 2022, 21:08:54
Du musst es so schreiben

      FHEM::SSCal::calAsHtml


Das Wiki muss ich ändern sehe ich gerade ...

Grüsse,
Heiko
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: Haxlefax am 15 Dezember 2022, 21:59:21
Lieben Dank Heiko, so weit hat es geklappt.
Jetzt stecke ich an der gleichen Stelle wie macfly mit Antwort 5 https://forum.fhem.de/index.php/topic,111803.msg1060705.html#msg1060705. Ich sehen nichts, was mit http beginnt. Außerdem komme ich nach einem Aufruf eines anderen FHEM-Raumes nicht mehr an die Definition des Weblinks. Außer in fhem.cfg zu löschen und neu zu definieren, habe ich da keine Idee.

Antwort 6 habe ich versucht, Fehlermeldung im FTUI: File not found ./www/tablet/undefined Wahrscheinich verstehe ich die Antwort nicht, bzw. kann sie nicht umsetzen:

<div data-type="iframe" data-device="SynCalFamWBL" data-url="http://fhem.de"></div>


Grüße
Holger
Titel: Antw:57_SSCal - Modul für den Synology Kalender
Beitrag von: DS_Starter am 15 Dezember 2022, 23:32:19
Hallo Holger,

wie gesagt verwende ich FTUI nicht und kann dir da leider nicht weiterhelfen.
Wahrscheinlich müsstest du Fragen zur Einbindung eines Weblink Devices in einem FTUI Forum platzieren.

Zitat
Außerdem komme ich nach einem Aufruf eines anderen FHEM-Raumes nicht mehr an die Definition des Weblinks. Außer in fhem.cfg zu löschen und neu zu definieren, habe ich da keine Idee.
Die Aussage verstehe ich nicht. Löschen und neu definieren ist nicht zielführend und mit Sicherheit nicht nötig.
Wenn man den Namen des Devices kennt, kann man mit "list <Name>" jederzeit die Definition des Dev aufrufen und über einen Link zur Detailseite des Dev verzweigen.

LG