Sonos - Multiroom follow music

I have created 3 automations that I would like to share with everyone.

These automations ensure that when I stream music to my soundbar via Spotify, my other speakers are put into groups and immediately muted. The moment there is movement in one of the rooms, it immediately starts playing music, at the same volume level as the sound bar. When there is no more movement in the room, the music is muted again.

alias: Sonos - Muziek volgen aan.
description: Zet de helper aan om de muziek door het huis te volgen.
triggers:
  - trigger: state
    entity_id:
      - media_player.sonos_woonkamer
    attribute: source
    to: Spotify Connect
    id: Spotify Aan
  - trigger: state
    entity_id:
      - media_player.sonos_woonkamer
    attribute: source
    to: TV
    id: Spotify Uit
conditions: []
actions:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - Spotify Aan
        sequence:
          - action: input_boolean.turn_on
            metadata: {}
            data: {}
            target:
              entity_id: input_boolean.follow_music
        alias: Volg muziek aan zetten als soundbar Spotify afspeelt
      - conditions:
          - condition: trigger
            id:
              - Spotify Uit
        sequence:
          - action: input_boolean.turn_off
            metadata: {}
            data: {}
            target:
              entity_id: input_boolean.follow_music
        alias: Volg muziek uitzetten als soundbar TV afspeelt
mode: single

alias: Sonos - Speaker Groeperen
description: Maakt sonos groepen van de speakers in huis.
triggers:
  - trigger: state
    entity_id:
      - input_boolean.follow_music
    to: "on"
    from: "off"
    id: Volg muziek aan.
    alias: "Muziek volgen aan. "
  - trigger: state
    entity_id:
      - input_boolean.follow_music
    to: "off"
    from: "on"
    id: Volg muziek uit.
    alias: Muziek volgen uit.
conditions: []
actions:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - Volg muziek aan.
        sequence:
          - alias: "Mute volume van groep. "
            action: media_player.volume_mute
            target:
              entity_id:
                - media_player.badkamer
                - media_player.keuken
            data:
              is_volume_muted: true
          - alias: Maak speaker groep aan.
            action: media_player.join
            metadata: {}
            data:
              group_members:
                - media_player.badkamer
                - media_player.keuken
            target:
              entity_id: media_player.sonos_woonkamer
      - conditions:
          - condition: trigger
            id:
              - Volg muziek uit.
        sequence:
          - action: media_player.unjoin
            metadata: {}
            data: {}
            target:
              entity_id:
                - media_player.badkamer
                - media_player.keuken
            alias: Ontkoppel speakergroep
mode: single

alias: "Sonos - Speel muziek bij beweging. "
description: >-
  Deze automatisering werkt met diversen andere automatisering samen om er voor
  te zorgen dat er bij beweging muziek gaat spelen in ruimte die betreden
  wordt. 
triggers:
  - alias: "Beweging in de keuken. "
    trigger: state
    entity_id:
      - binary_sensor.keuken_beweging
    to: "on"
    id: "Beweging in de keuken  "
  - alias: "Beweging in de badkamer. "
    trigger: state
    entity_id:
      - binary_sensor.badkamer_beweging
    to: "on"
    id: Beweging in de badkamer
  - alias: Geen beweging in de keuken..
    trigger: state
    entity_id:
      - binary_sensor.keuken_beweging
    to: "off"
    id: "Geen beweging in de keuken  "
    for:
      hours: 0
      minutes: 0
      seconds: 10
  - alias: Geen beweging in de badkamer.
    trigger: state
    entity_id:
      - binary_sensor.badkamer_beweging
    to: "off"
    id: Geen beweging in de badkamer
    for:
      hours: 0
      minutes: 0
      seconds: 10
conditions:
  - condition: state
    entity_id: input_boolean.follow_music
    state: "on"
actions:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - "Beweging in de keuken  "
        sequence:
          - action: media_player.volume_set
            metadata: {}
            data:
              volume_level: "{{ state_attr('media_player.sonos_woonkamer', 'volume_level') }}"
            target:
              entity_id: media_player.keuken
          - action: media_player.volume_mute
            metadata: {}
            data:
              is_volume_muted: false
            target:
              entity_id: media_player.keuken
        alias: Muziek afspelen bij beweging in de keuken.
      - conditions:
          - condition: trigger
            id:
              - Beweging in de badkamer
        sequence:
          - action: media_player.volume_set
            metadata: {}
            data:
              volume_level: "{{ state_attr('media_player.sonos_woonkamer', 'volume_level') }}"
            target:
              entity_id: media_player.badkamer
          - action: media_player.volume_mute
            metadata: {}
            data:
              is_volume_muted: false
            target:
              entity_id:
                - media_player.badkamer
        alias: Muziek afspelen bij beweging in de badkamer.
      - conditions:
          - condition: trigger
            id:
              - "Geen beweging in de keuken  "
        sequence:
          - action: media_player.volume_mute
            metadata: {}
            data:
              is_volume_muted: true
            target:
              entity_id: media_player.keuken
        alias: Muziek muten als er geen beweging is in de keuken.
      - conditions:
          - condition: trigger
            id:
              - Geen beweging in de badkamer
        sequence:
          - action: media_player.volume_mute
            metadata: {}
            data:
              is_volume_muted: true
            target:
              entity_id:
                - media_player.badkamer
        alias: Muziek muten als er geen beweging is in de badkamer.
mode: single

3 Likes