How Does Amazon Alexa Development Differ From Google Home

By Stephen Garside on 2/12/2018

How Does Amazon Alexa Development Differ From Google Home

I have recently developed voice applications and skills on Google Home and Amazon Alexa devices for a virtual reality company called 360Jungle. Both these apps utilise the same knowledgebase via a custom RESTful service developed in conjunction. In this post I will share the various issues I experienced during development - I hope you find them useful!

  • All intent names should be A-Za-z only – no numbers in intent names.
  • With Alexa development you cannot hand off individual intents to the service, its all or nothing.
  • If writing your own custom service to answer Alexa intents you will need to validate all requests are from Amazon and are signed etc.
  • Request and Response shapes are different between Google and Alexa so will require different class shapes.
  • You have to handle Cancel, Stop, and Exit requests with Alexa
  • You have to write your own Welcome intent when you get a launchrequest from Alexa – you cannot nominate an intent to be the default.
  • For intents that require slot values you have to initiate a dialog to hand control over to Alexa to gather these slot values and also check if they are filled.
  • There is no easy way to ‘chain’ intents together – this all has to be done in code serverside.
  • You have to manually keep the user session open or close it depending on the action required i.e. close it when user says Stop, but keep open when you want to keep the dialog open.

 

Share this article...

Join the Discussion...