【发布时间】:2021-10-01 19:02:55
【问题描述】:
我是 AWS LAmbda、聊天机器人和 Javascript 的新手。: 最终,我试图创建一个聊天机器人,当 lambda 函数满足来自聊天机器人的请求时,它将使用插槽中的值进行休息 API 调用(POST)。我有 lambda 代码,可以让其余 API 调用目前在单独的函数中正常工作。
我正在学习并尝试让 lambda 函数使用以下测试函数来完成聊天机器人请求:
当我在聊天机器人中对测试 lambda 函数进行测试时,我收到以下错误: 发生错误:服务器在处理 Lambda 响应时遇到错误
当我在 lambda 中测试有效负载时,它起作用了。但是,当我使用相同的 lambda 函数测试聊天机器人时,它不起作用。我根据此响应格式页面上的信息创建了 lambda 函数,但我无法弄清楚代码中缺少什么。 https://docs.aws.amazon.com/lex/latest/dg/lambda-input-response-format.html
这是请求:
{
"alternativeIntents": [],
"botVersion": "$LATEST",
"dialogState": "ConfirmIntent",
"intentName": "Hello",
"message": "are you sure your name is al?",
"messageFormat": "PlainText",
"responseCard": null,
"sentimentResponse": {
"sentimentLabel": "NEUTRAL",
"sentimentScore": "{Positive: 0.031974494,Negative: 0.023143388,Neutral: 0.8841075,Mixed: 0.06077461}"
},
"sessionAttributes": {},
"sessionId": "2021-07-25T14:18:31.085Z-OxCrkGGA",
"slotToElicit": null,
"slots": {
"name": "al"
}
}
这是我用于测试的 lambda 代码(Node JS):
exports.handler = function(event, context, callback) {
callback(null, {
"dialogAction":{
"type":"Close",
"fullfillmentState":"Fulfilled",
"message": {
"contentType":"PlainText",
"content":"Your request has been fulfilled"
}
}
});
};
【问题讨论】:
标签: amazon-web-services aws-lambda amazon-lex