我正在尝试创建一个在其中一个插槽中使用响应卡的聊天机器人。我想尝试更新AWS lambda而不是亚马逊lex上的响应卡,因为我不想在卡片中使用图像。但是当我尝试运行它时,它会发出错误“无效的Lambda响应:从Lambda收到错误响应:未处理”。我想要有响应卡的插槽是扇形插槽。我的代码有问题吗?
以下是我的代码。
var arr = ['na','na','ok'];
console.log(getMoreOccurencesElement(arr));
arr.push('ops');
arr.push('ops');
arr.push('ops');
console.log(getMoreOccurencesElement(arr));
function getMoreOccurencesElement(arr) {
return arr
.reduce((acc, ele) => {
var prev = acc.find(x => x.value == ele);
if(prev) {
prev.counter = prev.counter + 1;
return acc;
}
return acc.concat({value: ele, counter: 1})
}, [])
.sort((a, b) => b.counter - a.counter)[0].value;
}
答案 0 :(得分:0)
看看response structure documented for Amazon Lex。看起来你使用了dialogAction" type"和"履行国家"不正确。
类型可以设置为:
fulfillmentState 可以设置为:
fulfillmentState。 可能还有其他语法问题,但这些问题很突出。