Metainformationen zur Seite
Sonstige Befehle
Hier werden sämtliche Standardbefehle zur Steuerung von Radio Sendern und Playlisten gelistet. Diese müssen als virtueller Ausgangsbefehl (Loxone) oder in einem http Ausgang (Nicht Loxone) angelegt werden.
Syntax
Übersicht der gängigsten Befehle und auch erlaubte Kombinationen innerhalb einer Syntax. Wer die Funktionen erst im Browser testen möchte, setzt bitte jeweils folgendes vor die Syntax:
http://<LOXBERRY IP-ADRESSE> oder <LOXBERRY HOSTNAME> |
Auflistung sonstiger Befehle
hier werden diverse Befehle die nicht eindeutig zuzuordnen sind aufgelistet
Funktion | | Einzel | Gruppe | Beschreibung |
createstereopaar | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=createstereopair&pair=ZONE2 | X | | erstellt ein Stereopaar aus zwei identischen Modellen. PLAY:1, PLAY:3 und PLAY:5 werden unterstützt |
seperatestereopaar | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=seperatestereopair&pair=ZONE2 | X | | löst ein Stereopaar in 2 einzelne Zonen auf |
addmember | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=addmember&member=ZONE2,ZONE3 | | X | Fügt der angegebenen Zone eine weitere hinzu |
removemember | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=removemember&member=ZONE2 | | X | Löscht aus der Gruppe die angegebene Zone wieder |
group | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=group | | X | Gruppiert alle Zonen (ohne speichern der vorherigen Zustände) |
ungroup | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=ungroup | | X | Hebt alle Gruppierungen auf |
phonemute | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=phonemute | X | | Senkt zügig die Lautstärke gemäß Konfiguration, Falls die Zone sich in in einer Gruppe befindet wird die Lautstärke für alle Gruppenmember reduziert |
phoneunmute | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=phoneunmute | X | | Stellt die ursprüngliche Lautstärke wieder her |
off | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=off | X | | Schaltet Sonos4lox temporär komplett aus was im einzelnen bedeutet: * kein UDP Eingangs Traffic * kein HTTP Eingangs Traffic * Onlineprüfung wird ausgeschaltet * keine sonos4lox Befehle (T2S und Sonstige) Zum wiederherstellen/einschalten bitte …action=on nutzen |
on | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=on | X | | Schaltet Sonos4lox wieder ein |
becomegroupcoordinator | /plugins/sonos4lox/index.php/?zone=DEINE_ZONE&action=becomegroupcoordinator | | X | Nimmt DEINE_ZONE aus einer bestehenden Gruppe heraus, egal welche Zusammensetzung die Gruppe hat |
sleeptimer | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=sleeptimer&timer=5 | X | | Setzt den Schlummermodus für angegebene Zone auf 5 Minuten. Bei kleiner 10 Minuten nur einstellige Eingabe Bsp.:5 für 5 Minuten) generell erlaubte Eingabe: 1-120 |
wait | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=play&wait=5 | X | verzögert die Ausführung des Befehles um xxx Sekunden. Erlaubte Werte sind 1 - 900 | |
timer | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=play&timer=15 | X | Setzt den Schlummermodus für angegebene Zone auf 15 Minuten. Bei kleiner 10 Minuten nur einstellige Eingabe Bsp.:5 für 5 Minuten) generell erlaubte Eingabe: 1-120 |
|
listalarms | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=listalarms | X | X | Listet alle Alarme auf (nur im Browser zu verwenden) bzw. um die Alarme zum Einschalten der Player zu verwenden |
alarmoff | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=alarmoff | X | X | Schaltet alle vorhandene Wecker aus |
alarmon | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=alarmon | X | X | Schaltet alle vorher vorhandenen Wecker wieder ein |
linein | /plugins/sonos4lox/index.php/?zone=DEINE_ZONE&action=linein | X | | Der LineIn Eingang der PLAY:5, CONNECT und CONNECT:AMP wird als Eingangsquelle ausgewählt. |
alarmstop | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=alarmstop | X | X | Insofern vorher ein langes mp3 (als Sirene) durch die Alarmanlage ausgelöst wurde, wie z.B. mit: /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=say&messageid=DEINE_FILE_ID&volume=100&member=all werden mit diesem Befehl alle Zonen auf den Ausgangszustand zurückgesetzt. |
nightmode | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=nightmode&mode=on | X | | Schaltet den Nachtmodus ein bzw. aus. Erlaubte Parameter: on oder off (nur für TV modus) |
speech | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=speech&mode=on | X | | Schaltet die Sprachverbesserung ein bzw. aus. Erlaubte Parameter: on oder off (nur für TV modus) |
surround | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=surround&mode=on | X | | Schaltet den Surroundmodus ein bzw. aus. Erlaubte Parameter: on oder off (nur für TV modus) |
subbass | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=subbass&mode=on | X | | Schaltet den Bass beim SUB ein bzw. aus. Erlaubte Parameter: on oder off (nur für TV modus) |
getledstate | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=getledstate | X | | liest den Status der Player Statusleuchte aus (1=On, 0 oder leer=Off) |
setledstate | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=&action=setledstate&state=On | X | | schaltet die Statusleuchte Ein/Aus. state=On, state=Off |
setmaxvolume | /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=setmaxvolume&volume=WERT /plugins/sonos4lox/index.php?zone=DEINE_ZONE&action=setmaxvolume&reset | X | X | Im Sonos Plugin unter "Feineinstellungen" zuerst die "Nutzung Lautstärkebegrenzung" aktivieren begrenzt die max Lautstärke je Zone auf den angegebenen Wert. Wird durch einen Cronjob alle 10 Sekunden überprüft und ggf. die Lautstärke erneut reduziert falls Sie überschritten wurde. (unbedingt den reset nicht vergessen) setzt die Funktion wieder zurück (reset) |
Auflistung Diagnose Befehle
hier werden diverse Befehle zur Diagnose aufgelistet
Funktion | | Einzel | Gruppe | Beschreibung |
getmediainfo | /plugins/sonos4lox/index.php/?zone=DEINE_ZONE&action=getmediainfo | X | | Info über Metadaten bzw. des laufenden Radiosender |
getpositioninfo | /plugins/sonos4lox/index.php/?zone=DEINE_ZONE&action=getpositioninfo | X | | Info über Titel Interpret, Laufzeit usw. |
getvolume | /plugins/sonos4lox/index.php/?zone=DEINE_ZONE&action=getvolume | X | | Info über Lautstärke |
getzoneinfo | /plugins/sonos4lox/index.php/?zone=DEINE_ZONE&action=getzoneinfo | X | | Info über technische Details der Zone |
ceckradiourl | /plugins/sonos4lox/index.php/?zone=DEINE_ZONE&action=checkradiourl | X | | überprüft die in den Radio Favoriten angegebene(n) URL(s) |
Sonstige Services
Als Services sind Linux spezifisch Cronjobs gemeint die Aufgaben/Funktionen selbstständig in vordefinierten Rhythmen ausführen. Es gibt einige Services die bereits seid langem funktionieren z.B. pushen der Sonos Daten an den MS usw.
Sonos Wecker / Alarme
Ab v5.x.x gibt es einen neuen Service der sämtliche Sonos Wecker/Alarme und deren Status (Aktiv/Aus) einmal täglich an den MS sendet. Die einzelnen Alarme sind in Minuten nach Mitternacht - 10 Minuten kalkuliert um schaltbare Steckdosen für die einzelnen Player rechtzeitig vor der ersten Aktion ins Netz/Online zu schalten. Wenn die Kommunikation per UDP durchgeführt wird muss vorher die Funktion …action=listalarms ausgeführt werden um die zu verwendeten Schlüssel zu erhalten. Im Falle vom MQTT Kommunikation können diese aus dem "Incoming Overview" kopiert werden.
Ausgabe am Bildschirm von action=listalarms:
Array ( [0] => Array ( [ID] => 27 [StartTime] => 07:30:00 [Duration] => 02:00:00 [Recurrence] => WEEKDAYS [Enabled] => 0 [RoomUUID] => RINCON_347E5C335F6401400 [ProgramURI] => [ProgramMetaData] => [PlayMode] => SHUFFLE [Volume] => 10 [IncludeLinkedZones] => 0 [minpastmid] => 440 [Room] => schlafen [min_schlafen_ID_27] => 440 [stat_schlafen_ID_27] => 0 ) [1] => Array ( [ID] => 42 [StartTime] => 06:30:00 [Duration] => 02:00:00 [Recurrence] => WEEKDAYS [Enabled] => 0 [RoomUUID] => RINCON_000E5872D59801400 [ProgramURI] => [ProgramMetaData] => [PlayMode] => REPEAT_ALL [Volume] => 14 [IncludeLinkedZones] => 0 [minpastmid] => 380 [Room] => kids [min_kids_ID_42] => 380 [stat_kids_ID_42] => 0 )
Die jeweiligen letzten beiden Felder, hier [min_kids_ID_42] und [stat_kids_ID_42] jeder Array sind die Namen für die Eingangsverbinder im MS um die Werte zu erhalten. Somit können über den Vergleich zu Miniserver “Minuten seid Mitternacht” Aktionen angetriggert werden.
TV Monitor
Der TV Monitor (ab v5.3.3) ermöglicht das Monitoren des Signals am HDMI/SPDIF Eingang einer Soundbar (PLAYBASE, BEAM, etc.).
Bei mir war der Use-case dass ich tagsüber gerne Musik höre, auch mal etwas lauter, was dann beim Einschalten des TV Gerätes in Kombination mit aktivierter Autoplay Einstellung an der Soundbar (Sonos App), etwas unschön ist Darüber hinaus empfand ich es auch nervig nach dem Ausschalten des TV erst wieder mit Hilfe der Sonos App meine Musik abzuspielen. Das Ganze übernimmt jetzt der TV Monitor automatisch
Der Monitor prüft am HDMI/SPDIF Eingang einer Soundbar die Signalstärke (Musik/Radio/TV) und speichert im Falle von Musik/Radio alle notwendigen Informationen für den späteren Restore Prozess. Beim Einschalten des TV Gerätes, sprich anliegendes Eingangssignal am HDMI/SPDIF Eingang, wird das Speichern unterbrochen. Anschließend wird eine vorgegebene Lautstärke (Config des Plugins) eingestellt und die Soundbar auf TV Modus gesetzt. Wenn nun irgendwann das TV Gerät wieder ausgeschaltet wird, wird der vorherige Status (Musik/Radio) automatisch wiederhergestellt, analog zu den Text-to-speech Funktionen. Das Ganze funktioniert auch mit Gruppen, egal ob Master oder Member einer Gruppe, es wird der jeweils vorherige Zustand wieder hergestellt. Die einzige Ausnahme ist wenn die Soundbar Master einer Gruppe war diese beim Restore Prozess als Member hinzugefügt wird.
In der Config des Plugins wird der TV Monitor aktiviert (vorausgesetzt das Plugin hat bei Update/Installation eine Soundbar detektiert) und auch der Zeitraum von: xx:xxh bis xx:xxh in der das Monitoring aktiv ist. Somit kann verhindert werden das z.B. beim Ausschalten des TV nach 22:00h die Musik wieder anfängt. Zusätzlich sollte noch die TV Lautstärke der jeweiligen Soundbar in der Config bei den einzelnen Player hinterlegt werden, ansonsten funktioniert das Monitoring nicht.
Die Funktion wurde mit Sonos BEAM Gen2 und Samsung TV Frame getestet. Falls die Funktion nicht funktionieren sollte bitte das Sonos log und PHP log prüfen. Wenn kein Fehler in den Logs erscheint folgenden Befehl zur weiteren Analyse im Browser ausführen. Vorher in der Sonos App eine Playlist aufrufen und starten, anschließend Befehl im Browser eingeben, anschließend das Gleiche für TV Mode, Soundbar ist Master einer Gruppe (Musik/Radio läuft in der Gruppe), Soundbar ist Member einer Gruppe (Musik/Radio läuft in der Gruppe) durchführen und die jeweiligen Werte notieren und mir per Mail schicken
http:<YOUR-LOBERRY-IP>/plugins/sonos4lox/index.php/?zone=<DEINE_SOUNDBAR>&action=streammode
Vorlage die ihr nutzen könnt:
- Wert Musik/Radio:
- Wert TV Mode:
- Wert Soundbar als Master:
- Wert Soundbar als Member:
Follow-me
Die Follow-me Funktion (ab v5.5.0) ermöglicht das Folgen eines vordefinierten Players über z.B. Präsenzerkennung.
Use case: Ein Player ist dein sogenannter "Host Player" der streamed. Nun betritt ein Bewohner einen Raum der über einen Bewegungsmelder (BWM=on) und einem Sonos Player verfügt so wird der Stream des Host Player automatisch auf den Player des Raumes übertragen. Wenn dann der Raum wieder verlassen wird (BWM = off) wird der ursprüngliche Zustand des Players wieder hergestellt. Die Nachlaufzeit für das Verlassen des Raumes kann ebenso konfiguriert werden.
Follow- me funktioniert unter folgenden Voraussetzungen:
- Auf dem Player des betretendes Raumes ist kein Stream aktiv
- Auf dem Host Player läuft kein TV
Wenn der Host Player nichts streamed kann über einen zusätzlichen Parameter div. Backupfunktionen aufgerufen werden.
Dazu muss an den Eingang deines z.B. BWM's im MS ein Ausgangsverbinder mit folgende Befehlen angehängt werden:
Funktion | Befehl | Beschreibung |
follow | /plugins/sonos4lox/index.php/?zone=<PLAYER>&action=follow | Befehl bei EIN um dem konfiguriertem Host Player zu folgen |
leave | /plugins/sonos4lox/index.php/?zone=<PLAYER>&action=leave | Befehl bei AUS um den Stream des Host Player wieder zu verlassen |
Folgende optionale Parameter können verwendet werden:
Funktion | Befehl | Beschreibung |
volume | /plugins/sonos4lox/index.php/?zone=<PLAYER>&action=follow&volume=12 | gibt die Einschaltlautsärke für den Client vor |
play | /plugins/sonos4lox/index.php/?zone=<PLAYER>&action=follow&play | Falls kein Steam auf dem Host aktiv ist wird der Client mit play gestartet (Queue/Sender muss vorhanden sein) |
host | /plugins/sonos4lox/index.php/?zone=<PLAYER>&action=follow&host=<PLAYER> | Bei Angabe von &host wird der standardmäßige Host aus der Plugin Config durch diesen ersetzt |
function | /plugins/sonos4lox/index.php/?zone=<PLAYER>&action=follow&function | Falls kein Steam auf dem Host aktiv ist wird der Client mit einer Backupfunktion gestartet |
Außer &play und &function können alle Parameter miteinander kombiniert werden.
Auswahl der Backupfunktionen (inkl. deiner Sender aus den Plugin Radio Favoriten):
Auto Update Sonos Firmware
Mit der Auto Update Funktion (v5.5.0) wird die aktuellste Firmware automatisch auf den Playern durchgeführt.
Das Plugin prüft je Player ob ein Update notwendig ist und wenn ja wird dieses durchgeführt. Die Frequenz des Update Services ist mit folgenden Optionen wählbar:
Darüber hinaus ist die Option "Power On" verfügbar um evtl. ausgeschaltete Player vor dem Update über den MS einzuschalten und nach erfolgreichem Update wieder auszuschalten.
Voraussetzung ist aktivierte Kommunikation zum Miniserver (MQTT oder UDP). Der entsprechende Eingang im MS je nach Kommunikationsart lautet:
Komm. Protokoll | Syntax für Eingang | Wert |
MQTT | Sonos4lox_update | 1 oder 0 |
UDP | Sonos4lox: update | 1 oder 0 |