I built an Alexa skill invoking an AWS Lambda endpoint; on the test tab of the skill, using the Alexa simulator, I'm able to verify that the LaunchRequest and one of the intents can be invoked successfully but in testing other intents I'm getting incorrect or no response; seems the request is getting intercepted before it gets to my skill. Is there a way to diagnose what the simulator is doing and whether it is actually passing requests on to my endpoints?
When I tried the Manual JSON tab, all of the skill intents executed successfully. To create the JSON for the requests, I did a LaunchRequest (open <myskillname>) and then edited the JSON that was generated in the left (input) window for that request, and then edited the request.type to be an "IntentRequest", and added the appropriate name as intent.name. The response JSON showed that the correct AWS Intent methods were getting invoked on the endpoint. So it appears to be an issue of mapping phrases to intents.
If I go back to the skills configuration and run the exact same phrases through the Utterance Profiler then it maps them to the correct intent names.
Invoke the phrases on the test tab and either I get an unexpected response (probably mapping to an intent on someone else's skill) or the don't understand response; in both cases there is no JSON generated or intermittently I'll see "Skill I/O is available only for speech requests to skills you have created." and the JSON Input/Output panels are disabled.