Slack возвращает ошибку при настройке URL подписки на событие с Amazon Lex

Я создал бота в AWS Lex и пытаюсь интегрировать его со Slack. Я создал приложение Slack и следовал документации, упомянутой в

https://docs.aws.amazon.com/lex/latest/dg/slack-bot-association.html

Однако при попытке интеграции с URL-адресом обратной передачи Lex появляется сообщение об ошибке:

Your URL didn't respond with the value of the challenge parameter.
Our Request:
POST
"body": { 
     "type": "url_verification",
     "token": "VbODUleNdk2hieCvDwlScrQF",
     "challenge": "HRUXnK6YYLpx5U1s9AiADZgA0BAhWuTzfjAAzLEJIw1zz4GfuMAb"
}
Your Response:
"code": 200
"error": "challenge_failed"
"body": {

}

Насколько мне известно, Lex по умолчанию должен предоставить ответ. Я что-то здесь не так делаю? Любые выводы помогут.

Заранее спасибо.

2 ответа

Я столкнулся с этим сегодня утром и подумал, что добавлю свой собственный опыт. Slack, похоже, продвигает "токен проверки" в качестве замены "ключа подписи" и утверждает, что они взаимозаменяемы, но токен более безопасен. Мне не удалось получить ответ на запрос при использовании токена, но он работал нормально при использовании ключа.

Столкнулся с той же проблемой. Запрос POST, который Slack отправлял моей конечной точке, не был тем, для чего была разработана моя функция. Я следовал руководству на https://api.slack.com/tutorials/events-api-using-aws-lambda и должен был добавить строку:

      exports.handler = (data, context, callback) => {
    data = JSON.parse(data.body); // added this line
    switch (data.type) {
        case "url_verification": verify(data, callback); break;
        case "event_callback": process(data.event, callback); break;
        default: callback(null);
    }
};
Другие вопросы по тегам