3

XMPP の実装では、ユーザーがオフラインになった後もルームにとどまり、引き続きルームの会話を監視し、プッシュ通知をユーザーに送信できるようにしたいと考えています。

ユーザーが部屋を出る理由を制御する方法はありますか? ユーザーがオフラインになった後も、そのユーザーをルームに留めておきたいと考えています。

または、プッシュ通知を送信できるように、どのユーザーがルームにいたかを監視するためのより良い方法はありますか?

4

1 に答える 1

4

ここで腰から撮影しますが、それは私が少し前に考えたことに似ています..永続的なMUCルーム。

変更された mod_muc_room を含む可能なアプローチ:

  • ルームの作成時に、{ルーム名}_Participants という名前の共有名簿グループ () を作成します
  • 誰かが部屋に参加するたびに、その人を名簿に追加します
  • 誰かが /me の葉を送るたびに、名簿からそれらを削除します
  • ルームに関するメッセージを受信するたびに、'While you were out...' スタイルのメッセージでラップして、オンラインではない共有名簿内のユーザーに送信します。
  • 部屋が殺されたら、共有名簿を削除します

次のモジュールのコードをチェックアウトしますが、ほとんどは mod_muc_room.erl の 176 行付近をチェックアウトします ( https://git.process-one.net/~badlop/ejabberd/badlop-ejabberd/blobs/HEAD/src/mod_muc/ mod_muc_room.erl#line176 )

于 2012-05-25T22:10:36.743 に答える