本系列文章旨在帮助开发者了解如何将聊天机器人部署到不同的平台。本文是系列文章的第三篇,主要介绍如何在Facebook Messenger和Slack上部署聊天机器人。
这篇文章是针对CodeProject的Slack API挑战赛提交的作品。比赛从2019年1月7日开始,至2019年3月7日结束。Slack无疑是当今每个开发者都需要的平台,并且以一种新的方式流行起来。它易于使用和管理,不仅如此,还可以创建自己的Slack应用,并为其添加许多自定义功能。可以在本文中学习如何创建自己的Slack应用,非常简单,可能只需要20分钟就能创建第一个应用。
由于这是一个广泛的话题,超出了单篇文章的范围,已经将部分内容分成了多篇文章。在第一篇文章中,将看到如何使用Google的Dialogflow创建聊天机器人,并在Dialogflow控制台中测试机器人。还将看到如何将其与Slack集成。第二篇文章将展示如何使用Microsoft的Bot Framework创建自定义聊天机器人,并在Dialogflow中启用webhooks,并将自定义机器人的响应作为履行响应返回给Dialogflow意图。本系列的第三篇文章将展示如何在Facebook Messenger和Slack上集成第二篇和第三篇文章中创建的完整机器人,并在两个环境中测试webhook响应。以下是关于如何创建自定义聊天机器人的三篇文章的教程。
本文的读者预计将已经阅读了本系列的前两篇文章。
最初的基本机器人已经完成,可以根据需要和要求进一步增强它。在本节中,将看到如何将机器人部署到Facebook Messenger作为自定义Facebook页面上的聊天机器人。
假设有一个Facebook页面用于业务或公司,需要在该页面上部署自动聊天机器人功能,以便任何用户都可以寻求信息或与该机器人交谈。
首先,要将机器人部署到Facebook页面,需要一个Facebook页面。打开URL https://developer.facebook.com
并使用现有的Facebook凭据登录或创建一个新帐户。
使用现有的Facebook帐户登录。它将要求创建一个Facebook开发者帐户,是的,需要,所以点击“下一步”。
提供应用程序名称(想要的任何名称)和联系电子邮件,然后点击“下一步”。通过安全检查并点击“提交”。
它将显示欢迎消息,并要求添加第一个产品。点击“添加第一个产品”按钮。
接下来将看到的是Facebook开发者的仪表板。由于需要设置Facebook Messenger,请点击下面显示的按钮设置Messenger:
需要访问令牌和密钥。因此,导航到“设置”并滚动到标有“令牌生成”的部分。选择现有的页面(如果有的话)或根据愿望创建一个新页面。
选择想要创建的页面类型,即“社区”或“业务”。提供页面名称和类别。可以跳过提供个人资料图片的步骤,或者选择应用一个。
在下一步中,将看到页面已创建。现在再次转到“设置”->“令牌生成”部分,并选择新创建的页面。
它将再次提示进行身份验证。完成身份验证后,在“令牌生成”部分,现在看到一个页面访问令牌已生成。复制该令牌并将其保存在某个位置。很快会需要它。
现在,转到“设置”->“基本”以获取应用程序密钥,如下所示。复制并保存应用程序密钥在某个安全的位置,很快会需要它。
回到Dialogflow控制台的集成部分,并启用Facebook Messenger选项。按照弹出窗口上的说明操作。
再次回到Facebook的开发者帐户并点击“设置”。转到“Webhooks”部分并点击“设置Webhooks”以提供webhook到上一步中复制的回调URL。
在新页面订阅中,即点击设置webhooks后打开的页面,提供回调URL和之前存储的验证令牌名称。检查消息、postbacks和选项,如下所示。点击验证并保存。
一旦webhook设置完成,选择页面订阅webhook事件。所以,在那里选择Facebook页面。点击“订阅”按钮。
完成后,回到Facebook页面并添加一个新按钮,如下所示:
提供所有步骤的详细信息,即选择“联系”功能作为Messenger类型。选择发送消息的选项。
在执行上一节中的所有步骤后,可以成功地部署并集成到Facebook页面上的聊天机器人。是时候测试它了。
点击新添加的“发送消息”按钮,并从上下文菜单中点击“测试按钮”。
一旦点击“测试按钮”链接,聊天机器人将打开,请注意聊天机器人的名称是CodeBusiness。可以开始输入请求预订桌子,它将如预期那样响应。
机器人似乎运行良好。同样,可以测试在Lex上的BotService上测试的所有内容,比如与人类交谈,查看插槽信息等。还可以为用户授予测试权限,以便当他们在Facebook上看到页面时,他们可以看到这个机器人。觉得这很酷。
还可以在Slack上部署和测试聊天机器人。
转到Google Dialogflow控制台的集成部分,并启用Slack。按照弹出窗口中的说明操作。
创建新Slack应用并获取需要填写本节的详细信息。打开新创建的Slack应用并输入“Hi”。它将如预期那样响应。