public void UnregisterAccountActivityStream(IAccountActivityStream accountActivityStream) { if (!_trackedStreams.Contains(accountActivityStream.AccountUserId)) { return; } _trackedStreams.Remove(accountActivityStream.AccountUserId); // Tweet events accountActivityStream.TweetCreated -= TweetCreated; accountActivityStream.TweetFavourited -= TweetFavourited; accountActivityStream.TweetDeleted -= TweetDeleted; // Message events accountActivityStream.MessageReceived -= MessageReceived; accountActivityStream.MessageSent -= MessageSent; accountActivityStream.UserIsTypingMessage -= UserIsTypingMessage; accountActivityStream.UserReadMessage -= UserReadMessage; // User events accountActivityStream.UserFollowed -= FollowedUser; accountActivityStream.UserUnfollowed -= UnfollowedUser; accountActivityStream.UserBlocked -= UserBlocked; accountActivityStream.UserUnblocked -= UserUnblocked; accountActivityStream.UserMuted += UserMuted; accountActivityStream.UserUnmuted += UserUnmuted; // Other events accountActivityStream.EventReceived -= AccountActivityEvent; accountActivityStream.UnsupportedEventReceived -= UnmanagedEventReceived; }
private static void RegisterEvents(IAccountActivityStream stream, AccountActivtyEventsState state) { stream.EventReceived += (sender, args) => { state.EventsReceived.Add(args.Json); }; stream.TweetCreated += (sender, args) => { state.TweetCreated.Add(args); }; stream.TweetDeleted += (sender, args) => { state.TweetDeleted.Add(args); }; stream.TweetFavorited += (sender, args) => { state.TweetFavorited.Add(args); }; stream.UserFollowed += (sender, args) => { state.UserFollowed.Add(args); }; stream.UserUnfollowed += (sender, args) => { state.UserUnfollowed.Add(args); }; stream.UserBlocked += (sender, args) => { state.UserBlocked.Add(args); }; stream.UserUnblocked += (sender, args) => { state.UserUnblocked.Add(args); }; stream.UserMuted += (sender, args) => { state.UserMuted.Add(args); }; stream.UserUnmuted += (sender, args) => { state.UserUnmuted.Add(args); }; stream.MessageReceived += (sender, args) => { state.MessageReceived.Add(args); }; stream.MessageSent += (sender, args) => { state.MessageSent.Add(args); }; stream.UserIsTypingMessage += (sender, args) => { state.UserTypingMessage.Add(args); }; stream.UserReadMessageConversation += (sender, args) => { state.UserReadMessage.Add(args); }; stream.UnexpectedExceptionThrown += (sender, args) => { state.UnexpectedException.Add(args); }; }
public void SubscribeAccountActivityStream(IAccountActivityStream accountActivityStream) { if (_userAccountActivityStream.Contains(accountActivityStream)) { return; } _userAccountActivityStream.Add(accountActivityStream); }
public void RegisterAccountActivityStream(IAccountActivityStream accountActivityStream) { if (_trackedStreams.Contains(accountActivityStream.AccountUserId)) { Console.WriteLine("You are already tracking this user, no need to do that again."); return; } _trackedStreams.Add(accountActivityStream.AccountUserId); Console.WriteLine($"Activities for user {accountActivityStream.AccountUserId} are now being tracked."); // Tweet events accountActivityStream.TweetCreated += TweetCreated; accountActivityStream.TweetFavourited += TweetFavourited; accountActivityStream.TweetDeleted += TweetDeleted; // Message events accountActivityStream.MessageReceived += MessageReceived; accountActivityStream.MessageSent += MessageSent; accountActivityStream.UserIsTypingMessage += UserIsTypingMessage; accountActivityStream.UserReadMessage += UserReadMessage; // User events accountActivityStream.UserFollowed += FollowedUser; accountActivityStream.UserUnfollowed += UnfollowedUser; accountActivityStream.UserBlocked += UserBlocked; accountActivityStream.UserUnblocked += UserUnblocked; accountActivityStream.UserMuted += UserMuted; accountActivityStream.UserUnmuted += UserUnmuted; // Other events accountActivityStream.EventReceived += AccountActivityEvent; accountActivityStream.UnsupportedEventReceived += UnmanagedEventReceived; }
public void RemoveActivityStream(IAccountActivityStream accountActivityStream) { WebhookDispatcher.UnsubscribeAccountActivityStream(accountActivityStream); }
public void AddActivityStream(IAccountActivityStream accountActivityStream) { WebhookDispatcher.SubscribeAccountActivityStream(accountActivityStream); }
public void UnsubscribeAccountActivityStream(IAccountActivityStream accountActivityStream) { _userAccountActivityStream.Remove(accountActivityStream); }