Dialogflow集成到自定义CRM中

时间:2019-06-11 14:42:48

标签: dialogflow

我试图用Dialogflow来开发和集成SMS聊天机器人与我们的自定义CRM。 Intent的创建非常强大且直接。但是,我正在尝试了解某些​​方面的最佳做法。如果我有意要在某个特定位置返回服务价格,则可以在对话框流中轻松建模。但是,当收到SMS消息时,它将来自某个位置的新客户或已知的现有客户。对于现有客户,我们已经知道位置,因此不需要他们在意图中指定位置值。在将入站SMS消息发送到客户端API以匹配意图之前,如何在意图中预先设置“位置”参数值,以便即使该入站SMS消息中不包含该参数值,该值仍然存在?例如,达拉斯的一位已知客户只需说“ xxx多少钱”,而不是“达拉斯xxx多少钱”。

您可以在调用API尝试并匹配意图之前使用API​​设置参数值吗?如果是这样,没有会话ID怎么办?之所以需要“位置”,是因为当我们实现该服务时,同一服务的价格会根据位置而有所不同,因此我需要知道,但我们不想让现有客户说位置。

也许另一个选择是使用我们可以通过API触发的事件来指定位置。这将具有一个输出上下文,称为位置和实现,用于设置参数值。但是即使那样,我仍然难以理解如何从调用应用程序将位置,电话号码等值传递到dialogflow中,以便dialogflow具有那些在实现中使用的参数值。

阅读文档,观看视频并开始测试客户端API v2

1 个答案:

答案 0 :(得分:0)

这肯定是可能的。您想要做的是为此使用Dialogflow API。您可以在此处找到Google创建客户端库所使用的语言:https://cloud.google.com/dialogflow/docs/reference/libraries/overview

代码中一旦有“ if”,就应该使用实现:https://dialogflow.com/docs/fulfillment

该如何处理:

  • 客户端发送短信
  • 您可以在后端检查该用户是否已知。如果知道->不询问位置,否则您询问位置
  • 根据Dialogflow客户端库匹配用户查询
  • 如果(任意)匹配,Dialogflow将返回意图

在调用Dialogflow库之前,您应该定义和实现任何逻辑。