我将ejabberd XMPP服务器用于聊天客户端,该客户端还具有群聊功能。我的问题是,当一个新用户加入一个组房时,他只从房间里获得前20条消息,尽管history_size设置为200(现在)。在客户端,当新用户加入房间时,在线节包含历史元素,询问1970年后发送的消息。服务器时间是2014年,因此理论上它应该发送所有消息,或者至少200。
ejabberd.cfg muc片段:
{mod_muc, [
%%{host, "conference.@HOST@"},
{access, muc},
{access_create, muc},
{access_persistent, muc},
{access_admin, muc_admin},
{history_size, 50},
{max_users, 500}
]}
XMPP节被送去加入一个房间:
<presence
from='someusername@host'
id='someid'
to='somegroup@ccc.host/somenickname'>
<x xmlns='http://jabber.org/protocol/muc'>
<history since='1970-01-01T00:00:00Z'/>
</x>
</presence>