从那以后已经三年多了Facebook宣布推出Facebook Messenger Chatbots。从那时起,品牌的负荷创造了自己的聊天乐队,并将它们添加到Facebook Messenger中,以提高他们的客户服务。

到2018年,还有更多300000年聊天机器人在Facebook Messenger上。这在短短一年内标志着增加了100,000个聊天。

从这些数字来看,很明显,Facebook Messenger Chatbots对品牌有利。它们通过在几分钟内解决客户的查询,帮助提高客户服务质量。

Facebook Messenger Chatbot可以立即回复任何消息,从而删除客户的等待时间。此外,它可以使用24×7,与人类的客户支持不同,这可能不会出现圆形时钟。

它还可以帮助品牌节省经常性费用,例如员工的薪水。您甚至可以使用一个到市场新产品,并简化购买过程。

随着…的出现AI Powered Chatbots,你可以期待你的客户体验在实现它们的过程中飞速增长。

虽然开发自己的Facebook Messenger聊天机器人看起来很难,但它并不像你想的那么难。有成千上万的平台可以帮助你建立一个Facebook Messenger聊天机器人。

你甚至可以找到许多可以直接集成到Facebook Messenger中的在线聊天机器人。

现在,让我们看看如何从头开始开发一个Facebook Messenger聊天机器人。你可以这样做。

1.选择您的Facebook Messenger Chatbot的平台

你可以用来构建你的Facebook Messenger聊天机器人的两个主要平台是Dialogflow和Wit.ai。Dialogflow是谷歌提供的服务,而Facebook拥有的是Wit.ai。让我们来看看它们: 网站流量电子书

一。Dialogflow

这个平台允许你进行自然语言处理,语音到文本,以及人工智能系统。您可以通过创建自定义功能来培训他们。

通过机器学习,此工具可以了解用户正在谈论的内容。关于这个平台的最佳部分是它可以识别超过15种语言,是免费的,并且可以轻松地创建聊天。

然而,它的可定制性并不强,而且您可能会发现实现平台很有挑战性。

Dialogflow Facebook Messenger聊天机器人

图像Via点燃可见性

b。Wit.ai

智慧。ai也类似于Dialogflow,帮助你处理自然语言。此外,它还可以过滤掉诸如上下文和意图等有用数据。

用户友好的UI使开发第一个Facebook Messenger聊天机器人变得很容易。就像Dialogflow一样,它是自由的,可适应的,并且集成了NLP。然而,这可能需要你花一些时间来学习如何实现它,而且也不是很直观。

而智慧。ai是一个很棒的平台,Dialogflow更适合初学者,并且有大量的文档可以指导你。

因此,我们将看看如何开发你的Facebook Messenger Chatbot.使用它。

Wit.ai Facebook Messenger Chatbot

图像Viagupshup.io.

2.设置开发环境

你需要先创建一个webhook,为其他应用程序提供实时数据。与其他api不同,它不断地向其他应用程序发送数据。要创建这个webhook,你可以使用Express.js。

首先创建一个名为“Facebook Messenger chatbot”的目录。创建后,您可以转到终端并初始化Node.js。完成这一步后,就可以安装Express.js来创建服务器。您还将创建一个名为body-parser的中间件,用于解析新的传入请求。

为此,您需要在终端中输入以下内容:

npm安装express body-parser -保存

发布安装后,转到该目录并创建一个名为index.js的文件。之后,启动Express服务器并将监听端口设置为3000。保存。

要检查它是否有效,可以在终端中运行以下内容。

节点index.js

如果它正在工作,你应该收到一条消息,说:“Webhook服务器正在侦听,端口3000.”

现在,您需要创建两个端点。第一个是Facebook的初始验证。当你连接Facebook页面与webhook服务器时,你需要获得一个令牌。

此令牌应与Webhook Server的响应相匹配,以确保它是相同的服务器。第二个端点是您从Facebook Messenger收到的所有其他消息。

为了简化事物,将代码分为两个文件夹。您可以将控制器和帮助者命名。应该在控制器中创建第一个端点,并命名验证.js。它的代码是:

module.exports =(req,res)=> {

const hubchallenge = req.query ['hub.challenge'];

const hubMode = req.query[' hub.mode '];

const verifyTokenMatches = (req.query[' hub. ']);verify_token '] = = = ' mynewbot ');

if (hubMode && verifyTokenMatches) {

res.status(200).send(哈康良);

} 别的 {

res.status(403).end();

}

};

您可以将名为“mynewbot”的字符串更改为您希望的任何内容。记住这一点,因为你以后在设置Facebook应用程序时将需要它。

第二个端点也进入了控制器文件夹中,称为MessageWebhook.js。其代码如下:

const processMessage = require(' ../helpers/processMessage ');

module.exports =(req,res)=> {

if(req.body.object ==='page'){

req.body.entry.foreach(条目=> {

est.messaging.foreach(事件=> {

if(event.message && event.message.text){

ProcessMessage(事件);

}

});

});

res.status(200).end();

}

};

一旦你完成了这些,通过输入以下命令停止控制台:

节点index.js

3.设置代理服务器

有必要设置一个代理服务器,因为我们的本地Express服务器不是对互联网上的每个人都可用。此外,服务器不支持HTTPS,但是,您需要它,因为它是Facebook Messenger的必需品。为此,您可以设置一个grok服务器。

要设置Grok服务器,可以使用ngrok。它有助于建立从公共端点到本地网络的安全隧道。安装ngrok后,需要打开终端,然后输入以下内容

NGROK HTTP 3000.

您将获得一个向您展示多个URL的新屏幕。您需要的URL是列表中的最后一个。

设置服务器代理Facebook Messenger聊天机器人

图像ViaDocksal文档

4.设置Facebook应用程序

要设置Facebook Messenger Chatbot,您需要首先设置Facebook应用程序。为此,您需要有一个公共页面和Facebook开发人员应用程序。后者将与您的公用页面和WebHook服务器连接,并将作为中间件。

创建了一个Facebook页面后,您应该前往Facebook为开发人员创建您的应用程序。给它一个名称,填写您的电子邮件ID,然后单击“创建应用程序ID”。发布,您需要选择产品。为此,单击“Messenger”,然后点击“设置”。

打开页面后,找到“令牌生成”部分,然后选择您创建的页面。这将为您提供页面访问令牌。保存。

在这一节的下面,你会找到Webhooks一节。你需要点击“设置Webhooks”,填写回调URL,验证令牌和订阅字段。完成这些之后,您需要将Dialogflow集成到应用程序中。

5.集成对话框

将DialogFlow集成到网站,然后注册它。现在,您可以开始准备您的虚拟助手并教授您需要的特定技能。首先单击“创建代理”并填写代理的详细信息。这包括其名称,描述,语言和时区。

现在,转到名为“Small Talk”的部分,然后点击“Enable”。一旦你这样做了,你可以尝试你的Facebook Messenger聊天机器人在右边通过问它简单的问题。

您需要他们将您与Facebook Messenger聊天机器人的对话嵌入到您的代码库中。但是,要做到这一点,首先需要在终端中安装两个包。第一个是可以用来向Facebook发送请求的请求节点页面。

这可以通过:

NPM安装 - 保存请求

第二个是DialogFlow Node.js包,为此,您需要在控制台中键入以下内容:

npm安装-保存apiai

现在,您需要通过在helpers目录中创建一个文件并将其命名为processMessage.js来实现processMessage函数。

现在,使用API​​键(客户端访问令牌)初始化您的apiaIclient。它应该输入const api_ai_token。另一方面,应该将Facebook页面访问令牌添加到Const Facebook_Access_Token。您可以使用以下代码执行此操作:

const API_AI_TOKEN = '你的Dialogflow客户端访问令牌';

const apiaiclient =要求('apiai')(api_ai_token);

const facebook_access_token ='您的Facebook页面访问令牌';

const请求=要求('请求');

const sendTextMessage = (senderId, text) => {

要求({

url:“https://graph.facebook.com/v2.6/me/messages的

QS:{Access_Token:Facebook_Access_Token},

方法:“文章”,

json:{

收件人:{id:senderid},

消息:{text},

}

});

};

module.exports =(事件)=> {

const senderId = event.sender.id;

const message = event.message.text;

const apiaiSession = apiaicclient。textRequest(消息,{sessionId:‘crowdbotics_bot});

apiaiSession。on(' response ', (response) => {

const结果= response.result.fulfillment.speech;

sendTextMessage (senderId,结果);

});

apiaisession.on('错误',错误=> console.log(错误));

apiaiSession.end ();

};

还可以将以下代码添加到index.js中。

const verificationController = require(' ./controllers/verification ');

const messageWebhookController = require(' ./controllers/messageWebhook ');

app.get('/',验证控制器);

app.post (' / ', messageWebhookController);

这段代码显示你的webhook服务器从Facebook Messenger上的用户接收了信息。然后这个文本被传递给Dialogflow。一旦响应从那里发出,就会触发一个响应事件,并将其发送回Facebook Messenger。

然后你需要测试你的Facebook Messenger聊天机器人来完善它。为此,您应该为它添加测试人员。为此,您可以打开Facebook应用程序,进入“Roles”。在这里,选择“测试人员”并点击“添加测试人员”来添加人员。

现在,您需要开始测试您的Facebook Messenger聊天机器人。您需要评估机器人对“你好吗?”等简单问题的回答。

一旦Chatbot通过此测试,您需要增加其意图。这些基本上是有助于聊天的机制,了解用户询问的内容并帮助它根据它进行响应。

6.为你的Facebook Messenger聊天机器人创建意图

为此,您需要首先登录到希望向其添加新功能的代理。发布后,转到Dialogflow,点击意图部分的“+”。首先,你需要命名意图,比如说,“shane-barker-info”。

在“用户说”的框中,输入所有用户可能会问的与该主题相关的问题。为了提高你的Facebook Messenger聊天机器人的准确性,你应该添加尽可能多的问题。

一旦你列出了问题,你需要告诉你的Facebook Messenger聊天机器人根据这些问题采取行动。为此,转到“Action”,输入一个小写的Action。您还必须添加对问题的回答。

要添加它们,转到“响应”并添加多个响应。然后可以保存意图。

保存意图后,您应该通过在右侧的控制台上询问测试问题来测试相同的测试。没有必要在您输入时提出同样的问题;它们可以与他们相似。

检查您得到的答案是否与您输入的答案相同。通过机器学习,Facebook Messenger聊天机器人理解你的问题并给出正确答案。

最后,掌握Facebook Messenger并检查您的Chatbot是否正常运行。

最终的想法

创建Facebook Messenger ChatboT可能看起来像是一个令人生畏的任务,但是使用正确的工具,您可以轻松创建它。使用Node.js,Express.js,ngrok和DialogFlow,您可以设计自己的聊天栏。

虽然你可能需要一定程度的编码知识,但也可以用我在这篇文章中提到的代码来完成。或者,您可以使用其中之一随时可用的ai-chatbots并将它们整合到Facebook Messenger中。

为其添加各种意图,以帮助您回答客户的更多问题。考虑添加尽可能多的问题以提高其准确性。这样,通过制作聊天吧,您将能够改善你的客户服务

需要帮助设计您的Facebook Messenger Chatbot?取得联系和我在一起了解更多细节。
转换顾问