public bool SocketStrDataHandle(string message, out ClearDataFormat clearData) { JsonDataQy _jsonData = JsonToolsQy.GetJsonData(message); string _typeStr = string.Empty; clearData = new ClearDataFormat(); if (_jsonData["Tp"] != null) { _typeStr = _jsonData["Tp"].ToString(); int _typeInt; bool isSucc = int.TryParse(_typeStr, out _typeInt); if (isSucc) { REV_MSG_TYPE _typeEnum = (REV_MSG_TYPE)_typeInt; clearData.SetType(_typeEnum); if (_jsonData["Tm"] != null) { string _time = _jsonData["Tm"].ToString(); clearData.SetTime(_time); } if (_jsonData["Mg"] != null) { string _msg = _jsonData["Mg"].ToString(); clearData.SetMsg(_msg); } return(true); } else { //type不是定义的数字类型 return(false); } } else { //找不到相应Type return(false); } }
public string ToJson() { return(JsonToolsQy.ToJson(this)); }
/// <summary> /// 启动 Look At Me 服务 /// </summary> /// <param name="url">接口Url</param> /// <param name="token">调用方的授权码</param> /// <param name="gameId">游戏不同,该值由游戏制作方确定</param> /// <param name="deviceIds">设备编号,如果不填自动获取 MAC</param> public void Start(string token, string gameId, string[] deviceIds = null) { string _url = ""; m_token = token; m_gameId = gameId; switch (m_netOption) { case NET_OPTION.LAN: _url = POST_URL_LAN; break; case NET_OPTION.WAN: _url = POST_URL_WAN; break; } SndToMasterData sndMessage = null; #region 若填写deviceIds,则以填写的值为准,否则自动获取该机器Mac; if (deviceIds == null || deviceIds.Length == 0) { string[] _macOrDevice = GetMacAdress.GetAllMacs(); sndMessage = new SndToMasterData(token, gameId, _macOrDevice, DEVICED_TYPD.MACS); } else { switch (deviceIds.Length) { case 1: sndMessage = new SndToMasterData(m_token, m_gameId, deviceIds, DEVICED_TYPD.DEVICE_ONE); break; case 2: sndMessage = new SndToMasterData(m_token, m_gameId, deviceIds, DEVICED_TYPD.DEVICE_TWO); break; case 3: sndMessage = new SndToMasterData(m_token, m_gameId, deviceIds, DEVICED_TYPD.DEVICE_THREE); break; default: sndMessage = new SndToMasterData(m_token, m_gameId, deviceIds, DEVICED_TYPD.DEVICE_ONE); DebugQy.LogWarning("deviceIds is wrong."); string argStr = "deviceIds param is wrong."; m_DataEventTrigger(DATA_STATUS_CODE.ERROR_TRIGGER_CODE, argStr); return; } } #endregion string msg = JsonToolsQy.ToJson(sndMessage); m_PostRequest(_url, msg); }
/// <summary> /// 主控服务器返回值的数据解析 /// </summary> /// <param name="message">返回数据</param> /// <param name="msgFromMaster">外部应用数据</param> /// <returns></returns> public bool WebDataHandle(string message, out MsgFromMaster msgFromMaster) { DebugQy.LogTag("WebDataHandle():--- in ---", message); msgFromMaster = new MsgFromMaster(); JsonDataQy _jsonData = JsonToolsQy.GetJsonData(message); if (_jsonData["status"] != null) { if (_jsonData["status"].ToString() != "0") { DebugQy.LogTag("status:", _jsonData["status"] + " WebNet status is wrong."); return(false); } else { //待扩展其他错误(非“0”)状态码 } } else { DebugQy.LogTag("status:", _jsonData["status"] + " WebNet status is not finger ."); return(false); } DebugQy.LogTag("status:", _jsonData["status"] + " WebNet status is right."); if (_jsonData["message"]["WMIp"] != null) { msgFromMaster.WMIp = _jsonData["message"]["WMIp"].ToString(); } else { DebugQy.LogWarning("WebDataHandle(): Receive[message][WMIp] is null . So it's use default value."); } if (_jsonData["message"]["WMPort"] != null) { msgFromMaster.WMPort = _jsonData["message"]["WMPort"].ToString(); } else { DebugQy.LogWarning("WebDataHandle(): Receive[message][WMPort] is null . So it's use default value."); } if (_jsonData["message"]["roomId"] != null) { msgFromMaster.roomId = _jsonData["message"]["roomId"].ToString(); } else { DebugQy.LogWarning("WebDataHandle(): Receive[message][roomId] is null . So it's use default value."); } if (_jsonData["message"]["gameSign"] != null) { msgFromMaster.gameSign = _jsonData["message"]["gameSign"].ToString(); } else { DebugQy.LogWarning("WebDataHandle(): Receive[message][gameSign] is null . So it's use default value."); } if (_jsonData["message"]["deviceId"] != null) { msgFromMaster.deviceId = _jsonData["message"]["deviceId"].ToString(); } else { DebugQy.LogWarning("WebDataHandle(): Receive[message][deviceId] is null . So it's use default value."); } DebugQy.LogTag("WebDataHandle():--- out ---", message); return(true); }