Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add notifications for candidate and confirmed detection events #111

Closed
Tracked by #313
skanderm opened this issue Mar 27, 2023 · 6 comments
Closed
Tracked by #313

Add notifications for candidate and confirmed detection events #111

skanderm opened this issue Mar 27, 2023 · 6 comments
Assignees
Labels
type: feature New feature or request
Milestone

Comments

@skanderm
Copy link
Contributor

skanderm commented Mar 27, 2023

Is your feature request related to a problem? Please describe.
Admins are currently not notified when there are new candidates and must regularly check the admin panel. Admins must also manually send email notifications when there is confirmed activity on a node.

Describe the solution you'd like

  1. Automated emails can to go admins when there are new candidates.
  2. Notifications can then go out to subscribers when there is a confirmed detection.
  3. Allow management of notifications through admin panel.

Describe alternatives you've considered
The alternative is to keep the system as-is - admins send manual notifications.

Additional context
Notifications can be later expanded to browser push notifications, partner organizations, etc. I'd like to make use of Ash's Notifiers API for notification hooks that go out to various channels: https://hexdocs.pm/ash/notifiers.html

@skanderm skanderm changed the title Add notifications for transactional events Add notifications for detection events Mar 27, 2023
@skanderm skanderm added the type: feature New feature or request label Mar 27, 2023
@skanderm
Copy link
Contributor Author

This task addresses the email notification channel using human detections specified here: https://docs.google.com/document/d/1RSQR2IwfLgCWNfnmK4CbMX33yk6h0ty7uVkKgfrmzGo/edit

@skanderm skanderm changed the title Add notifications for detection events Add notifications for candidate and confirmed detection events Mar 27, 2023
@scottveirs
Copy link
Member

Flagging three (old) cards in the Orcasound roadmap that are related to this issue:

  1. automated-notifications-no-human-moderator
  2. push-notifications
  3. more-notification-methods

These could likely be rolled into one Trello card after this issue is complete, and/or we could delineate future notification features in new, separate issues within this repo...

@scottveirs
Copy link
Member

@skanderm Here's a data dump and graphical depiction of the (messy, evolving) current vs future notification situation. We can discuss further asynchronously here, and/or on a call or in-person if it's helpful:

IMG_5090

A nuance here is that currently we just issue notifications based on real time data products (from Orcasound or visual data sources), but there are movement models published or in the works that could allow alerts based on forecasted positions. The prototyped Canadian SRKW model projects trajectories about 3 hours into the future. More/better ones, and open source ones, could be developed in e.g. the orcamap-react repo/project...

IMG_5091

An important topic to discuss early: how do we issue notifications to the Orcasound personae ("engaged community scientist" vs "professional conservation scientist" that are helpful rather than annoying?!

@scottveirs
Copy link
Member

As we bake notifications into at least the Orcasound live-listening web app, I am wondering when/if we should introduce a reputation/privilege/badges/etc system akin to the one that StackExchange is re-thinking this spring.

It is probably enough for now to make some of the content in the current admin "panel" public by default and then authenticate only moderators. However, I wanted to remember that the Acartia data cooperative is aspiring to set the stage for better data sharing governance and provenance, and part of that includes issuing tokens with which each observation (visual or acoustic) can be tagged to identify the source and explain any confidence metrics to potential end-users of the data point.

@scottveirs
Copy link
Member

@skanderm Here are a few thoughts about your proposed solution:

- Automated emails can to go admins when there are new candidates.

One possible way to implement & possibly minimize costs would be to send a single email to a distribution list. I've been moving the OrcaHello AI moderator notifications in this direction, in part because then moderators can manage their own subscription via e.g. this orca-hello Mailman listserv. We could re-use that for the Orcasound human detections, too, but I'm thinking it might be best to create/use a more generic listserv where we invite future general Orcasound moderators to subscribe.

Alternatively, I'm curious to know if Elixir or any of the third-party apps listed in Paul's Gdoc offer better email notification opportunities. I guess the app's backend will need some mechanism for sending at least to a moderator listserv...

And thinking further ahead to some day when we have many moderators and ML models -- some specializing in SRKWS, others in humpback signals -- we likely will want to have a more intelligent email distribution system. For example, if the ML and human detectors are confident we are hearing humpbacks rather than SRKWs, maybe only humpback admins/annotators get the notification to moderate... Similarly, perhaps future Orcasound subscribers will want the option to only get humpback notifications for a particular feed?

- Notifications can then go out to subscribers when there is a confirmed detection.

A nuance here is that I don't think most of our subscribers will want an email for every detection confirmed by a moderator. This is an open question, however, and I may be wrong to some extent -- e.g. maybe folks would appreciate another email every ~10 minutes that a bioacoustic bout is continuing? But in "popular" recent events, there have been 10s - 100s of "I hear something interesting" button pushes, so that would be quite a confirmed email fire hose!d

The main Orcasound subscriber list is managed through MailChimp at the moment, with about 2800 unique, non-bouncing members currently (though about 3500 have filled out the Google form). We have a template that is customized a tiny bit during manual sends, but I'm sure that could be automated (maybe via the MailChimp API)? This audience has opted in to emails whenever anything interesting is being heard (not just SRKWs). I'm not opposed to moving away from MailChimp, BTW,

There is also the old locate@ Mailman listserv with about 150 local members (researchers, stewards, managers) and it's only meant for SRKW events.

- Allow management of notifications through admin panel.

What does this look like, I wonder? In general, it makes sense to me to have a Notify option available to anyone with admin privileges. Maybe it lives near the View UI element, but results in a modal that warns if it's been e.g. <10 minutes since the last notification?

Screenshot 2023-03-28 at 2 49 21 PM

@skanderm
Copy link
Contributor Author

skanderm commented Sep 1, 2023

@skanderm skanderm closed this as completed Sep 1, 2023
@paulcretu paulcretu added this to the v3 milestone Jan 13, 2024
@paulcretu paulcretu mentioned this issue Jan 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: feature New feature or request
Projects
Status: archived
Development

No branches or pull requests

4 participants