private static void Main(string[] args) { events events = new events(); twitter twitter = new twitter(); templates templates = new templates(); terminals terminals = new terminals(); Console.WriteLine("######### BEGIN FNSIGN UPDATER v.1.0 #########"); Console.WriteLine(""); Console.WriteLine("######### GETTING EVENTS THAT NEED TO BE UPDATED #########"); Console.WriteLine(""); List <Event> eventList = events.need_updating() .Where <Event>((Func <Event, bool>)(x => !string.IsNullOrEmpty(x.api_key) && !string.IsNullOrEmpty(x.url))) .ToList <Event>(); Console.WriteLine(eventList.Count.ToString() + " need updating...."); Console.WriteLine(""); sessions sessions = new sessions(); foreach (Event ev in eventList) { Console.WriteLine("Finding Sessions for " + ev.title); Console.WriteLine(""); List <Session> sessionList = sessions.getSessionsFromAPI(ev.url, ev.api_key, ev.api_type); Console.WriteLine(sessionList.Count.ToString() + " Sessions Found..."); Console.WriteLine(""); foreach (Session s in sessionList) { sessions.add(s, ev.id); } //Remove those sessions which stopped coming from api IList <string> incomingSessionIds = sessionList.Select(x => x.event_key).ToList(); List <Session> notComingAnymoreSessions = sessions.by_event(ev.id).Where(x => !incomingSessionIds.Contains(x.event_key)).ToList <Session>(); foreach (var item in notComingAnymoreSessions) { sessions.delete(int.Parse(item.id)); } Console.WriteLine(""); Console.WriteLine("Finding Tweets for Global Event Tag..."); Console.WriteLine(""); if (!string.IsNullOrEmpty(ev.t_username)) { Console.WriteLine("Finding Tweets for @" + ev.t_username); Console.WriteLine(""); twitter.fetch(ev.t_username, 50, true, ev.id, 0); } if (ev.hashtags != null) { foreach (string hashtag in ev.hashtags) { Console.WriteLine("Finding Tweets for #" + hashtag); Console.WriteLine(""); twitter.fetch(hashtag, 50, ev.id, 0); } } Console.WriteLine("Now let's check for the templates associated with " + ev.title); Console.WriteLine(""); foreach (Template template in templates.all_by_event(ev.id)) { if (!string.IsNullOrEmpty(template.t_username)) { Console.WriteLine("Fetching Twitter records for @" + template.t_username); Console.WriteLine(""); twitter.fetch(template.t_username, 50, true, ev.id, template.id); } if (template.hashtags != null) { Console.WriteLine("Fetching Records for Hashtags..."); Console.WriteLine(""); foreach (string hashtag in template.hashtags) { Console.WriteLine("Fetching tweets for #" + hashtag); Console.WriteLine(""); twitter.fetch(hashtag, 50, ev.id, template.id); } } } Console.WriteLine(""); Console.WriteLine("Updating Event Last Updated Time..."); events.update(ev); Console.WriteLine("Complete..."); Console.WriteLine("Moving to next event..."); Console.WriteLine(""); } Console.WriteLine("Check for Offline Terminals..."); Console.WriteLine(""); List <Terminal> source = terminals.offline_terminals(); if (source.Count <Terminal>() > 0) { Console.WriteLine(source.Count <Terminal>().ToString() + " Offline, updating their status..."); Console.WriteLine(""); foreach (Terminal terminal in source) { Console.WriteLine("Taking " + terminal.title + " Offline"); Console.WriteLine(""); terminals.offline(terminal.id); } } else { Console.WriteLine("All Terminals are Online..."); Console.WriteLine(""); } Console.WriteLine("######### FNSIGN v.1.0 UPDATER COMPLETE #########"); }
// REV 1 - COMPLETE 10.19.15 @ 12:26AM static void Main(string[] args) { events _events = new events(); twitter _twitter = new twitter(); templates _templates = new templates(); terminals _terminals = new terminals(); Console.WriteLine("######### BEGIN FNSIGN UPDATER v.1.0 #########"); Console.WriteLine(""); Console.WriteLine("######### GETTING EVENTS THAT NEED TO BE UPDATED #########"); Console.WriteLine(""); List <Event> evs = _events.need_updating(); Console.WriteLine(evs.Count.ToString() + " need updating...."); Console.WriteLine(""); sessions _sessions = new sessions(); foreach (Event e in evs) { Console.WriteLine("Finding Sessions for " + e.title); Console.WriteLine(""); if (!string.IsNullOrEmpty(e.url)) { List <Session> sess = _sessions.all(e.url, e.api_key); Console.WriteLine(sess.Count.ToString() + " Sessions Found..."); Console.WriteLine(""); // look for deletions List <Session> dbsess = _sessions.by_event(e.id); foreach (Session d in dbsess) { List <Session> found = sess.Where(x => x.event_key == d.event_key).ToList(); if (found.Count == 0) { // remove the session Console.WriteLine("Session ID: " + d.id + " NOT FOUND"); Console.WriteLine("Removing Session: " + d.name + "..."); _sessions.delete(d.internal_id); } else { Console.WriteLine("Session ID: " + d.id + " FOUND"); } } foreach (Session s in sess) { // now we loop through the sessions and insert or update them if (s.event_type != "Japanese Language") { _sessions.add(s, e.id); } } _sessions.clean_summit(); } Console.WriteLine(""); Console.WriteLine("Finding Tweets for Global Event Tag..."); Console.WriteLine(""); if (!string.IsNullOrEmpty(e.t_username)) { Console.WriteLine("Finding Tweets for @" + e.t_username); Console.WriteLine(""); _twitter.fetch(e.t_username, 50, true, e.id, 0); } if (e.hashtags != null) { foreach (string h in e.hashtags) { Console.WriteLine("Finding Tweets for #" + h); Console.WriteLine(""); _twitter.fetch(h, 50, e.id, 0); } } Console.WriteLine("Now let's check for the templates associated with " + e.title); Console.WriteLine(""); foreach (Template t in _templates.all_by_event(e.id)) { if (!string.IsNullOrEmpty(t.t_username)) { Console.WriteLine("Fetching Twitter records for @" + t.t_username); Console.WriteLine(""); _twitter.fetch(t.t_username, 50, true, e.id, t.id); } if (t.hashtags != null) { Console.WriteLine("Fetching Records for Hashtags..."); Console.WriteLine(""); foreach (string h in t.hashtags) { Console.WriteLine("Fetching tweets for #" + h); Console.WriteLine(""); _twitter.fetch(h, 50, e.id, t.id); } } } Console.WriteLine(""); Console.WriteLine("Updating Event Last Updated Time..."); _events.update(e); Console.WriteLine("Complete..."); Console.WriteLine("Moving to next event..."); Console.WriteLine(""); // here we need to update the last update time } Console.WriteLine("Check for Offline Terminals..."); Console.WriteLine(""); List <Terminal> terms = _terminals.offline_terminals(); if (terms.Count() > 0) { Console.WriteLine(terms.Count() + " Offline, updating their status..."); Console.WriteLine(""); foreach (Terminal t in terms) { Console.WriteLine("Taking " + t.title + " Offline"); Console.WriteLine(""); _terminals.offline(t.id); } } else { Console.WriteLine("All Terminals are Online..."); Console.WriteLine(""); } Console.WriteLine("######### FNSIGN v.1.0 UPDATER COMPLETE #########"); }
static void Main(string[] args) { facebook _facebook = new facebook(); instagram _instagram = new instagram(); twitter _twitter = new twitter(); tags _tags = new tags(); settings _settings = new settings(); stats _stats = new stats(); Int32 facebook_count = 0; Int32 instagram_count = 0; Int32 twitter_count = 0; Int32 total_count = 0; Int32 fetch_count = _settings.refresh_count(); overrideSocial.events _events = new overrideSocial.events(); Console.WriteLine("######################## BEGINNING UPDATE SEQUENCE ########################"); Console.WriteLine(""); Console.WriteLine("######################## CHECKING FOR EVENTS THAT ARE READY FOR UPDATE ########################"); Console.WriteLine(""); // loop through EVENTS that are DUE and UPDATE foreach (Event ev in _events.ready_for_pull()) { Console.WriteLine(ev.title + " with last update time of: " + ev.last_update.ToShortDateString() + " @ " + ev.last_update.ToShortTimeString()); Console.WriteLine(""); Console.WriteLine("Checking for Active Tags & Usernames to Import..."); Console.WriteLine(""); instagram_count = 0; twitter_count = 0; facebook_count = 0; total_count = 0; foreach (Tag t in _tags.select(ev.id, true)) { Console.WriteLine("Beginning Evaluation for Term: " + t.value); Console.WriteLine(""); if (t.instagram) { Console.WriteLine("###################### INSTAGRAM PULL #########################"); Console.WriteLine(""); if (t.is_tag) { Console.WriteLine("Importing Records from Instagram for Hashtag #" + t.value); instagram_count = instagram_count + _instagram.fetch2(t.value, ev.id, t.id); } else { Console.WriteLine("Importing Records from Instagram for Username @" + t.value); instagram_count = instagram_count + _instagram.fetch_by_username(t.value, ev.id, t.id); } } if (t.twitter) { Console.WriteLine(""); Console.WriteLine("###################### TWITTER PULL #########################"); Console.WriteLine(""); if (t.is_tag) { Console.WriteLine("Importing Records from Twitter for Hashtag #" + t.value); twitter_count = twitter_count + _twitter.fetch(t.value, fetch_count, ev.id, t.id); } else { Console.WriteLine("Importing Records from Twitter for Username @" + t.value); twitter_count = twitter_count + _twitter.fetch(t.value, fetch_count, true, ev.id, t.id); } } } total_count = instagram_count + twitter_count + facebook_count; Statistic s = new Statistic(); s.facebook = facebook_count; s.instagram = instagram_count; s.pulldate = DateTime.Now; s.total = total_count; s.twitter = twitter_count; s.event_id = ev.id; _stats.add(s); ev.last_update = DateTime.Now; _events.update(ev); Console.WriteLine(""); Console.WriteLine("######################## ENDING UPDATE FOR EVENT " + ev.title + " ########################"); } Console.WriteLine(""); Console.WriteLine("######################## ENDING UPDATE SEQUENCE ########################"); }