stepman0 / docker-sonos-kids-controller

Docker image for Thyraz / Sonos-Kids-Controller
9 stars 2 forks source link

3 sonos with 3 spotify-accounts #34

Closed Raabensohn closed 2 years ago

Raabensohn commented 2 years ago

Hallo!

Eher eine Frage als eine issue. ;-) geht es irgendwie, dass ich den kids-controller auf 3 tablets (oder anderen displays, Browsern, Hardwarelösungen) mit 3 Sonos-Geräten (oder spotify-connect-fähigen Geräten) nutzen kann? Also: Kind 1 bedient in seinem Zimmer mit Tablet 1, spotify-account 1 den Sonso 1 und hört Pumuckl Kind 2 bedient in seinem Zimmer mit Tablet 2, spotify-account 2 den Sonso 2 und hört Bibi und Tina Kind 3 bedient in seinem Zimmer mit Tablet 3, spotify-account 3 den Sonso 3 und hört TKKG

Hoffe es is klar was gemeint ist. Leider steig ich bei den controllern und so grad nicht so ganz durch und kann es aktuell auch nicht testen, da nur 1 Sonos vorhanden.

Der controller und die API laufen auf dem NUC im Docker.

Danke schonmal für eine Antwort! :-) VG Jens

stepman0 commented 2 years ago

Hallo, ja das geht. Du brauchst eine Instanz der API und 3 Instanzen des Controllers. Ich kann dir morgen ein Docker-Compose schicken.

Raabensohn commented 2 years ago

Das wäre super cool! :-) Danke schonmal!

Raabensohn commented 2 years ago
version: '3'

services:
  api:
    image: "chrisns/docker-node-sonos-http-api"
    restart: unless-stopped
    container_name: Sonos-api
    network_mode: host
    volumes:
      - ./api/settings:/app/settings
      - ./api/clips:/app/static/clips
      - ./api/cache:/app/cache
      - ./api/presets:/app/presets

  controller1:
    image: "stepman0/sonos-kids-controller"
    restart: unless-stopped
    container_name: Sonos-controller-W
    network_mode: bridge
    ports:
      - 8200:8200
    volumes:
      - ./controller/config:/sonos-kids-controller/server/config/

  controller2:
    image: "stepman0/sonos-kids-controller"
    restart: unless-stopped
    container_name: Sonos-controller-M
    network_mode: bridge
    ports:
      - 8200:8200
    volumes:
      - ./controller/config:/sonos-kids-controller/server/config/

  controller3:
    image: "stepman0/sonos-kids-controller"
    restart: unless-stopped
    container_name: Sonos-controller-J
    network_mode: bridge
    ports:
      - 8200:8200
    volumes:
      - ./controller/config:/sonos-kids-controller/server/config/

so? oder andere ports und volumes?

stepman0 commented 2 years ago

Die Ports und Volumes müssen verschieden sein, etwa so:

version: '3'

services:
  api:
    image: "chrisns/docker-node-sonos-http-api"
    restart: unless-stopped
    container_name: Sonos-api
    network_mode: host
    volumes:
      - ./api/settings:/app/settings
      - ./api/clips:/app/static/clips
      - ./api/cache:/app/cache
      - ./api/presets:/app/presets

  controller1:
    image: "stepman0/sonos-kids-controller"
    restart: unless-stopped
    container_name: Sonos-controller-1
    network_mode: bridge
    ports:
      - 8201:8200
    volumes:
      - ./controller1/config:/sonos-kids-controller/server/config/

  controller2:
    image: "stepman0/sonos-kids-controller"
    restart: unless-stopped
    container_name: Sonos-controller-2
    network_mode: bridge
    ports:
      - 8202:8200
    volumes:
      - ./controller2/config:/sonos-kids-controller/server/config/

  controller3:
    image: "stepman0/sonos-kids-controller"
    restart: unless-stopped
    container_name: Sonos-controller-J
    network_mode: bridge
    ports:
      - 8203:8200
    volumes:
      - ./controller3/config:/sonos-kids-controller/server/config/
Raabensohn commented 2 years ago

Hi! So, hab mal bissel getestet und mittlerweile auch 3 Sonos, aber irgendwie geht das nicht. Er nimmt immer nur den ersten der an ist. Die anderen findet er dann nicht. http://172.16.1.10:5005/Wohnzimmer/state bringt {"status":"error"} http://172.16.1.10:5005/Kind1/state geht.

Wenn ich Kind1 ausschalte (also den Sonos von Kind1 ;-) ) dann geht Wohnzimmer und umgekehrt... Wie bekomme ich es hin, dass es parallel geht?

VG

stepman0 commented 2 years ago

Komisch, das funktioniert bei mir.

Was bekommst du denn zurück, wenn du http://172.16.1.10:5005/zones ausführst? Da solltest du eine Übersicht mit allen aktiven Zonen (Sonos-Boxen) bekommen.

Schreibt der API-Container Log-Ausgaben (docker logs ...)?

Raabensohn commented 2 years ago

war mal wieder ein Ta-Si-Schnittstellenproblem... ;-) hatte 2 sonos-Umgebungen. Jetzt geht es 1A DANKE!