Sonos showing as ZonePlayer after recent update

With the most recent update to the Sonos, my PLAY:1 and PLAYBAR are now showing up as a zoneplayer instead of the correct device. PaperUI shows them as new items. The Sonos One’s that I have show up just fine.

Not sure if this helps, but for kicks I changed my thing from sonos:PLAY1 to sonos:zoneplayer and it spit out this:

2018-07-13 14:01:34.358 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method 'ThingHandler.initialize()' on 'org.eclipse.smarthome.binding.sonos.internal.handler.ZonePlayerHandler@6a356ef7': No thing type sonos:Play1 registered, cannot change thing type for thing sonos:zoneplayer:RINCON_REMOVED
java.lang.IllegalStateException: No thing type sonos:Play1 registered, cannot change thing type for thing sonos:zoneplayer:RINCON_REMOVED
        at org.eclipse.smarthome.core.thing.internal.ThingManager.migrateThingType(ThingManager.java:303) [108:org.eclipse.smarthome.core.thing:0.10.0.oh230]
        at org.eclipse.smarthome.core.thing.internal.ThingManager$1.migrateThingType(ThingManager.java:268) [108:org.eclipse.smarthome.core.thing:0.10.0.oh230]
        at org.eclipse.smarthome.core.thing.binding.BaseThingHandler.changeThingType(BaseThingHandler.java:684) [108:org.eclipse.smarthome.core.thing:0.10.0.oh230]
        at org.eclipse.smarthome.binding.sonos.internal.handler.ZonePlayerHandler.updateSonosThingType(ZonePlayerHandler.java:2845) [205:org.eclipse.smarthome.binding.sonos:0.10.0.oh230]
        at org.eclipse.smarthome.binding.sonos.internal.handler.ZonePlayerHandler.migrateThingType(ZonePlayerHandler.java:2828) [205:org.eclipse.smarthome.binding.sonos:0.10.0.oh230]
        at org.eclipse.smarthome.binding.sonos.internal.handler.ZonePlayerHandler.initialize(ZonePlayerHandler.java:204) [205:org.eclipse.smarthome.binding.sonos:0.10.0.oh230]
        at sun.reflect.GeneratedMethodAccessor84.invoke(Unknown Source) ~[?:?]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
        at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153) [101:org.eclipse.smarthome.core:0.10.0.oh230]
        at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53) [101:org.eclipse.smarthome.core:0.10.0.oh230]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
        at java.lang.Thread.run(Thread.java:748) [?:?]

Updated my Sonos to 9.0 as well and can see this issue. Could you already resolve this? If not I think we should open an issue on Github for this.

@Lolodomo Did you already update your Sonos?

I have updated my Android devices but I have not yet installed the 9.0 firmware on my Sonos devices. So they are still with version 8.6.

@morph166955 : you should certainly use PLAY1 rather than Play1

@morph166955 : can you give the result of this URL http://192.168.x.xxx:1400/xml/device_description.xml using the IP of your PLAY1 ? I only need to know the values of the tag modelDescription and modelName.

Here you go.

All of my devices (sub, playbar, play1) are seen as zoneplayers and appear as new devices in Paper UI.
The existing things seems to be working just fine

<modelDescription>Sonos Playbar</modelDescription>
<modelName>Sonos Playbar</modelName>

<modelDescription>Sonos Sub</modelDescription>
<modelName>Sonos Sub</modelName>

<modelDescription>Sonos Play:1</modelDescription>
<modelName>Sonos Play:1</modelName>
1 Like

Ok, they changed the case ! With firmware 8.6, I get “Sonos PLAY:5” while with firmware 9.0 you get “Sonos Play:1”.
I will provide a fix later today.
All French people, myself included, have a higher priority today lol

1 Like

Allez les Blues!!

Any news? :slight_smile:

I just proposed a fix:

Thanks @Lolodomo for the quick fix!
@all: please report back that discovery works for all versions with the proposed fix, so we can merge the code into Eclipse SmartHome.

Thanks & Cheers
Henning

The change is basic and I am confident in it. You can merge it and we will have a positive feedback after.
If you ask users to compile sources, deploy the binding, it could take a long time to get a feedback.

done :slight_smile:

Fix is working fine I can confirm it. Still it is not part of the latest 2.4.0 SNAPSHOT. I had to build it manually and add it to the add-ons folder.
Merci

Nice!
How do I build it manually?

Thanks in advance!

Any chance of an attached jar?

Sure.

SONOS Plugin

4 Likes

Thank you!

Unfortunately I seem to have another problem with my setup (Docker) so I can’t confirm that it works.

For some Reason my openhab won’t install any more addons in the addons folder - but that’s a different topic.

Installed the binding and it cleared up the problem. Thanks!