2016-04-05 49 views
0

私はWebSocket上で読んでいます。多くのチュートリアルとブログ(主に単純なチャットアプリケーションの作成について)を読んだ後、未回答の質問が1つあります。WebSocketサーバー上の特定のユーザーにメッセージを送信する方法

脇に使われる技術の種類(node.jsまたはpythonのPHP)私は、最初にクライアントのイベントをWebSocketサーバーに取得せずに(1つのユーザーまたは複数のユーザーのグループにメッセージを送信する方法は見つけられません。 onmessage())。

既存の実行中のWebSocketインスタンスを使用して、1つ以上の接続されたブラウザ(websocketクライアント)に情報(テキスト)を送信/ブロードキャストするスクリプト(bashまたはphp)を、 ??

申し訳ありませんこれはばかげた質問ですが、ウェブ上でこれらのブログを読んで回答を見つけることができません。

ありがとうございます。

+0

誰かがあなたを接続していない場合は、明らかに彼にメッセージを送信できませんか? –

+0

あなたはすでに稼働しているサーバにハックして情報を送信したいのですか、何か不足していますか? :) 'on connect'ハンドラの送信関数**外**を移動したいのであれば、もちろん可能です! –

+0

私はまずwebsocketクライアントからconnect()があることを知っています。これまでのところ私は理解しています。そして、このconnect()で、私はwebSocketサーバーから 'welcome user!'のような返事を送ることができました。しかし、それは私の根底にある質問です:もし私websocketサーバー - このユーザーのユーザーに2番目のメッセージを送信したい場合、あなたはまだ接続されていますか? websocketユーザーがwebsocketサーバーに何かを最初に送信しないで、この2番目のメッセージを送信するにはどうすればよいですか?ここで何かをハッキングするのは興味深いことではありませんが、これは深刻な問題です。 – user2795648

答えて

0

のように、簡単にソケットを使用することができます私が理解してきたから、:あなたは、常に関係なく、オブジェクトまたは単一の変数の中にいた場合、どこかにソケットを保存することはできません

// main.js 
this.sockets = {}; 
myOtherModule.init(sockets); 
io.on('connection', function(socket)) { 
    sockets[socket.id] = socket; 

    socket.on('command', myOtherModule.onSocketCommand); 
} 


// myOtherModule.js 
this.init = function(sockets) { 
    this.sockets = sockets; 
} 
this.onSocketCommand = function() { 
    this.sockets['other.socket.id'].emit('message'); 
} 

。その後、いつでもメッセージを送信するために使用することができます。

関連する問題