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

notification: plug-able providers #2639

Open
mastercactapus opened this issue Sep 29, 2022 · 3 comments
Open

notification: plug-able providers #2639

mastercactapus opened this issue Sep 29, 2022 · 3 comments
Assignees
Labels
enhancement New feature or request

Comments

@mastercactapus
Copy link
Member

What problem would you like to solve? Please describe:
Adding a new notification provider currently requires MANY touch-points in code and a lot of overhead: DB migrations, new types in several packages, updating various switch statements, etc...

Describe the solution you'd like:
Make destinations generic so that things like listing Slack channels, sending messages to them, SMS, voice, etc... can be done through a separate service that can also be built/packaged with the core app.

Describe alternatives you've considered:
As it stands, the only way to extend providers is to update a lot of spider-webby code.

Additional context:
This will provide a clean way to add new providers quickly: #2290, #2102, #2049, #871, #552

@mastercactapus
Copy link
Member Author

At a high level, here's what this might look like for an SMS provider. The plugin could also be built into GoAlert, but the overall functionality will be the same.

image

Additionally, optional interfaces for listing/enumeration (e.g., Slack channels) would be defined.

@tong-bluehill
Copy link

+1 for this feature.
In the above flow chart, can the class sms be a more general class like NotificationRequest?
Just curious about the priority. Is there a tool to see all features progress?

Thank you!

@tony-tvu tony-tvu self-assigned this Nov 10, 2023
@mastercactapus
Copy link
Member Author

A lot of recent PRs have been made towards this end but were not tagged, for reference:
https://github.com/target/goalert/pulls?q=is%3Apr+dest+is%3Aclosed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants