Announcement

Collapse
No announcement yet.

Sonos Plugin is now playing announcements in source player

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Sonos Plugin is now playing announcements in source player

    I noticed this within the past few weeks and I expect it happened with one of the recent Sonos updates.

    When an announcement is made, the source zone is now being played in addition to all the selected destination zones.

    For instance, if I make an announcement to Kitchen/Theater, both Kitchen/Theater and Rec Room play the announcement.

    Click image for larger version

Name:	testspeak.jpg
Views:	447
Size:	25.8 KB
ID:	1413508
    Click image for larger version

Name:	sonosconfig1.jpg
Views:	266
Size:	55.1 KB
ID:	1413509

    If I change the source player, it plays in whatever source player is selected.

    When I look at the ini file, it only shows one speaker for Kitchen/Theater in the LinkgroupZoneDestination section:
    Kitchen/Theater=RINCON_5CAAFDF2DE2401400;70;0;1
    .
    I have been running HS3 and plugin 3.1.0.53 for several months. I upgraded to the new Sonos 12.0 software about a month ago and do not have a split system. Did the latest Sonos version update was a few weeks ago 12.0.3 when I think things changed

    Current Date/Time: 8/23/2020 8:18:10 AM
    HomeSeer Version: HS3 Pro Edition 3.0.0.548
    Operating System: Microsoft Windows 7 Professional - Work Station
    System Uptime: 6 Days 16 Hours 45 Minutes 11 Seconds
    IP Address: 192.168.0.97
    Number of Devices: 1692
    Number of Events: 589
    Available Threads: 400
    HSTouch Enabled: True
    Event Threads: 3
    Event Trigger Eval Queue: 0
    Event Trigger Priority Eval Queue: 0
    Device Exec Queue: 0
    HSTouch Event Queue: 0
    Email Send Queue: 0
    Anti Virus Installed:
    In Virtual Machine: No MFG: asrock
    Enabled Plug-Ins
    3.0.0.45: AK Bond
    3.0.1.4: AmbientWeather
    1.0.0.131: Arduino Plugin
    1.38.0.0: Big5
    2.0.61.0: BLBackup
    3.0.55.0: BLGData
    3.0.0.71: EasyTrigger
    3.0.0.33: Ecobee
    3.0.11.1538: IRTrans
    5.5.1.4: mcsMQTT
    3.1.0.19: MeiHarmonyHub
    3.0.0.20: MeiUnifi
    3.0.0.63: PHLocation2
    0.0.0.48: Pushover 3P
    1.0.0.7: Restart
    3.0.8.7: SDJ-Health
    3.1.0.53: Sonos
    19.10.7.1: TPLinkSmartHome
    3.0.6681.34300: UltraCID3
    3.0.1.19: weatherXML
    3.0.2.0: Z-Wave

    #2
    interesting to hear about this...

    Comment


      #3
      Ok, now you have me doubting, I would say this was always the case, except perhaps when the source player was using the "audio input". If you don't want the source player to participate, then don't select it, make source and destination player the same.

      Comment


        #4
        I am fairly certain this is new behavior. But I could be wrong.

        Setting them to the same works great for one speaker.

        However, I have an "ANNOUNCE" Linkgroup that I use for whole house announcements where I dynamically change the destination zones based on room occupancy, etc. I don't really want to have a zone announce unless it is selected as destination. For instance, I have it now setup as Kitchen/LR as source. In the attached image, I have no motion in the Kitchen currently, so the destination zone is deselected. But the plugin still plays an announcement in there.

        Click image for larger version  Name:	announce.jpg Views:	0 Size:	50.4 KB ID:	1413542

        What's interest is that I notice that if I deselect the destination zone that matches the source zone and run an announcement, the plugin goes ahead and reselects the destination zone for that source. So the above settings are before I run an announcement, and these are the settings after I run an announcement.

        Click image for larger version  Name:	announce2.jpg Views:	0 Size:	49.7 KB ID:	1413544

        Are you sure this is expected behavior of the plugin?

        Comment


          #5
          Originally posted by prsmith777 View Post

          Are you sure this is expected behavior of the plugin?
          Pretty sure. The PI builds a grouping with the source player as the "master" of the group. This is exactly the same as if you were to group players. The source player IS part of that group, more importantly, it is the most important part of that group. As I wrote, the only exception is when the source player is used as an audio input source. There has been (minor) changes over the years but they were more around whether the players automatically went into play mode or the PI had to specifically issue a play command after they were grouped.

          Can't think of anything why you would have experienced it differently in the past. How do you set these linkgroups dynamically? Do you have a script that directly changes the info in the ini file? If so, maybe the answer might be in that script.

          Comment


            #6
            Thanks for the explanation. After reading your explanation, it seems that I was incorrect about this not happening previously.

            I recently added some announcements that only play in one room, not using the "announce" linkgroup. I thought they were working normally before, but I guess I was wrong. As far as the whole house announcements using "announce" linkgroup, I must have never noticed the source always playing, since I have Kitchen/LR as source and that is almost always occupied so it almost always plays anyway.

            Yes I use a script to change the linkgroup ini file. Which gives me an idea... I could change the "announce" linkgroup source by this method as well to ensure it matches an active destination zone. But I might just leave it as is and let the Kitchen always play.

            Comment


              #7
              Originally posted by prsmith777 View Post
              I am fairly certain this is new behavior. But I could be wrong.

              Setting them to the same works great for one speaker.

              However, I have an "ANNOUNCE" Linkgroup that I use for whole house announcements where I dynamically change the destination zones based on room occupancy, etc. I don't really want to have a zone announce unless it is selected as destination. For instance, I have it now setup as Kitchen/LR as source. In the attached image, I have no motion in the Kitchen currently, so the destination zone is deselected. But the plugin still plays an announcement in there.

              Are you sure this is expected behavior of the plugin?
              I have never tested mine using a speaker as a source that is not part of the announcement group, so I cannot state whether this behavior is normal. I also set the linkgroup speakers and levels dynamically, but I select the source within a separate script and a virtual device. The logic prevents my using a speaker that is disconnected or not included in the group as a source. My primary source is the living room, but if it is offline or muted for announcements, it moves to MBR, Office, bathroom on down the line. I will also manipulate the source in any Event that going into a group not including the primary source. 99% of our announcements will include the living room and 99.99% of the time it will be online, so the primary issue I was addressing was simply to keep a dead speaker from being the source. .

              Click image for larger version  Name:	capture.png Views:	0 Size:	69.3 KB ID:	1413563
              HS4 Pro, 4.2.19.16 Windows 10 pro, Supermicro LP Xeon

              Comment


                #8
                Originally posted by rprade View Post
                I have never tested mine using a speaker as a source that is not part of the announcement group, so I cannot state whether this behavior is normal. I also set the linkgroup speakers and levels dynamically, but I select the source within a separate script and a virtual device. The logic prevents my using a speaker that is disconnected or not included in the group as a source. My primary source is the living room, but if it is offline or muted for announcements, it moves to MBR, Office, bathroom on down the line. I will also manipulate the source in any Event that going into a group not including the primary source. 99% of our announcements will include the living room and 99.99% of the time it will be online, so the primary issue I was addressing was simply to keep a dead speaker from being the source. .
                Thanks Randy

                That was my thought as well, to change the "Announce" source dynamically. Seeing as how you have implemented it and it works well, I think Ill give it a go.

                I do something similar to you. I have virtual devices for each Sonos Speaker that can either use occupancy to determine play status or always play or always mute. I also use the devices for adjusting volume. I don't use Sonos Mute Override. I have a separate script that determines room occupancy that adjusts these devices. Also have scripts to adjust volume based on time of day etc. Works very well.

                Click image for larger version

Name:	dadsroom.jpg
Views:	246
Size:	37.1 KB
ID:	1413573

                Comment


                  #9
                  Originally posted by prsmith777 View Post
                  Thanks for the explanation. After reading your explanation, it seems that I was incorrect about this not happening previously.

                  I recently added some announcements that only play in one room, not using the "announce" linkgroup. I thought they were working normally before, but I guess I was wrong. As far as the whole house announcements using "announce" linkgroup, I must have never noticed the source always playing, since I have Kitchen/LR as source and that is almost always occupied so it almost always plays anyway.

                  Yes I use a script to change the linkgroup ini file. Which gives me an idea... I could change the "announce" linkgroup source by this method as well to ensure it matches an active destination zone. But I might just leave it as is and let the Kitchen always play.
                  Ah, the script also explains why "the announcement group reverts" after the announcement. Are you on HS3 or HS4? In HS3, the ini files are cashed, I have no idea for how long, but if you change the .ini file externally (not through HS3 commands), it could give you issues ...

                  Comment


                    #10
                    Originally posted by dcorsus View Post

                    Ah, the script also explains why "the announcement group reverts" after the announcement. Are you on HS3 or HS4? In HS3, the ini files are cashed, I have no idea for how long, but if you change the .ini file externally (not through HS3 commands), it could give you issues ...
                    Im on HS3... not jumping to HS4 till I absolutely have to.

                    I have really had no issues using scripting to adjust the ini file. Either scripting makes a permanent change, or the caching time is very short.

                    Comment


                      #11
                      Originally posted by prsmith777 View Post

                      or the caching time is very short.
                      it probably is indeed very short ...

                      Comment


                        #12
                        just FYI, I've been rewriting this whole TTS business for the HS4 version of this PI.
                        The intent is to make it a lot more "script-able" and/or "dynamic". Ideas welcome!

                        Comment

                        Working...
                        X