我想在加入群组时禁用检索群聊(MUC)历史记录 - Android

Saa*_*zzz 1 android xmpp openfire smack muc

我一直在加入房间时接收群聊历史.更具体地说,每当我加入一个组时,我都会收到我发送给该组的最后一条消息(只有一条消息).我已经尝试了以下方法来禁用它..

  • 根据文档建议,我在加入房间时已经将值'maxchars ='0'与初始状态的历史参数一起传递.
  • 在Web管理页面,转到群聊部分,然后是群聊设置 - >群聊服务属性 - >历史记录设置 - >不显示历史记录

虽然我已经尝试了所有这些可能的方法,但在加入房间时仍然收到历史信息.请注意,我在加入时收到的消息包含延迟延期.如果重要的话

Lok*_*esh 8

试试这个..

    MultiUserChat muc = new MultiUserChat(mConnection, room_name);
    Log.d(TAG, "JOINING => " + room_name);

    DiscussionHistory history = new DiscussionHistory();
    history.setMaxStanzas(0);

     muc.join(mNickName, null, history,SmackConfiguration.getDefaultPacketReplyTimeout());
Run Code Online (Sandbox Code Playgroud)

而且,如果得到"组是异步的"这条消息,那么它就像你加入组的通知.只是把这个条件放在groupchat监听器中.

  • 作品完美!我想知道为什么OP不接受这个答案:/ (2认同)