public void handleMessage(Message msg) { print ("Receive: " + msg.Marshal ()); if (msg.type == Const.kHandshakeAccept) { if (status == kStatusConnecting) { id = msg.peer_id; } else { Debug.LogError ("Unexpected handshake accept: " + msg.type); } } else if (msg.type == Const.kHandshakeError) { if (status == kStatusConnecting && connectingRetries < maxConnectingRetries) { connectingRetries += 1; Debug.LogError ("Handshake error. Retry " + connectingRetries + "/" + maxConnectingRetries + ": " + msg.type); this.Invoke ("setupSocket", 500); closeSocket (); status = kStatusDisconnected; } else { Debug.LogError ("Handshake error. Disconnected: " + msg.type); } } else if (msg.type == Const.kHandshakeClose) { Debug.Log ("Receive handshake close"); status = kStatusDisconnected; closeSocket (); } else if (msg.type.StartsWith (Const.kHandshake)) { Debug.LogWarning ("Unknown handshake message: " + msg.type); } else if (msg.type == Const.kAck) { // Do nothing } else { handleControlMessage (msg); } }
public void sendMessage(Message msg) { string s = msg.Marshal (); Debug.Log ("Send message: " + s); writeSocket (s); }