1

We developing a skill it requires multi-turn dialog. However, when alexa is confirming the first slot it throws up saying "There was a problem with the requested skill's response."

The lambda code that alexa calls looks like this.

 'DialogIntent': function(){
       if (this.event.request.dialogState === "STARTED") {
        console.log("in STARTED");

        var updatedIntent = this.event.request.intent;
        this.emit(":delegate", updatedIntent);
    } else if (this.event.request.dialogState !== "COMPLETED") {
        console.log("in not completed");
        this.emit(":delegate", updatedIntent);
    } else {
        console.log("in completed");
        return this.event.request.intent.slots;
    }
    return null;
}

we are doing everything suggested in https://developer.amazon.com/docs/custom-skills/dialog-interface-reference.html

1 Answers1

0

Nikhil Wagh sort of answered this in the comments.

return does nothing, you need to use the alexa sdk, and for that, you need to follow the documentation. The documentation says, to use emit to send an answer already built by you. Source

this.response.speak("Success!").listen("Can you reapeat?"); //for example
this.emit(':responseReady');
Leandro
  • 180
  • 4