private static IList<WeatherModel> ExtractLocationWeather(CliqueClaimRequestModel item) { string url = string.Format ("http://api.openweathermap.org/data/2.5/forecast/daily?q={0}&type=accurate&mode=xml&units=metric&cnt=7appid={1}", item.City, OpenWeatherAPIKey); using (WebClient client = new WebClient()) { try { string response = client.DownloadString(url); if (!(response.Contains("message") && response.Contains("cod"))) { XElement xEl = XElement.Load(new System.IO.StringReader(response)); return GetWeatherInfo(xEl); } } catch (Exception es) { } } return new List<WeatherModel>(); }
public void AddClaimRequest(CliqueClaimRequestModel model) { RequestService service = new RequestService(); var UserProfilerModel = service.AddClaimRequest(model); var storageAccount = CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["AzureWebJobsStorage"].ToString()); CloudQueueClient queueClient = storageAccount.CreateCloudQueueClient(); CloudQueue thumbnailRequestQueue = queueClient.GetQueueReference("addrequest"); thumbnailRequestQueue.CreateIfNotExists(); var queueMessage = new CloudQueueMessage(JsonConvert.SerializeObject(new NewRequest { RequestId = UserProfilerModel.Id })); thumbnailRequestQueue.AddMessage(queueMessage); }
public CliqueClaimRequestModel AddClaimRequest(CliqueClaimRequestModel model) { CliqueClaimRequest request = null; using (ipl_userprofilerEntities entity = new ipl_userprofilerEntities()) { if (model.Id == 0) { request = new CliqueClaimRequest(); entity.CliqueClaimRequests.Add(request); request.AddedAt = DateTime.Now; } else { request = entity.CliqueClaimRequests.FirstOrDefault(res => res.Id == model.Id); } request.Accomodates = model.Accomodates; request.Address1 = model.Address1; request.Address2 = model.Address2; request.Bedrooms = model.Bedrooms; request.Beds = model.Beds; request.City = model.City; request.Country = model.Country; request.Description = model.Description; request.Locality = model.City; request.Name = model.Name; request.NightPrice = model.NightPrice; request.State = model.State; request.Type = model.Type; request.WeekPrice = model.WeekPrice; request.Zip = model.Zip; request.SSN = model.SSN; request.IsACAvailable = model.IsACAvailable; request.IsBuzzerAvailable = model.IsBuzzerAvailable; request.IsLiftAvailable = model.IsLiftAvailable; request.IsPetsAllowed = model.IsPetsAllowed; request.IsPrivatePoolAvailable = model.IsPrivatePoolAvailable; request.IsWifiAvailable = model.IsWifiAvailable; request.FromDate = model.FromDate; request.ToDate = model.ToDate; request.Price = model.Price; request.Score = model.Score; request.Status = model.Status; request.Latitude = model.Latitude; request.Longitude = model.Longitude; entity.SaveChanges(); model.Id = request.Id; } return model; }
public static void ExtractLocationTweets(CliqueClaimRequestModel model) { var modelList = ExtractTweetsByLocationName(model); var response = SemantriaHelper.AddScore(modelList); response.AddRange(SemantriaHelper.AddScore(ExtractTweetsByGeoCode(model))); var service = new RequestService(); service.AddTweetAndLocation(modelList); modelList = SemantriaHelper.AddScore(modelList); service.UpdateTweetScore(modelList); }
/* public static void ExtractUserTweets(CliqueClaimRequestModel model) { string url = ""; var max_id = ""; if (string.IsNullOrEmpty(max_id)) url = string.Format("https://api.twitter.com/1.1/statuses/user_timeline.json?count={0}&screen_name={1}", "100", model.TwitterUserName); else url = string.Format("https://api.twitter.com/1.1/statuses/user_timeline.json?count={0}&screen_name={1}&trim_user=1&max_id={2}&since_id={3}", "100", model.TwitterUserName, model.TwitterUserName, model.TwitterUserName); var requestUserTimeline = new HttpRequestMessage(System.Net.Http.HttpMethod.Get, url); var accessToken = GetAccessToken(); requestUserTimeline.Headers.Add("Authorization", "Bearer " + accessToken); var httpClient = new HttpClient(); HttpResponseMessage responseUserTimeLine = httpClient.SendAsync(requestUserTimeline).Result; dynamic jsonResponse = JsonConvert.DeserializeObject<object>(responseUserTimeLine.Content.ReadAsStringAsync().Result); var enumerableTweets = (jsonResponse as IEnumerable<dynamic>); List<TweetModel> modelList = new List<TweetModel>(); foreach (var item in enumerableTweets) { modelList.Add(new TweetModel { Text = item.text.Value, PostedBy = item.user.name.Value, PostedAt = item.created_at.Value, ProfileImageURL = item.user.profile_image_url_https.Value, TweetIdStr = item.id_str.Value, RequestId = model.Id, }); } var response = SemantriaHelper.AddScore(modelList); var service = new RequestService(); service.AddTweetAndUser(response); } * * */ private static List<TweetModel> ExtractTweetsByGeoCode(CliqueClaimRequestModel model) { string url = ""; var max_id = ""; if (string.IsNullOrEmpty(max_id)) { //url = string.Format("https://api.twitter.com/1.1/search/tweets.json?q='{0}'%20AND%20{1}", buildingName, city); url = string.Format("https://api.twitter.com/1.1/search/tweets.json?geocode={0},{1},10mi&count=100", model.Latitude, model.Longitude); } else url = string.Format("https://api.twitter.com/1.1/statuses/user_timeline.json?count={0}&screen_name={1}&trim_user=1&max_id={2}&since_id={3}", "100", model.Locality, model.Locality, model.Locality); var requestUserTimeline = new HttpRequestMessage(System.Net.Http.HttpMethod.Get, url); var accessToken = GetAccessToken(); requestUserTimeline.Headers.Add("Authorization", "Bearer " + accessToken); var httpClient = new HttpClient(); HttpResponseMessage responseUserTimeLine = httpClient.SendAsync(requestUserTimeline).Result; dynamic jsonResponse = JsonConvert.DeserializeObject<object>(responseUserTimeLine.Content.ReadAsStringAsync().Result); var enumerableTweets = (jsonResponse.statuses as IEnumerable<dynamic>); List<TweetModel> modelList = new List<TweetModel>(); foreach (var item in enumerableTweets) { modelList.Add(new TweetModel { Text = item.text.Value, PostedBy = item.user.name.Value, PostedAt = item.created_at.Value, ProfileImageURL = item.user.profile_image_url_https.Value, TweetIdStr = item.id_str.Value, RequestId = model.Id, }); } return modelList; }
public bool IsUserTweetExist(CliqueClaimRequestModel model) { using (ipl_userprofilerEntities entity = new ipl_userprofilerEntities()) { var response = entity.CliqueUserTweets.Where(res => res.RequestId == model.Id); entity.CliqueUserTweets.RemoveRange(response); entity.SaveChanges(); } return false; }
public static List<EventModel> MapEventModel(List<Event> eventList, CliqueClaimRequestModel requestModel) { List<EventModel> response = new List<EventModel>(); foreach (var item in eventList) { response.Add(new EventModel { EventId = item.eventId, RequestId = requestModel.Id, Name = item.title, Description = item.description, StartDate = item.start_time ?? DateTime.Now, EndDate = item.stop_time??DateTime.Now, Venue = item.venue_name }); } return response; }