Amazon Custom Skill - is this working or not? (Solved)

I’ve created the custom skill as per the documentation for Alexa Skill

Intent Schema

{
  "intents": [
    {
      "intent": "RunScriptIntent",
      "slots": [
        {
          "name": "Script",
          "type": "Scripts"
        }  
      ]
    },
    {
      "intent": "ActivateSceneIntent",
      "slots": [
        {
          "name": "Scene",
          "type": "Scenes"
        }
      ]
    }
  ]
}

Custom Slot Types
Type :

Scenes

Value:

  bedroom white
  hall white

Type:

Scripts

Value:

home temperature

Sample Utterances

RunScriptIntent run {Script}
ActivateSceneIntent activate {Scene}

When testing the skill I get the following error:

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

The next test I ran was to browse in a web browser to my custom HTTPS endpoint

https://subdomain.domain.com/api/alexa?api_password=1234567890

Which unfortunately prompts

404: Not Found

In my configuration.yaml I have the following code:

intent_script:
  ActivateSceneIntent:
    action:
      service: scene.turn_on
      data_template:
        entity_id: scene.{{ Scene | replace(" ", "_") }}
    speech:
      type: plain
      text: !include alexa_confirm.yaml
  RunScriptIntent:
    action:
      service: script.turn_on
      data_template:
        entity_id: script.{{ Script | replace(" ", "_") }}
    speech:
      type: plain
      text: !include alexa_confirm.yaml

Has anyone managed to get Amazon Echo custom skill working on Hassio and if so please could you assist me?

add alexa: to you configuration.yaml

Thanks @TedP I realised this slight oversight just a couple of days ago.

I’ve been struggling to get NGINX working now for a few days, however that is also working now too :smiley:

So you have hassio & nginx supporting Alexa intentions ?

I am trying to get it to work with hassio + duckdns + letsencrypt + nginx but I’m getting the 405 method not allowed…

Got 80 and 443 externals mapped to the same 80&443 in the Homeassistant host (with 443 mapped to 8123 I’m getting no where)

Regular browsing works as well as iOS app, but mapping for https to the API path does not seem to work

Any particular settings in nginx made the difference for you ?