allReady icon indicating copy to clipboard operation
allReady copied to clipboard

EVENTS: Volunteer should be able to select the events that they want to do and subscribe to updates

Open EmilyLuijbregts opened this issue 7 years ago • 1 comments

This is a breakout from Events Epic #2039

Requirement:

  • As a volunteer I want to be able to follow/see all events that I find relevant.

Definition of Done:

  • There should be the functionality to 'follow' an event for a volunteer (pending confirmation of question below)

Additional Information: Comment from @stevejgordon : QUESTION. I think we need more information to define the required functionality. Reply from Jim: I have radio operators who do not want to know about campaigns that do not have a need for radio operators. Being able to follow certain events. Possibly metatag with categories for the type of events that can be followed. Reply from Pascal: I see this as a vol being able to subscribe to the event for updates. Like hitting a like in Instagram. Right?

Questions: @stevejgordon : does this answer your question or is further detail needed? @OhMcGoo and @schuback: Should a volunteer be able to follow any event? or only events that they are registered for?

EmilyLuijbregts avatar Aug 01 '17 19:08 EmilyLuijbregts

To implement this we will need to create a new UserNotification table/entity with the following fields:

  • UserNotificationId
  • NotificationType
  • EntityID
  • UserID
  • CreatedDate

We will need a UserNotificationType enum with currently the only value being EventNotifications.

We will need a command/handler to allow users to "subscribe" as well as "unsubscribe". A button will need to be added to the event page to trigger these actions.

We will need to expand the the "My Account" page to include a tab for "Current Event Subscriptions". The user will be able to see all current subscriptions and to unsubscribe for any of them. This will allow us to adhere to email/spam policies (allowing users to opt out of emails).

We will need to have an EventChanged event and corresponding handler. The handler will queue up emails for all users who have subscribed to the event. The handler should have appropriate logging configured. It should push the data to Table Storage (per our current pattern, but we can revisit this to update to Service Bus later).

@EmilyLuijbregts @OhMcGoo @schuback we'll need to get information on what types of event changes will trigger the notifications. We will have to later update the appropriate change handlers to publish an appropriate event.

MisterJames avatar Aug 05 '17 02:08 MisterJames