Seite 2 von 6

Re: Ferien und Feiertage via ICAL

Verfasst: 29. Jul 2016 08:56
von Cyrelian
Hi Knut,

ich habe das mal bei mir nachgebaut und siehe da....bei Euch sind Ferien :).

Ich hab noch ein bischen was im Code angepasst. Probier mal bitte. Ich hab allerdings mein Transform file genommen. Aber das ist das gleiche was Seppy gepostet hat.

Item:

Code: Alles auswählen

String GlobalSpecialDayICAL
   {http="<[http://www.schulferien.org/media/ical/deutschland/feiertage_schleswig-holstein_%1$tY.ics:7200000:JS(ical_holiday.js)]"}
String GlobalHolidayICAL
   {http="<[http://www.schulferien.org/media/ical/deutschland/ferien_schleswig-holstein_%1$tY.ics:7200000:JS(ical_holiday.js)]"}
Switch GlobalHoliday
   (gSystem)
String GlobalHolidayName
Rule:

Code: Alles auswählen

rule "Event_Holiday"
when
   Item GlobalHolidayICAL changed or
   Item GlobalSpecialDayICAL changed
then
   //Prüfen ob ein Feiertag ist
   if (GlobalSpecialDayICAL.state != "false" && GlobalSpecialDayICAL.state != "Uninitialized"){
      GlobalHoliday.postUpdate(ON)
      GlobalHolidayName.postUpdate(GlobalSpecialDayICAL.state)
      logInfo("HomeBox.SystemRules:Event_Holiday", "GlobalSpecialDayICAL changed: Updated Holiday Status: " + GlobalHoliday.state + " (" + GlobalHolidayName.state + ")")
   }
   // Prüfen ob Ferien sind
   else if (GlobalHolidayICAL.state != "false" && GlobalHolidayICAL.state != "Uninitialized"){
      GlobalHoliday.postUpdate(ON)
      GlobalHolidayName.postUpdate(GlobalHolidayICAL.state)
      logInfo("HomeBox.SystemRules:Event_Holiday", "GlobalHolidayICAL changed: Updated Holiday Status: " + GlobalHoliday.state + " (" + GlobalHolidayName.state + ")")
   } else {
      GlobalHoliday.postUpdate(OFF)
      GlobalHolidayName.postUpdate("false")
      logInfo("HomeBox.SystemRules:Event_Holiday", "Updated Holiday Status: " + GlobalHoliday.state + " (false)")
   }
end
^

Sitemap:

Code: Alles auswählen

Text item=GlobalHolidayName label="Ferien/Feiertag [%s]" icon="calendar" visibility=[GlobalHoliday==ON]

Kannst Du bitte das Debug logging für HTTP einschalten, vielleicht sehen wir da ja was.

CU
Cyrelian

Re: Ferien und Feiertage via ICAL

Verfasst: 29. Jul 2016 11:53
von favorit626
Hallo Cyrelian,
danke , das hat ja schon mal super geklappt.
Aber was hast Du denn da jetzt geändert ? Vielleicht kann ich das ja auch verstehen. :?:
Und würde der Müllkalender denn jetzt auch funktionieren? der nächste Termin wäre normalerweise der 02. Aug. na mal sehen.

Herzlichen Dank für die Hilfe.

Knut

Re: Ferien und Feiertage via ICAL

Verfasst: 29. Jul 2016 13:40
von seppy
Hi Zusammen,

sorry ich war ein paar Tage dank meines Internetanbieters offline :oops:

Funktioniert die Regel denn jetzt?

Grüße,

Seppy

Re: Ferien und Feiertage via ICAL

Verfasst: 29. Jul 2016 19:32
von favorit626
Hallo Seppy,
ja funktioniert, die Sommerferien zeigt er jedenfalls erstmal an. Ob der Müllkalender nächste Woche dann auch läuft sehen wir dann.

Gruß
Knut

Re: Ferien und Feiertage via ICAL

Verfasst: 30. Jul 2016 20:04
von Cyrelian
Hi Knut,

also ich habe den Code wie folgt angepasst:

In Items:

Code: Alles auswählen

String GlobalHolidayICAL
   {http="<[http://www.schulferien.org/media/ical/deutschland/ferien_schleswig-holstein_%1$tY.ics:7200000:JS(ical_holiday.js)]"}
In Rules:

Code: Alles auswählen

if (GlobalSpecialDayICAL.state != "false" && GlobalSpecialDayICAL.state != "Uninitialized"){
      GlobalHoliday.postUpdate(ON)
      GlobalHolidayName.postUpdate(GlobalSpecialDayICAL.state)
und

Code: Alles auswählen

else if (GlobalHolidayICAL.state != "false" && GlobalHolidayICAL.state != "Uninitialized"){
      GlobalHoliday.postUpdate(ON)
      GlobalHolidayName.postUpdate(GlobalHolidayICAL.state)
und

Code: Alles auswählen

else {
      GlobalHoliday.postUpdate(OFF)
      GlobalHolidayName.postUpdate("false")
Also nichts weltbewegendes. Der Hauptunterschied ist, dass ich IMMER folgende Schreibweise verwende:

Code: Alles auswählen

 GlobalHoliday.postUpdate(ON)
anstelle von

Code: Alles auswählen

postUpdate(GlobalHoliday,ON)
.
Ich habe damit einfach bessere Erfahrungen gemacht.


@Seppy, freut mich das dein Internet wieder läuft..hat ja lange genug gedauert :?

CYA
Cyrelian

Re: Ferien und Feiertage via ICAL

Verfasst: 25. Okt 2016 22:48
von Penrose
Guten Abend,

ich finde das cool und habe Items, Rule und Transformation deployt, aber es will nicht so recht funktionieren. Aus einem mir nicht nachvollziehbaren Grund liefert die Transformation immer false zurück, obwohl ich aktuell den Berlin-Kalender anspreche, wo heute noch Herbstferien sind. Kann man den Javascript-Teil irgendwie debuggen?

Danke!

Re: Ferien und Feiertage via ICAL

Verfasst: 26. Okt 2016 08:05
von seppy
Hi,
zum debuggen habe ich das Script als HTML deklariert und dann im Browser aufgerufen. So kannst Du dir Ausgaben einbauen.

Grüße Seppy


Gesendet von iPhone mit Tapatalk

Re: Ferien und Feiertage via ICAL

Verfasst: 9. Dez 2016 09:35
von jensen79
Hallo Leute,

ich versuche das gerade mit dem aktuellen Snapshot von OH2 zum Laufen zu bekommen. Hat da schon jemand Erfahrungen mit? Er scheint einfach "nichts" zu machen. Ich habe woanders gelesen dass es evtl. Probleme mit dem 1.9er HTTP-Binding unter OH2 geben soll.

Wie sehen da eure Erfahrungen aus?

Gruß, Jens

Re: Ferien und Feiertage via ICAL

Verfasst: 9. Dez 2016 09:43
von jensen79
sorry... funktioniert doch ohne Probleme. Wenn weder Ferien noch Feiertag ist tut sich natürlich nicht viel ;)

Gute Arbeit :)

Re: Ferien und Feiertage via ICAL

Verfasst: 9. Dez 2016 19:36
von Cyrelian
Hi,

jup, da hast Du recht..wenn keine Ferien oder Feiertage sind sieht man ...nichts :D
Wenn Du prüfen willst, ob es tatsächlich läuft, kann Du im Script folgende Zeile wieder einkommentieren

Code: Alles auswählen

//var dateCheck = calenDate("20151003");
und stellt es z.B. auf den 26.12.2016.
Wie hast Du es unter OH2 zu laufen gebracht? bei mir gehts irgendwie nicht (binding-exec - 2.0.0.SNAPSHOT).

Das kommt bei mir nämlich als STATE an: :o

Code: Alles auswählen

    "state": "BEGIN:VCALENDAR\nVERSION:2.0\nMETHOD:PUBLISH\nPRODID:-//schulferien.org//iCal Generator//DE\nBEGIN:VEVENT\nCREATED:20161209T032002Z\nLAST-MODIFIED:20161209T032002Z\nDTSTAMP:20161209T032002Z\nSUMMARY:Neujahr\nDTSTART;VALUE=DATE:20160101\nDTEND;VALUE=DATE:20160102\nURL:http://www.schulferien.org\nDESCRIPTION:Alle Termine auf www.schulferien.org\nTRANSP:TRANSPARENT\nUID:FT_2016_feiertag584a14d4cd7a1@schulferien.org\nEND:VEVENT\nBEGIN:VEVENT\nCREATED:20161209T032002Z\nLAST-MODIFIED:20161209T032002Z\nDTSTAMP:20161209T032002Z\nSUMMARY:2. Weihnachtsfeiertag\nDTSTART;VALUE=DATE:20161226\nDTEND;VALUE=DATE:20161227\nURL:http://www.schulferien.org\nDESCRIPTION:Alle Termine auf www.schulferien.org\nTRANSP:TRANSPARENT\nUID:FT_2016_feiertag584a14d4d88a8@schulferien.org\nEND:VEVENT\nBEGIN:VEVENT\nCREATED:20161209T032002Z\nLAST-MODIFIED:20161209T032002Z\nDTSTAMP:20161209T032002Z\nSUMMARY:Karfreitag\nDTSTART;VALUE=DATE:20160325\nDTEND;VALUE=DATE:20160326\nURL:http://www.schulferien.org\nDESCRIPTION:Alle Termine auf www.schulferien.org\nTRANSP:TRANSPARENT\nUID:FT_2016_feiertag584a14d4d1e62@schulferien.org\nEND:VEVENT\nBEGIN:VEVENT\nCREATED:20161209T032002Z\nLAST-MODIFIED:20161209T032002Z\nDTSTAMP:20161209T032002Z\nSUMMARY:Ostermontag\nDTSTART;VALUE=DATE:20160328\nDTEND;VALUE=DATE:20160329\nURL:http://www.schulferien.org\nDESCRIPTION:Alle Termine auf www.schulferien.org\nTRANSP:TRANSPARENT\nUID:FT_2016_feiertag584a14d4d3683@schulferien.org\nEND:VEVENT\nBEGIN:VEVENT\nCREATED:20161209T032002Z\nLAST-MODIFIED:20161209T032002Z\nDTSTAMP:20161209T032002Z\nSUMMARY:Tag der Arbeit\nDTSTART;VALUE=DATE:20160501\nDTEND;VALUE=DATE:20160502\nURL:http://www.schulferien.org\nDESCRIPTION:Alle Termine auf www.schulferien.org\nTRANSP:TRANSPARENT\nUID:FT_2016_feiertag584a14d4d4412@schulferien.org\nEND:VEVENT\nBEGIN:VEVENT\nCREATED:20161209T032002Z\nLAST-MODIFIED:20161209T032002Z\nDTSTAMP:20161209T032002Z\nSUMMARY:Christi Himmelfahrt\nDTSTART;VALUE=DATE:20160505\nDTEND;VALUE=DATE:20160506\nURL:http://www.schulferien.org\nDESCRIPTION:Alle Termine auf www.schulferien.org\nTRANSP:TRANSPARENT\nUID:FT_2016_feiertag584a14d4d5a56@schulferien.org\nEND:VEVENT\nBEGIN:VEVENT\nCREATED:20161209T032002Z\nLAST-MODIFIED:20161209T032002Z\nDTSTAMP:20161209T032002Z\nSUMMARY:Pfingstmontag\nDTSTART;VALUE=DATE:20160516\nDTEND;VALUE=DATE:20160517\nURL:http://www.schulferien.org\nDESCRIPTION:Alle Termine auf www.schulferien.org\nTRANSP:TRANSPARENT\nUID:FT_2016_feiertag584a14d4d7004@schulferien.org\nEND:VEVENT\nBEGIN:VEVENT\nCREATED:20161209T032002Z\nLAST-MODIFIED:20161209T032002Z\nDTSTAMP:20161209T032002Z\nSUMMARY:Fronleichnam\nDTSTART;VALUE=DATE:20160526\nDTEND;VALUE=DATE:20160527\nURL:http://www.schulferien.org\nDESCRIPTION:Alle Termine auf www.schulferien.org\nTRANSP:TRANSPARENT\nUID:FT_2016_feiertag584a14d4d7c8d@schulferien.org\nEND:VEVENT\nBEGIN:VEVENT\nCREATED:20161209T032002Z\nLAST-MODIFIED:20161209T032002Z\nDTSTAMP:20161209T032002Z\nSUMMARY:Tag der Deutschen Einheit\nDTSTART;VALUE=DATE:20161003\nDTEND;VALUE=DATE:20161004\nURL:http://www.schulferien.org\nDESCRIPTION:Alle Termine auf www.schulferien.org\nTRANSP:TRANSPARENT\nUID:FT_2016_feiertag584a14d4cdc4e@schulferien.org\nEND:VEVENT\nBEGIN:VEVENT\nCREATED:20161209T032002Z\nLAST-MODIFIED:20161209T032002Z\nDTSTAMP:20161209T032002Z\nSUMMARY:Allerheiligen\nDTSTART;VALUE=DATE:20161101\nDTEND;VALUE=DATE:20161102\nURL:http://www.schulferien.org\nDESCRIPTION:Alle Termine auf www.schulferien.org\nTRANSP:TRANSPARENT\nUID:FT_2016_feiertag584a14d4d0c69@schulferien.org\nEND:VEVENT\nBEGIN:VEVENT\nCREATED:20161209T032002Z\nLAST-MODIFIED:20161209T032002Z\nDTSTAMP:20161209T032002Z\nSUMMARY:1. Weihnachtsfeiertag\nDTSTART;VALUE=DATE:20161225\nDTEND;VALUE=DATE:20161226\nURL:http://www.schulferien.org\nDESCRIPTION:Alle Termine auf www.schulferien.org\nTRANSP:TRANSPARENT\nUID:FT_2016_feiertag584a14d4d810b@schulferien.org\nEND:VEVENT\nEND:VCALENDAR",
CU
Cyrelian