我们在Aimylogic上创建了一个机器人来自动化在线商店



如今,只有懒惰者没有写关于与客户通信自动化的文章。 但是,这是在实践中开始使用它的方法-很少谈论。

Just AI中,我们了解自动化是一种趋势,并且我们知道自动化可以如何帮助您的小型企业和大型企业。 今天,我们决定编写一个有趣的教程,介绍如何轻松使用Google表格Aimylogic机器人设计器,而无需编程即可自动与客户进行第一线通信以从中获得真正的收益,而不仅仅是创建另一个无用的聊天机器人。

准备好的模板


我们已经在Aimylogic构造函数中准备了一个bot模板, 以便您可以一键创建它并了解其在实际中的工作方式。 它称为“在线订单” ,位于Aimylogic帐户主页的“ 模板”部分中。



在本文的进一步部分,我们将讨论其创建过程。

网上商店的方案


考虑一个典型的在线商店。 客户访问该站点或VKontakte组。 在网上聊天中,他从顾问那里了解了商品的可用性和价格。 并且,如果一切合适,请写上送货地址。 顾问开始新订单并将其编号发送给客户。 然后,客户只需返回订单号即可返回并询问订单状态。

如果有很多客户,则顾问可能没有时间来响应典型的请求。 这对业务不利-客户只是前往另一家商店。 如果您雇用更多的顾问-这是额外的费用。

Google电子表格作为数据库


在本例中,我们会将商品库和订单列表存储在Google Drive上的盘子中,我们的漫游器将能够从中接收信息并将其自动发布给客户。


当然,您可以使用任何其他工具来代替表格,但是在本教程中,我们选择此选项是最简单,最直观的方法,并且同时适用于实践。 许多小型在线商店都在Excel上运行,而无需使用其他CMS。

现在,当从客户那里收到问题时,顾问只需走到平板电脑上,查看商品的可用性和价格,然后对聊天进行响应。 如果客户要订购,顾问会询问送货地址,转到表格的第二页并添加新的此类行



当客户随后询问状态时,顾问从他那里找到订单号,转到板中的第二页,按编号查找状态并将其提供给客户。
现在,我们正在与您自动化这些过程。

我们对客户要求进行分类


在开始在Aimylogic中设计机器人之前,我们将通过与顾问聊天确定客户的想法

大多数聊天的人问:

  1. iPhone / iPad / MacBook多少钱?
  2. 我要买
  3. 我的订单在哪里?

由此可见,我们的机器人应该能够使用我们产品的名称进行操作,并且它们的书写方式不一定总是与我们盘子上的相同。 例如,“ iphone背景”,而不是“ iphone”。

在Aimylogic上创建一个机器人


在Aimylogic中创建漫游器就像在任何站点构建器中创建站点一样。 唯一的例外是我们不是在设计静态站点,而是在与客户进行动态对话。



Aimylogic机器人是一系列屏幕的图像 ,机器人使用连接器(将卡连接到块的箭头)浏览。 阻止实际上是机器人在每个屏幕上执行的动作。 您可以创建分支 ,处理用户请求 ,进行HTTP调用等。

创建商品数据库


当客户向他询问我们数据库中商品的价格和库存情况时,我们的机器人应该理解。 此外,他必须同时考虑英语iphone和俄语的拼写,并考虑其形态。 Aimylogic可以做到这一点,称为实体 。 在菜单中,单击实体 ,创建一个实体项目并敲入具有同义词的产品名称。



这里有一件很重要的事-使“实质”列中名称与平板电脑上写的内容匹配 。 然后,您将明白为什么。

我们发布商品表


为了使漫游器能够随时随地查找可用性和价格以及订单状态,必须发布Google表格。 然后,我们以特殊方式“喂食”她的机器人。

要发布Google电子表格,请转到文件-发布到网络。 将打开一个窗口,您只需单击“ 发布”按钮。



一切,无事可做。 我们回到机器人Aimylogic的编辑器。

建立对话


实际上,现在,我们将创建一个与客户对话的脚本,以便机器人可以回答有关当前商品价格的问题,告知其可用性,询问交货地址以及按订单号告知订单状态。

如前所述,Aimylogic中的机器人是一系列屏幕。 当您进入机器人脚本编辑器时,第一个屏幕的块面板立即打开。 在第一个屏幕上,我们将放置机器人期望用户使用的短语块 。 单击短语,将打开一个窗口,您需要在其中指定短语示例,然后根据请求的主题将其分为几类。



在用户可以询问有关产品的地方,我们指示指向我们的实体$ item的链接。 例如, “ $ item是多少” 。 由于Aimylogic致力于机器学习算法 ,因此我们的机器人将理解所有同义的客户表达并将产品标识符自动保存在$ item变量中。

您还需要选中“全局阻止”框,以便机器人可以在所有屏幕上响应给定的短语。

我们从Google表格中读取数据


然后,乐趣开始了。 当客户说: “今天的iPhone多少钱?”“是否提供MacBook?” ,该机器人应从Google电子表格中获取产品数据,并告知客户是否可用以及价格如何。

Aimylogic机器人可以使用HTTP请求块通过脚本直接发出HTTP请求。 但是为了方便处理数据,必须使该端的服务返回简单的JSON而不是表。

为此,您可以使用以下URL:

http://tools.aimylogic.com/api/googlesheet2json?sheet=1&id=

如果在浏览器中打开这样的URL,则将看到带有字段的JSON对象数组,如表中所示。 这可以在bot脚本中使用。 您只需替换Google表的标识符即可代替文档标识符 。 要识别它,请在浏览器中打开Goog​​le表格,然后在地址栏中查找。



此字符序列是标识符。 结果,您应该获得这种URL:

http://tools.aimylogic.com/api/googlesheet2json?sheet=1&id=1ydRCih3-el3dJFl4pBDjf717rfFWaTpB9qulkWw43TA

现在我们已经将表格转换为JSON,我们可以教该机器人如何使用它了。 在第一个屏幕上单击一组短语(例如, “ $ item item cost” ),将创建第二个屏幕。 在其上,添加具有以下参数的HTTP请求块:



粘贴我们之前收到的URL。 然后在“ 响应”选项卡上,创建一个名为device的变量。 实际上,这是机器人将保存产品数据的变量,它将从表中提取产品数据。 对于变量的值,请指定一个简单的Javascript代码

 _.findWhere($httpResponse, {"name": $item}) 

在这里,我们教机器人从服务器响应( $ httpResponse )中提取一个对象,该对象的名称字段与客户端要求的匹配。 开箱即用的Aimylogic与underscorejs库一起使用,因此我们使用其findWhere函数将所需的产品放在一行中。

有库存,要购买吗?


现在,机器人根据用户的请求将产品数据拖入$设备变量中。 此外,客户端至少可以编写“ iPad”,至少可以编写“ iPhone”-该机器人将理解所有内容。 现在,您需要教机器人告诉客户该产品是否有库存,宣布其价格并按订单提供。

每个项目都有一个库存字段,该字段为true或not。 这与Google铭牌中的复选标记相同,当此类产品不可用时,顾问会将其删除。 因此,机器人应查看该标志,如果为真,则表示愿意购买,否则,请说这样的产品暂时缺货。

在带有HTTP请求的块中单击“ 成功完成 ”。 将创建以下机器人屏幕,您需要在该屏幕上添加Condition块 。 使用Aimylogic中的此块,可以根据各种条件安排对话框分支。



每个条件本质上都是一个Java表达式,可以为true或false。 如果为true,则对话分支将起作用,并从这种情况开始。 如果不是,则该机器人将继续检查下一个条件,依此类推。 如果没有条件为真,则执行else分支。



在带有$设备.instock (库存产品)分支的屏幕上,向客户显示文本



并添加词组



我们要求送货地址


如果客户说“是”之类的东西,则机器人应询问将订单交付到哪里。 在创建的块中单击短语组“是”,然后添加Enter文本块。



在此屏幕上,机器人将询问一个问题并将所有用户输入保存在address变量中。 之后,您需要感谢客户并向顾问发送通知,告知有人要购买iphone。 顾问将仔细检查可用性,在平板电脑中开始新订单,前往VKontakte,并通过个人消息告知客户订单号。

输入$地址后单击“过渡”,然后添加“文本”块



如何通知顾问
为了使漫游器可以通知顾问,您可以使用ifttt.com服务,您可以在其中建立一个Webhook并使其通知某人,例如在Telegram中 。 因此,您可以创建一个小程序,该小程序将通过Web挂钩将通知发送到Telegram聊天。 在漫游器中,您只需要向Webhook地址添加另一个HTTP请求。 我们在帮助中心中写了有关如何执行所有操作的信息。

我们将机器人连接到VKontakte


因此,第一个版本已准备就绪! 该机器人可以检查可用性并接受订单。 您可以在Aimylogic编辑器界面中对其进行测试,然后需要将该机器人连接到VKontakte组。 这很简单 。 VKontakte聊天小部件也可以放置在网站上 ,以便您网站的访问者可以立即在聊天窗口中将其写入bot。

之后,该机器人将开始执行我们为其创建的目的-它将消除聊天室中的主要负担,仅将准备购买我们商品的客户带给顾问。

查看订单状态


具有状态检查的分支与具有订单创建的分支基本上没有什么不同。 由于我们将订单存储在盘子的第二张纸上,因此从机器人到表格的HTTP请求将略有不同:

http://tools.aimylogic.com/api/googlesheet2json?sheet=2&id=1ydRCih3-el3dJFl4pBDjf717rfFWaTpB9qulkWw43TA

在这里,我们仅将工作表参数替换为2(第二个工作表)。 响应处理看起来也有些不同:

 _.findWhere($httpResponse, {"order": $number}) 

在这里,我们正在寻找一个订单,该订单的数量与客户端在Enter number块中脚本的上一步中指示的数量一致。



最后


您仍然可以将Google表格用作存储货物和订单的数据库,并且在Aimylogic上创建的漫游器可以使用它来响应来自VKontakte组和网站上的客户的请求。

Aimylogic中的实体允许该机器人根据形态学来了解产品名称。 HTTP请求块是将机器人与可以生成JSON(或XML)的任何内容集成的好方法。 而且tools.aimylogic.com服务仅允许将Google云端硬盘上的表格转换为JSON对象数组。

在我们的示例中,自动化解决了一个非常具体的问题,最重要的是,不会导致客户离开该机器人试图完全替代人员的站点,但最终却无能为力。 相反,这里的自动化有助于提高业务效率。

在本文中,我们探讨了一种与常规Google电子表格集成的方法。 但是现在我们已经在努力将Aimylogic与现有的CMS系统集成以用于电子商务,并且将来我们将为在线商店添加新的模板。

我们提醒您,您可以一次点击“在线订单”模板在amyylogic.com上创建一个成品bot。

→带有测试机器人的站点在这里
→带有货物和订单的盘子- 在这里
→完整的Aimylogic构造函数文档和新教程可在此处找到

Source: https://habr.com/ru/post/zh-CN416245/


All Articles