跳到主要内容

实现智能客服关键词自动回复效果

以下是项目的最终效果

本文主要分享该项目中实现关键词自动回复的核心逻辑。

首先,客服的对话窗口是一个中继器,关于如何通过中继器实现这种对话效果,各位可参考本人之前分享的文章《【Axure 教程】中继器,你过来,我们“聊聊”》,本项目就是在此基础上修改的。

接下来讲讲重点——如何实现关键词自动回复效果。

首先讲一下原理。这个功能的实现需要两个中继器,一个是上文提过的,用来保存对话,另一个则是用来保存关键词和回复内容。当用户输入并发送内容时,将内容在存放关键词的中继器中进行查找,如果匹配到,就将关键词对应的内容添加到对话中继器中,这样就可以实现关键词触发回复的效果(在本项目中,存放关键词的中继器被放置到工作区的负空间,所以是看不到的)。

原项目涉及的交互比较多,接下来我用一个另一个简单的小案例来解释一下这个逻辑在 Axure 中是如何实现的。

先画界面,包含两个中继器,一个输入框和发送按钮。

两个中继器的结构是一样的,分别包含3列:First_name、Last_Name、Score。

要实现的效果是,点击发送时,如果输入框的内容不为空且能在“源数据”的中继器中匹配到对应的“First_Name”,则将对应的整行数据添加到“查询结果”的中继器中。

从这里你应该可以看出,所谓的“源数据”对应的就是上文说的关键词中继器,而“查询结果”就是对话中继器,形式不同,但原理是相同的。

配置也不复杂,首先找到“源数据”中继器中用来显示“First_Name”的矩形,添加载入事件,载入时判断“First_Name”与输入的内容是否相同,如果是,就往“查询结果”中继器添加1数据,添加的数据分别为当前这一行的 First_name、Last_Name、Score。

接下来给发送按钮添加单击时触发该矩形的载入事件就完成了。

看看效果:

当输入的 First_Name 不存在时,点击没有任何效果,存在时,会在右侧显示查询到的数据,如果把“源数据”的中继器隐藏掉或拖入负空间,则会是这样的效果:

以上便是本文的全部内容,感谢阅读!