Die Kombination aus Sonos Lautsprechern und Home Assistant ist super und ich zeige dir in diesem Beitrag, wie du Sonos mit Home Assistant steuern kannst! Nach meinem Dafürhalten werden die smarten Lautsprecher erst so richtig smart, wenn man sie mit Home Assistant steuert.
Was meine ich, wenn ich davon spreche, dass ich Sonos mit Home Assistant steure? Ganz konkret geht es mir darum, meine Sonos Lautsprecher möglichst wenig über die Sonos-APP oder per Sprachbefehl steuern zu müssen. (Oder gar über die auf den Lautsprechern angebrachten Knöpfe!)
Inhaltsverzeichnis
Jeder Mensch hat typische Verhaltensmuster, und wenn du ehrlich bist und darüber ein wenig nachdenkst, werden dir solche zu/bei dir auch einfallen! Und als Besitzer von smarten Lautsprechern werden diese in deinen Verhaltensmustern auch immer wieder vorkommen. Warum also nicht von Home Assistant möglichst viele manuelle Handlungen übernehmen lassen?
Sonos mit Home Assistant steuern
Deine Sonos-Lautsprecher kannst du über eine eigene Integration [offizielle Sonos-Integration] in Home Assistant einbinden. Hierfür musst du nichts weitern tun, als unter Einstellungen -> Integrationen über „Integration hinzufügen“ nach Sonos zu suchen und den Anweisungen zu folgen.
Da ich ein Freund von stabilen und somit verlässlichen Netzwerken bin, habe ich in meiner eigenen Installation zusätzlich noch die IP-Adressen fest in Home Assistant hinterlegt. Hierfür musst du zunächst in deinem Router einstellen, dass die Sonos-Lautsprecher immer dieselbe IP-Adresse haben sollen.
Wie du siehst, verfüge ich aktuell über 5 Lautsprecher von Sonos, welche an unterschiedlichen Orten im Haus zum Einsatz kommen. Jeder Sonos-Lautsprecher hat eine fixe IP-Adresse und diese habe ich über den Home Assistant Editor hinterlegt.
Wie bereits gesagt, ist dieser Schritt nicht zwingend notwendig, jedoch trägt er – meiner Meinung nach – zu einem stabileren Netzwerk bei. Folglich empfehle ich dir dies auch.
Sonos Gruppierungen auflösen
Wenn ich abends Musik höre, höre ich dieser gerne über mehrere Lautsprecher. Zum einen bin ich hierdurch nicht an einen Raum gebunden und zum anderen ist der Sound dadurch noch etwas „kräftiger“.
Wenn ich dann am darauf folgenden Morgen jedoch das Radio anmache, existiert die Gruppierung ohne weiteres zutun noch – was ich dann wiederum als störend empfinde.
Also habe ich mir Gedanken gemacht, wie ich das Auflösen einer solchen Gruppierung automatisieren oder zumindest teilautomatisieren kann. (Klar, ich könnte dies auch in der Sonos-APP machen. Jedoch muss ich hieran dann jedes mal explizit denken und es ist halt wieder ein manuelles to-do, welches dank Home Assistant automatisiert werden kann.)
Da ich ohnehin über ein Script „Gute Nacht“ verfüge, welches ich jeden Abend vor dem Schlafen gehen auslöse, war die Lösung für dieses „Problem“ denkbar einfach:
In meiner Datei gute_nacht.yaml habe ich lediglich folgende Zeilen ergänzt, wodurch automatisch den für meinen Anwendungsfall relevanten Sonos-Lautsprecher aus einer mögliche Gruppe entferne:
- action: sonos.unjoin
data:
entity_id: media_player.wohnzimmer
Lautstärke von Sonos anpassen
Doch die zuvor gezeigte Möglichkeit um eine Sonos-Gruppierung aufzulösen, ist alleine nur bedingt hilfreich. Da ich Musik gerne etwas lauter höre, jedoch morgens beim Einschalten des Radios nicht aus den Latschen kippen will, bedarf es noch einer automatischen Anpassung der Lautsprecher-Lautstärke.
Hierfür reicht ein einfaches:
- action: media_player.volume_set
data_template:
entity_id: media_player.wohnzimmer
volume_level: 0.1
innerhalb meines Scriptes guter_nacht.yaml, und der relevante Lautsprecher wird auf die gewünschte Lautstärke 0,1 gestellt. Beim nächsten Starten einer Medienwiedergabe über diesen Lautsprecher, hat der Lautsprecher bereits die gewünschte Lautstärke!
Diese beiden Beispiele zeigen meiner Meinung nach sehr gut, wie einfach man Sonos mit Home Assistant steuern kann. Es handelt sich definitiv nicht um Raketenwissenschaften, jedoch sind dies wirklich einfache, aber zeitgleich nützliche Tricks, mit denen du deine Sonos-Lautsprecher noch smarter machen kannst!
Alarm über Sonos abspielen
Und natürlich solltest du auch wissen, wie du Sonos mit Home Assistant steuern kannst um einen Alarm abzuspielen! Ein Alarm kann zum Beispiel auch ein einfacher akustischer Hinweis sein. Etwa, wenn die Waschmaschine fertig ist ertönt ein Hinweis über die Sonos-Lautsprecher!
Grundsätzlich kannst du jede beliebige Sound-Datei über Home Assistant auf deinem/n Sonos-Lautsprecher/n abspielen. Du musst einzig dafür sorgen, dass die Datei für Sonos im Netzwerk abrufbar ist. Hierfür empfiehlt es sich, die gewünschten Sound-Dateien in deinem lokalen Netzwerk „abzulegen“, damit du nicht auf das Internet angewiesen bist.
action:
- action: media_player.play_media
data:
entity_id: media_player.wohnzimmer
media_content_type: MUSIC
media_content_id: "http://192.168.178.4711/alarm.mp3"
Bedenke jedoch, dass du durch einen solchen Alarm Sonos bei der ggf. aktiven Wiedergabe „störst“. Wenn du möchtest, dass danach die zuvor aktive Medienwiedergabe fortgesetzt wird, musst du mittels eines Snapshots und im Anschluss an den Alarm eines Restores dies umsetzen!
Produktempfehlungen
Hallo,
ich möchte nachts und bei Abwesenheit die Sonos-Lautsprecher ausschalten, da sie im Standby doch ziemlich viel Strom verbrauchen. Aber ich möchte die letzte Playlist (und die Gruppierung) nicht verlieren. Letzteres geht ja in Home Assistant mit snapshot und restore. Aber das scheint nicht zu funktionieren, wenn man die Lautsprecher abschaltet.
Haben sie dafür Ideen oder geht das sowieso nicht.
Gruß Günther
Hi Günther,
dafür habe ich keine native Lösung, eher einen ggf. funktionalen workaround: Bei uns wird morgens eigentlich immer 1Live angeschaltet. Also kann ich per Automation/Skript den Radiosender zu der von mir gewünschten Lautstärke abspielen (oder natürlich auch bestimmte Playlists https://smarterkram.de/3399/).
Jede Nacht löse ich bspw. auch alle Gruppierungen auf und setze die Lautstärke der Lautspreche auf 10, so dass ich mir abends hierum keine Gedanken machen muss und morgens nicht aus den Latschen kippe 😉
VG
Olli
Hallo, wie gruppiere ich meine Sonos Lautsprecher ?
Hi Carsten,
das dürfte dann in etwa so aussehen:
- service: sonos.join
data:
master: media_player.sonos_kueche
entity_id:
- media_player.sonos_1
- media_player.sonos_2
- media_player.sonos_...
VG
Olli
Hi Olli,
super vielen Dank dafür. Das habe ich wohl übersehen 🙂
Was ich heute probiert habe, ist es meine 5 Sonos Lautsprecher per Klick zu gruppieren um Beispielsweise einen Radiosender in allen Räumen abzuspielen.
Mit diversen Beispielen, die ich im Netz gefunden habe, funktioniert es aber irgendwie nicht korrekt / bis gar nicht. Hast Du da einen Tipp auf Lager
Hallo. Toller Beitrag aber wie macht man das mit dem „Snapshots und im Anschluss an den Alarm eines Restore“ ? Beste Grüsse, Fiddi
Hi!
In dem Beitrag https://smarterkram.de/1755/ habe ich das „ausführlich“ beschrieben! Falls nicht schon gesehen, wirf da doch mal nen Blick drauf und falls du weiterhin Unterstützung benötigst, melde dich!
Viele Grüße
Olli