As Jeff Atwood said, email is the core of Discourse and we shouldn’t or we can’t ignore and bypass it.
But real-world may unruly than our imagining, some platforms are not provided an email address and we also want to integrate it to our Discourse. The discourse-oauth2-basic solution is
The discourse-oauth2-basic is a general-purpose OAuth2 plugin so didn’t include any feature for a special platform, but when we develop a platform-specific authenticator and don’t provide an email address we may want to integrate the platform notification system instead of the default email notification.
My suggested solution is to build a fake email address for unique identity like
platform-prefix + email@example.com, an email validator to decide which notification system should be used or some hooks and filters to build sender when sending a notification, the default email notification or authenticator implemented. I think it’s a non-invasive implemented for exist architected?