void Send_LOGIN(string udid, byte platform) { MiniJSONMessage message = new MiniJSONMessage(IDTable[MessageID.LOGIN]); message.AddField("udid", udid); message.AddField("platform", platform); session.Send(message); }
void OnReceive(string id, byte[] buffer, int offset, int length) { Debug.Log(string.Format("[id:{0}] Recv", IDTable[id])); MiniJSONMessage recvMessage = new MiniJSONMessage(id); recvMessage.RawData = new ArraySegment<byte>(buffer, offset, length); //MessageHandler_Normal(recvMessage); MessageHandler_Reflection(recvMessage); }
void MessageHandler_Reflection(MiniJSONMessage 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 On_LOGIN(MiniJSONMessage message) { if (message.Data.ContainsKey("errorcode") == true) { Debug.Log(ErrorCode_LOGIN.ToString(int.Parse(message.Data["errorcode"].ToString()))); } foreach (var kvp in message.Data) { Debug.Log(string.Format("{0}={1}", kvp.Key, kvp.Value)); } }
void On_GET_KEY(MiniJSONMessage message) { if (message.Data.ContainsKey("errorcode") == true) { Debug.Log(ErrorCode_GET_KEY.ToString(int.Parse(message.Data["errorcode"].ToString()))); } foreach (var kvp in message.Data) { Debug.Log(string.Format("{0}={1}", kvp.Key, kvp.Value)); } Send_LOGIN(SystemInfo.deviceUniqueIdentifier, (byte)Application.platform); }
void MessageHandler_Normal(MiniJSONMessage message) { MessageID id = IDTable[message.ID]; switch (id) { case MessageID.GET_KEY: On_GET_KEY(message); break; case MessageID.LOGIN: On_LOGIN(message); break; default: Debug.LogWarning(string.Format("Receive unknown message:{0}", id)); break; } }
void Send_GET_KEY(string version) { MiniJSONMessage message = new MiniJSONMessage(IDTable[MessageID.GET_KEY]); message.AddField("version", version); session.Send(message); }