コード例 #1
0
        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);
            }
        }
コード例 #2
0
 public string ToJson()
 {
     return(JsonToolsQy.ToJson(this));
 }
コード例 #3
0
        /// <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);
        }
コード例 #4
0
        /// <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);
        }