获取AWS Lex bot的{Slack用户电子邮件地址

时间:2017-11-21 04:59:02

标签: aws-lambda bots slack-api amazon-lex

我正在aws-lex中创建一个bot,并将它与Slack,FB Workplace和Yammer集成在一起。

我需要阅读Slack用户电子邮件地址,然后针对我们的webservice验证这一点,以确保用户已注册。这将返回一些有关用户组织的数据,这些数据是我在lex中进一步执行所需的。

我不知道如何传递/提取Slack用户电子邮件(与我的Bot进行对话的那个)。

任何想法?请举例! bot dev的新手。

1 个答案:

答案 0 :(得分:3)

至少对于松弛你可以做到:

requestAttributes下(来自event),您可以检查是否存在x-amz-lex:channel-type。如果用户来自松弛,则值为Slack

然后,您可以从密钥event

下提交给lambda的userId中提取用户冗长ID

使用该ID,转到Slack API并调用方法users.info。现在,您可以从响应中获取用户电子邮件。