从iOS和Android端连接到xmpp时获取所有群组消息

我使用的是openfire 4.0.1版本

使用openfire Rest Api,我在服务servicename.xx.xx.xxx.xxx中创build了组聊天室。

现在房间被创build,发生了什么事情,一旦用户连接到xmpp服务器,所有的组消息正在接收回该用户,使应用程序卡住。

我听说了群聊设置下的群聊logging设置。

在这里输入图像说明

我截断了存储在openfire的MessageMes​​sage表中的所有组消息。

不过,当用户连接到xmpp时,即使我已经清除了来自MessageMes​​sage表的所有消息,用户将接收到他所属的所有组的所有消息。

如何防止那些通过xmpp来的消息?

任何帮助将appriciate。

你必须指定你的Openfire版本。

但是,对于Openfire 4.0.2

分组历史是基于数据库和客户端上的许多参数。 行为不是线性的。

1)在表OFPROPERTY属性xmpp.muc.history.reload.limit (这工作在几天,例如把30意味着“最后30天”)

2)在表OFMUCSERVICEPROP ,对于每个serviceid,你可以有(或不)0+值。 例如,对于serviceid 1( conference ),没有参数,你会得到最后25条消息,或者你可以设置数据库或编程名history.type和types( all获得所有的历史,你的情况none

3) 使用API​​ API您可以在join聊天时发送DiscussionHistory请求:使用此对象,您可以将所有参数设置为0(如:节数等等)。

history.type是设置的最高级别:只要将其声明为none并且不会回顾历史logging。