Owncloud-Kalenderkonvertierung in ics

 

Da MagicMirror Owncloud-Kalender nicht unterstützt müssen wir den Kalender ins Format .ics bringen. Dafür legen wir eine Script an das für uns die Konvertierung übernimmt. Dieses Script lassen wir als Cronjob regelmäßig (hier halbstündig) als cronjob laufen

 

Wechsel nach /home/pi

 

1
cd /home/pi

 

  • Datei anlegen:

 

1
sudo nano icalsync.sh

 

  • und folgendes Script einfügen

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/bin/bash
 
 
 
url="https://owncloud-raspberry.ddns.net/owncloud/remote.php/dav/calendars/dho/dho-owncloud9?export"
 
dest="/home/pi/MagicMirror/modules/calendars/owncloud-cal.ics"
 
user=owncloud-user
 
pwd="user-password"
 
 
 
wget \
 
--quiet --output-document="$dest" \
 
--auth-no-challenge --no-check-certificate \
 
--http-user=$user --http-password="$pwd" \
 
"$url"

 

  • owncloud-cal-ics anlegen (natürlich kann es auch ein anderer Name sein)

 

1
sudo nano MagicMirror/modules/calendars/owncloud-cal.ics

 

  • speichern mit Strg + o und schließen mit Strg + x

 

Owncloud-Kalender automatisch konvertieren

 

  • Script ausführbar machen

 

1
sudo chmod /home/pi/icalsync.sh

 

  • cronjob anlegen

 

1
sudo crontab -e

 

  • folgende Zeile ganz unen einfügen (halbstündliche Ausführung)

 

1
*/30 * * * * /home/pi/icalsync.sh

 

  • mit Strg + o speichern und mit Strg + x schließen

Owncloud-Kalender in config.js aufnehmen

 

  • config.js öffnen

 

1
sudo nano /home/pi/MagicMirror/config/config.js

 

  • Kalendermodul folgendermaßen anpassen

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{
 
          module: "calendar",
 
          header: "owncloud-cal",
 
          position: "top_left",
 
         config: {
 
                       calendars: [
 
                                          {
 
                                            symbol: "calendar-check-o ",
 
                                           url: "webcal://127.0.0.1:8080/modules/calendars/owncloud-cal.ics"
 
                                         }
 
                                       ],
 
                     }    
 
},