Echo Devices (Alexa) as Media Player - Testers Needed

Just wanted to say thank you for this. I had struggled with various options for tts and got nowhere, finding this project to use with my two existing echos was a game changer, and now I have added a third one to the house. Continue the great work!

Does anyone have a (mostly) definitive way of forcing the devices to be updated so I can get my new group into HA?

If deleting the pickle file is the correct way to do it then that’s OK but I want to be reasonably sure that will work before I start messing with a working setup.

if i use the TTS service to an echo dot gen2 in English it speaks out, but if i do it to a gen3 in Spanish alexa answer to what the text send was saying instead of speaking it out.

for what ever reason a gen3 in Spanish things someone is speaking to alexa instead of saying out loud the text that was send trough the media_player.alexa_tts service.

related to https://github.com/thorsten-gehrig/alexa-remote-control/issues/21 it seems alexa repeat with me (simon says) its not yet implemented in all languages.

i did the same thing, as i just started messing around with this.wget grabbed some html crap. based on your comment (thanks) i used https://raw.githubusercontent.com/keatontaylor/custom_components/master/media_player/alexa.py with wget and that worked right. (so if anyone sees this and did what we did)

is it possible to use multiple account for different alexa devices in this?
EX: my kids etch have a echo spot connected to home assistant, but adding there accounts to this doesn’t work. added it like this

automation: !include automations.yaml
script: !include scripts.yaml
media_player:

i would remove your email and password (and change the password)
unless thats a fake. :wink:

i think that what you try to do isnt possible.
the mediaplayer hacks the alexa app and needs to use cookies.
i dont think several cookies would be created and even so i am not sure that several connections from the same device at the same machine would work.

hehe it all fake :wink:

Hmm to bad, figured since i could bind their alexa account to HA so they can control devices in the house i thought it would work to do this to.

//Regards

1 Like

Does this also work on HASSIO? I would like to test this!

I am an absolute beginner in home assistant but I want to share my experience anyway.

I managed to configure it on a raspberry with clean Raspbian and Home assistant “manual” installation.
I had some problem when I got

raise InvalidURL (‘URL has an invalid label.’)

but I had to eliminate quotation marks only from media_player configuration to solve the problem.
I can see all my Echos (and group of them) in “standby” status.
Anyway I see a lot of Warning messages in home-asisstant.log like:

2018-11-08 18:32:27 WARNING (MainThread) [homeassistant.helpers.entity] Update of media_player.this_device is taking over 10 seconds
2018-11-08 18:36:18 WARNING (MainThread) [homeassistant.helpers.entity] Update of media_player.this_device is taking over 10 seconds
2018-11-08 18:36:19 WARNING (MainThread) [homeassistant.components.media_player] Updating alexa media_player took longer than the scheduled update interval 0:00:10
2018-11-08 18:38:19 WARNING (MainThread) [homeassistant.helpers.entity] Update of media_player.cucina is taking over 10 seconds
2018-11-08 18:39:03 WARNING (MainThread) [homeassistant.helpers.entity] Update of media_player.cucina is taking over 10 seconds
2018-11-08 18:39:04 WARNING (MainThread) [homeassistant.components.media_player] Updating alexa media_player took longer than the scheduled update interval 0:00:10
2018-11-08 18:40:09 WARNING (MainThread) [homeassistant.helpers.entity] Update of media_player.camera is taking over 10 seconds
2018-11-08 18:45:50 WARNING (MainThread) [homeassistant.helpers.entity] Update of media_player.this_device is taking over 10 seconds
2018-11-08 18:46:45 WARNING (MainThread) [homeassistant.helpers.entity] Update of media_player.this_device is taking over 10 seconds
2018-11-08 18:46:45 WARNING (MainThread) [homeassistant.components.media_player] Updating alexa media_player took longer than the scheduled update interval 0:00:10
2018-11-08 18:52:03 WARNING (MainThread) [homeassistant.helpers.entity] Update of media_player.casa is taking over 10 seconds
2018-11-08 18:57:11 WARNING (MainThread) [homeassistant.helpers.entity] Update of media_player.camera is taking over 10 seconds
2018-11-08 18:57:12 WARNING (MainThread) [homeassistant.components.media_player] Updating alexa media_player took longer than the scheduled update interval 0:00:10
2018-11-08 19:04:08 WARNING (MainThread) [homeassistant.helpers.entity] Update of media_player.this_device is taking over 10 seconds
2018-11-08 19:12:56 WARNING (MainThread) [homeassistant.helpers.entity] Update of media_player.camera is taking over 10 seconds
2018-11-08 19:12:57 WARNING (MainThread) [homeassistant.components.media_player] Updating alexa media_player took longer than the scheduled update interval 0:00:10
2018-11-08 19:13:08 WARNING (MainThread) [homeassistant.components.media_player] Updating alexa media_player took longer than the scheduled update interval 0:00:10
2018-11-08 19:13:19 WARNING (MainThread) [homeassistant.components.media_player] Updating alexa media_player took longer than the scheduled update interval 0:00:10
2018-11-08 19:13:30 WARNING (MainThread) [homeassistant.components.media_player] Updating alexa media_player took longer than the scheduled update interval 0:00:10
2018-11-08 19:13:41 WARNING (MainThread) [homeassistant.components.media_player] Updating alexa media_player took longer than the scheduled update interval 0:00:10
2018-11-08 19:13:52 WARNING (MainThread) [homeassistant.components.media_player] Updating alexa media_player took longer than the scheduled update interval 0:00:10
2018-11-08 19:14:03 WARNING (MainThread) [homeassistant.components.media_player] Updating alexa media_player took longer than the scheduled update interval 0:00:10
2018-11-08 19:14:14 WARNING (MainThread) [homeassistant.components.media_player] Updating alexa media_player took longer than the scheduled update interval 0:00:10
2018-11-08 19:14:25 WARNING (MainThread) [homeassistant.components.media_player] Updating alexa media_player took longer than the scheduled update interval 0:00:100: 

I cannot understand however how to use the UI to test the tts functionality. I got only a kind of bell sound from the Echo.
When I try to test tts i can see below in the screen a message like:

service tts/google_say called

Is that right “google” ?

Thank You

What service did you use to test the TTS?

It should be “media_player.alexa_tts”

What service did you use to test the TTS?

Mmmm not sure.
The entity ID says media_player.my_echo_name
I just click on the three dots and type something in text to speak field

Is it possible to use !secret key in place of the amazon password?

you cant use tts from the mediaplayer, only from your services.

@maurizio53 its a part from your HA configuration, so i suspect so.

@maurizio53 I did it and it works like a charm, both for email and password.

open the dev-tools panel on the left side. go to the bottom and click on the ‘services’ icon to the far left. when that opens use the drop down to select ‘media_player.alexa_tts’.

then in the json field at the bottom put in:

{
''entity_id":“media_player.my_echo_name”,
“message”:“testing”
}

make sure you put the entity_id of your echo device.

then click “call service”.

try that and see if it works

Yes work fine in Hass.io

@finity
much better now but…
Unfortunately my Echo (the wright one) tells something that translated in english sounds like “Unfortunately I cannot find the answer to your question” like as you said something it cannot answer.
Could it depends on the fact I am using Italian version of Echo?

And now I’m out of answers on that.

Sorry.

same behaviour in my environment and I’m using the italian version too.

update:

using the payload
{"entity_id":"media_player.echo_dot","message":"riproduci musica" }

(message translate to play music) the Echo Dot started playing music, so the echo is not saying the message data but it respond to it as if it was spoken. Is it working as intended?