SmartThings Community

[Updated] Media Renderer Events, play messages, radio stations, tracks, sounds

smartapp_av
project_av
(Ule) #21

HI, An update to Media Renderer Events, now in Beta Text to Speach ivona Voices from Amazon.

Ivona Voices have the best TTS engine (my opinion) and now you can use it in smartthings messages.

You need to get your api secret and key from Ivona page https://www.ivona.com

Ivona use transcoding chunked and this is a problem with MR devices, the players do not play with this settings, its necessary to preload the audio in other service and then delivery to MR device.

This new TTS creates a signed url and send the data to a proxy web server to make it compatible with most of the MR devices, in this way your api key is always secure and its not necessary to share it.

I cant find any other way to make it compatible with the MR, if you have a android MR device this is not necessary, Android can use transcoding chunked without problem but all others MR can not play it without the proxy

I have added the proxy urbansa.com, I think no many people going to use it, but if i´m wrong it can overload, lets go to test

Try it and feedback

0 Likes

Better an Reloaded Fix for TTS (TextToSpeech)
Sonos voice synth question
#22

Hi @ule, I have put action ‘message’, mode ‘Ivona’ and put both of the API keys in but I cannot get any speech out.

edit

actually it is working but I had to make the message longer because I am still missing a couple of seconds at the start

0 Likes

(Ule) #23

Hi @BristolBaz, could you give me more info
1.- what speaker do you have?
2.- Are you using Media renderer or other device type?
3.- Voice RSS or SmartThings works fine without delay?

thanks

0 Likes

(Dean Smith) #24

@ule - Hello mate,

I’ve signed up for the new TTS engine, however Media Renderer Events seems to not save as it wants a radio tunes details, all I want to do is put in a message?

Is there any way around this?
Thanks

0 Likes

(Ule) #25

Hi @deano12, Update the Smartapp. I have fix the problem

0 Likes

(Dean Smith) #26

Hi @ule - Happy Christmas to you!

I’ve tried the fix you suggested and I’m getting this error in the live logging with nothing playing:

5111ec95-6cac-4651-9001-b5525b2f4d8d 8:22:30 PM: error org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 309; The reference to entity “Input.Type” must end with the ‘;’ delimiter. @ line 604
5111ec95-6cac-4651-9001-b5525b2f4d8d 8:22:30 PM: debug Parsing 'index:12, mac:90F1AA0913D2, ip:C0A80014, port:D6D9, headers:SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBGcmksIDA5IEphbiAxOTcwIDA0OjM5OjA3IEdNVA0KU2VydmVyOiBTYW1zdW5nLzEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L2h0bWwNCkNvbnRlbnQtTGVuZ3RoOiA3NTQNCkNvbm5lY3Rpb246IGNsb3NlDQpMYXN0LU1vZGlmaWVkOiBGcmksIDA5IEphbiAxOTcwIDA0OjM5OjA3IEdNVA==, body:PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48VUlDPjxtZXRob2Q+VXJsUGxheWJhY2s8L21ldGhvZD48dmVyc2lvbj4xLjA8L3ZlcnNpb24+PHNwZWFrZXJpcD4xOTIuMTY4LjAuMjA8L3NwZWFrZXJpcD48dXNlcl9pZGVudGlmaWVyPjwvdXNlcl9pZGVudGlmaWVyPjxyZXNwb25zZSByZXN1bHQ9Im9rIj48dXJsPmh0dHA6Ly91cmJhbnNhLmNvbS90dHMucGhwP3VyaT1odHRwczovL3R0cy51cy1lYXN0LTEuaXZvbmFjbG91ZC5jb20vQ3JlYXRlU3BlZWNoP0lucHV0LkRhdGE9SGVsbG8lMjBMZXhpJTNGJklucHV0LlR5cGU9dGV4dCUyRnBsYWluJk91dHB1dEZvcm1hdC5Db2RlYz1NUDMmT3V0cHV0Rm9ybWF0LlNhbXBsZVJhdGU9MjIwNTAmUGFyYW1ldGVycy5SYXRlPWRlZmF1bHQmVm9pY2UuTGFuZ3VhZ2U9ZW4tR0ImVm9pY2UuTmFtZT1BbXkmWC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1HRE5BSUczTlFZWDJDUFBVWFBNUSUyRjIwMTUxMjI0JTJGdXMtZWFzdC0xJTJGdHRzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAxNTEyMjRUMjAyMjI0WiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmWC1BbXotU2lnbmF0dXJlPTRlZGIxYjU5YzAyNTkwMTM0NDI2NThhMmU3ZTBjOWVlN2I2M2UwODE3ZjBkMDhhNDI4ZjMwNWZmNWJjZmZmNWI8L3VybD48YnVmZmVyc2l6ZT4wPC9idWZmZXJzaXplPjxzZWVrdGltZT4wPC9zZWVrdGltZT48L3Jlc3BvbnNlPjwvVUlDPg=='
5111ec95-6cac-4651-9001-b5525b2f4d8d 8:22:30 PM: error org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 309; The reference to entity “Input.Type” must end with the ‘;’ delimiter. @ line 604
5111ec95-6cac-4651-9001-b5525b2f4d8d 8:22:30 PM: debug Parsing 'index:11, mac:90F1AA0913D2, ip:C0A80014, port:D6D9, headers:SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBGcmksIDA5IEphbiAxOTcwIDA0OjM5OjA3IEdNVA0KU2VydmVyOiBTYW1zdW5nLzEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L2h0bWwNCkNvbnRlbnQtTGVuZ3RoOiA3NTQNCkNvbm5lY3Rpb246IGNsb3NlDQpMYXN0LU1vZGlmaWVkOiBGcmksIDA5IEphbiAxOTcwIDA0OjM5OjA3IEdNVA==, body:PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48VUlDPjxtZXRob2Q+VXJsUGxheWJhY2s8L21ldGhvZD48dmVyc2lvbj4xLjA8L3ZlcnNpb24+PHNwZWFrZXJpcD4xOTIuMTY4LjAuMjA8L3NwZWFrZXJpcD48dXNlcl9pZGVudGlmaWVyPjwvdXNlcl9pZGVudGlmaWVyPjxyZXNwb25zZSByZXN1bHQ9Im9rIj48dXJsPmh0dHA6Ly91cmJhbnNhLmNvbS90dHMucGhwP3VyaT1odHRwczovL3R0cy51cy1lYXN0LTEuaXZvbmFjbG91ZC5jb20vQ3JlYXRlU3BlZWNoP0lucHV0LkRhdGE9SGVsbG8lMjBMZXhpJTNGJklucHV0LlR5cGU9dGV4dCUyRnBsYWluJk91dHB1dEZvcm1hdC5Db2RlYz1NUDMmT3V0cHV0Rm9ybWF0LlNhbXBsZVJhdGU9MjIwNTAmUGFyYW1ldGVycy5SYXRlPWRlZmF1bHQmVm9pY2UuTGFuZ3VhZ2U9ZW4tR0ImVm9pY2UuTmFtZT1BbXkmWC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1HRE5BSUczTlFZWDJDUFBVWFBNUSUyRjIwMTUxMjI0JTJGdXMtZWFzdC0xJTJGdHRzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAxNTEyMjRUMjAyMjI0WiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmWC1BbXotU2lnbmF0dXJlPTRlZGIxYjU5YzAyNTkwMTM0NDI2NThhMmU3ZTBjOWVlN2I2M2UwODE3ZjBkMDhhNDI4ZjMwNWZmNWJjZmZmNWI8L3VybD48YnVmZmVyc2l6ZT4wPC9idWZmZXJzaXplPjxzZWVrdGltZT4wPC9zZWVrdGltZT48L3Jlc3BvbnNlPjwvVUlDPg=='
5111ec95-6cac-4651-9001-b5525b2f4d8d 8:22:29 PM: error org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 309; The reference to entity “Input.Type” must end with the ‘;’ delimiter. @ line 604
5111ec95-6cac-4651-9001-b5525b2f4d8d 8:22:29 PM: debug Parsing 'index:12, mac:90F1AA0913D2, ip:C0A80014, port:D6D9, headers:SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBGcmksIDA5IEphbiAxOTcwIDA0OjM5OjA3IEdNVA0KU2VydmVyOiBTYW1zdW5nLzEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L2h0bWwNCkNvbnRlbnQtTGVuZ3RoOiA3NTQNCkNvbm5lY3Rpb246IGNsb3NlDQpMYXN0LU1vZGlmaWVkOiBGcmksIDA5IEphbiAxOTcwIDA0OjM5OjA3IEdNVA==, body:PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48VUlDPjxtZXRob2Q+VXJsUGxheWJhY2s8L21ldGhvZD48dmVyc2lvbj4xLjA8L3ZlcnNpb24+PHNwZWFrZXJpcD4xOTIuMTY4LjAuMjA8L3NwZWFrZXJpcD48dXNlcl9pZGVudGlmaWVyPjwvdXNlcl9pZGVudGlmaWVyPjxyZXNwb25zZSByZXN1bHQ9Im9rIj48dXJsPmh0dHA6Ly91cmJhbnNhLmNvbS90dHMucGhwP3VyaT1odHRwczovL3R0cy51cy1lYXN0LTEuaXZvbmFjbG91ZC5jb20vQ3JlYXRlU3BlZWNoP0lucHV0LkRhdGE9SGVsbG8lMjBMZXhpJTNGJklucHV0LlR5cGU9dGV4dCUyRnBsYWluJk91dHB1dEZvcm1hdC5Db2RlYz1NUDMmT3V0cHV0Rm9ybWF0LlNhbXBsZVJhdGU9MjIwNTAmUGFyYW1ldGVycy5SYXRlPWRlZmF1bHQmVm9pY2UuTGFuZ3VhZ2U9ZW4tR0ImVm9pY2UuTmFtZT1BbXkmWC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1HRE5BSUczTlFZWDJDUFBVWFBNUSUyRjIwMTUxMjI0JTJGdXMtZWFzdC0xJTJGdHRzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAxNTEyMjRUMjAyMjI0WiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmWC1BbXotU2lnbmF0dXJlPTRlZGIxYjU5YzAyNTkwMTM0NDI2NThhMmU3ZTBjOWVlN2I2M2UwODE3ZjBkMDhhNDI4ZjMwNWZmNWJjZmZmNWI8L3VybD48YnVmZmVyc2l6ZT4wPC9idWZmZXJzaXplPjxzZWVrdGltZT4wPC9zZWVrdGltZT48L3Jlc3BvbnNlPjwvVUlDPg=='
5111ec95-6cac-4651-9001-b5525b2f4d8d 8:22:29 PM: error org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 309; The reference to entity “Input.Type” must end with the ‘;’ delimiter. @ line 604
5111ec95-6cac-4651-9001-b5525b2f4d8d 8:22:29 PM: debug Parsing 'index:11, mac:90F1AA0913D2, ip:C0A80014, port:D6D9, headers:SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBGcmksIDA5IEphbiAxOTcwIDA0OjM5OjA3IEdNVA0KU2VydmVyOiBTYW1zdW5nLzEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L2h0bWwNCkNvbnRlbnQtTGVuZ3RoOiA3NTQNCkNvbm5lY3Rpb246IGNsb3NlDQpMYXN0LU1vZGlmaWVkOiBGcmksIDA5IEphbiAxOTcwIDA0OjM5OjA3IEdNVA==, body:PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48VUlDPjxtZXRob2Q+VXJsUGxheWJhY2s8L21ldGhvZD48dmVyc2lvbj4xLjA8L3ZlcnNpb24+PHNwZWFrZXJpcD4xOTIuMTY4LjAuMjA8L3NwZWFrZXJpcD48dXNlcl9pZGVudGlmaWVyPjwvdXNlcl9pZGVudGlmaWVyPjxyZXNwb25zZSByZXN1bHQ9Im9rIj48dXJsPmh0dHA6Ly91cmJhbnNhLmNvbS90dHMucGhwP3VyaT1odHRwczovL3R0cy51cy1lYXN0LTEuaXZvbmFjbG91ZC5jb20vQ3JlYXRlU3BlZWNoP0lucHV0LkRhdGE9SGVsbG8lMjBMZXhpJTNGJklucHV0LlR5cGU9dGV4dCUyRnBsYWluJk91dHB1dEZvcm1hdC5Db2RlYz1NUDMmT3V0cHV0Rm9ybWF0LlNhbXBsZVJhdGU9MjIwNTAmUGFyYW1ldGVycy5SYXRlPWRlZmF1bHQmVm9pY2UuTGFuZ3VhZ2U9ZW4tR0ImVm9pY2UuTmFtZT1BbXkmWC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1HRE5BSUczTlFZWDJDUFBVWFBNUSUyRjIwMTUxMjI0JTJGdXMtZWFzdC0xJTJGdHRzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAxNTEyMjRUMjAyMjI0WiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmWC1BbXotU2lnbmF0dXJlPTRlZGIxYjU5YzAyNTkwMTM0NDI2NThhMmU3ZTBjOWVlN2I2M2UwODE3ZjBkMDhhNDI4ZjMwNWZmNWJjZmZmNWI8L3VybD48YnVmZmVyc2l6ZT4wPC9idWZmZXJzaXplPjxzZWVrdGltZT4wPC9zZWVrdGltZT48L3Jlc3BvbnNlPjwvVUlDPg=='
5111ec95-6cac-4651-9001-b5525b2f4d8d 8:22:29 PM: error org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 309; The reference to entity “Input.Type” must end with the ‘;’ delimiter. @ line 604
5111ec95-6cac-4651-9001-b5525b2f4d8d 8:22:29 PM: debug Parsing 'index:12, mac:90F1AA0913D2, ip:C0A80014, port:D6D9, headers:SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBGcmksIDA5IEphbiAxOTcwIDA0OjM5OjA3IEdNVA0KU2VydmVyOiBTYW1zdW5nLzEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L2h0bWwNCkNvbnRlbnQtTGVuZ3RoOiA3NTQNCkNvbm5lY3Rpb246IGNsb3NlDQpMYXN0LU1vZGlmaWVkOiBGcmksIDA5IEphbiAxOTcwIDA0OjM5OjA3IEdNVA==, body:PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48VUlDPjxtZXRob2Q+VXJsUGxheWJhY2s8L21ldGhvZD48dmVyc2lvbj4xLjA8L3ZlcnNpb24+PHNwZWFrZXJpcD4xOTIuMTY4LjAuMjA8L3NwZWFrZXJpcD48dXNlcl9pZGVudGlmaWVyPjwvdXNlcl9pZGVudGlmaWVyPjxyZXNwb25zZSByZXN1bHQ9Im9rIj48dXJsPmh0dHA6Ly91cmJhbnNhLmNvbS90dHMucGhwP3VyaT1odHRwczovL3R0cy51cy1lYXN0LTEuaXZvbmFjbG91ZC5jb20vQ3JlYXRlU3BlZWNoP0lucHV0LkRhdGE9SGVsbG8lMjBMZXhpJTNGJklucHV0LlR5cGU9dGV4dCUyRnBsYWluJk91dHB1dEZvcm1hdC5Db2RlYz1NUDMmT3V0cHV0Rm9ybWF0LlNhbXBsZVJhdGU9MjIwNTAmUGFyYW1ldGVycy5SYXRlPWRlZmF1bHQmVm9pY2UuTGFuZ3VhZ2U9ZW4tR0ImVm9pY2UuTmFtZT1BbXkmWC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1HRE5BSUczTlFZWDJDUFBVWFBNUSUyRjIwMTUxMjI0JTJGdXMtZWFzdC0xJTJGdHRzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAxNTEyMjRUMjAyMjI0WiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmWC1BbXotU2lnbmF0dXJlPTRlZGIxYjU5YzAyNTkwMTM0NDI2NThhMmU3ZTBjOWVlN2I2M2UwODE3ZjBkMDhhNDI4ZjMwNWZmNWJjZmZmNWI8L3VybD48YnVmZmVyc2l6ZT4wPC9idWZmZXJzaXplPjxzZWVrdGltZT4wPC9zZWVrdGltZT48L3Jlc3BvbnNlPjwvVUlDPg=='
5111ec95-6cac-4651-9001-b5525b2f4d8d 8:22:29 PM: error org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 309; The reference to entity “Input.Type” must end with the ‘;’ delimiter. @ line 604

It also states when pressed on the app “Unable to play this track”.

Thanks

0 Likes

(Vic Singh) #27

I was able to get this to work however I can not get message to work.

Action-radio tune-works
Action-sound-works
Action-message don’t work
Under “Play this message” I type “Terrance Door Open”-do I need to coffeey it differently? My trigger is open close sensor.

0 Likes

(Ule) #28

Hi @vicjagsingh, SmartThings text to speech function have some problems, I suggest you to use some of the alternatives, please sign up to voice rss and get your api key, once you have write the api key your message will play fine.

0 Likes

(Vic Singh) #29

That’s what I did and still nothing…

0 Likes

(Phil Panfili) #30

I tried both Icons And Voice RSS and neither of them play. The Smarthings choice plays, but it is very delayed.

0 Likes

(Dean Smith) #31

I’ve got the same issue… neither 3rd party service works

0 Likes

#32

This looked like a tempting option since the alternative “Big Talker” SmartApp isn’t working as intended for me but after reading through the 31 posts so far, this option doesn’t seem any better and far more complicated for TTS what is just what I want, no radio stations or anything. :frowning:

I do want to say that I greatly appreciate the work they are all trying as alternatives to the broken ST TTS and I’m disgusted that ST still hasn’t fixed this issue that has been around across several threads for a very long time.

1 Like

#33

Hi,

I tried your SmartApp because I just want to play a specified track stored on my local Synology NAS server when a certain SmartThings event occurs. It seems to me this should be much quicker than going out to the internet and I could easily download or prerecord tracks that I want to use. However your App only seems to cater for playing a track from a radio station.

Is there any chance you could provide an option to play a track stored on a NAS, either directly by folder/filename or by sending it through DLNA from the NAS DLNA server specified by the user to the DLNA renderer.

(PS where are the predefined sounds (barking dogs, bell etc) coming from ? are they stored on a server on the internet, or are they stored on the SmartHub, or somewhere else ?)

0 Likes

(Patrick Callahan) #34

@Spinny - I’m looking for the same thing. Right now I’m trying the “speaker control” app. It will play the “track” which is current on your DLNA queue - so if you set it up that would be your preferred track. Also, yes the Sonos “dog bark” etc comes from Amazon, so it’s slow.

@ule - since 1/1/2016, Radiotunes no longer allows streaming from the non-webapp, so that’s too bad. I had it set up to play xmas songs when I came home, but it won’t do it now other than send an announcement about their change in streaming policy. Oh well.

0 Likes

(Ule) #35

Hi @Patrick_Callahan, sorry to hear about that, I have premium account and I have not that message, I have tried the test account and now I known about the problem, I´m going to decide if I remove the Radio Tunes features or I leave it to premium users, If you known about other radio station online like RT, I could try to add to this smartApp,

0 Likes

(Billy) #36

OK, I’m sure I am just clueless about this whole thing, but here goes…

I managed to load the code from Github, and was able to discover LG LAS751 sound bar, LG H5 speaker and 2 LGh3 speakers. But how do I attach it to radio, or text to speech to get sound?

I have Media render in smart apps
I have Sonos Weather in Smart apps
I also have talking alarm in smart apps

but I don’t understand where it should get the actual music/speech files from or how to set it up. I’m going on 3 days of ready forums without discovering what most likely is right in front of my face…

0 Likes

(Ule) #37

HI havoc, The Media Renderer Device allows you to send mp3 files to your speakers, the files are sent by several smart apps like media renderer events apps, If you want to send music you can do it with several ios or andorid apps like Denon , or technics aps, the Mediarenderer device app will store all music you play and you can select it to play when something happens. This device is not a playlist manager you can not list your dlna servers on it, it just allow to send the mp3 links fle to your speakers and resume the music you are playing, not all dlna controllers works with ST, i suggest you to read the instructions in Media renderer player topic

0 Likes

(Billy) #38

Thanks @ule I will go through the instructions again…

I guess my question is from the file source for Sonos - I received a message on SmartThings iOS app for my good morning alarm from Talking Alarm, but nothing came through the speaker (it does show in activity feed that the speaker volume level changed to 50 then a “Talking Alarm” entry).

I’ll read some more and tinker with it when I get home…

0 Likes

(Billy) #39

I got the welcome message this morning… guess the speaker needs to be active for the alarm stuff to work… still not getting any sonos functions, but I don’t need most of the stuff they offer anyway. Going to continue to trouble shoot to better understand the system though.

You can add these speakers to the tested and working list -

LG LAS 751
LG H5
LG H3

1 Like

(Ule) #40

HI, I have update Media Renderer Events. Some bug fixes, now Ivona TTS its more reliable, compatible with more Media Renderers

You can select your language with Voice RSS.

Still searching some other streaming service since RadioTunes just works with premium account.

0 Likes