5

からMUC ルームの DiscussionHistory を取得する方法はMultiUserChat? Smack ライブラリを使用して MultiUserChat インスタンスとルームを作成できたので、ルームで行われた以前の会話をすべて表示したいと思います。

同じ経験のある方、助けてください。私はGoogleでこれについてよく検索しましたが、それでも適切なドキュメント/説明は得られませんでした.

4

1 に答える 1

14
DiscussionHistory history = new DiscussionHistory();
history.setSince(date);

muc.join(nickname, null, history, SmackConfiguration.getReplyTimeout());

// Get historical message;
Message oldMsg = muc.nextMessage(timeout);

使用することもできます

history.setMaxChars()
history.setMaxStanzas()
history.setSeconds()

いくつかの例は、テスト コードにあります。テストtestDiscussionHistoryを確認してください。

http://fisheye.igniterealtime.org/browse/smack/trunk/test/org/jivesoftware/smackx/muc/MultiUserChatTest.java?hb=true

于 2013-04-09T16:53:12.040 に答える