問題タブ [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 投票する
0 に答える
516 参照

xmpp - ejabberdで匿名ユーザーの役割をVisitorに自動的に設定しますか?

XMPPとmoc_mucを使用したグループチャット機能を備えたプロジェクトに取り組んでいます。このプロジェクトでは、登録ユーザーのみがメッセージを送信できます(匿名ユーザーは読み取りのみが可能で、書き込みはできません)。SASL匿名サポート付きのejabberdを使用しています(登録ユーザーはカスタム外部スクリプトを使用して認証されます)。

私が今思いつく唯一の方法は、2つのタイプのユーザーに対して2つの異なるホストを使用し、ユーザーが部屋に入るときはいつでも、ホストに基づいてユーザーの役割を設定するコンポーネントを作成することです。これはうまくいくかもしれませんが、一見些細な問題に対しては非常に複雑な方法のようです。私はXMPPと実際のすべての仕様/モジュール/コンポーネントについてあまり知らないので、明らかな何かを見逃したかもしれません。ポインタをいただければ幸いです。

本当にありがとう

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

xmpp - XMPP (ejabberd) を使用した MUC ルーム リストの追跡

ejabberd が提供するマルチユーザー チャット サービスで、クライアントがルームのリストを追跡できるようにしたいと考えています。これには、サーバー上のすべてのルームのルームの作成/破棄およびプレゼンス イベントの通知を受信する必要があります。

プレゼンス イベントを送信せずに、そのようなイベントに関する通知を受信するようにサブスクライブして、すべてのルームの名簿に参加する方法はありますか?

FWIW、ルームリストのリクエストを送信する方法を見つけました (http://xmpp.org/extensions/xep-0045.html#disco-rooms)。pubsub システムを理解しようとしています。 (http://xmpp.org/extensions/xep-0060.html#glossary)そこで解決策が見つかることを願っていますが、明らかなことは何もありません。

XMPPランドでこれを行う正しい(TM)方法は何ですか?

Ubuntu 10.04 + ejabberd 2.1.5-3+squeeze1 + Strophe.js & BOSH & jQuery

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

xmpp - ejabberd モジュールから muc 名簿にアクセス (disco_items?)

メッセージのカーボンコピーを外部 RESTful API に送信する ejabberd モジュールを作成しています。すべてが正常に機能し、その API へのリクエストは、送信者、受信者、およびメッセージ本文を含む POST パラメータを送信します。

このために user_send_packet および user_receive_packet フックをトリガーしており、パケットからパラメーター (送信者、受信者、本文) を抽出できます。

グループ チャット (MUC) の場合、パラメーターで MUC 名簿 (参加者) も送信したいのですが、それらにアクセスする方法がわかりません。

これのためのイベントはありますか?誰かが私にいくつかのドキュメントを教えてもらえますか?

前もって感謝します!

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

ios - xmppFrameworkを使用したejabberdサーバーでのMUCの実装

チャットルームを作って人を招待することは可能ですか?Macでejabberdをセットアップし、 このリンクをたどって1人のバディとチャットを実装しましたが、MUCを実装したいと思います。ここで利用可能なxmppframeworkが付属しているMUCのデモプロジェクトを試しましたが、エラー404リモートサーバーが見つからないたびに発生します。デリゲートメソッド

呼び出されることはありません。その代わり

このメソッドが呼び出されます。サーバーとしてローカルホストを使用してMUCを正常に実装した人はいますか?はいの場合は、使用しているXMPPクライアントを教えてください。ejabberdの場合、リモートサーバーが見つからないと表示されます。

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

ios - チャットルームへの招待を受け入れる

XMPPFrameworkを使用してMUCを作成し、以下のコードを使用してその部屋に参加するためのユーザー招待リクエストを送信できます。

ユーザー「abc」は、招待状を受け取ったことをどのように知ることができますか。また、受け入れるか拒否することによって、どのようにそれに反応することができますか。

XMPPFrameworkで、チャットルームの招待を直接処理するクラスが見つかりませんでした。私の調査によると、ユーザーがチャットルームの招待状を受け取るたびに、xmmppStreamのデリゲートメソッドが呼び出されます。

そのメッセージで、「invite」という名前のNSXMLElementが含まれているかどうかを確認し、含まれている場合は、ユーザーにコールバックを送信します。次に、ユーザーが招待を受け取ったチャットルームの名前と同じ名前でチャットルームを作成し、新しく作成されたルームに入ります。それはうまく機能しますが、静かで長く、静かでは効率的ではありません。XMPPFrameworkに、チャットルームの招待を個別に処理できるクラスがあるかどうかを知りたいです。たとえば、部屋の招待状の検出、受け入れ、拒否などです。

部屋名を抽出するための私のコード:

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

ios - XMPPFramework - MultiUserChat ルームを作成するには?

XMPPFramework を使用して iPhone で GroupChat を実現するにはどうすればよいですか。コードを追加しようとしましたが、ルームが作成されません。ルームが作成されたかどうかを知るにはどうすればよいですか。XMPPRoomDelegate が呼び出されません。前もって感謝します

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

android - Androidでグループチャットを作成するには?

Androidでグループチャット(MultiUserChat)を作成するためにSmackライブラリを使用しています。MultiUserChat インスタンスを作成し、そのドメインで利用可能なルームを取得し、特定のルームに参加できます。これについていくつか質問があります。

  1. アプリケーション全体で MUC の同じインスタンスを維持する必要がありますか?
  2. 特定の部屋の過去 20 件のディスカッション履歴を取得するにはどうすればよいですか?

今、私はこのようにしてディスカッション履歴を取得しようとしています

上記のコードを使用することで、履歴で利用可能な最初のメッセージでもあるサーバーからメッセージを 1 つだけ取得しています。しかし、私の要件は、ルームのディスカッション履歴で利用可能な最後の 20 件のメッセージをすべて取得したいということです。

この問題について誰か助けて...