private static Gof.Twitter.Tweet formatTweet(MatchedTweetReceivedEventArgs e) { var author = e.Tweet.RetweetedTweet != null ? e.Tweet.RetweetedTweet.CreatedBy : e.Tweet.CreatedBy; var user = e.Tweet.CreatedBy; var tweet = new Gof.Twitter.Tweet { Id = e.Tweet.Id, TimeLineUser = new Gof.Twitter.User { Alias = user.ScreenName, Name = user.Name, Id = user.Id }, Author = new Gof.Twitter.User { Alias = author.ScreenName, Name = author.Name, Id = author.Id }, Content = e.Tweet.Text, Date = e.Tweet.TweetLocalCreationDate, IsRetweet = e.Tweet.IsRetweet, Language = e.Tweet.Language.ToString(), Hashtags = e.Tweet.Hashtags.Select(s => new Tuple <int[], string>(s.Indices, s.Text)), Raw = Newtonsoft.Json.JsonConvert.SerializeObject(e.Tweet), Url = e.Tweet.Url }; return(tweet); }
private Task saveTweet(MatchedTweetReceivedEventArgs e) { Gof.Twitter.Tweet tweet = formatTweet(e); IPersistence persistence = ServiceExtensions.GetPersistenceService(e.Tweet.CreatedBy.Name); return(persistence.SaveRawTweetAsync(tweet)); }