Sonos speakers & Ring doorbell (MP3 playback issues)


#1

1) Give a description of the problem
Struggling to get my Sonos speakers working reliably with my Ring doorbell. I’m actually struggling to get any Sonos speaker to simply play an MP3 reliably at the moment, I haven’t ventured as far as the Ring doorbell integration yet.

2) What is the expected behavior?
I would like the Sonos speakers to play an MP3 file (eventually when the Ring doorbell button is pushed) then resume whatever they were playing (if anything) following the MP3.

3) What is happening/not happening?
Sometimes Sonos speaker will play the MP3, other times it will say that the MP3 isn’t encoded properly, other times (if music is already playing) it won’t interrupt the live music, and other times (if music is paused) it will simply start the paused music.
“Play and resume” doesn’t seem to start the MP3 at all, “Play track” yields the best results.
I’ve tried with local HTTP links to a QNAP NAS which worked for a while then I started to get user permission issues. I’m now trying to use a Dropbox share link which is resulting in the Sonos App flashing up a message indicating that the MP3 isn’t encoded properly.
I’m currently simply using the TEST PISTON feature to try to play the MP3 to a speaker (or group of speakers) for testing purposes.

4) Post a Green Snapshot of the pistonimage

5) Attach any logs (From ST IDE and by turning logging level to Full)
(PASTE YOUR LOGS HERE BETWEEN THE MARKS THEN HIGHLIGHT ALL OF THE LOGS AND CLICK ON THE </> ICON TO FORMAT THEM)


#2

UPDATE: I’ve found that the following URL seems to work fairly reliably, but only when using the command “Play Track”. “play & resume / restore” don’t even play the MP3.

x-file-cifs://local_IP_of_NAS/folder/file.mp3

So at the moment I can use the above URL to play the custom MP3 but can’t get anything to resume. Any help would be appreciated.


#3

Hmm … Play & Resume has never been wholly reliable, but the issue has always been with the ‘Resume’ part of the equation. However, I’m seeing similar behavior in my testing here today. I’ll have to look at this more closely when I have time.


#4

Many thanks, much appreciated.


#5

Definitely not working, but not sure why as nothing in webCoRE or the DTH has changed to affect this.

Sonos very recently updated their API, and ST has been having some issues the last few days, I suspect one or the other is to blame. I’ll have to keep my eye on this.


#6

Thanks for your input. Bit of a shame really because Sonos integration (specifically the ‘resume’ feature) is the main reason I’ve implemented WebCoRE.

Was considering investigating the IFTTT route for ‘notifications’ over Sonos, but I would rather keep all of my smart home logic contained within a single system (WebCoRE) ideally.

I’ll park this issue for a week or so to see if there are any developments. If you hear anything I’d appreciate it if you could let me know. Again, thanks for your help.


#7

I use the following for all my sonos integrations:

It works great. Operates on groups of speakers or single speakers. Speak & resume works perfect as well.


#8

Thanks for the suggestion, the functionality looks great, exactly what I’m after. I would however prefer for it to run via WebCore (x1 point of administration for all home automation tasks) rather than having to install a separate piece of equipment (RPi), a separate application to learn, etc. I’ll give the Webcore gurus a bit of time to see if the Sonos integration issues get resolved, if they don’t then I’ll certainly consider the route you’ve suggested.

You wouldn’t think that notifications via Sonos would be so difficult would you. Installed SmartThings (delayed and limited results), installed WebCore (quicker but equally as limited results), now we’re looking at a 3rd platform. Where does it end ?


#9

lol, it doesn’t end. Ever.
Also, for the node-sonos-http-api software, any device should be able to run nodejs (windows, mac, linux). You don’t need a separate raspberry pi to run it. It’s pretty simple to install and configure. I’m more than willing to help you get it setup if you go that route.


#10

I’ll second that, although I understand @andrewprouse 's desire to avoid complicating things with node.js, IFTTT and other such things. And while node.js can be run on Windows, that’s not really practical for those who don’t run the laptop or desktop PC’s 24-hours a day.

I have often wondered though if it wouldn’t be possible to to build a lot of that same functionality into the Sonos DTH, but I haven’t had the time to explore this and it’s a bit outside my scope of experience.

BTW, Speak & Resume still works fine in webCoRE, it is only play & resume that is affected. Actually, it doesn’t even work in a simple workaround piston like the one below, which stores the currently active Sonos station, plays an mp3 track, and then restarts the station. The piston starts and plays the mp3, but doesn’t trace or even produce any logs. It’s most likely a separate issue altogether, I’d be interested to know if any @webCoRE_Minions have any ideas on that.

As to @andrewprouse 's comment, to my knowledge nothing has changed in webCoRE that would affect this and therefore it’s unlikely the gurus here can fix this. It has to be the result of a change in ST or the Sonos API, making the path to a fix much more complicated.

Workaround Piston
index


#11

That’s very cool… Didn’t know you could parse the trackData like that. Nice workaround!


#12

I’ve used it to collect favorite stations and include them in a piston than randomizes them. It works with stations, but not with playlists in webCoRE.

Curious, however, that even that simple piston has stopped working with the intervening ‘play track’ with an mp3.


#13

Hi guys,

Any updates or workarounds available for this ‘play & resume’ issue yet ?

I’ve been messing around with capture and restore attributes but still no joy.


#14

Nope. :slightly_frowning_face:


#15

Disappointing.

I’m considering installing additional speakers (purely for notifications) which seems absurd. Is there anything else (possibly a 3rd party application) that we can use to play notifications via Sonos (triggered via WebCORE) then resume existing content ?


#16

I use the following and it works perfect:

Allows me to only send notifications to groups of speakers… support the notification being played then the speaker resuming exactly what it was doing… Text to speech works great with many different voice you can use, etc…


#17

Just to let you know that I’m going down the route suggested by allrak. I’m trying to get my QNAP NAS to run the Node.js application but I’m running into issues with PM2 (process manager) to automatically start Node.js and the NODE-SONOS-HTTP-API. I’ll continue to work on that and will report back when I’ve got NODE-SONOS-HTTP-API installed.

In anticipation, how do I then get Webcore to issue commands to NODE-SONOS-HTTP-API ?

Many thanks for your help.


#18

Make sure to READ all the instructions on the NODE-SONOS-HTTP site… It’s relatively simple to setup, and even group speakers. I’m using a preset in my config called “test.json” which groups my two kitchen speakers. Then to have them speak text and resume, I simply make an HTTP GET request to:
http://<my_ip>:5005/saypreset/test/This is a test

Here’s what my “test.json” looks like in node-sonos-http-api:
{
“players”: [
{
“roomName”: “Wine Rack P1”,
“volume”: 70
},
{
“roomName”: “Kitchen Play1”,
“volume”: 70
}
],
“playMode”: {
“shuffle”: true,
“repeat”: “false”,
“crossfade”: false
},
“pauseOthers”: false

}