是否有任何选项可以在开放式服务器上禁用群聊消息历史记录?

时间:2014-03-19 05:17:00

标签: ios iphone xmpp chat openfire

我一直在创建group chat application,同时实现群聊功能我遇到问题,每次join the roomopen fire sends last two days messages.

这是我每次加入房间时都会收到的帖子。

<message xmlns="jabber:client" id="05qEM-18" to="210@openfire.indianic.net/94e509b9" type="groupchat" from="top@conference.openfire.indianic.net/258"><body>Very good morning!!!</body><delay xmlns="urn:xmpp:delay" stamp="2014-03-19T05:15:06.542Z" from="258@openfire.indianic.net/Smack"/><x xmlns="jabber:x:delay" stamp="20140319T05:15:06" from="258@openfire.indianic.net/Smack"/></message>

任何好友都可以建议disable history messageopen fire server的选项在哪里? 所以我只会收到一次消息。

提前致谢。

3 个答案:

答案 0 :(得分:5)

您应该禁用群聊历史记录,您应该指定您不希望接收历史记录,如XEP-0045中所述:

<presence
    from='hag66@shakespeare.lit/pda'
    id='n13mt3l'
    to='coven@chat.shakespeare.lit/thirdwitch'>
  <x xmlns='http://jabber.org/protocol/muc'>
    <history maxchars='0'/>
  </x>
</presence>

您的XMPP库应该能够指定加入数据包的房间的“maxchars”或“maxstanzas”或“seconds”属性。

答案 1 :(得分:1)

是的,但我不推荐它! 在Web管理页面上,转到“群聊”部分,在那里,转到群聊设置。如果您还没有,请创建新服务,然后单击它。它将带您进入群聊服务属性。在左侧,您可以找到历史记录设置,您可以根据需要设置历史记录设置。

图片:

Step 1.

Step 2.

答案 2 :(得分:-1)

在管理任何对话历史记录时,我发现要做的最好的事情就是简单地修改embedded-db.script文件。只需编辑它就会记录++,并使用以下语句(INSERT INTO OFPROPERTY VALUES)(INSERT INTO OFROSTERGROUPS VALUES)(INSERT INTO OFID VALUES)删除任何内容。这将清除所有聊天记录,包括您的群聊。您可以筛选并删除当然需要的内容。我会复制并粘贴数据库,以防您删除所需的内容 - 确保先停止服务器...