gpt4 book ai didi

amazon-web-services - AWS lambda : SES not working when Lex Chatbot is published to Slack

转载 作者:行者123 更新时间:2023-12-02 01:12:54 25 4
gpt4 key购买 nike

AWS SESLex 一起工作测试 Chatbot,但在使用 Slack 应用程序发布聊天机器人后,它不起作用(不触发电子邮件服务)。然而,Lambda 似乎没有任何问题。功能,因为我正在松弛地获取响应文本。而且我认为没有办法检查 slack 造成问题的原因。

Lambda功能:

var aws = require('aws-sdk');
var ses = new aws.SES({
region: 'us-east-1'
});

exports.handler = function(event, context, callback) {

var eParams = {
Destination: {
ToAddresses: [event.currentIntent.slots.Email]
},
Message: {
Body: {
Text: {
Data: "Hi, How are you?"
}
},
Subject: {
Data: "Title"
}
},

Source: "abc@gmail.com"
};
var email = ses.sendEmail(eParams, function(err, data) {
if (err)
else {

context.succeed(event);

}
});

callback(null, {
"dialogAction": {
"type": "ConfirmIntent",
"fulfillmentState": "Fulfilled",
"message": {
"contentType": "PlainText",
"content": "message to convey to the user, i.e. Are you sure you want a large pizza?"
}
}
});
};

编辑 1:我认为问题是我没有获得 [event.currentIntent.slots.Email] 中的值当我发布我的 Lex机器人在 Slack .

最佳答案

尝试按照以下步骤找出根本原因:

  1. 使用 this 确保您已使用 Slack 正确配置机器人分步教程。

  2. 如果您的机器人在您的测试机器人(LEX 内)中运行良好但在 Slack 上运行不正常,请确保您已发布最新版本您的机器人。

  3. 在您的 AWS Lambda 上尝试下面的代码,看看您会得到什么返回。

    callback(null, {
    "dialogAction": {
    "type": "ConfirmIntent",
    "fulfillmentState": "Fulfilled",
    "message": {
    "contentType": "PlainText",
    "content": "Echo: " + JSON.stringify(event.currentIntent.slots) <-- This
    }
    }
    });

希望这对您有所帮助。

关于amazon-web-services - AWS lambda : SES not working when Lex Chatbot is published to Slack,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44200311/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com