Ejemplo n.º 1
0
 private bool CheckVisibleTimeline(TwitterStatus status, IEnumerable<AccountData> datas)
 {
     if (status.StatusType == StatusType.DirectMessage)
         return false;
     return datas.Any(ad =>
         status.User.Id == ad.AccountId ||
         ad.IsFollowing(status.User.Id) ||
         FilterSystemUtil.InReplyToUsers(status).Contains(ad.AccountId));
 }
Ejemplo n.º 2
0
 public static IEnumerable<long> InReplyToUsers(TwitterStatus status)
 {
     if (status.Entities == null)
         return Enumerable.Empty<long>();
     else
         return status.Entities
             .Where(e => e.EntityType == EntityType.UserMentions)
             .Select(e =>
             {
                 try
                 {
                     return long.Parse(e.OriginalText);
                 }
                 catch
                 {
                     return 0;
                 }
             }).Where(_ => _ != 0);
 }
Ejemplo n.º 3
0
 /// <summary>
 /// Store a tweet.
 /// </summary>
 /// <param name="status">storing status</param>
 /// <param name="publish">flag of publish status for other listening children</param>
 public static void Store(TwitterStatus status, bool publish = true)
 {
     if (_isInShutdown) return;
     if (publish)
         statusPublisher.OnNext(new StatusNotification()
         {
             IsAdded = true,
             Status = status,
             StatusId = status.Id
         });
     store.Store(status);
     UserStore.Store(status.User);
 }