|
@@ -2,14 +2,23 @@
|
|
|
|
|
|

|
|
|
|
|
|
-## Definitionen
|
|
|
- - Tag: RFID Transponder, z.B. Karte oder Fob
|
|
|
+## Hardware
|
|
|
+ - Altes 2A Netzteil mit USB Typ A Buchse
|
|
|
+ - Pi Zero W (per Micro-USB Kabel am Netzteil)
|
|
|
+ - SanDisk Ultra 32GB microSDHC UHS-I Class 10
|
|
|
+ - Passiver USB Hub (per USB OTG Adapter am Pi)
|
|
|
+ - USB Speaker mit eingebauter Soundkarte am USB Hub
|
|
|
+ - Card Reader 125 kHz (arbeitet quasi als Tastatur) am USB Hub
|
|
|
|
|
|
-## Container / Service
|
|
|
- - [`droppy`](https://github.com/silverwind/droppy) Web-Dateimanager, (http port 8989)
|
|
|
+## Software
|
|
|
+ - Raspbian Buster Lite
|
|
|
+ - Docker und Docker-Compose
|
|
|
+
|
|
|
+## Container / Services
|
|
|
+ - [`droppy`](https://github.com/silverwind/droppy) Web-Dateimanager, (Port 8989, http)
|
|
|
- [`mopidy`](https://mopidy.com/) Music Player:
|
|
|
- Spielt Medien ab
|
|
|
- - [WebUI Irin-Extension](https://mopidy.com/ext/iris/) zur manuellen Steuerung (http port 80)
|
|
|
+ - [Iris-Extension](https://mopidy.com/ext/iris/) (WebUI) zur manuellen Steuerung (Port 80, http)
|
|
|
- [MPD-Extension](https://mopidy.com/ext/mpd/) zur Steuerung per MPD-Protokoll (Port 6600)
|
|
|
- [`rfidac`](https://git.in-ulm.de/verchow/jambox/src/master/setup/roles/rfidac/templates)
|
|
|
- Liest den USB RDIF Reader
|
|
@@ -17,25 +26,28 @@
|
|
|
- Steuert mopidy per mpd (mpc)
|
|
|
- Aktualisiert Tag-Ordner im Medien-Verzeichnis
|
|
|
|
|
|
-## Lokale Medien
|
|
|
- - Medien liegen lokal auf `~/dudelbox/mopidy/data/mopidy/music/`
|
|
|
- - Der Ordner lässt sich per Web-Dateimanager (Droppy) verwalten
|
|
|
-
|
|
|
-## Tag Aktionen
|
|
|
- - Jeder Tag führt ein Bash Skript mit der ID des Tags als Namen aus
|
|
|
- - Sollte das Script noch nicht vorhanden sein,
|
|
|
- wird es als Kopie von `_action_tempalte` erstellt
|
|
|
- und ausgeführt wenn der Tag das nächste mal sichtbar wird
|
|
|
- - Standard-Aktion legt `_action_template`:
|
|
|
- - Für jeden Tag wird ein Ordner mit der Tag ID als Namen im Medien-Ordner angelegt
|
|
|
- - Das Datum des Ordners wird aktualisiert wenn der Tag sichtbar ist
|
|
|
- - Alle Medien im Ordner werden der Playliste hinzugefügt und abgespielt.
|
|
|
- Etwaig bestehende Titel in der Playlist werden gelöscht.
|
|
|
- - Weitere denkbare Aktionen:
|
|
|
- - Lauter / leiser
|
|
|
- - Stop
|
|
|
- - Shutdown
|
|
|
- - Play Playlist mit Tag ID
|
|
|
+## Volumes
|
|
|
+ - `/home/pi/dudelbox/mopidy/data/mopidy/music/`
|
|
|
+ - `rfidac` legt Ordner mit der Tag-ID hier an
|
|
|
+ - `mopidy` spielt die Medien hier ab
|
|
|
+ - `droppy` lässt Dateien hier hochladen, verschieben, löschen und editieren
|
|
|
+
|
|
|
+## Tag Actions
|
|
|
+ - Die eingesetzten 125 kHz Tags kodieren eine 10-stellige Nummer (ID)
|
|
|
+ - Für jeden erkannten Tag wird ein Bash-Skript mit dem Namen der ID ausgeführt, z.B. 0012482569
|
|
|
+ - Sollte das Script noch nicht vorhanden sein, wird es als Kopie von `_action_tempalte` erstellt
|
|
|
+ - Das Skript kann jetzt angepasst werden um z.B.:
|
|
|
+ - Die Lautstäre zu regeln oder die Wiedergabe zu stoppen
|
|
|
+ - Den Pi herunterzufahren
|
|
|
+ - Eine bestimmte URI oder Playlist abzuspielen
|
|
|
+ - Ohne Anpassung werden vom Skript folgende Aktionen ausgeführt:
|
|
|
+ - Im Medien-Ordner wird eine Ordner mit Tag-ID als Namen angelegt (falls noch nicht vorhanden)
|
|
|
+ - Der Zeitstempel des Ordners wird aktuallisiert indem eine Datei `.lastplay` gelöscht und dann angelegt wird
|
|
|
+ - Etwaig bestehende Titel in der Playlist werden gelöscht und etwaig gespielte Titel gestoppt
|
|
|
+ - Alle Medien im Ordner werden der Playliste hinzugefügt und abgespielt
|
|
|
|
|
|
## Konfiguration
|
|
|
Siehe `.env` für die jeweilgen Container
|
|
|
+
|
|
|
+## Glosar
|
|
|
+ - Tag: RFID Transponder, z.B. Karte oder Fob
|