使用AWS Lex和Dialogflow使用不同的Webhook构建类似的bot

时间:2018-08-27 11:13:41

标签: dialogflow chatbot aws-lex

我有一个拥有3家酒店的客户,我想要为其构建预订聊天机器人的聊天机器人,并且我希望仅构建一个可以处理所有酒店的机器人。我想以某种方式在聊天开始时确定他来自哪个酒店网站。该怎么做?

1 个答案:

答案 0 :(得分:1)

您必须在这些通道和Lex机器人之间使用自己的端点,对吗?

这样,您可以在Lex处理消息之前捕获从这些通道发送的确切请求。

然后,要确定用户正在与哪个旅馆进行通信,您要做的就是将与频道请求一起发送的收件人信息与之匹配。

例如:(Facebook)

...
"messaging":[{
    "sender":{
        "id":"xxxxxxxxxxxxxxxx"
    },
    "recipient":{
        "id":"xxxxxxxxxxxxxxxx"
    },
    ...
}]

sender.id是用户的Facebook PSID。
recipient.id是用户已发送消息的Facebook页面ID。

因此,如果3家酒店中的每家都有不同的Facebook页面,则只需将recipient.id匹配到该酒店。然后,您可以通过requestAttributessessionAttributes将酒店标识传递给Lex。