WebRtcMsg ConvertDataToWebRtcMsg(object data)
    {
        string    str = data.ToString();
        WebRtcMsg msg = JsonConvert.DeserializeObject <WebRtcMsg>(str);

        //string strChatLog = "user#" + msg.id + ": " + msg.body;
        return(msg);
    }
 void InitHandlers()
 {
     socket.On("welcome", (data) =>
     {
         Debug.Log("SocketIO: welcome");
         WebRtcMsg msg = ConvertDataToWebRtcMsg(data);
         myUserId      = msg.id;
         this.OnWelcome(msg);
     });
     socket.On("webrtc-offer", (data) =>
     {
         WebRtcMsg msg = ConvertDataToWebRtcMsg(data);
         if (msg.id == myUserId)
         {
             return;
         }
         Debug.Log("SocketIO: webrtc-offer");
         this.OnOffer(msg);
     });
     socket.On("webrtc-answer", (data) =>
     {
         WebRtcMsg msg = ConvertDataToWebRtcMsg(data);
         if (msg.id == myUserId)
         {
             return;
         }
         Debug.Log("SocketIO: webrtc-answer");
         this.OnAnswer(msg);
     });
     socket.On("join", (data) =>
     {
         WebRtcMsg msg = ConvertDataToWebRtcMsg(data);
         if (msg.id == myUserId)
         {
             return;
         }
         Debug.Log("SocketIO: join");
         this.OnJoin(msg);
     });
     socket.On("exit", (data) =>
     {
         WebRtcMsg msg = ConvertDataToWebRtcMsg(data);
         if (msg.id == myUserId)
         {
             return;
         }
         Debug.Log("SocketIO: exit");
         this.OnExit(msg);
     });
 }