iCal Kalender nicht vorhanden oder Leer

Begonnen von Mike767, 02 Februar 2024, 10:38:20

Vorheriges Thema - Nächstes Thema

Mike767

Hallo zusammen,

ich habe neuerdings das Problem, dass der Sitzungskalenden von der Gemeinde angeblich leer ist.
Wenn die URL im Browser aufgerufen wird kann ich ihn downloaden.

Config:

define SitzungsKalender Calendar ical url https://www.amt-zarrentin.de/veranstaltungen/veranstaltungen.ical?zeitauswahl=1&auswahl_woche_tage=28&onlyMonat_select=202402&beginn_datum=&beginn_tag=&beginn_monat=&beginn_jahr=&ende_datum=&ende_tag=&ende_monat=&ende_jahr=&suchwort=&rubrik=0&selected_kommune=29120&ort=0&destination=0&dest_id=0&selected_destination=0&select_ort=0&highlights=0&serie=0&verband=0&ressort=0&von=&bis= 18000
setuuid SitzungsKalender 5c4ac493-f33f-20d1-7e1a-a99507b31797ccaf
attr SitzungsKalender hideOlderThan 1
attr SitzungsKalender room Kalender
attr SitzungsKalender suppressReading SUMMARY



Log:
2024.02.02 10:26:57 4: Calendar SitzungsKalender: Updating...
2024.02.02 10:26:57 4: Calendar SitzungsKalender: Getting data from URL <hidden>
2024.02.02 10:26:57 1: Calendar SitzungsKalender: retrieval failed with HTTP response code 403
2024.02.02 10:26:57 5: Calendar SitzungsKalender: HTTP response header:
HTTP/1.1 403 Forbidden
Date: Fri, 02 Feb 2024 09:26:57 GMT
Server: Apache
Content-Length: 318
Connection: close
Content-Type: text/html; charset=iso-8859-1
2024.02.02 10:26:57 1: Calendar SitzungsKalender: retrieved no or empty data
2024.02.02 10:26:57 4: Calendar SitzungsKalender: Checking times...


Ich hoffe jemad kann mir einen Tipp geben, wie ich den Fehler finden kann.

Vielen Dank.

Gruß Mike

Otto123

Hallo Mike,

zwei Eindrücke: die Seite ist sehr langsam, oder blockt zeitlich... Der download ging erst nicht, irgendwann ging er (nachdem ich die Kekse gegessen habe?)
Der Export des Kalenders funktioniert bei mir gar nicht - Seite Sitzungsdienst.
Ich denke die Seite ist stellenweise "kaputt".

Ich finde einen anderen Link auf dieser Seite zum export.
https://www.amt-zarrentin.de/veranstaltungen/veranstaltungen.ical?zeitauswahl=1&auswahl_woche_tage=28&onlyMonat_select=0&beginn_datum=&beginn_tag=0&beginn_monat=0&beginn_jahr=0&ende_datum=&ende_tag=0&ende_monat=0&ende_jahr=0&suchwort=&rubrik=0&selected_kommune=29120&ort=0&destination=0&dest_id=0&selected_destination=0&select_ort=0&highlights=0&serie=0&verband=0&ressort=0&portal_all=0&beginn=20240202000000&ende=20240301235959&kultur=0&intern=0

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Mike767

Hallo Otto,

danke für die Antwort, der andere Link ist von der gleichen Seite und funktioniert leider auch nicht.

Da die anderen Seiten wie z.B. https://www.sitzungsdienst-zarrentin.de/pi/si010_e.asp auch nicht "Sauber" sind, gehe ich ebenfalls davon aus das bei denen was "kaputt" ist.

Schönes Wochenende.

Gruß Mike

betateilchen

lustig, in Zarrentin mache ich demnächst eine Woche Urlaub  8)

2024.02.02 12:34:38 1: Calendar SitzungsKalender: retrieval failed with HTTP response code 403
Ich gehe nicht davon aus, dass da was kaputt ist. Man möchte wohl Script-Abfragen des Sitzungskalenders unterbinden.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Mike767

Hallo betateilchen,

dann wünsche ich schon mal einen schönen Urlaub am Schaalsee.

Die Gemeinde bietet auch einen Kalender an, den ich zum Beispiel in Thunderbird einbinden kann.
webcal://www.amt-zarrentin.de//allris/si010_e.asp?selfaction=ws&template=ical&rss=128&sid=990d532dd9cb33282e2e8f1a5af8dd1f auf dieser Seite:
https://www.sitzungsdienst-zarrentin.de/pi/si010_e.aspKann ich diesen in FHEM alternativ einbinden?

Schöne grüße
Mike



betateilchen

Prinzipiell funktionieren bei mir verschiedene URL, die hier im Thread schon genannt sind.
Allerdings mache ich dafür zwei Schritte

  • Abruf der URL auf Betriebssystemebene mit wget und speichern in Datei
  • Verwendung der erzeugten Datei im Calendar-device

Bis jetzt habe ich es noch nicht geschafft, die URL so zu gestalten, dass sie vom Calendar-device selbst aufgerufen werden kann. Da sich ein Sitzungskalender aber normalerweise auch nicht so häufig ändert, sollte die Variante mit dem externen wget einmal pro Tag eigentlich durchaus brauchbar sein.

Vielleicht fällt mir noch was ein, wie die url aussehen muss, damit sie direkt funktioniert.

Bei dieser url

webcal://www.amt-zarrentin.de//allris/si010_e.asp?selfaction=ws&template=ical&rss=128&sid=990d532dd9cb33282e2e8f1a5af8dd1f
stört mich übrigens die Session-ID am Ende. Man weiß nie, wie lange diese url gültig bleibt.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Mike767

Ok, danke für den Lösungsansatz.

Dann werde ich es auf diesen Weg versuchen.

Mike767

habe es mit "curl" hinbekommen, gab noch Probleme mit dem Zertifikat.

mit dem Hilfsmodul funktioniert es jetzt.
define Kalender_holen at *00:00:00 {system ("curl -k 'https://www.amt-zarrentin.de/veranstaltungen/veranstaltungen.ical?zeitauswahl=1&auswahl_woche_tage=28&onlyMonat_select=0&beginn_datum=&beginn_tag=0&beginn_monat=0&beginn_jahr=0&ende_datum=&ende_tag=0&ende_monat=0&ende_jahr=0&suchwort=&rubrik=0&selected_kommune=29120&ort=0' -o /opt/fhem/Kalender/Sitzungskalender.ics &")}

Danke nochmal und ein schönes Wochenende
Gruß Mike

betateilchen

Zwei Anmerkungen dazu:

  • regelmäßige Aufrufe reiner Betriebsystemfunktionen würde ich nicht in FHEM abbilden, sondern als cronjob auf Betriebssystemebene definieren
  • bei einem at verwende ich nie die Uhrzeit 00:00:00 - die vielen Nullen hatten manchmal schon "lustige" Effekte hervorgerufen. Da das Ganze nicht wirklich zeitkritisch ist, ist 00:01:00 meistens unproblematisch.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Mike767

OK. Danke für den Hinweis.
Werde es dann umstellen.

prenzela

Hallo,
ich habe ein ähnliches Problem. Ich kenne den direkten Pfad zur ics Datei nicht. Gibt man den Link aus dem Device in den Browser ein, wird ein Download einer ics Datei angeboten. Ergänz man den Pfad um den Namen der ics Datei quittiert der Browser mit Status 404.

defmod AbfallCalender2 Calendar ical url https://www.abfalltermine-forchheim.de/Forchheim/Landkreis/Heroldsbach%20-%20Heroldsbach/ics

Auszug aus Logfile
Zitat2024.11.08 15:52:38 1: Calendar AbfallCalender2: retrieval failed with HTTP response code 404
2024.11.08 15:52:38 1: Calendar AbfallCalender2: retrieved no or empty data
2024.11.08 15:53:41 2: AttrTemplates: got 264 entries
2024.11.08 15:56:37 3: ABFALL myAbfall2 - CALENDAR:AbfallCalender2 triggered, updating ABFALL myAbfall2 ...

Bleibt hier wirklich nur der Weg die Datei manuell runterzuladen (der Aufwand wäre mit 1x jährlich ja überschaubar) und dann die lokale Datei abzufragen (klappt wunderbar) ?

Gibt es einen andren Weg ?

Grüße

passibe

Hm, bei mir funktioniert das. Weder FHEM noch cURL melden 404 zurück.

TomLee

#12
Hallo,

Zitat von: commandref...
Beginnt die URL mit https://, muss das Perl-Modul IO::Socket::SSL installiert sein ...
...

Installiert ?

Gruß Thomas

edit:
mit cpan muss nicht sein:
sudo apt install libio-socket-ssl-perl

prenzela

bei mir klappt es leider nicht. Das Modul ist installiert

Zitatlibio-socket-ssl-perl is already the newest version (2.074-2).

passibe

Kriegst du immer noch ein 404 zurück? Was, wenn du es auf dem Server mit curl oder am PC im Browser (oder dort auch ggfs mit curl/wget) probierst?