Publish Your Bot to an Amazon Alexa Skill
Learn how to set-up the integration between NativeChat and Alexa.
You can map an Amazon Alexa skill to a NativeChat bot. When the end-user engages the Alexa skill and says something, it is sent to NativeChat and the chatbot decides what the appropriate response. The response is sent to Alexa, which reads it out to the user.
Create an Account in Alexa Developer Console
Create a (or login using your existing) Amazon Developer account at https://developer.amazon.com/alexa/console/ask.
Create Alexa Skill
- From the Alexa Developer Console create a new skill
- Pick a name for your skill
- Pick language - make sure it matches the language of your NativeChat bot. If it is English pick the locale (UK, US, etc.) based on where you would like to distribute your Alexa skill.
- Pick model - Choose the Custom skill option
- Pick hosting method - Choose the Provision your own option.
- For training model choose Start from scratch training
Generate the Alexa Skill Configuration
- Go to NativeChat portal and pick the bot you want to publish as Alexa Skill
- Under Channels & Publishing choose Alexa
- Enter the invocation name for your skill. A skill’s invocation name is spoken by the end-users to begin an interaction with a particular custom skill. For example, if the invocation name is “daily horoscopes”, users can say: “Alexa, ask daily horoscopes for the horoscope for Gemini”. You can change that later.
- When you click the Generate skill configuration button, you will get a JSON configuration file and an endpoint URL that is used for communication between Alexa and NativeChat. You need them for the configuration done in the Alexa Developer Console.
Set up the Alexa Skill
- Go back to Alexa Developer Console and the skill you created earlier.
- Find the JSON Editor (1) link in the left navigation under the Build tab and open it.
- Paste the JSON configuration you got from the portal Publish page in the editor
- Click Save Model (2)
- Click Build Model (3)
- Open the Endpoints (1) link on the left
- Pick the HTTPS option (2)
- In the Default region input field (3) paste the URL you got form the Publish page in NativeChat portal
- From the dropdown (4) pick the “My development endpoint is a sub-domain of a domain that has a wildcard certificate from a certificate authority” option.
- Click Save Endpoints button
Test your bot
After you’ve set up your bot as Alexa skill, you can start testing the voice interaction.
In Alexa Simulator
The one option is to use the Alexa Developer Console’s Alexa Simulator.
- Go to Alexa Developer Console and open your skill
- From the top menu pick Test
- From the dropdown (2) select Development, which will enable the Simulator.
- In the field (3) type or speak your skill’s invocation name. Then you can start testing your chatbot.
With a Real Alexa Device
To test your chatbot via a real Amazon Alexa device (Amazon Echo, Spot, Dot, Show etc.), you need to set up the device for use with the same account you use for accessing the Alexa Developer Console.
Publish Your Skill in Amazon Alexa Store
Please, refer to the Amazon Alexa documentation on publishing and distributing skills.