private static void RunSearchDataServiceForDiscovery() { //code of search while (true) { try { //code to get keywords distinct from databse DiscoverySearch dissearch = new DiscoverySearch(); DiscoverySearchRepository dissearchrepo = new DiscoverySearchRepository(); List <DiscoverySearch> listDiscoverySearch = dissearchrepo.getResultsFromKeywordUser(); foreach (DiscoverySearch discoverySearch in listDiscoverySearch) { try { string searchKeyword = discoverySearch.SearchKeyword;//"ek villain"; clsSocialSiteDataFeedsFactory objclsSocialSiteDataFeedsFactory = new clsSocialSiteDataFeedsFactory(discoverySearch.Network); SocialSiteDataFeeds objSocialSiteDataFeeds = objclsSocialSiteDataFeedsFactory.CreateSocialSiteDataFeedsInstance(); objSocialSiteDataFeeds.GetSearchData(new object[] { dissearch, dissearchrepo, discoverySearch }); } catch (Exception ex) { Console.WriteLine("Error Case Debug : " + ex.StackTrace); Console.WriteLine("Error Case Debug : " + ex.Message); GlobusLogHelper.log.Error("Error : " + ex.StackTrace); } } } catch (Exception ex) { Console.WriteLine("Error Case Debug : " + ex.StackTrace); Console.WriteLine("Error Case Debug : " + ex.Message); GlobusLogHelper.log.Error("Error : " + ex.StackTrace); } Thread.Sleep(1000 * 60 * 15); } }
public string getlistresults(string keyword) { User user = (User)Session["LoggedUser"]; int i = 0; string searchRes = string.Empty; if (!string.IsNullOrEmpty(keyword)) { DiscoverySearch dissearch = new DiscoverySearch(); DiscoverySearchRepository dissearchrepo = new DiscoverySearchRepository(); List <DiscoverySearch> discoveryList = dissearchrepo.getResultsFromKeyword(keyword); if (discoveryList.Count == 0) { } else { foreach (DiscoverySearch item in discoveryList) { string postURL = string.Empty; if (item.Network == "facebook") { postURL = "https://www.facebook.com/" + item.MessageId;; } else if (item.Network == "twitter") { postURL = "https://twitter.com/" + item.FromName + "/status/" + item.MessageId; } searchRes += this.BindData(item, i, postURL); i++; } } } return(searchRes); }
public void GetSearchData(object parameters) { #region Twitter Array arrayParams = (Array)parameters; DiscoverySearch dissearch = (DiscoverySearch)arrayParams.GetValue(0); DiscoverySearchRepository dissearchrepo = (DiscoverySearchRepository)arrayParams.GetValue(1); DiscoverySearch discoverySearch = (DiscoverySearch)arrayParams.GetValue(2); oAuthTwitter oauth = new oAuthTwitter(); oauth.ConsumerKey = ConfigurationManager.AppSettings["consumerKey"].ToString(); oauth.ConsumerKeySecret = ConfigurationManager.AppSettings["consumerSecret"].ToString(); oauth.CallBackUrl = ConfigurationManager.AppSettings["callbackurl"].ToString(); TwitterAccountRepository twtAccRepo = new TwitterAccountRepository(); //ArrayList alst = twtAccRepo.getAllTwitterAccounts(); ArrayList alst = twtAccRepo.getAllTwitterAccountsOfUser(discoverySearch.UserId); foreach (TwitterAccount item in alst) { oauth.AccessToken = item.OAuthToken; oauth.AccessTokenSecret = item.OAuthSecret; oauth.TwitterUserId = item.TwitterUserId; oauth.TwitterScreenName = item.TwitterScreenName; if (TwitterHelper.CheckTwitterToken(oauth, discoverySearch.SearchKeyword)) { break; } else { } } GlobusTwitterLib.Twitter.Core.SearchMethods.Search search = new GlobusTwitterLib.Twitter.Core.SearchMethods.Search(); Newtonsoft.Json.Linq.JArray twitterSearchResult = search.Get_Search_Tweets(oauth, discoverySearch.SearchKeyword); foreach (var item in twitterSearchResult) { var results = item["statuses"]; foreach (var chile in results) { try { dissearch.CreatedTime = SocioBoard.Helper.Extensions.ParseTwitterTime(chile["created_at"].ToString().TrimStart('"').TrimEnd('"'));; dissearch.EntryDate = DateTime.Now; dissearch.FromId = chile["user"]["id_str"].ToString().TrimStart('"').TrimEnd('"'); dissearch.FromName = chile["user"]["screen_name"].ToString().TrimStart('"').TrimEnd('"'); dissearch.ProfileImageUrl = chile["user"]["profile_image_url"].ToString().TrimStart('"').TrimEnd('"'); dissearch.SearchKeyword = discoverySearch.SearchKeyword; dissearch.Network = "twitter"; dissearch.Message = chile["text"].ToString().TrimStart('"').TrimEnd('"'); dissearch.MessageId = chile["id_str"].ToString().TrimStart('"').TrimEnd('"'); dissearch.Id = Guid.NewGuid(); dissearch.UserId = discoverySearch.UserId;//user.Id; if (!dissearchrepo.isKeywordPresent(dissearch.SearchKeyword, dissearch.MessageId)) { dissearchrepo.addNewSearchResult(dissearch); } } catch (Exception ex) { //logger.Error(ex.StackTrace); Console.WriteLine(ex.StackTrace); } } } #endregion }
public string getresults(string keyword) { User user = (User)Session["LoggedUser"]; int i = 0; string searchRes = string.Empty; if (!string.IsNullOrEmpty(keyword)) { DiscoverySearch dissearch = new DiscoverySearch(); DiscoverySearchRepository dissearchrepo = new DiscoverySearchRepository(); //Get data from Database if present, against the specified keyword List <DiscoverySearch> discoveryList = dissearchrepo.getResultsFromKeyword(keyword); if (discoveryList.Count == 0) //if no data, get the data for specified keyword from social media apis { #region Twitter try { oAuthTwitter oauth = new oAuthTwitter(); oauth.ConsumerKey = ConfigurationManager.AppSettings["consumerKey"].ToString(); oauth.ConsumerKeySecret = ConfigurationManager.AppSettings["consumerSecret"].ToString(); oauth.CallBackUrl = ConfigurationManager.AppSettings["callbackurl"].ToString(); TwitterAccountRepository twtAccRepo = new TwitterAccountRepository(); ArrayList alst = twtAccRepo.getAllTwitterAccounts(); foreach (TwitterAccount item in alst) { oauth.AccessToken = item.OAuthToken; oauth.AccessTokenSecret = item.OAuthSecret; oauth.TwitterUserId = item.TwitterUserId; oauth.TwitterScreenName = item.TwitterScreenName; if (TwitterHelper.CheckTwitterToken(oauth, keyword)) { break; } else { } } Search search = new Search(); JArray twitterSearchResult = search.Get_Search_Tweets(oauth, keyword); foreach (var item in twitterSearchResult) { var results = item["statuses"]; foreach (var chile in results) { try { dissearch.CreatedTime = SocioBoard.Helper.Extensions.ParseTwitterTime(chile["created_at"].ToString().TrimStart('"').TrimEnd('"'));; dissearch.EntryDate = DateTime.Now; dissearch.FromId = chile["user"]["id_str"].ToString().TrimStart('"').TrimEnd('"'); dissearch.FromName = chile["user"]["screen_name"].ToString().TrimStart('"').TrimEnd('"'); dissearch.ProfileImageUrl = chile["user"]["profile_image_url"].ToString().TrimStart('"').TrimEnd('"'); dissearch.SearchKeyword = txtSearchText.Text; dissearch.Network = "twitter"; dissearch.Message = chile["text"].ToString().TrimStart('"').TrimEnd('"'); dissearch.MessageId = chile["id_str"].ToString().TrimStart('"').TrimEnd('"'); dissearch.Id = Guid.NewGuid(); dissearch.UserId = user.Id; string postID = chile["id"].ToString(); string postURL = "https://twitter.com/" + dissearch.FromName + "/status/" + postID; if (!dissearchrepo.isKeywordPresent(dissearch.SearchKeyword, dissearch.MessageId)) { dissearchrepo.addNewSearchResult(dissearch); } searchRes += this.BindData(dissearch, i, postURL); i++; } catch (Exception ex) { logger.Error(ex.StackTrace); Console.WriteLine(ex.StackTrace); } } } } catch (Exception ex) { logger.Error(ex.StackTrace); Console.WriteLine(ex.StackTrace); } #endregion #region Facebook try { #region FacebookSearch int j = 0; string accesstoken = string.Empty; FacebookAccountRepository fbAccRepo = new FacebookAccountRepository(); ArrayList asltFbAccount = fbAccRepo.getAllFacebookAccounts(); foreach (FacebookAccount item in asltFbAccount) { accesstoken = item.AccessToken; if (FacebookHelper.CheckFacebookToken(accesstoken, txtSearchText.Text)) { break; } } string facebookSearchUrl = "https://graph.facebook.com/search?q=" + txtSearchText.Text + " &type=post&access_token=" + accesstoken; var facerequest = (HttpWebRequest)WebRequest.Create(facebookSearchUrl); facerequest.Method = "GET"; string outputface = string.Empty; using (var response = facerequest.GetResponse()) { using (var stream = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding(1252))) { outputface = stream.ReadToEnd(); } } if (!outputface.StartsWith("[")) { outputface = "[" + outputface + "]"; } JArray facebookSearchResult = JArray.Parse(outputface); foreach (var item in facebookSearchResult) { var data = item["data"]; foreach (var chile in data) { try { dissearch.CreatedTime = DateTime.Parse(chile["created_time"].ToString()); dissearch.EntryDate = DateTime.Now; dissearch.FromId = chile["from"]["id"].ToString(); dissearch.FromName = chile["from"]["name"].ToString(); dissearch.ProfileImageUrl = "http://graph.facebook.com/" + chile["from"]["id"] + "/picture?type=small"; dissearch.SearchKeyword = txtSearchText.Text; dissearch.Network = "facebook"; dissearch.Message = chile["message"].ToString(); dissearch.MessageId = chile["id"].ToString(); dissearch.Id = Guid.NewGuid(); dissearch.UserId = user.Id; string postURL = "https://www.facebook.com/" + dissearch.MessageId; if (!dissearchrepo.isKeywordPresent(dissearch.SearchKeyword, dissearch.MessageId)) { dissearchrepo.addNewSearchResult(dissearch); } searchRes += this.BindData(dissearch, i, postURL); } catch (Exception ex) { logger.Error(ex.StackTrace); Console.WriteLine(ex.StackTrace); } } } } catch (Exception ex) { logger.Error(ex.StackTrace); Console.WriteLine(ex.StackTrace); } #endregion #endregion } else // if data is there, bind data from databse { foreach (DiscoverySearch item in discoveryList) { string postURL = string.Empty; if (item.Network == "facebook") { postURL = "https://www.facebook.com/" + item.MessageId;; } else if (item.Network == "twitter") { postURL = "https://twitter.com/" + item.FromName + "/status/" + item.MessageId; } searchRes += this.BindData(item, i, postURL); i++; } } } return(searchRes); }
public void GetSearchData(object parameters) { #region Facebook try { Array arrayParams = (Array)parameters; DiscoverySearch dissearch = (DiscoverySearch)arrayParams.GetValue(0); DiscoverySearchRepository dissearchrepo = (DiscoverySearchRepository)arrayParams.GetValue(1); DiscoverySearch discoverySearch = (DiscoverySearch)arrayParams.GetValue(2); #region FacebookSearch string accesstoken = string.Empty; FacebookAccountRepository fbAccRepo = new FacebookAccountRepository(); //ArrayList asltFbAccount = fbAccRepo.getAllFacebookAccounts(); ArrayList asltFbAccount = fbAccRepo.getAllFacebookAccountsOfUser(discoverySearch.UserId); foreach (FacebookAccount item in asltFbAccount) { accesstoken = item.AccessToken; if (FacebookHelper.CheckFacebookToken(accesstoken, discoverySearch.SearchKeyword)) { break; } } string facebookSearchUrl = "https://graph.facebook.com/search?q=" + discoverySearch.SearchKeyword + " &type=post&access_token=" + accesstoken; var facerequest = (HttpWebRequest)WebRequest.Create(facebookSearchUrl); facerequest.Method = "GET"; string outputface = string.Empty; using (var response = facerequest.GetResponse()) { using (var stream = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding(1252))) { outputface = stream.ReadToEnd(); } } if (!outputface.StartsWith("[")) { outputface = "[" + outputface + "]"; } Newtonsoft.Json.Linq.JArray facebookSearchResult = Newtonsoft.Json.Linq.JArray.Parse(outputface); foreach (var item in facebookSearchResult) { var data = item["data"]; foreach (var chile in data) { try { dissearch.CreatedTime = DateTime.Parse(chile["created_time"].ToString()); dissearch.EntryDate = DateTime.Now; dissearch.FromId = chile["from"]["id"].ToString(); dissearch.FromName = chile["from"]["name"].ToString(); try { dissearch.ProfileImageUrl = "http://graph.facebook.com/" + chile["from"]["id"] + "/picture?type=small"; } catch { } dissearch.SearchKeyword = discoverySearch.SearchKeyword; dissearch.Network = "facebook"; try { dissearch.Message = chile["message"].ToString(); } catch { } try { dissearch.Message = chile["story"].ToString(); } catch { } dissearch.MessageId = chile["id"].ToString(); dissearch.Id = Guid.NewGuid(); dissearch.UserId = discoverySearch.UserId; if (!dissearchrepo.isKeywordPresent(dissearch.SearchKeyword, dissearch.MessageId)) { dissearchrepo.addNewSearchResult(dissearch); } } catch (Exception ex) { //logger.Error(ex.StackTrace); Console.WriteLine(ex.StackTrace); } } } } catch (Exception ex) { //logger.Error(ex.StackTrace); Console.WriteLine(ex.StackTrace); } #endregion #endregion }
public string DeleteAllUsersByCreateDate(string date) { int i = 0; int count = 0; UserRepository objUserRepository = new UserRepository(); List <User> lstuser = objUserRepository.GetAllUsersByCreateDate(date); ArchiveMessageRepository objArchiveMessageRepository = new ArchiveMessageRepository(); DiscoverySearchRepository objDiscoverySearchRepository = new DiscoverySearchRepository(); DraftsRepository objDraftsRepository = new DraftsRepository(); FacebookAccountRepository objFacebookAccountRepository = new FacebookAccountRepository(); FacebookFeedRepository objFacebookFeedRepository = new FacebookFeedRepository(); FacebookInsightPostStatsRepository objFacebookInsightPostStatsRepository = new FacebookInsightPostStatsRepository(); FacebookInsightStatsRepository objFacebookInsightStatsRepository = new FacebookInsightStatsRepository(); FacebookMessageRepository objFacebookMessageRepository = new FacebookMessageRepository(); FacebookStatsRepository objFacebookStatsRepository = new FacebookStatsRepository(); GoogleAnalyticsAccountRepository objGoogleAnalyticsAccountRepository = new GoogleAnalyticsAccountRepository(); GoogleAnalyticsStatsRepository objGoogleAnalyticsStatsRepository = new GoogleAnalyticsStatsRepository(); GooglePlusAccountRepository objGooglePlusAccountRepository = new GooglePlusAccountRepository(); GooglePlusActivitiesRepository objGooglePlusActivitiesRepository = new GooglePlusActivitiesRepository(); GroupProfileRepository objGroupProfileRepository = new GroupProfileRepository(); GroupRepository objGroupRepository = new GroupRepository(); InstagramAccountRepository objInstagramAccountRepository = new InstagramAccountRepository(); InstagramCommentRepository objInstagramCommentRepository = new InstagramCommentRepository(); InstagramFeedRepository objInstagramFeedRepository = new InstagramFeedRepository(); LinkedInAccountRepository objLinkedInAccountRepository = new LinkedInAccountRepository(); LinkedInFeedRepository objLinkedInFeedRepository = new LinkedInFeedRepository(); LogRepository objLogRepository = new LogRepository(); RssFeedsRepository objRssFeedsRepository = new RssFeedsRepository(); RssReaderRepository objRssReaderRepository = new RssReaderRepository(); ScheduledMessageRepository objScheduledMessageRepository = new ScheduledMessageRepository(); SocialProfilesRepository objSocialProfilesRepository = new SocialProfilesRepository(); TaskCommentRepository objTaskCommentRepository = new TaskCommentRepository(); TaskRepository objTaskRepository = new TaskRepository(); TeamRepository objTeamRepository = new TeamRepository(); TeamMemberProfileRepository objTeamMemberProfileRepository = new TeamMemberProfileRepository(); TwitterAccountRepository objTwitterAccountRepository = new TwitterAccountRepository(); TwitterDirectMessageRepository objTwitterDirectMessageRepository = new TwitterDirectMessageRepository(); TwitterFeedRepository objTwitterFeedRepository = new TwitterFeedRepository(); TwitterMessageRepository objTwitterMessageRepository = new TwitterMessageRepository(); TwitterStatsRepository objTwitterStatsRepository = new TwitterStatsRepository(); UserActivationRepository objUserActivationRepository = new UserActivationRepository(); UserPackageRelationRepository objUserPackageRelationRepository = new UserPackageRelationRepository(); count = lstuser.Count(); foreach (var item in lstuser) { i++; try { if (item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**") { } else { objArchiveMessageRepository.DeleteArchiveMessageByUserid(item.Id); objDiscoverySearchRepository.DeleteDiscoverySearchByUserid(item.Id); objDraftsRepository.DeleteDraftsByUserid(item.Id); objFacebookAccountRepository.DeleteFacebookAccountByUserid(item.Id); objFacebookFeedRepository.DeleteFacebookFeedByUserid(item.Id); objFacebookInsightPostStatsRepository.DeleteFacebookInsightPostStatsByUserid(item.Id); objFacebookInsightStatsRepository.DeleteFacebookInsightStatsByUserid(item.Id); objFacebookMessageRepository.DeleteFacebookMessageByUserid(item.Id); objFacebookStatsRepository.DeleteFacebookStatsByUserid(item.Id); objGoogleAnalyticsAccountRepository.DeleteGoogleAnalyticsAccountByUserid(item.Id); objGoogleAnalyticsStatsRepository.DeleteGoogleAnalyticsStatsByUserid(item.Id); objGooglePlusAccountRepository.DeleteGooglePlusAccountByUserid(item.Id); objGooglePlusActivitiesRepository.DeleteGooglePlusActivitiesByUserid(item.Id); objGroupProfileRepository.DeleteGroupProfileByUserid(item.Id); objGroupRepository.DeleteGroupsByUserid(item.Id); objInstagramAccountRepository.DeleteInstagramAccountByUserid(item.Id); objInstagramCommentRepository.DeleteInstagramCommentByUserid(item.Id); objInstagramFeedRepository.DeleteInstagramFeedByUserid(item.Id); objLinkedInAccountRepository.DeleteLinkedInAccountByUserid(item.Id); objLinkedInFeedRepository.DeleteLinkedInFeedByUserid(item.Id); objLogRepository.DeleteLogByUserid(item.Id); objRssFeedsRepository.DeleteRssFeedsByUserid(item.Id); objRssReaderRepository.DeleteRssReaderByUserid(item.Id); objScheduledMessageRepository.DeleteScheduledMessageByUserid(item.Id); objSocialProfilesRepository.DeleteSocialProfileByUserid(item.Id); objTaskCommentRepository.DeleteTaskCommentByUserid(item.Id); objTaskRepository.DeleteTasksByUserid(item.Id); objTeamRepository.DeleteTeamByUserid(item.Id); objTeamMemberProfileRepository.DeleteTeamMemberProfileByUserid(item.Id); objTwitterAccountRepository.DeleteTwitterAccountByUserid(item.Id); objTwitterDirectMessageRepository.DeleteTwitterDirectMessagesByUserid(item.Id); objTwitterFeedRepository.DeleteTwitterFeedByUserid(item.Id); objTwitterMessageRepository.DeleteTwitterMessageByUserid(item.Id); objTwitterStatsRepository.DeleteTwitterStatsByUserid(item.Id); objUserActivationRepository.DeleteUserActivationByUserid(item.Id); objUserPackageRelationRepository.DeleteuserPackageRelationByUserid(item.Id); objUserRepository.DeleteUserByUserid(item.Id); } } catch (Exception ex) { Console.WriteLine(ex.Message); } } return(i + " " + count); }