a few things on documentation and the API itself:
1. The documentation is not consistent, in the Example the response for a channelchange is described as:
<code>def handleChannelControl(context, event): payload = {} header = {} messageId = event['directive']['header']['messageId'] if event['directive']['header']['name'] == 'ChangeChannel': header = { "namespace":"Alexa.ChannelController", "name":"ChannelChanged", "payloadVersion":"3", " messageId": messageId } response = { 'header': header, 'payload': payload } return { 'event': response }
if you look at the API documention it is described as:
<code>{"context":{"properties":[]},"event":{"header":{"messageId":"30d2cd1a-ce4f-4542-aa5e-04bd0a6492d5","correlationToken":"dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg==","namespace":"Alexa","name":"Response","payloadVersion":"3"},"endpoint":{"scope":{"type":"DirectedUserId","directedUserId":"some-Amazon-user-id"},"endpointId":"videoDevice-001"},"payload":{}}}
which one is correct????
2. there seems to be an issue with the API:
if i say "Alexa, change channel to Sky Cinema" the event is raised in the Lamba Endpoint, forwarded to my Cloud and the Response is send from the Lambda
What happens now is:
Alexa answers with "Ich schalte auf Sk" approx. 5 Times until it says "Ich schalte auf Sky Cinema" or saying "There is an issue with Skillname"
Skill ID: amzn1.ask.skill.ade205f2-aea7-4239-a359-8cabea7f799c