Files

AWTRIX 3 Sonos NowPlaying (ioBroker Script)

Zeigt den aktuell abgespielten Sonos-Titel als AWTRIX 3 Custom App via MQTT an:

🎵 Künstler — Titel (Album)

Das Script nutzt einen Keep-Alive Refresh, damit die App in der Rotation bleibt, solange Sonos spielt. Sobald Playback stoppt/pausiert oder kein Titel mehr vorhanden ist, wird die App automatisch entfernt.

Features

  • Anzeige: 🎵 Künstler — Titel (Album)
  • Keep-Alive Refresh (damit die App nicht „rausfällt“)
  • Entfernt die App automatisch bei Stop/Pause/kein Titel
  • Debounce gegen Event-Spam vom Sonos-Adapter
  • Alles in einer Datei (ioBroker-friendly)

Voraussetzungen

  • ioBroker JavaScript-Adapter
  • ioBroker Sonos-Adapter
  • ioBroker MQTT-Adapter (als Client/Publisher nutzbar über sendMessage2Client)
  • AWTRIX 3 mit aktivierter MQTT-Anbindung (Prefix bekannt, i.d.R. awtrix)

Installation (Quick Start)

  1. Datei nowplaying.js öffnen und den Block USER CONFIG anpassen:
    • AWTRIX_PREFIX (meist awtrix)
    • DP.* (deine Sonos-Datenpunkte)
  2. In ioBroker → JavaScript → neues Script anlegen → Inhalt von nowplaying.js einfügen
  3. Script starten
  4. Sonos abspielen → nach spätestens wenigen Sekunden sollte es auf der AWTRIX erscheinen

Sonos-Datenpunkte finden

In ioBroker unter Objekte:

sonos.0root<dein Gerät>

  • current_title
  • current_artist
  • current_album
  • state_simple

Kopiere die Objekt-IDs in CFG.DP.

AWTRIX MQTT Topics (was das Script sendet)

  • Custom App:
    • <prefix>/custom/<APP_NAME>
    • Beispiel: awtrix/custom/NowPlaying
  • Optionaler Switch:
    • <prefix>/switch
    • Wird nur genutzt, wenn FORCE_SWITCH=true

Konfiguration (wichtigste Optionen)

Im CFG Block:

  • LIFETIME_SEC: Wie lange ein Eintrag ohne Refresh überlebt
  • KEEPALIVE_SEC: Alle wieviel Sekunden refreshed wird
  • FORCE_SWITCH: Wenn true, schaltet AWTRIX bei jedem Refresh aktiv auf die App (meist false lassen)
  • ICON_MUSIC, COLOR_RGB, TEXT_CASE: Darstellung
  • DEBUG: Zusätzliche Logs

Troubleshooting

Es wird nichts angezeigt

  • Stimmt AWTRIX_PREFIX?
  • Ist MQTT auf der AWTRIX aktiv?
  • Funktioniert dein MQTT Adapter (und kann publishen)?
  • Stimmen die Sonos-Datenpunkte?

App verschwindet nach kurzer Zeit

  • KEEPALIVE_SEC ggf. kleiner setzen (z.B. 510)
  • LIFETIME_SEC größer setzen (z.B. 6001200)
  • Prüfen ob state_simple wirklich true während Playback ist

Die Uhr springt ständig auf die App

  • FORCE_SWITCH auf false setzen

Lizenz

MIT siehe LICENSE.