0

xep-0045 から: http://xmpp.org/extensions/xep-0045.html#enter-history ユーザーがルームに参加しているときにのみルーム履歴メッセージを取得できるようです。たとえば、ユーザーはルームに参加するときに 20 件のメッセージを受け取ることができます。

しかし、ルームに参加した後、ユーザーがより多くの履歴メッセージを必要とする場合、これを達成する方法はないようです。

何か案は?

4

1 に答える 1

0

この問題を解決しました。2 つの解決策があります。 1. 現在の ejabberd MAM は MAM MUC をサポートしていません。ただし、テストに使用できるブランチがあります。まだ公開されていないことを忘れないでください。 https://github.com/processone/ejabberd/blob/master/src/mod_mam.erl

  1. user_send_packet をフックするモジュールを作成し、フックで MUC メッセージを SQL に格納します。次に、MUC メッセージを要求するための http API を提供します。クライアント側の観点からは、HTTP API を使用して MUC 履歴メッセージをクエリします。

このスレッドを参照してください: ejabberd MAM は MUC では機能しません

于 2015-06-25T15:13:09.573 に答える