void On_LOGIN_USE_PROTOCOL(JsonDotNetMessage message) { Protocol_LOGIN_ACK recvData = message.Decode<Protocol_LOGIN_ACK>(); Debug.Log("recvData.nErrorCode:" + recvData.nErrorCode); Debug.Log("recvData.biUserID:" + recvData.biUserID); Debug.Log("recvData.szUserName:" + recvData.szUserName); }
void OnReceive(string id, byte[] buffer, int offset, int length) { Debug.Log(string.Format("[id:{0}] Recv", IDTable[id])); JsonDotNetMessage recvMessage = new JsonDotNetMessage(id); recvMessage.RawData = new ArraySegment<byte>(buffer, offset, length); //MessageHandler_Normal(recvMessage); MessageHandler_Reflection(recvMessage); }
void On_GET_KEY_USE_PROTOCOL(JsonDotNetMessage message) { Protocol_GET_KEY_ACK recvData = message.Decode<Protocol_GET_KEY_ACK>(); Debug.Log("recvData.nErrorCode:" + recvData.nErrorCode); Debug.Log("recvData.szKey:" + recvData.szKey); Protocol_LOGIN_REQ sendData = new Protocol_LOGIN_REQ(); sendData.szUdid = SystemInfo.deviceUniqueIdentifier; sendData.bPlatform = (byte)Application.platform; Send_LOGIN_USE_PROTOCOL(sendData); }
void MessageHandler_Reflection(JsonDotNetMessage message) { MessageID id = IDTable[message.ID]; MethodInfo mi = HandlerFunctionTable[id]; if (mi == null) { Debug.LogWarning(string.Format("Receive unknown message:{0}", id)); return; } mi.Invoke(this, new object[] { message }); }
void MessageHandler_Normal(JsonDotNetMessage message) { MessageID id = IDTable[message.ID]; switch (id) { case MessageID.GET_KEY: On_GET_KEY(message); break; case MessageID.LOGIN: On_LOGIN(message); break; case MessageID.GET_KEY_USE_PROTOCOL: On_GET_KEY_USE_PROTOCOL(message); break; case MessageID.LOGIN_USE_PROTOCOL: On_LOGIN_USE_PROTOCOL(message); break; default: Debug.LogWarning(string.Format("Receive unknown message:{0}", id)); break; } }
void On_LOGIN(JsonDotNetMessage message) { object recvData = message.Decode(); Debug.Log(recvData); }
void On_GET_KEY(JsonDotNetMessage message) { object recvData = message.Decode(); Debug.Log(recvData); Send_LOGIN(SystemInfo.deviceUniqueIdentifier, (byte)Application.platform); }
void Send_LOGIN_USE_PROTOCOL(Protocol_LOGIN_REQ sendData) { JsonDotNetMessage message = new JsonDotNetMessage(IDTable[MessageID.LOGIN_USE_PROTOCOL]); message.Data = sendData; session.Send(message); }
void Send_LOGIN(string udid, byte platform) { JsonDotNetMessage message = new JsonDotNetMessage(IDTable[MessageID.LOGIN]); message.Data = new { udid = udid, platform = platform }; session.Send(message); }
void Send_GET_KEY(string version) { JsonDotNetMessage message = new JsonDotNetMessage(IDTable[MessageID.GET_KEY]); message.Data = new { version = version }; session.Send(message); }