textToSpeech with a non-default language of Polly

Hi,

I am trying to get Turkish responses/announcements on my Sonos speakers.
I’ve learnt that Amazon’s Polly supports Turkish text-to-speech.
And the command textToSpeech can take a second parameter as the language.

For example, following command in ST makes TTS of text “merhaba” in Turkish with voice of Filiz.

textToSpeech(“merhaba.”, “Filiz”)

if I pass a text with special Turkish characters to this command, it fails with following error:

1:05:24 AM: error com.amazonaws.services.s3.model.AmazonS3Exception: The request signature we calculated does not match the signature you provided. Check your key and signing method. (Service: Amazon S3; Status Code: 403; Error Code: SignatureDoesNotMatch; Request ID: 83E07B6C8684F4E1), S3 Extended Request ID: Cnh3ckkGNuKXH8QD6dux2JzTEeBAJz7mNBQDNs0+ciYR9SoOOcyqQGSRavZEu6RfxtKrOa0JS/s= @ line 521

if I remove Turkish characters , it works.

for example;

this one works:
state.sound = textToSpeech(“Bugun, 17 Agustos Persembe . Hava durumu Sabah saatlerinde gok gurultulu saganak yagisli.”, “Filiz”)

this one does not:
state.sound = textToSpeech(“Bugün, 17 Ağustos Perşembe . Hava durumu Sabah saatlerinde gök gürültülü sağanak yağışlı.”, “Filiz”)

This seems to be a problem of signing the URL request when we use the command textToSpeech .
How can we solve this issue ?

thanks

Hi,

I’d appreciate any ideas.

I think this is a question for SamrtThings engineering… the same thing happens in other lanuages (e.g. French, German).

I have seen this before in other data transfers. Most likely the character set Smartthings uses for its messages does not include any special characters.

I tried sending special characters in a push notification to my phone in the “Notify me when” stock app from Marketplace and it did not work either.

I looked through the documentation but did not find any references. Maybe @jody.albritton or another Smartthings engineer can help.

1 Like

thanks for your reply. how can we reach them ?

I copied “jodyalbritton” above so he should receive notification.

@mrmrmrmr I just merged a fix for this bug, which was preventing text to speech conversion on non US ASCII characters. I’ll update this thread when the code change is in production

3 Likes

thanks @gausnes , I don’t know what “merge a fix” means. do you mean it is already coded and waits for publish to production ? , will it require a firmware update on the hub ?

thx

No firmware update needed on the hub.

Text to speech is facilitated by on one of the our web services that exist in the cloud or in our case Amazon’s Servers. When changes are made to any of our web services such as this bug fix they are vetted through lower environments before they reach consumers such as yourself.

1 Like

thanks for the clarification. any updates so far ?

This thread has been very useful…I am updated Ask Alexa’s message queues with voice selections…will be English only,but it now can change voices! Should released in the next few weeks!

2 Likes

This won’t be going to production until sometime next week. The deployment which is happening this week has already been verified and tested.

1 Like

any news ?

The bug fix is in production. Let me know how things go :slight_smile:

3 Likes

I am on vacation. Wİll be back home on monday. I’ll check and let you know…

Hi, i have Update the Mediarenderers Events App

I removed Ivona voice service, the free key is not working anymore since Amazon has changed to Polly, Smartthings use Polly and I have added the language options for SmartThings TTS, I have added to Languages for Google TTS , google use more languages but its limited to 100 chars.

1 Like

Awesome! I tested and the Smartthings works with special characters again in multiple different languages.

1 Like

finally it works.
this is a huge step. because now we are finally free of using external TTS for several languages.

thanks.

1 Like