My interaction model has multiple slots for an intent.
{
"name": "ClickSummaryIntent",
"phrases": ["{emailid}", "{newpage}", "{prevnext}"],
"inputs": [
{
"name": "emailid",
"type": {
"alexa": "AMAZON.NUMBER",
"dialogflow": "@sys.number"
}
},
{
"name": "newpage",
"type": {
"alexa": "AMAZON.NUMBER",
"dialogflow": "@sys.number"
}
},
{
"name": "prevnext",
"type": {
"alexa": "AMAZON.LITERAL",
"dialogflow": "@sys.given-name"
}
}
]
}
Part of the compiled model:
{
"name": "ClickSummaryIntent",
"samples": [
"{emailid}",
"{newpage}",
"{prevnext}"
],
"slots": [
{
"name": "emailid",
"type": "AMAZON.NUMBER"
},
{
"name": "newpage",
"type": "AMAZON.NUMBER"
},
{
"name": "prevnext",
"type": "AMAZON.LITERAL"
}
]
}
In app.js, I am always getting newpage
and next
as undefined.
async ClickSummaryIntent() {
const email_id = this.$inputs.emailid.value;
const new_page = this.$inputs.newpage.value; // always undefined
const next = this.$inputs.prevnext.value; // always undefined
...
}
Where I am doing wrong? Below is the screenshot of my JOVO
debugger console
PS: Also how would I create a new slot type like I need here for Prev/Next paging stuff? I want to learn how to write the interaction model by hand. AMAZON.LITERAL
is deprecated but I don’t know what alternative to use here. Don’t want to compile on Alexa and use jovo get
.
Requesting for help!