Ejemplo n.º 1
0
        public async Task <IResponse <IpApiResponse> > GetUserLocationByIp(string ip)
        {
            string baseUrl = "http://ip-api.com/json/" + ip;
            IRequestCreateOptions <GetRequestCreateOption> requestCreateOptions = new RequestCreateOptions <GetRequestCreateOption>();
            IHttpResponse httpResponse = await HttpWebRequestProviders <GetRequestCreateOption> .GetWebRequestProviderAsync(baseUrl, requestCreateOptions).ConfigureAwait(false);

            if (!string.IsNullOrWhiteSpace(httpResponse.Response))
            {
                IpApiResponse ipApiResponse = Mapper <IpApiResponse> .MapJsonStringToObject(httpResponse.Response);

                return(GetResponse(true, ipApiResponse));
            }
            else
            {
                _logger.Log(LogCategory.Error, new Exception("Failed to get session", httpResponse.WebException));
                return(GetResponse(false, null));
            }
        }
Ejemplo n.º 2
0
        public async Task <IResponse <SessionResponse> > GetSession()
        {
            Urls.BaseUrl = "https://feelaplace.infiniteanalytics.com/SocialGenomix";//_settings.GetConfigSetting<string>(SettingKeys.Integration.InfiniteAnalytics.BaseUrl);

            IRequestCreateOptions <GetRequestCreateOption> requestCreateOptions = new RequestCreateOptions <GetRequestCreateOption>();
            IHttpResponse httpResponse = await HttpWebRequestProviders <GetRequestCreateOption> .GetWebRequestProviderAsync(Urls.InfiniteAnalytics.Session, requestCreateOptions).ConfigureAwait(false);

            if (!string.IsNullOrWhiteSpace(httpResponse.Response))
            {
                SessionResponse token = Mapper <SessionResponse> .MapJsonStringToObject(httpResponse.Response);

                return(GetResponse(true, token));
            }
            else
            {
                _logger.Log(LogCategory.Error, new Exception("Failed to get session", httpResponse.WebException));
                return(GetResponse(false, null));
            }
        }
Ejemplo n.º 3
0
        public async Task <IResponse <RecommendationResponse> > GetRecommendations(RecommendationModel query)
        {
            Urls.BaseUrl = "https://feelaplace.infiniteanalytics.com/SocialGenomix";

            IRequestCreateOptions <GetRequestCreateOption> requestCreateOptions = new RequestCreateOptions <GetRequestCreateOption>();
            IHttpResponse httpResponse = await HttpWebRequestProviders <GetRequestCreateOption> .GetWebRequestProviderAsync(string.Format(Urls.InfiniteAnalytics.Recommendation, query.SessionId, query.ClientType, query.SitePageType, query.siteProductId, query.Count), requestCreateOptions).ConfigureAwait(false);

            if (!string.IsNullOrWhiteSpace(httpResponse.Response))
            {
                RecommendationResponse recommendations = Mapper <RecommendationResponse> .MapJsonStringToObject(httpResponse.Response);

                return(GetResponse(true, recommendations));
            }
            else
            {
                _logger.Log(LogCategory.Error, new Exception("Failed to fetch recommendations", httpResponse.WebException));
                return(GetResponse(false, null));
            }
        }