如何存储和检索对话流的聊天记录?

Posted

技术标签:

【中文标题】如何存储和检索对话流的聊天记录?【英文标题】:How to store and retrieve the chat history of the dialogflow? 【发布时间】:2018-09-14 20:55:09 【问题描述】:

我想将聊天从 Google 对话流重定向到人类。为此,我想获取用户进行的对话的历史记录。有没有存储历史的平台?如果是,如何访问它。如果没有,如何实现这个功能..

【问题讨论】:

【参考方案1】:

目前没有用于检索会话历史记录的 API。唯一的选择是自己保存历史记录。

您可以使用任何您熟悉的数据库,mysql、MongoDB,甚至是云托管数据库,例如 Firebase Realtime Database

代码不会太难,每次用户发送新消息并且每次机器人回答时,您都必须将该消息保存到数据库中,并带有正确的时间戳和聊天 ID。

当用户被重定向时,您将使用聊天 ID 获取来自该会话的所有消息,按时间戳对它们进行排序,您将获得完整的聊天历史记录。

一些可能对您有所帮助的答案/教程:

Best way to store chat messages in a database? Storing chat messages inside a MySql table Firebase Web chat tutorial

【讨论】:

但这需要用户将消息发送到我的 REST api,然后其余 api 将消息发送到 dialogflow 对吗?另外,社交媒体集成呢? 使用 webhook,或将社交媒体集成到您的网络服务器中。 Any Entrypoint <> your server <> Dialogflow

以上是关于如何存储和检索对话流的聊天记录?的主要内容,如果未能解决你的问题,请参考以下文章

优势数据库如何检索连接名称

操纵对话流的意图实体

论文泛读174基于相关知识和目标的主动检索式聊天机器人

论文泛读174基于相关知识和目标的主动检索式聊天机器人

从 Java 中的 Google Talk 中检索离线消息和聊天历史记录

如何在聊天机器人中不使用对话框流程提供输入和输出响应?