2013-03-12 4 views
1

로그인 한 클라이언트 측 사용자 이름을 클라이언트가 입력 한 메시지와 함께 websocket 스크립트로 보내고 싶습니다. 메시지와 함께 보내려면 다른 변수 사용자 이름을 구현하는 지원이 필요합니다. 지금은 사용하고 있습니다 : https://github.com/Flynsarmy/PHPWebSocket-Chat와 JS는로 전송되는 FancyWebSocket.This되는 서버와Websocket에 사용자 정의 데이터 추가하기

Server.send('message', text); 

입니다 :

: 나의 server.php에 바인더 제본되어

var FancyWebSocket = function(url) 
{ 
    var callbacks = {}; 
    var ws_url = url; 
    var conn; 

    this.bind = function(event_name, callback){ 
     callbacks[event_name] = callbacks[event_name] || []; 
     callbacks[event_name].push(callback); 
     return this;// chainable 
    }; 

    this.send = function(event_name, event_data){ 
     this.conn.send(event_data); 
     return this; 
    }; 

    this.connect = function() { 
     if (typeof(MozWebSocket) == 'function') 
      this.conn = new MozWebSocket(url); 
     else 
      this.conn = new WebSocket(url); 

     // dispatch to the right handlers 
     this.conn.onmessage = function(evt){ 
      dispatch('message', evt.data); 
     }; 

     this.conn.onclose = function(){dispatch('close',null)} 
     this.conn.onopen = function(){dispatch('open',null)} 
    }; 

    this.disconnect = function() { 
     this.conn.close(); 
    }; 

    var dispatch = function(event_name, message){ 
     var chain = callbacks[event_name]; 
     if(typeof chain == 'undefined') return; // no callbacks for this event 
     for(var i = 0; i < chain.length; i++){ 
      chain[i](message) 
     } 
    } 
}; 

$Server->bind('message', 'wsOnMessage');  
function wsOnMessage($clientID, $message, $messageLength, $binary) 

답변

0

귀하가 보내는 콘텐츠는 귀하에게 달려 있습니다. 당신은 예를 들어, 그럼 당신은 파이프 | 기호에 수신 된 문자열을 분할하여 서버에서 사용자 이름을 추출 할 수 있습니다

Server.send("USERNAME|message", text); 

처럼 보낼 수 있습니다.

관련 문제