問題タブ [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 に答える
3304 参照

python - pyxmpp: muc クライアントを作成するための簡単なチュートリアル?

チャット ルームにログインし、いくつかのランダム メッセージを投稿して終了するだけの、ejabberd クラスタ用の簡単な負荷テスト スクリプトを作成しようとしています。

この特定のテストを tsung で試みましたが、作成者によると、muc 機能はこのリリースに含まれていませんでした。

pyxmpp にはこの機能があるようですが、それを機能させる方法を理解できれば大変です。ここでは、誰かがクライアントを構築し、muc に参加/投稿する方法について簡単に説明してくれることを願っています。

ありがとう!

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

xmpp - ejabberd で匿名ログインを設定する際の問題

ejabberd.cfgには次のものがあります

しかし、speeqe javascript クライアント (speeqe.com) を使用して接続すると、送信されることがわかります

サーバーは次のように応答します

メカニズム、DIGEST-MD5 & PLAIN に注意してください。私が間違っていなければ、ANONYMOUS もメカニズムとして持つべきです。したがって、speeqe は単純に接続を終了します。

そのため、匿名構成または muc 構成に何かが欠けているに違いないと考えています。mod_muc configg には、

それで、私は何が欠けていますか?

ありがとう

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

cookies - ejabberd の muc からルーム名簿と履歴を再リクエストする方法

ユーザーが ejabberd MUC に参加すると、サーバーは完全なルーム名簿とチャット履歴をユーザーに送信します。

私の Web ベースのクライアントでは、ページをリロードしてもルームを維持する必要があります。私の問題は、ページがアンロードされるときに最初の情報がすべて失われることです。

ATM 名簿と部屋の履歴を json にシリアル化し、Cookie に保存することで、この問題を回避しています。ただし、これは非常に悪い考えです (tm)。多くのユーザーがいる部屋では、4k の一般的な Cookie 制限をすぐに超える可能性があります。

質問:実際に MUC に再参加することなく、参加時にサーバーがユーザーに送信する情報を再要求するにはどうすればよいですか?

名簿の 1 つのアプローチは、"http://jabber.org/protocol/disco#items" の名前空間でクエリ iq を送信することですが、プレゼンス情報や拡張情報 (実際の非匿名ルームの場合は jid)

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

erlang - プログラムで多くの部屋を作成する

モジュールからマルチ ユーザー チャット ルームを作成する必要があります。mod_muc:create/5 を使用しようとしています -

しかし、クライアントを実行してログインしても何も起こりません。部屋は作りません。

モジュール コードから muc room を正しく作成するにはどうすればよいですか? そして、create_room/5 が実行される ejabberd mod_muc ソース コードのどこを見つけることができますか?

ありがとうございました。

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

erlang - exmppでmuc roomにログイン

exmpp ボットでマルチ ユーザー チャット ルームにログインするにはどうすればよいですか?

使用してみてください:

しかし、エラーが発生します:

ありがとうございました。

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

xmpp - XMPP - チャット ルームから最後の n 件のメッセージを取得する

ルームに参加せずに、xmpp (特に ejabberd) の muc の最後の n メッセージをクエリする方法があるかどうかは誰でも知っています。

ありがとう。

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

ejabberd - Ejabberd: MUC の追加のメッセージ タイプ

追加機能を備えた多数の MUC チャットが必要です。

  1. ユーザーの部屋をコードから手動で変更する

  2. 特別な「システム」呼び出しを処理します (たとえば、/changeroom のような呼び出しは全員に転送する必要はありませんが、システムによって処理されます)

  3. ユーザーに関する多くの追加データを mnesia テーブルに保存する

  4. すべての履歴を hdd の db のどこかに保存し、要求に応じて返します。

頭に浮かぶ唯一のこと (2 番目のポイントについて) は、package_fillter イベントを処理するすべてのパッケージをキャッチすることです。しかし、それは重すぎるようです。

何をアドバイスできますか?

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

javascript - XMPP pubsub では、サブスクライバーがサブスクリプション リストを取得したり、MUC と組み合わせたりすることは可能ですか?

XMPP pubsub では、サブスクライバーがサブスクリプション リストを取得したり、pubsub サービスを MUC と組み合わせたりして、サブスクライバーが (MUC のように) オンラインで人を見ることができるようにすることは可能ですか?

購読リストを取得できるのは所有者だけですか? どうにかして、pubsub のすべての人に公開することはできますか?

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

ios - robbiehanson XMPPframework を使用した iOS の MUC

robbiehanson XMPPframework を使用して iOS に MUC を実装するための段階的な手順は何ですか?

ルームを割り当ててから、ストリームを有効にしてルームに参加してみました。

しかし、以下のような回答がありました。

また、次の iq を受け取りました。xmppStream:didReceiveIQ: - 4DD4A6E2-E24F-4D38-AD87-15070B6AD90E