【问题标题】:How do we store chat conversations on MySQL database? XMPP Openfire我们如何在 MySQL 数据库上存储聊天对话? XMPP 开火
【发布时间】:2013-08-25 00:20:00
【问题描述】:

我正在构建一个网络聊天应用程序。每次按下“Enter”按钮后,我想存储两方之间的消息或对话。我正在使用 Openfire 服务器和 MySQL 数据库。我没有看到存储对话的数据库中的任何表。

有插件吗?谢谢。我正在使用 strophe js 库来发送消息。谢谢。

【问题讨论】:

  • 如果你想在按下回车的同时存储消息,你必须自己通过在回车按键处理程序中编写数据库更新代码来完成。 OpenFire 不会为您存储任何聊天消息历史记录。
  • 好的,这是有道理的。谢谢。

标签: mysql xmpp openfire strophe


【解决方案1】:

您需要在管理控制台的“插件”选项卡下提供“监控服务”的插件。安装该插件并繁荣,你准备好了!

【讨论】:

  • 您知道如何向群组中的离线用户发送离线通知吗?您知道哪个插件可以完成这项工作吗?
【解决方案2】:

只有在 Openfire 管理控制台中的 Server-->Archiving-->Archiving Settings 下启用了“Conversation State Archiving”,并且为“Archive one-to-one chats”启用了“Message Archiving”时,才会存储对话'和/或'存档群聊'。此后,消息将存储在 MySQL 数据库表“ofMessageArchive”中。

此表包含增量更新的“conversationID”、UNIX 时间戳和对话参与者的 JID。

希望这会有所帮助!

【讨论】:

  • 仅供参考,您必须安装 Monitoring 插件才能获得“存档”菜单:)
  • 我已经启用了“对话状态存档”、“消息存档”并安装了“监控插件”,但我仍然无法在“ofMessageArchive”中存储群聊。有没有其他方法可以将群聊存储在 openfire MySQL 数据库中。
  • 您对离线群组推送通知有什么想法吗?有什么插件吗?当前消息存储在普通消息表中,这与人与人之间的消息不同,当其他用户离线时,这些消息将插入离线表中。
  • 抱歉,不再与 OpenFire 打交道了。
猜你喜欢
  • 2016-08-14
  • 2016-07-19
  • 2015-07-26
  • 1970-01-01
  • 2017-11-02
  • 2017-12-27
  • 1970-01-01
  • 2018-09-30
  • 2016-02-25
相关资源
最近更新 更多