Announcement

Collapse
No announcement yet.

Offline Sonos devices

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

    Offline Sonos devices

    Dirk;

    I wanted to see if you have any ideas. I have 11 Sonos devices around the house. All but 4 of them are Connect:Amps. One of them is a Play 1 we use as a portable. Two of the Connect:Amps are used infrequently in my workshop and for some outdoor speakers.

    We do not leave the portable plugged in and I usually kill the power to the two Connect:Amps above when they are not in use. The problem is that the plug-in doesn't seem too happy when a device is not there. Even if a device is not included in a linkgroup, I still get an error for that device when an announcement is made. When there is an error in the log due to the missing device, it can cause the announcement to fail on the rest of the devices. Here are examples from my log today for a Connect that has not been powered on for a week:

    Jun-06 10:31:47 PM Sonos Error ERROR in GetCurrentTrackInfo/GetMediaInfo for zoneplayer = Deck with UPNP Error = Read only tag / Transport is locked / Access denied. Error = MyUPnPService.InvokeAction for ServiceID = http://192.168.2.175:1400/xml/AVTransport1.xml while preparing to send Action = GetMediaInfo for URI = http://192.168.2.175:1400/MediaRende...nsport/Control and Request = 0 with error = Unable to connect to the remote server

    Jun-06 10:31:26 PM Sonos Error ERROR in GetPlayMode for zoneplayer = Deck with UPNP Error = Read only tag / Transport is locked / Access denied. Error = MyUPnPService.InvokeAction for ServiceID = http://192.168.2.175:1400/xml/AVTransport1.xml while preparing to send Action = GetTransportSettings for URI = http://192.168.2.175:1400/MediaRende...nsport/Control and Request = 0 with error = Unable to connect to the remote server

    Jun-06 10:31:05 PM Sonos Error ERROR in GetSoftwareVersion for zoneplayer = Deck with UPNP Error = Read only tag / Transport is locked / Access denied. Error = MyUPnPService.InvokeAction for ServiceID = http://192.168.2.175:1400/xml/DeviceProperties1.xml while preparing to send Action = GetZoneInfo for URI = http://192.168.2.175:1400/DeviceProperties/Control and Request = with error = Unable to connect to the remote server

    Jun-06 10:30:44 PM Sonos Error Error in GetAudioInputAttributes for zoneplayer = Deck when getting the AudioInputName with Error = Error in MyUPnPService.QueryStateVariable for ServiceID = http://192.168.2.175:1400/xml/AudioIn1.xml with VariableName = AudioInputName and Error = Object reference not set to an instance of an object.

    Jun-06 10:30:43 PM Sonos Error ERROR in GetVolumeLevel for zoneplayer = Deck with UPNP Error = Read only tag / Transport is locked / Access denied. Error = MyUPnPService.InvokeAction for ServiceID = http://192.168.2.175:1400/xml/RenderingControl1.xml while preparing to send Action = GetVolume for URI = http://192.168.2.175:1400/MediaRende...ontrol/Control and Request = 0 Master with error = Unable to connect to the remote server


    The above errors are for a Sonos device that is not addressed by any linkgroup, announcement or any other form of control from HomeSeer.

    Is there any way that the plug-in could be aware of which devices are online and not to attempt communication if it is offline? The iOS, Android and PC applications adapt almost immediately to a Sonos device becoming offline. It would be great if the plug-in wouldn't attempt to communicate with a device that is not connected.

    In the absence of the plug-in being aware of a device's status, can you suggest any changes to the configuration that would stop a player from creating an error when it is offline. Alternately, could a virtual status device be included for each player where we could disable it through an event. If a device is disabled by this device, the plug-in could avoid attempting to communicate with it. Then I could use Blade's, Jon00's or Ultra's network monitor plug-in to control this virtual device.
    HS4 Pro, 4.2.19.0 Windows 10 pro, Supermicro LP Xeon

    #2
    Originally posted by rprade View Post
    Dirk;

    I wanted to see if you have any ideas. I have 11 Sonos devices around the house. All but 4 of them are Connect:Amps. One of them is a Play 1 we use as a portable. Two of the Connect:Amps are used infrequently in my workshop and for some outdoor speakers.

    We do not leave the portable plugged in and I usually kill the power to the two Connect:Amps above when they are not in use. The problem is that the plug-in doesn't seem too happy when a device is not there. Even if a device is not included in a linkgroup, I still get an error for that device when an announcement is made. When there is an error in the log due to the missing device, it can cause the announcement to fail on the rest of the devices. Here are examples from my log today for a Connect that has not been powered on for a week:

    Jun-06 10:31:47 PM Sonos Error ERROR in GetCurrentTrackInfo/GetMediaInfo for zoneplayer = Deck with UPNP Error = Read only tag / Transport is locked / Access denied. Error = MyUPnPService.InvokeAction for ServiceID = http://192.168.2.175:1400/xml/AVTransport1.xml while preparing to send Action = GetMediaInfo for URI = http://192.168.2.175:1400/MediaRende...nsport/Control and Request = 0 with error = Unable to connect to the remote server

    Jun-06 10:31:26 PM Sonos Error ERROR in GetPlayMode for zoneplayer = Deck with UPNP Error = Read only tag / Transport is locked / Access denied. Error = MyUPnPService.InvokeAction for ServiceID = http://192.168.2.175:1400/xml/AVTransport1.xml while preparing to send Action = GetTransportSettings for URI = http://192.168.2.175:1400/MediaRende...nsport/Control and Request = 0 with error = Unable to connect to the remote server

    Jun-06 10:31:05 PM Sonos Error ERROR in GetSoftwareVersion for zoneplayer = Deck with UPNP Error = Read only tag / Transport is locked / Access denied. Error = MyUPnPService.InvokeAction for ServiceID = http://192.168.2.175:1400/xml/DeviceProperties1.xml while preparing to send Action = GetZoneInfo for URI = http://192.168.2.175:1400/DeviceProperties/Control and Request = with error = Unable to connect to the remote server

    Jun-06 10:30:44 PM Sonos Error Error in GetAudioInputAttributes for zoneplayer = Deck when getting the AudioInputName with Error = Error in MyUPnPService.QueryStateVariable for ServiceID = http://192.168.2.175:1400/xml/AudioIn1.xml with VariableName = AudioInputName and Error = Object reference not set to an instance of an object.

    Jun-06 10:30:43 PM Sonos Error ERROR in GetVolumeLevel for zoneplayer = Deck with UPNP Error = Read only tag / Transport is locked / Access denied. Error = MyUPnPService.InvokeAction for ServiceID = http://192.168.2.175:1400/xml/RenderingControl1.xml while preparing to send Action = GetVolume for URI = http://192.168.2.175:1400/MediaRende...ontrol/Control and Request = 0 Master with error = Unable to connect to the remote server


    The above errors are for a Sonos device that is not addressed by any linkgroup, announcement or any other form of control from HomeSeer.

    Is there any way that the plug-in could be aware of which devices are online and not to attempt communication if it is offline? The iOS, Android and PC applications adapt almost immediately to a Sonos device becoming offline. It would be great if the plug-in wouldn't attempt to communicate with a device that is not connected.

    In the absence of the plug-in being aware of a device's status, can you suggest any changes to the configuration that would stop a player from creating an error when it is offline. Alternately, could a virtual status device be included for each player where we could disable it through an event. If a device is disabled by this device, the plug-in could avoid attempting to communicate with it. Then I could use Blade's, Jon00's or Ultra's network monitor plug-in to control this virtual device.
    Was this player part of a group when you powered it down? If you were to pull up the player page for this player, does it tell you it is linked/paired to another player?

    If you power down a player, it will take a while for any app to notice it, in fact I as testing it this weekend and my Sonos App after 5~10 minutes still showed the player. The UPNP protocol works on timers, in this case 30 minutes and it is the players who determine this. So that's how long it could take before the PI will notice the player to be gone. In the old days, I had a ping going, but I took that out.

    The only thing I can think off is that the player was part of a group of other players and when it "just" disappeared, because it was powered down, the PI status was never updated. When an announcement happens, the PI looks at all involved players and if some of these players are grouped or paired with other players (that may not be part of your linkgroup), the PI will deal with that and therefore these "other" players DO play in this whole announcement business. I guess I would have to think about updating all of that if a player disappears which unless you power them down, hardly ever happened (remember the PI was created when there were no portable payers).

    Dirk
    Last edited by dcorsus; June 7, 2017, 11:20 PM.

    Comment

    Working...
    X