Exemplo n.º 1
0
        public async Task <bool> PerformRequestAsync()
        {
            try
            {
                await RequestPerMinuteManager.WaitForNextRequest().ConfigureAwait(false);

                var httpValidationResponse = await HttpClient.PostAsync(FUTAccount.FUTPlatform.Route + "/ut/game/fifa18/captcha/fun/validate", new StringContent($"{{\"funCaptchaToken\":\"{_captchaResult}\"}}"));

                string validationResponse = await httpValidationResponse.Content.ReadAsStringAsync();

                if (httpValidationResponse.Headers.Contains("Proxy-Authorization"))
                {
                    return(false);
                }
                return(true);
            }
            catch (HttpRequestException httpEx)
            {
                return(false);
            }
            catch (Exception e)
            {
                return(false);
            }
        }
        public async Task <bool> PerformRequestAsync()
        {
            try
            {
                await RequestPerMinuteManager.WaitForNextRequest().ConfigureAwait(false);

                AddMethodOverrideHeader(HttpMethod.Delete);
                var uriString = FUTAccount.FUTPlatform.Route + "/ut/game/fifa18/activeMessage/" + _id;
                uriString += "?_=" + Helper.CreateTimestamp();
                var content = new StringContent(" ");
                content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");


                var userResponseMessage = await HttpClient.PostAsync(uriString, content).ConfigureAwait(false);

                RemoveMethodOverrideHeader(HttpMethod.Delete);
                if (userResponseMessage.Headers.Contains("Proxy-Authorization"))
                {
                    return(false);
                }
                return(true);
            }
            catch (Exception e)
            {
                return(false);
            }
        }
Exemplo n.º 3
0
 public FUTRequestBase(FUTAccount account, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod loginMethod)
 {
     FUTAccount = account;
     RequestPerMinuteManager       = rpmManager;
     RequestPerMinuteManagerSearch = rpmManagerSearch;
     CurrentLoginMethod            = loginMethod;
 }
Exemplo n.º 4
0
        public async Task <bool> PerformRequestAsync()
        {
            try
            {
                await RequestPerMinuteManager.WaitForNextRequest().ConfigureAwait(false);

                AddMethodOverrideHeader(HttpMethod.Put);
                var content = new StringContent(" ");
                content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");

                var uriString = FUTAccount.FUTPlatform.Route + "/ut/game/fifa18/auctionhouse/relist";
                uriString += "?_=" + Helper.CreateTimestamp();
                var creditsResponseMessage = await HttpClient.PostAsync(uriString, content).ConfigureAwait(false);

                RemoveMethodOverrideHeader(HttpMethod.Put);
                if (creditsResponseMessage.Headers.Contains("Proxy-Authorization"))
                {
                    return(false);
                }
                var result = await creditsResponseMessage.Content.ReadAsStringAsync();

                var r = await Deserialize <CreditsResponse>(result);

                return(!r.HasError);
            }
            catch (HttpRequestException httpEx)
            {
                return(false);
            }
            catch (Exception e)
            {
                return(false);
            }
        }
Exemplo n.º 5
0
        public LoginWebRequest(FUTAccount account, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod login) : base(account, rpmManager, rpmManagerSearch, login)
        {
            _mailClient = MailClientFactory.Create(account.EMail, account.EMailPassword);

            FUTAccount.FUTPlatform     = new FUTPlatform();
            FUTAccount.FUTPlatform.SKU = Constants.SKUWeb;
        }
Exemplo n.º 6
0
        public async Task <DiscardItemResponse> PerformRequestAsync()
        {
            try
            {
                if (!_muling)
                {
                    await RequestPerMinuteManager.WaitForNextRequest().ConfigureAwait(false);
                }
                else
                {
                    await Task.Delay(2500);
                }
                AddMethodOverrideHeader(HttpMethod.Delete);
                var content = new StringContent(" ");
                content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");

                var uriString = FUTAccount.FUTPlatform.Route + "/ut/game/fifa18/item/" + _item;
                uriString += "?_=" + Helper.CreateTimestamp();
                var deleteResponseMessage = await HttpClient.PostAsync(uriString, content).ConfigureAwait(false);

                RemoveMethodOverrideHeader(HttpMethod.Delete);
                if (deleteResponseMessage.Headers.Contains("Proxy-Authorization"))
                {
                    var resp = new DiscardItemResponse();
                    resp.Code = FUTErrorCode.CaptchaException;
                    return(resp);
                }
                var result = await Deserialize <DiscardItemResponse>(deleteResponseMessage);

                return(result);
            }
            catch (HttpRequestException httpEx)
            {
                if (httpEx.InnerException.GetType() == typeof(SocketException))
                {
                    var resp = new DiscardItemResponse();
                    resp.Message = httpEx.ToString();
                    resp.Code    = FUTErrorCode.ProxyException;
                    return(resp);
                }
                else
                {
                    var resp = new DiscardItemResponse();
                    resp.Message = httpEx.ToString();
                    resp.Code    = FUTErrorCode.HttpRequestException;
                    return(resp);
                }
            }
            catch (Exception e)
            {
                var resp = new DiscardItemResponse();
                resp.Message = e.ToString();
                resp.Code    = FUTErrorCode.RequestException;
                return(resp);
            }
        }
        public async Task <MoveItemResponse> PerformRequestAsync()
        {
            try
            {
                await RequestPerMinuteManager.WaitForNextRequest().ConfigureAwait(false);

                AddMethodOverrideHeader(HttpMethod.Put);
                var content = new StringContent("{\"itemData\":[{\"pile\":\"trade\", \"id\":\"" + _itemID + "\"}]}");
                content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");

                var uriString = FUTAccount.FUTPlatform.Route + "/ut/game/fifa18/item";
                uriString += "?_=" + Helper.CreateTimestamp();
                var searchResponseMessage = await HttpClient.PostAsync(uriString, content).ConfigureAwait(false);

                RemoveMethodOverrideHeader(HttpMethod.Put);
                if (searchResponseMessage.Headers.Contains("Proxy-Authorization"))
                {
                    var resp = new MoveItemResponse();
                    resp.Code = FUTErrorCode.CaptchaException;
                    return(resp);
                }


                var result = await Deserialize <MoveItemResponse>(searchResponseMessage);

                return(result);
            }
            catch (HttpRequestException httpEx)
            {
                if (httpEx.InnerException.GetType() == typeof(SocketException))
                {
                    var resp = new MoveItemResponse();
                    resp.Message = httpEx.ToString();
                    resp.Code    = FUTErrorCode.ProxyException;
                    return(resp);
                }
                else
                {
                    var resp = new MoveItemResponse();
                    resp.Message = httpEx.ToString();
                    resp.Code    = FUTErrorCode.HttpRequestException;
                    return(resp);
                }
            }
            catch (Exception e)
            {
                var resp = new MoveItemResponse();
                resp.Message = e.ToString();
                resp.Code    = FUTErrorCode.RequestException;
                return(resp);
            }
        }
Exemplo n.º 8
0
        public async Task <CreditsResponse> PerformRequestAsync()
        {
            try
            {
                await RequestPerMinuteManager.WaitForNextRequest().ConfigureAwait(false);

                AddMethodOverrideHeader(HttpMethod.Get);
                var uriString = FUTAccount.FUTPlatform.Route + "/ut/game/fifa18/user/credits";
                uriString += "?_=" + Helper.CreateTimestamp();
                var creditsResponseMessage = await HttpClient.GetAsync(uriString).ConfigureAwait(false);

                RemoveMethodOverrideHeader(HttpMethod.Get);
                if (creditsResponseMessage.Headers.Contains("Proxy-Authorization"))
                {
                    var resp = new CreditsResponse();
                    resp.Code = FUTErrorCode.CaptchaException;
                    return(resp);
                }
                var result = await Deserialize <CreditsResponse>(creditsResponseMessage).ConfigureAwait(false);

                return(result);
            }
            catch (HttpRequestException httpEx)
            {
                if (httpEx.InnerException.GetType() == typeof(SocketException))
                {
                    var resp = new CreditsResponse();
                    resp.Message = httpEx.ToString();
                    resp.Code    = FUTErrorCode.ProxyException;
                    return(resp);
                }
                else
                {
                    var resp = new CreditsResponse();
                    resp.Message = httpEx.ToString();
                    resp.Code    = FUTErrorCode.HttpRequestException;
                    return(resp);
                }
            }
            catch (Exception e)
            {
                var resp = new CreditsResponse();
                resp.Message = e.ToString();
                resp.Code    = FUTErrorCode.RequestException;
                return(resp);
            }
        }
        public async Task <bool> PerformRequestAsync()
        {
            try
            {
                await RequestPerMinuteManager.WaitForNextRequest().ConfigureAwait(false);

                if (CurrentLoginMethod == LoginMethod.Web)
                {
                    var ids       = String.Join("%2C", _tradeIDs);
                    var uriString = FUTAccount.FUTPlatform.Route + "/ut/game/fifa18/watchlist?tradeId=" + ids;
                    uriString += "&_=" + Helper.CreateTimestamp();
                    AddMethodOverrideHeader(HttpMethod.Delete);
                    var content = new StringContent(" ");
                    content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");

                    var removeResponseMessage = await HttpClient.PostAsync(uriString, content).ConfigureAwait(false);

                    RemoveMethodOverrideHeader(HttpMethod.Delete);
                    var rr = await removeResponseMessage.Content.ReadAsStringAsync();

                    return(removeResponseMessage.StatusCode == HttpStatusCode.OK);
                }
                else
                {
                    var ids       = String.Join(",", _tradeIDs);
                    var uriString = FUTAccount.FUTPlatform.Route + "/ut/game/fifa18/watchlist?tradeId=" + ids;
                    uriString += "&_=" + Helper.CreateTimestamp();
                    var removeResponseMessage = await HttpClient.DeleteAsync(uriString).ConfigureAwait(false);

                    var rr = await removeResponseMessage.Content.ReadAsStringAsync();

                    return(removeResponseMessage.StatusCode == HttpStatusCode.OK);
                }
            }
#pragma warning disable CS0168
            catch (Exception e)
            {
                return(false);
            }
#pragma warning restore CS0168
        }
Exemplo n.º 10
0
        public FUTRequestFactory(FUTAccount account)
        {
            FUTAccount  = account;
            _httpClient = new HttpClientEx();
            _httpClient.AddCommonHeaders();
            _cookies = new CookieContainer();
            //load cookies from db
            //var futCookies = FUTAccountsDatabase.GetFUTCookiesByFUTAccount(FUTAccount);
            //if (futCookies != null)
            //{
            //    if(!string.IsNullOrEmpty(futCookies.FutWeb))
            //    {
            //        _cookies = futCookies.FutWeb.DeserializeCookieContainer();
            //    }
            //}
            _httpClient.ClientHandler.CookieContainer = _cookies;

            RequestPerMinuteManager       = new RequestPerMinuteManager();
            RequestPerMinuteManagerSearch = new RequestPerMinuteManager(true);
            RequestCounter = 0;
        }
        public async Task <bool> PerformRequestAsync()
        {
            try
            {
                await RequestPerMinuteManager.WaitForNextRequest().ConfigureAwait(false);

                var uriString = string.Format(FUTAccount.FUTPlatform.Route + "/ut/game/fifa18/trade/{0}", _tradeID);
                uriString += "?_=" + Helper.CreateTimestamp();
                AddMethodOverrideHeader(HttpMethod.Delete);
                var content = new StringContent(" ");
                content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");

                var removeResponseMessage = await HttpClient.PostAsync(uriString, content).ConfigureAwait(false);

                RemoveMethodOverrideHeader(HttpMethod.Delete);
                return(removeResponseMessage.StatusCode == HttpStatusCode.OK);
            }
#pragma warning disable CS0168
            catch (Exception e)
            {
                return(false);
            }
#pragma warning restore CS0168
        }
Exemplo n.º 12
0
 public IOSLoginRequest(FUTAccount account, FUTSession session, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod login) : base(account, session, rpmManager, rpmManagerSearch, login)
 {
     _mailClient = MailClientFactory.Create(account.EMail, account.EMailPassword);
 }
Exemplo n.º 13
0
 public UserHistoricalRequest(FUTAccount account, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod login) : base(account, rpmManager, rpmManagerSearch, login)
 {
 }
Exemplo n.º 14
0
 public TransferMarketRequest(FUTAccount account, FUTSearchParameter item, bool isMuling, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod login) : base(account, rpmManager, rpmManagerSearch, login)
 {
     _item   = item;
     _muling = isMuling;
 }
Exemplo n.º 15
0
 public PriceLimitsRequest(FUTAccount account, long assetID, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod login) : base(account, rpmManager, rpmManagerSearch, login)
 {
     _assetID = assetID;
 }
Exemplo n.º 16
0
        public async Task <PriceLimitsResponse> PerformRequestAsync()
        {
            try
            {
                await RequestPerMinuteManager.WaitForNextRequest().ConfigureAwait(false);


                var uriString = string.Format(FUTAccount.FUTPlatform.Route + "/ut/game/fifa18/marketdata/pricelimits?defId={0}", _assetID);
                uriString += "&_=" + Helper.CreateTimestamp();
                AddMethodOverrideHeader(HttpMethod.Get);
                var content = new StringContent(" ");
                content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");
                var limitsResponseMessage = await HttpClient.PostAsync(uriString, content).ConfigureAwait(false);

                RemoveMethodOverrideHeader(HttpMethod.Get);
                if (limitsResponseMessage.Headers.Contains("Proxy-Authorization"))
                {
                    var resp = new PriceLimitsResponse();
                    resp.Code = FUTErrorCode.CaptchaException;
                    return(resp);
                }
                var contentString = await limitsResponseMessage.Content.ReadAsStringAsync();

                if (contentString.Length > 2)
                {
                    if (contentString.StartsWith("["))
                    {
                        contentString = contentString.Remove(0, 1);
                    }
                    if (contentString.EndsWith("]"))
                    {
                        contentString = contentString.Remove(contentString.Length - 1, 1);
                    }
                }
                var result = await Deserialize <PriceLimitsResponse>(contentString);

                return(result);
            }
            catch (HttpRequestException httpEx)
            {
                if (httpEx.InnerException.GetType() == typeof(SocketException))
                {
                    var resp = new PriceLimitsResponse();
                    resp.Message = httpEx.ToString();
                    resp.Code    = FUTErrorCode.ProxyException;
                    return(resp);
                }
                else
                {
                    var resp = new PriceLimitsResponse();
                    resp.Message = httpEx.ToString();
                    resp.Code    = FUTErrorCode.HttpRequestException;
                    return(resp);
                }
            }
            catch (Exception e)
            {
                var resp = new PriceLimitsResponse();
                resp.Message = e.ToString();
                resp.Code    = FUTErrorCode.RequestException;
                return(resp);
            }
        }
Exemplo n.º 17
0
 public BuyTradeRequest(FUTAccount account, long tradeID, long price, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod login) : base(account, rpmManager, rpmManagerSearch, login)
 {
     _price   = price;
     _tradeID = tradeID;
 }
Exemplo n.º 18
0
 public UserMassInfoRequest(FUTAccount account, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod loginMethod) : base(account, rpmManager, rpmManagerSearch, loginMethod)
 {
 }
Exemplo n.º 19
0
 public NotAssignedRequest(FUTAccount account, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod login) : base(account, rpmManager, rpmManagerSearch, login)
 {
 }
Exemplo n.º 20
0
 public SetNewUserRequest(FUTAccount account, RequestPerMinuteManager rpmManager,
                          RequestPerMinuteManager rpmManagerSearch, LoginMethod login, UserHistoricalResponse hist)
     : base(account, rpmManager, rpmManagerSearch, login)
 {
     _hist = hist;
 }
 public MoveItemToTradepileRequest(FUTAccount account, long itemID, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod login) : base(account, rpmManager, rpmManagerSearch, login)
 {
     _itemID = itemID;
 }
Exemplo n.º 22
0
 public CreditsRequest(FUTAccount account, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod login) : base(account, rpmManager, rpmManagerSearch, login)
 {
 }
Exemplo n.º 23
0
 public SolveCaptchaRequest(FUTAccount account, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod login, string captchaResult) : base(account, rpmManager, rpmManagerSearch, login)
 {
     _captchaResult = captchaResult;
 }
 public RemoveItemFromTradepileRequest(FUTAccount account, long tradeID, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod login) : base(account, rpmManager, rpmManagerSearch, login)
 {
     _tradeID = tradeID;
 }
 public OfferItemOnTransferMarketRequest(FUTAccount account, OfferItemModel item, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod login) : base(account, rpmManager, rpmManagerSearch, login)
 {
     _item = item;
 }
 public RemoveItemsFromWatchlistRequest(FUTAccount account, List <string> tradeIDs, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod login) : base(account, rpmManager, rpmManagerSearch, login)
 {
     _tradeIDs = tradeIDs;
 }
Exemplo n.º 27
0
 public DiscardItemRequest(FUTAccount account, long item, bool isMuling, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod login) : base(account, rpmManager, rpmManagerSearch, login)
 {
     _item   = item;
     _muling = isMuling;
 }
 public DeleteActiveMessageRequest(FUTAccount account, int id, RequestPerMinuteManager rpmManager, RequestPerMinuteManager rpmManagerSearch, LoginMethod loginMethod) : base(account, rpmManager, rpmManagerSearch, loginMethod)
 {
     _id = id;
 }