我们如何将聊天记录存储在MySQL数据库中?XMPP Openfire

6
我正在构建一个网络聊天应用程序。我希望在每次按下“Enter”按钮后存储两个聊天方之间的消息或对话。我正在使用Openfire服务器和MySQL数据库。我没有看到任何表格来存储对话。是否有适用于此功能的插件?谢谢。我正在使用strophe js库发送消息。谢谢。

2
如果你想在按下回车键时存储消息,你必须自己编写数据库更新代码并在回车键处理程序中实现。OpenFire不会为你存储任何聊天消息历史记录。 - Harikrishnan
2个回答

4
只有在您的Openfire管理控制台中启用了“对话状态归档”,并且“消息归档”已启用“归档一对一聊天”和/或“归档群组聊天”时,才会存储对话。此后,消息将存储在MySQL数据库表“ofMessageArchive”中。该表包含递增更新的“conversationID”,UNIX时间戳和对话参与者的JIDs。
希望这可以帮到您!

2
请注意,您必须安装监控插件才能获得“归档”菜单 :) - hriziya
我已经启用了“会话状态归档”、“消息归档”,并安装了“监控插件”,但仍然无法将群聊存储在“ofMessageArchive”中。是否有其他方法可以将群聊存储在Openfire MySQL数据库中? - Sunil Bhawsar
你有没有关于离线群推送通知的想法?有什么插件可以实现这个功能吗?目前,消息存储在普通的消息表中,而不是点对点消息表。当其他用户离线时,这些消息会被插入到离线表中。 - Shashank Shah
抱歉,不再处理OpenFire相关事宜。 - Radix

1
您需要在管理控制台的插件选项卡下安装一个名为“监控服务”的插件。安装该插件后,即可开始使用!

你有没有想过如何向群组中的离线用户发送离线通知?你知道有哪些插件可以完成这项工作吗? - Shashank Shah

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接