Sie haben eine Synology als Datenspeicher? Prima. Wussten Sie, dass dieses feine Gerät mehr kann als nur Datenspeicher zu sein? Ich verwende meine Synology als Podcatcher und als Aufzeichnungsgerät für Radiosendungen. Das mit dem Podcatching habe ich im ersten Teil erklärt. Heute geht es um das Aufzeichnen von Radiosendungen. Das alles ist keine Hexerei – und größere Programmierkenntnisse braucht man eigentlich auch nicht.

Die Vorbereitung

Ich habe auf meiner Synology ein Verzeichnis „Aktuell“ angelegt, damit ich von meiner Musik- und Sendungssammlung „Audio“ und der Videosammlung „Video“ unterscheiden kann und zielgerichtet Gehörtes löschen kann. In dieses Verzeichnis laufen dann aufgenommene Sendungen und Podcasts.

Eintragen von Aufzeichnungen

In der Zeile oben finden Sie verschiedene Symbole. Sie nehmen das (mittlere), in dem Sie auf die Systemsteuerung zugreifen können.

Im Reiter links wählen Sie den ‘Aufgabenplaner’ aus.

Dann wählen Sie ‘Geplante Aufgabe’ aus.

Hier öffnet sich ein Fenster mit den Eingabemöglickeiten. Anstelle von Geplante Aufgabe geben Sie einen eindeutigen Titel ein, als Benutzer wählen Sie ihren Useraccount. Unter Zeitplan geben Sie die Uhrzeit an, zu der ein Befehl ausgeführt werden soll.

So sieht eine Eintragung unter „Aktion“ aus:

Hier tragen Sie den Befehl ein:

sleep 59 && wget 'https://st02.sslstream.dlf.de/dlf/02/mid/aac/stream.aac' -U "" -qO - | tee - /volume1/homes/Sendekomplex/Drive/Aktuell/date +\%m\%d\ '1300 Länderreport'.aac

Aufgedröselt stehen die einzelnen Teile für:

sleep 59 Der Rechner schläft noch für 59 Sekunden, wenn er das erfolgreich erledigt hat …

&& hängt er den folgenden Befehl an:

wget ‘https://st02.sslstream.dlf.de/dlf/02/mid/aac/stream.aac’ -U “” -qO – | tee –

/volume1/homes/user/Drive/Aktuell/date +\%m\%d\ ‘1300 Länderreport’.aac mit wget wird der Stream des Radioprogramms abgeholt. Der Stream steht in den Hochkommata ‘ ‘ (Shift+#). Die restlichen Parameter brauchen Sie nicht verinnerlichen, die sollten nur drin stehen. /volume1/homes/user/Drive/Aktuell/date +\%m\%d\ ‘1300 Länderreport’.aac *- das ist der Pfad, in den die Aufzeichnung laufen soll. Wie schon beim Podcatching geschieht das bei mir in den Bereich *Aktuell. **date +\%m\%d **   Diese Angabe ist fakultativ, ich gebe das Datum in Monat und Tag zweistellig an, wenn Sie das nicht brauchen, können Sie es weglassen. Ansonsten stellen Sie diese Angabe in Accents (Shift+’). In Hochkommata setze ich dann den Sendungstitel samt Datei-Endung.

Damit die Aufzeichnung auch wieder beendet wird, braucht es eine neue Aufgabe. Ich verwende den Befehlt ‘pkill‘, gefolgt von einem Teil des Pfades zur URL des Streams: sleep 20 && pkill -f st02.sslstream (Das ist in diesem Fall der Stream von DLF Kultur).

Die Streams finden Sie meistens, wenn sie auf den Seiten der Sender nach livestream, stream und/oder URL suchen.

Viel Spaß beim Hören!

Programmierung mit Scripten

Für Fortgeschrittene gibt es auch die Möglichkeit, mit Scripten zu arbeiten. In meinem Spezialfall behandle ich die Musikstunde auf SWR2, die am Samstag läuft. Das Monats-Sendeschema von SWR2 ist folgendermaßen:

  1. Samstag Jazz across the boarder
  2. Samstag Das Musikrätsel
  3. Samstag Pasticcio musicale
  4. Samstag Musiksendung oder Die musikalische Monatsrevue
  5. Letzter Samstag Die musikalische Monatsrevue

Das Musikrätsel möchte ich nicht hören, deswegen soll der Rechner da nicht aufzeichnen. Und es gilt die Unterscheidung zwischen Monaten mit vier und fünf Samstagen zu machen. Das habe ich mit einem einfachen Script gelöst:

 #!/bin/sh
# Erster Samstag im Monat: Jazz across the boarder
    if [ $(date +\%d) -lt 8 ]
        then sleep 45 && wget 'http://swr-swr2-live.cast.addradio.de/swr/swr2/live/mp3/256/stream.mp3' -U "" -qO - | tee - /volume1/homes/Sendekomplex/Drive/Aktuell/`date +\%m\%d`\ '0905 SWR2 Musikstunde – Jazz across the boarder'.mp3
    fi
# Dritter Samstag im Monat: Pasticcio musicale
    if [ $(date +\%d) -gt 14 -a $(date +\%d) -lt 22 ]
        then sleep 45 && wget 'http://swr-swr2-live.cast.addradio.de/swr/swr2/live/mp3/256/stream.mp3' -U "" -qO - | tee - /volume1/homes/Sendekomplex/Drive/Aktuell/`date +\%m\%d`\ '0905 SWR2 Musikstunde – Pasticcio musicale'.mp3
    fi
# Letzter Samstag im Monat: Die musikalische Monatsrevue
    if [ $(date +\%d) -gt 21 -a $(date +\%d) -lt 32 ]
        then if [ $(/bin/date -d '1 week' '+%m') -ne $(/bin/date '+%m') ]
        then sleep 45 && wget 'http://swr-swr2-live.cast.addradio.de/swr/swr2/live/mp3/256/stream.mp3' -U "" -qO - | tee - /volume1/homes/Sendekomplex/Drive/Aktuell/`date +\%m\%d`\ '0905 SWR2 Musikstunde – Die musikalische Monatsrevue'.mp3
        else
        sleep 45 && wget 'http://swr-swr2-live.cast.addradio.de/swr/swr2/live/mp3/256/stream.mp3' -U "" -qO - | tee - /volume1/homes/Sendekomplex/Drive/Aktuell/`date +\%m\%d`\ '0905 SWR2 Musikstunde – Der vierte Samstag'.mp3
    fi
    fi

Exkurs:
Der Editor, den sie auf eineTerminal auf der Oberfläche der Synology öffnen können, ist vi. vi ist so ziemlich der älteste Editor, die meisten haben einen Horror davor. Im Folgenden erkläre ich die wichtigsten Schritte, die Sie wissen müssen.

Sie öffnen mit vi user/Drive/Scripte/Name__des__scripts.sh eine Datei. „user“ steht dabei für Ihren Benutzernamen auf der Synology, bei mir sind alle Daten im Unterverzeichnis „Drive“ gespeichert. Das kann abweichen, je nach Konfiguration. Mit ‘i’ kommen Sie in den Insert-Modus, also können Sie in das File schreiben. Folglich können Sie auch das obenstehende Script einfügen. Um dieses abzuspeichern, drücken Sie die Escape-Taste. Dann geben Sie ‘:set ff=unix”, damit wird das Zeilenende der einzelnen Script-Befehle auf ein Unix-Ende umgewandelt. Andernfalls wird das Script nicht funktionieren, da es die Kommandozeile in DOS interpretiert. Dann geben Sie ‘:wq’ ein. Mit (w) schreiben Sie die Datei auf die Synology und quittieren den Editor (q). eine gute, komprimierte Übersicht zu Skriptings unter Linux/Unix finden Sie hier.

In der Zeile if [ (date +%d) -gt 14 -a (date +%d) -lt 22 ] werden die näheren Kriterien angegeben: Das Datum muss größer sein (greater then) als 14 (-gt 14) und kleiner (less than) 22 sein.

Damit ein Skript ausgeführt werden kann, muss es zuerst ausführbar gemacht werden. Dies geschieht z.B. in der Konsole durch folgenden Befehl:

chmod +x /pfad/zu/mein_Skript

Im Aufgaben planer tragen Sie als Aufgabe bash /volume1/homes/user/Drive/Scripte/musikstunde.sh ein. Dabei ist es wichtig, ‘bash’ anzugeben und von einem Leerzeichen gefolgt den Pfad zum Script. Die Angabe ‘bash’ ist wichtig, damit die Synology weiß, welchen Bash-Interpretor sie nehmen muss, um zu verstehen, was sie wollen.

Nützlich zu wissen:

Zeichen wie ! ? : “ sollten Sie in der Eingabe vermeiden, diese werden in dieser Notation als Programmierelemente gedeutet und erzeugen seltsame Dateinamen. Korrekte Anführungszeichen, also „“, werden hingegen korrekt interpretiert.