Node.js Dialog.slot正在循环中运行如何在alexa中再次结束和启动对话?
运行此代码后,它会询问客户名称,然后它会引出项目值,然后当我输入项目值时,它会进入一个循环,并一次又一次地询问项目值如何打破此循环 输出json:- “指令”:[ { “类型”:“Dialog.slot”, “slotToElicit”:“项目” }] 好的,找到了这个解决方案,它奏效了Node.js Dialog.slot正在循环中运行如何在alexa中再次结束和启动对话?,node.js,aws-lambda,alexa,alexa-skills-kit,alexa-slot,Node.js,Aws Lambda,Alexa,Alexa Skills Kit,Alexa Slot,运行此代码后,它会询问客户名称,然后它会引出项目值,然后当我输入项目值时,它会进入一个循环,并一次又一次地询问项目值如何打破此循环 输出json:- “指令”:[ { “类型”:“Dialog.slot”, “slotToElicit”:“项目” }] 好的,找到了这个解决方案,它奏效了 function delegateSlotCollection(){ console.log("current dialogState: "+this.event.request.dialogState);
function delegateSlotCollection(){
console.log("current dialogState: "+this.event.request.dialogState);
if (this.event.request.dialogState === "STARTED") {
var updatedIntent=this.event.request.intent;
this.emit(":delegate", updatedIntent);
} else if (this.event.request.dialogState !== "COMPLETED") {
console.log("in not completed");
if(this.event.request.intent.slots.customername.value) {
let prompt = "Please Tell Me your Item name ";
let reprompt = "";
console.log("Printed");
this.emit(':elicitSlot', 'item', prompt, reprompt);
}
} else {
return this.event.request.intent;
}
}
function delegateSlotCollection(){
console.log("current dialogState: "+this.event.request.dialogState);
if (this.event.request.dialogState === "STARTED") {
var updatedIntent=this.event.request.intent;
this.emit(":delegate", updatedIntent);
} else if (this.event.request.dialogState !== "COMPLETED") {
console.log("in not completed");
if (this.event.request.intent.slots.item.value) {
this.emit(":delegate");
}
else if(this.event.request.intent.slots.customername.value) {
let prompt = "Please Tell Me your Item name HELLO ";
let reprompt = "";
console.log("Printed");
this.emit(':elicitSlot', 'item', prompt, reprompt);
}
} else {
return this.event.request.intent;
}
}