Autor Thema: Calendar URL aus Subfunktion  (Gelesen 237 mal)

Offline Sailor

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1213
  • und es werden immer mehr...
Calendar URL aus Subfunktion
« am: 06 September 2018, 13:51:03 »
Ein herzerfrischendes "MoinMoin vom hintern Deich" vorweg

Ich habe mal eine Frage:

Wenn ich einen Kalendar mit
ical url https://www.ferienwiki.de/exports/ferien/2018/de/niedersachsen.ics 86400aufrufe, klappt alles ganz vorzüglich  :)

Da ich aber keine Lust habe jedes Jahr die Jahreszahl zu ändern, habe ich mir eine Subfunktion GetHolidayCalURL() in der 99_myUtils.pm geschrieben.

sub GetHolidayCalURL() {
  my ($Seconds, $Minutes, $Hours, $DayOfMonth, $Month, $Year, $WeekDay, $DayOfYear, $Summertime) = localtime(time);
  $Year+=1900;
  return "https://www.ferienwiki.de/exports/ferien/" . $Year . "/de/niedersachsen.ics";
}

Wenn ich diese in die Kommandozeile eigebe:
{GetHolidayCalURL()}kommt auch ganz brav folgendes Ergebnis raus:
https://www.ferienwiki.de/exports/ferien/2018/de/niedersachsen.ics
Warum klappt also nicht der folgende Aufruf?  :o
ical url {GetHolidayCalURL()} 86400
bzw.
ical url GetHolidayCalURL() 86400

Ich bin für Hinweise jeglicher Art dankbar.

Gruss
    Sailor
******************************
Raspberry Pi mit DbLog, HomeMatic HMLAN
13x HM-SEC-SC; 11x HM-TC-IT-WM-W-EU; 13x HM-CC-RT-DN; 03x HM-Sec-SD; 01x HM-WDS10-TH-O; km200 mit Buderus GB172

Offline Shojo

  • Full Member
  • ***
  • Beiträge: 325
  • Wie, Was, Wo?
    • DER BASTELBUNKER / Meine kleinen Projekte…
Antw:Calendar URL aus Subfunktion
« Antwort #1 am: 06 September 2018, 13:54:51 »
Moin,

was kommt denn für ein Fehler?
FHEM auf: Odroid-C2 (Docker)
Bridge: Signalduino 433mHz, SignalESP 433mHz, nanoCUL 868mHz, HM-MOD-RPI-PCB, JeeLink, zigbee2mqtt (CC2531 USB sniffer) ,hue
Rest: ESP8266, SONOFF, Sonos, Echo Dot, Xiaomi Vacuum, ESP RGBWW Wifi Led Controller, Node-RED, LEDMatrix

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 15171
  • s/fhem\.cfg/configDB/g
Antw:Calendar URL aus Subfunktion
« Antwort #2 am: 06 September 2018, 14:06:56 »
Warum klappt also nicht der folgende Aufruf?

Weil im define keine perl Auswertung solcher Parameter stattfindet. Und es steht auch nirgends, dass das geht.
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Nächster Hamburg-Stammtisch: 14.12.2018 - 18:30 Uhr

Offline Beta-User

  • Hero Member
  • *****
  • Beiträge: 4305
Antw:Calendar URL aus Subfunktion
« Antwort #3 am: 06 September 2018, 14:09:58 »
Noch ein Zwischenruf:

Das mit dem regelmäßigen Abruf von Kalendern, die sich eigentlich nicht ändern, taucht immer mal wieder auf. Um die Geduld des Providers nicht überzustrapazieren, sollte man das unterlassen.

Für sich ändernde Kalender kann man das mit einem at iVm wget lösen - Kalender nur holen, wenn zwischenzeitlich geändert und dann mit file zugreifen; ginge natürlich auch jährlich oder man importiert eben gleich mehrere Ferienjahre in den Kalender:
define Kalender_holen at *23:50:00 {system ('wget -qN --user <maxmuster@wasauchimmer.fantasie> --password <wirdnichtverraten> http://<link zur .ics> -O /opt/fhem/meinkalender.ics &')}
Gruß, Beta-User
Server: HP-T5740 mit Debian stretch (i386) + aktuellem FHEM | ConfigDB | VCCU mit einiger HM-Hardware | MySensors seriell (2.3.1-beta@RS485, div. konkrete Hardware, u.a. einige DS18B20) | Milight@ESP-GW@MQTT2 | zigbee2mqtt@MQTT2 | SIGNALduino | MapleCUN

 

decade-submarginal