問題タブ [multiuserchat]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
408 参照

xmpp - 何百万ものプライベート MUC ルームまたは ejabberd での動的 XEP-0033 会話: 何が最高ですか?

ニーズ

次のシナリオがあります。

  • 〜10万人のプレーヤー
  • 50 人の管理者

各プレイヤーは、各管理者と 1 対 1 で会話できます。プレーヤーは、別々の会話で同時にすべての管理者と 1 対 1 の会話をすることさえできます。

ただし、これらの会話のいずれかの管理者は、いつでも別の (または多数の) 管理者をこれらの何千もの会話の 1 つに招待することができます。

追加:

  • MAM で保存されたすべてのメッセージdefault:always
  • によるストリーム管理resend_on_timeout:true
  • プレーヤーは別のプレーヤーにメッセージを送信できません

例:

  • プレーヤー 1 が 3 つのアクティブな個別の会話を持っているとします。P1:Admin A, P1:Admin G, P1:Admin H
  • 次に、管理者 A が管理者 H をP1:Admin A会話に招待します (管理者 H が管理者 A の会話に招待されたという事実は、アクティブな会話を閉じませんP1:Admin H)。その後、プレイヤーはこれらのアクティブな会話を行います。
    • P1:Admin A + Admin HP1:Admin GP1:Admin H

ソリューション #1: マック ルーム

私はすべての会話を非公開の MUC ルームにすることを考えています (ユーザーが管理者とチャットしたい場合、クライアントは、私が開発する ejabberd モジュールが処理してルームを作成するカスタム IQ を発行し、プレーヤーと管理者は、この新しいルームで自動的にホワイトリストに登録されます)。

シナリオ例では、500 万の MUC ルームを意味する可能性があります。500 万の通常のチャットが一般的なシナリオであることは知っていますが、この量の部屋で問題ありませんか?

解決策 #2: XEP-0033 拡張スタンザ アドレス指定

このソリューションでは、拡張要素を持つ部屋の一部としてメッセージを識別できるようにすることを考えていましたchannel。このようにして、受信者は会話に参加したり、行ったりすることができます。

ただし、これには、ホワイトリストに登録されたユーザーのみがチャネルで話すことができる MUC ルームのセキュリティ制御はありません。このアプローチでこのプライバシーの問題を克服する方法はありますか?

要素を使用した例channel:

P1:管理者 A + 管理者 B、部屋 1

管理者 B 左、P1:管理者 A、まだ部屋 1

最終的解決?

クライアントとサーバーのカスタマイズが問題ではないことを考えると...すべての要件を考慮して、どのソリューションが最適ですか? または、別の最適なソリューションはありますか?

0 投票する
1 に答える
216 参照

spring - Spring Integration Xmpp 4 - create muc リクエストを送信する

xmpp との春の統合を構成し、メッセージを他の jid に送信できます。メッセージを作成するには、次の方法を使用します。

チャット ルームを作成したいと思います。マルチ ユーザー チャット リクエストを含むメッセージを作成する方法を見つけようとしましたが、成功しませんでした。

何か助けはありますか?

使用: 「myroommmm」にXmppHeaders.TYPE設定して"groupchat"XmppHeaders.TO機能しません..xmppサーバーログ:

統合テストを実行しています

更新 2: 使用:

次のエラーが表示されます。

(サーバーは正しく構成され、動作しています)

0 投票する
1 に答える
190 参照

xmpp - Ejabberd 保留中の MUC メッセージ

私は ejabberd サーバーに取り組んでおり、モバイル デバイスに典型的なプッシュ通知を実装しようとしています。

現時点では、ほとんどすべてがすでにうまく機能しています。

ただし、保留中のメッセージはユーザーが読む必要があります。

単純なチャットからの保留中のメッセージは、配信が保留されているすべてのメッセージを含むスプール テーブルから数えることができます。

ただし、MUC チャットの保留中のメッセージがどこにあるのかわかりません。

それを知る方法はありますか?

ありがとう!!

0 投票する
1 に答える
170 参照

mobile - XMPP を使用した永続グループ

グループの作成にXMPPMUCを使用していますが、ユーザーがオンラインになるまで問題なく動作します。ユーザーは、オフラインになるとすぐにグループを脱退します。ユーザーがオフラインのときに部屋にとどまり、戻ってきたときに目に見えないメッセージを受信するようにします。XMPP でこれを実現する方法。また、グループを作成してユーザーを動的に追加する方法。

ユーザーを常にオンラインにすることはできますか..それは良いアプローチですか? もしそうなら、どうすればこれを行うことができますか - ユーザーを常にオンラインにする

0 投票する
3 に答える
3106 参照

java - マルチユーザーチャットでプレゼンスリスナーを叩く

マルチユーザー チャットのスマック プレゼンス リスナーが呼び出されない。Smack Api を使用してログインし、roster.addRosterListener(mRoasterListener);を追加しました。しかし、チャット ルームの他のユーザーのプレゼンスが変化したときにリッスンすることに成功しませんでした。プレゼンスリスナーを機能させるために、次のコードを試しました:

そして、プレゼンスの変化をリッスンするこのクラス...

stackoverflow で利用可能な多くのリンクを試しましたが、成功しませんでした。助けてください!

0 投票する
2 に答える
1481 参照

xmpp - Prosody XMPP サーバーでチャット ルームのパスワードを設定するには?

Prosody XMPP サーバーは初めてです。サーバーをセットアップして、チャットルームを作成できます。今、特定のチャットルームを特定のユーザーセットに制限する方法を考えています。

提案は大歓迎です...

0 投票する
1 に答える
1947 参照

java - XMPP で MUC ルームに参加中にエラーが発生しました(smack)

マルチユーザーチャットを作成しようとしています。ルームへの参加中にエラーが発生します。チャットルーム作成方法:

MUCルームへの入会方法:

ユーザーが参加しているルームのリストを取得する:

ユーザーがルームに参加すると、「このルームは、構成が確認されるまで、エントリからロックされています」というメッセージが表示されます。

0 投票する
0 に答える
255 参照

java - Openfire サーバー用の WebClient SparkWeb と JwChat (XMPP)

私はXMPPの初心者です。xmpp を使用して春のフレームワーク プロジェクトを使用して、マルチ ユーザー チャットを作成しようとしています。チャットサーバーとしてopenfireを使用しています。チャットにどのクライアントを使用すればよいか、非常に混乱しています。SparkWebJwChatstrophejなどを経験しました。しかし、どれに行けばいいのかわかりませんか?