Alexa Component doesn't work at all?

Hi. I followed the directions listed in the only place home assistant has directions for this here: https://home-assistant.io/components/alexa/ .

I followed “Build custom commands to use”. I already have https access to my home assistant instance thanks to the hassio duckdns and letsencrypt plugins.

I made the endpoint of the alexa skill to my homeassistant instance as specified ending in “/api/alexa?api_password=nottellingyou”

made a LocateIntent.

As specified in the documentation, I added the following to my configuration.yaml file:

intent_script:
  LocateIntent:  # Intent type
    speech:
      text: This is a test
    action:
      service: notify.notify
      data_template:
        message: Hello from an intent!

restarted my home assistant instance, and testing the alexa skill gives me:

The remote endpoint could not be called, or the response it returned was invalid.

every time.

There is nothing whatsoever in my log about alexa.

Yes my api password is perfect.
Yes I can access my homeassistant instance over https, using the duckdns url.

Why doesn’t it work and what’s missing from the guide?

Thanks.
PS My experience with Home Assistant so far is total crap. Documentation is very bad, and only ONE component has worked consistently without problems. Please change my opinion of home assistant.

I am not interested in emulated_hue.

Amazon does not play well with the LetsEncrypt Certificates.
You have to treat the LetsEncrypt cert as if it were a self-signed certificate and upload it to amazon using the Amazon developer console.
Here’s a link to a discussion thread on the amazon developer forum :

https://forums.developer.amazon.com/questions/3097/any-luck-with-lets-encrypt.html

nope. It plays along just fine. I figured it out. it works now. The page I linked to is very bad. Seems to meet the Home Assistant documentation standard though! and by that I mean it’s very bad documentation.

The fix is very simple and completely overlooked in the guide.

  1. In addition to what it says you must also include

alexa:

in your configuration.yaml.
Well I didn’t know that, because the GUIDE to enable it didn’t tell me to.

  1. If your Home Assistant service port (default 8123) is not changed to 443, you must forward 443 traffic to 8123 which I did in my router.
    Well I didn’t know that, because the GUIDE to enable it didn’t tell me to.

The guide is literally worthless without including these steps.

So, now that you found gaps in the documentation, and while your experience is still fresh in your mind, would you maybe be able to help improving the documentation? E.g. clarify ambiguous steps, add missing information, inform about pitfalls.
Thanks.

I have just submitted a pull request.

1 Like