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

HI, I have update Media Renderer Events. RadioTunes has been removed, I have added Radionomy Stations, great service , you no need subscription or any key.

Now you’ll be greeted with great music when you get home

If you like this app, please consider supporting its development by making a donation via PayPal.

Hi @Patrick_Callahan, I have updated the app, now you can use Radionomy instead RadioTunes.

I have 3 Jongo speakers working
Jongo S3 White, Jongo T2 Black and Jongo T2 White.

Playing sound works great, in fact I freaked out my wife with the Dogs Barking.

What is the correct format (with example) to “Play this Message”?
I tried entering “Door Opened” and I see the message going to AWS but nothing played.

Before I entered a message it played this message

"You selected the Text to Speech function but did not enter a message" which did play on my speakers.

Thanks
Best wishes

HI @mark.nacke, You must to enter the message you like “Door Opened” its ok,
Have you the Media Renderer events updated?
Could you share the logs when an event launch the audio, I want to see what is sending.

d03d0d20-1a68-4c57-965e-d3a65c1d023e 5:26:32 PM: trace Exiting takeAction()
d03d0d20-1a68-4c57-965e-d3a65c1d023e 5:26:32 PM: trace x-rincon-mp3radio://api.voicerss.org/?key=null&hl=en-us&r=0&f=48khz_16bit_mono&src=Door%20Opened&sf=//s3.amazonaws.com/smartapp-
d03d0d20-1a68-4c57-965e-d3a65c1d023e 5:26:30 PM: trace allOk
d03d0d20-1a68-4c57-965e-d3a65c1d023e 5:26:30 PM: trace timeOk = true
d03d0d20-1a68-4c57-965e-d3a65c1d023e 5:26:30 PM: trace daysOk = true
d03d0d20-1a68-4c57-965e-d3a65c1d023e 5:26:30 PM: trace modeOk = true
d03d0d20-1a68-4c57-965e-d3a65c1d023e 5:26:30 PM: trace modeOk true
bb99549a-6fe8-4665-a0f4-5c9c364d0426 5:26:18 PM: debug Parse returned Mark Nacke’s Android has arrived
5:26:44 PM: info Waiting on events…
5:26:44 PM: info For past logs for individual things go to the My Devices section, find the device and click on the Events link on the device information page.
5:26:44 PM: info This console provides live logging of your SmartThings.

This is from the IDE Live Logging
If there is somewhere else to look please let me know.

Another question I have is there a way to determine the device name that triggered the event so I can pass that string to the message to announce?

Best wishes

HI @mark.nacke, I can see the TTS is the Voice RSS, but no key has been supplied, in the section “Text for Speach Setting” you must select SmartThings (now is working) if ST fails it going to take the Voice RSS or the Ivona if the keys are present. If you want to use other voice than english USA, you must to sign in on ivona or Voice RSS , read the instructions inside the app.

HI @mark.nacke, Yes you can send the device name or other properties, when you select
"play this message" you are in the page to add the message and you can see the instructions to use the device name or other properties with example.

Ule

Thanks for your help.

So now I have just one more issue.
When the message plays on my speakers it just says “Sensor Opened” but if I grab the file off of AWS it has full message of "Back Door Sensor Opened"

Any idea why it would truncate the message to the speaker?
I tried using #label but that didn’t work so I had to rename the #name to match the #label.

“Play this message?” is set to
" #name #value "

Thank you very much

Hi @mark.nacke,
The #label is not implemented , if you read the instructions the is no a #label tag.
Some speakers take more time to start playing, but I never heard about to cut the start message, commonly they cut off the end, again could you send the log just to see the uri,
The user who has confirm the Jongo works is @BristolBaz maybe he could share their experience with us about the delay
If your speakers have the problem from hardware, you can add a dummy message in the start like "smartThings Back Door Sensor Opened " in this way the speaker going to play just "Back Door Sensor Opened ".
Verify if your speaker do not have some feature like gapless play, this can do some strange play to avoid stop music in some speakers,

Hi Guys, I am currently drowning in information and ignorance at the moment. This app was suggested as a solution. All I want to do is have my house tell my daughter when she needs to start getting ready for bed, and maybe a few other things. I Listened to the Ivona samples and they sound quite natural and smooth so I would like to use that if possible. If there is an easier way to get this done I would love to hear it.

I have done the following.

-Figured out how to get into my IDE
-Created my own App
-Copy pasted the Media Renderer Events code completely replacing what was in mine.
-Saved and published

This resulted in an error:
grails.validation.ValidationException: Validation Error(s) occurred during save():

  • Field error in object ‘physicalgraph.device.Device’ on field ‘name’: rejected value [null]; codes [physicalgraph.device.Device.name.nullable.error.physicalgraph.device.Device.name,physicalgraph.device.Device.name.nullable.error.name,physicalgraph.device.Device.name.nullable.error.java.lang.String,physicalgraph.device.Device.name.nullable.error,device.name.nullable.error.physicalgraph.device.Device.name,device.name.nullable.error.name,device.name.nullable.error.java.lang.String,device.name.nullable.error,physicalgraph.device.Device.name.nullable.physicalgraph.device.Device.name,physicalgraph.device.Device.name.nullable.name,physicalgraph.device.Device.name.nullable.java.lang.String,physicalgraph.device.Device.name.nullable,device.name.nullable.physicalgraph.device.Device.name,device.name.nullable.name,device.name.nullable.java.lang.String,device.name.nullable,nullable.physicalgraph.device.Device.name,nullable.name,nullable.java.lang.String,nullable]; arguments [name,class physicalgraph.device.Device]; default message [{0} cannot be null]

I also dont have the first clue as to how I would get the Ivona API(as suggested in op), nor what that even means. I tried signing up with Ivona and promptly ran into the fact that it is only for business development use.

I fear I am entirely out of my depth as a non coder, but any advice would be great.

Hi, I think you are installing the code in device handler instead a smart app

Inside the app you must follow the instructions to get an api key and save it.

Initially what you said made no sense at all to me, Theeeeen I found the my apps tab in the market.

Thanks so much for your help.

I just got the play one hooked up, all keys are inserted into the right places i think. My trouble is that I cant get a specific ivona voice to work, the only things that seem to change the voice is the “language” setting. Has anyone gotten the ivona voices working?

Hi @SKSFMJ, could you send the logs when you send the audio to speaker, Ivona have a life of 5 min since the request is signed, please send it as soon its generated to check the audio.

Im very green to this whole thing, but i think this is what you’re asking for

6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:25 PM: trace has XML body
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:25 PM: trace HTTP/1.1 200 OK 639 bytes, body = 240 bytes, sid =
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:25 PM: info requestId = b3459a1d-7001-4507-8e10-407286f5be3a
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:25 PM: trace parse(‘index:17, mac:5CAAFD9C6068, ip:C0A80066, port:0578, requestId:b3459a1d-7001-4507-8e10-407286f5be3a, headers:SFRUUC8xLjEgMjAwIE9LDQpDT05URU5ULUxFTkdUSDogMjQwDQpDT05URU5ULVRZUEU6IHRleHQveG1sOyBjaGFyc2V0PSJ1dGYtOCINCkVYVDogDQpTZXJ2ZXI6IExpbnV4IFVQblAvMS4wIFNvbm9zLzMxLjktMjYwMTAgKFpQUzEpDQpDb25uZWN0aW9uOiBjbG9zZQ==, body:PHM6RW52ZWxvcGUgeG1sbnM6cz0iaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvc29hcC9lbnZlbG9wZS8iIHM6ZW5jb2RpbmdTdHlsZT0iaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvc29hcC9lbmNvZGluZy8iPjxzOkJvZHk+PHU6UGxheVJlc3BvbnNlIHhtbG5zOnU9InVybjpzY2hlbWFzLXVwbnAtb3JnOnNlcnZpY2U6QVZUcmFuc3BvcnQ6MSI+PC91OlBsYXlSZXNwb25zZT48L3M6Qm9keT48L3M6RW52ZWxvcGU+’)
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:25 PM: trace has XML body
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:25 PM: trace HTTP/1.1 500 Internal Server Error 807 bytes, body = 347 bytes, sid =
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:25 PM: info requestId = 8ac8be2f-f229-4b7b-b281-ea4ca2ea631f
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:25 PM: trace parse(‘index:17, mac:5CAAFD9C6068, ip:C0A80066, port:0578, requestId:8ac8be2f-f229-4b7b-b281-ea4ca2ea631f, headers:SFRUUC8xLjEgNTAwIEludGVybmFsIFNlcnZlciBFcnJvcg0KQ09OVEVOVC1MRU5HVEg6IDM0Nw0KQ09OVEVOVC1UWVBFOiB0ZXh0L3htbDsgY2hhcnNldD0idXRmLTgiDQpFWFQ6IA0KU2VydmVyOiBMaW51eCBVUG5QLzEuMCBTb25vcy8zMS45LTI2MDEwIChaUFMxKQ0KQ29ubmVjdGlvbjogY2xvc2U=, body:PHM6RW52ZWxvcGUgeG1sbnM6cz0iaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvc29hcC9lbnZlbG9wZS8iIHM6ZW5jb2RpbmdTdHlsZT0iaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvc29hcC9lbmNvZGluZy8iPjxzOkJvZHk+PHM6RmF1bHQ+PGZhdWx0Y29kZT5zOkNsaWVudDwvZmF1bHRjb2RlPjxmYXVsdHN0cmluZz5VUG5QRXJyb3I8L2ZhdWx0c3RyaW5nPjxkZXRhaWw+PFVQblBFcnJvciB4bWxucz0idXJuOnNjaGVtYXMtdXBucC1vcmc6Y29udHJvbC0xLTAiPjxlcnJvckNvZGU+NzE0PC9lcnJvckNvZGU+PC9VUG5QRXJyb3I+PC9kZXRhaWw+PC9zOkZhdWx0PjwvczpCb2R5PjwvczpFbnZlbG9wZT4=’)
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:24 PM: trace Extracting current volume
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:24 PM: trace has XML body
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:24 PM: trace HTTP/1.1 200 OK 703 bytes, body = 288 bytes, sid =
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:24 PM: info requestId = 22abfbf1-3afc-4a99-bbd6-8fe96db4ac5f
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:24 PM: trace parse(‘index:17, mac:5CAAFD9C6068, ip:C0A80066, port:0578, requestId:22abfbf1-3afc-4a99-bbd6-8fe96db4ac5f, headers:SFRUUC8xLjEgMjAwIE9LDQpDT05URU5ULUxFTkdUSDogMjg4DQpDT05URU5ULVRZUEU6IHRleHQveG1sOyBjaGFyc2V0PSJ1dGYtOCINCkVYVDogDQpTZXJ2ZXI6IExpbnV4IFVQblAvMS4wIFNvbm9zLzMxLjktMjYwMTAgKFpQUzEpDQpDb25uZWN0aW9uOiBjbG9zZQ==, body:PHM6RW52ZWxvcGUgeG1sbnM6cz0iaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvc29hcC9lbnZlbG9wZS8iIHM6ZW5jb2RpbmdTdHlsZT0iaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvc29hcC9lbmNvZGluZy8iPjxzOkJvZHk+PHU6R2V0Vm9sdW1lUmVzcG9uc2UgeG1sbnM6dT0idXJuOnNjaGVtYXMtdXBucC1vcmc6c2VydmljZTpSZW5kZXJpbmdDb250cm9sOjEiPjxDdXJyZW50Vm9sdW1lPjUwPC9DdXJyZW50Vm9sdW1lPjwvdTpHZXRWb2x1bWVSZXNwb25zZT48L3M6Qm9keT48L3M6RW52ZWxvcGU+’)
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:24 PM: trace has XML body
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:24 PM: trace HTTP/1.1 200 OK 659 bytes, body = 255 bytes, sid =
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:24 PM: info requestId = eb6dd2e6-daf5-4b52-a6f3-e6428616890f
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:24 PM: trace parse(‘index:17, mac:5CAAFD9C6068, ip:C0A80066, port:0578, requestId:eb6dd2e6-daf5-4b52-a6f3-e6428616890f, headers:SFRUUC8xLjEgMjAwIE9LDQpDT05URU5ULUxFTkdUSDogMjU1DQpDT05URU5ULVRZUEU6IHRleHQveG1sOyBjaGFyc2V0PSJ1dGYtOCINCkVYVDogDQpTZXJ2ZXI6IExpbnV4IFVQblAvMS4wIFNvbm9zLzMxLjktMjYwMTAgKFpQUzEpDQpDb25uZWN0aW9uOiBjbG9zZQ==, body:PHM6RW52ZWxvcGUgeG1sbnM6cz0iaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvc29hcC9lbnZlbG9wZS8iIHM6ZW5jb2RpbmdTdHlsZT0iaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvc29hcC9lbmNvZGluZy8iPjxzOkJvZHk+PHU6U2V0Vm9sdW1lUmVzcG9uc2UgeG1sbnM6dT0idXJuOnNjaGVtYXMtdXBucC1vcmc6c2VydmljZTpSZW5kZXJpbmdDb250cm9sOjEiPjwvdTpTZXRWb2x1bWVSZXNwb25zZT48L3M6Qm9keT48L3M6RW52ZWxvcGU+’)
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: trace has XML body
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: trace HTTP/1.1 200 OK 639 bytes, body = 240 bytes, sid =
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: info requestId = 6f09f756-5291-4b32-b57d-e88b08cbc5dd
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: trace parse(‘index:17, mac:5CAAFD9C6068, ip:C0A80066, port:0578, requestId:6f09f756-5291-4b32-b57d-e88b08cbc5dd, headers:SFRUUC8xLjEgMjAwIE9LDQpDT05URU5ULUxFTkdUSDogMjQwDQpDT05URU5ULVRZUEU6IHRleHQveG1sOyBjaGFyc2V0PSJ1dGYtOCINCkVYVDogDQpTZXJ2ZXI6IExpbnV4IFVQblAvMS4wIFNvbm9zLzMxLjktMjYwMTAgKFpQUzEpDQpDb25uZWN0aW9uOiBjbG9zZQ==, body:PHM6RW52ZWxvcGUgeG1sbnM6cz0iaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvc29hcC9lbnZlbG9wZS8iIHM6ZW5jb2RpbmdTdHlsZT0iaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvc29hcC9lbmNvZGluZy8iPjxzOkJvZHk+PHU6U3RvcFJlc3BvbnNlIHhtbG5zOnU9InVybjpzY2hlbWFzLXVwbnAtb3JnOnNlcnZpY2U6QVZUcmFuc3BvcnQ6MSI+PC91OlN0b3BSZXNwb25zZT48L3M6Qm9keT48L3M6RW52ZWxvcGU+’)
bd20e8d5-479e-44d5-bba0-fd9a550c586f 5:22:23 PM: trace Exiting takeAction()
bd20e8d5-479e-44d5-bba0-fd9a550c586f 5:22:23 PM: trace http://tts.urbansa.com/tts.php?1457655743348=Front%20Door%20Has%20Been%20Opened.%3F%26Input.Type%3Dtext%2Fplain%26OutputFormat.Codec%3DMP3%26OutputFormat.SampleRate%3D22050%26Parameters.Rate%3Dmedium%26Voice.Language%3Den-GB%26Voice.Name%3DEmma%26X-Amz-Algorithm%3DAWS4-HMAC-SHA256%26X-Amz-Credential%3DGDNAIB7T5T5J46O3HENA%2F20160311%2Fus-east-1%2Ftts%2Faws4_request%26X-Amz-Date%3D20160311T002223Z%26X-Amz-SignedHeaders%3Dhost%26X-Amz-Signature%3Dcac13a9977cef2d450b1e0513374aa8fca7c078558effc97ddb0524cce4f25fb
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: trace Returning 5 commands
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: debug sonosAction: b3459a1d-7001-4507-8e10-407286f5be3a
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: trace sonosAction(Play, AVTransport, /MediaRenderer/AVTransport/Control, [InstanceID:0, Speed:1])
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: debug sonosAction: 8ac8be2f-f229-4b7b-b281-ea4ca2ea631f
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: trace sonosAction(SetAVTransportURI, AVTransport, /MediaRenderer/AVTransport/Control, [InstanceID:0, CurrentURI:http://tts.urbansa.com/tts.php?1457655743348=Front%20Door%20Has%20Been%20Opened.%3F%26Input.Type%3Dtext%2Fplain%26OutputFormat.Codec%3DMP3%26OutputFormat.SampleRate%3D22050%26Parameters.Rate%3Dmedium%26Voice.Language%3Den-GB%26Voice.Name%3DEmma%26X-Amz-Algorithm%3DAWS4-HMAC-SHA256%26X-Amz-Credential%3DGDNAIB7T5T5J46O3HENA%2F20160311%2Fus-east-1%2Ftts%2Faws4_request%26X-Amz-Date%3D20160311T002223Z%26X-Amz-SignedHeaders%3Dhost%26X-Amz-Signature%3Dcac13a9977cef2d450b1e0513374aa8fca7c078558effc97ddb0524cce4f25fb, CurrentURIMetaData:])
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: info setTrack(http://tts.urbansa.com/tts.php?1457655743348=Front%20Door%20Has%20Been%20Opened.%3F%26Input.Type%3Dtext%2Fplain%26OutputFormat.Codec%3DMP3%26OutputFormat.SampleRate%3D22050%26Parameters.Rate%3Dmedium%26Voice.Language%3Den-GB%26Voice.Name%3DEmma%26X-Amz-Algorithm%3DAWS4-HMAC-SHA256%26X-Amz-Credential%3DGDNAIB7T5T5J46O3HENA%2F20160311%2Fus-east-1%2Ftts%2Faws4_request%26X-Amz-Date%3D20160311T002223Z%26X-Amz-SignedHeaders%3Dhost%26X-Amz-Signature%3Dcac13a9977cef2d450b1e0513374aa8fca7c078558effc97ddb0524cce4f25fb, null, 0 B})
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: trace Setting sound track: http://tts.urbansa.com/tts.php?1457655743348=Front%20Door%20Has%20Been%20Opened.%3F%26Input.Type%3Dtext%2Fplain%26OutputFormat.Codec%3DMP3%26OutputFormat.SampleRate%3D22050%26Parameters.Rate%3Dmedium%26Voice.Language%3Den-GB%26Voice.Name%3DEmma%26X-Amz-Algorithm%3DAWS4-HMAC-SHA256%26X-Amz-Credential%3DGDNAIB7T5T5J46O3HENA%2F20160311%2Fus-east-1%2Ftts%2Faws4_request%26X-Amz-Date%3D20160311T002223Z%26X-Amz-SignedHeaders%3Dhost%26X-Amz-Signature%3Dcac13a9977cef2d450b1e0513374aa8fca7c078558effc97ddb0524cce4f25fb
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: debug sonosAction: 22abfbf1-3afc-4a99-bbd6-8fe96db4ac5f
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: trace sonosAction(GetVolume, RenderingControl, /MediaRenderer/RenderingControl/Control, [InstanceID:0, Channel:Master])
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: debug sonosAction: eb6dd2e6-daf5-4b52-a6f3-e6428616890f
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: trace sonosAction(SetVolume, RenderingControl, /MediaRenderer/RenderingControl/Control, [InstanceID:0, Channel:Master, DesiredVolume:50])
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: debug sonosAction: 6f09f756-5291-4b32-b57d-e88b08cbc5dd
6d6863f7-e6d3-46f8-a749-aa912069f8f1 5:22:23 PM: trace sonosAction(Stop, AVTransport, /MediaRenderer/AVTransport/Control, [InstanceID:0, Speed:1])

Hi @SKSFMJ, the response its “Missing Authentication Token” , I think you have a wrong keys for ivona, the key for voicerss its no the same for ivona, you must sign up in ivona site an get your access key and Secret key. just verify the credentials

am i supposed to have bot ivona and voice rss keys plugged in there? EDIT: also, the keys were all correct. I must have something else messed up.

Hi, this is the last app I have made with ivona, try it to check

I installed your app and set the trigger but nothing is happening the event shows up on the recently on the smart things app under bravia my tv model and the speaker but there is no sound nothing