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

Call alert script with arguments #871

Open
hugoreadonlyuser opened this issue Sep 17, 2020 · 7 comments
Open

Call alert script with arguments #871

hugoreadonlyuser opened this issue Sep 17, 2020 · 7 comments
Labels
enhancement New feature or request needs discussion new provider stale This is inactive

Comments

@hugoreadonlyuser
Copy link

Is your feature request related to a problem? Please describe:
We would like to to send alert messages to whatsapp and or telegram . For instance use smooch api with a python script that receives the message and its values via arguments from goalert.
Currently we are locked on twilio which cannot configured to use whatsapp instead of SMS.

Describe the solution you'd like:
Having a media type alert or custom script that can be configured with arguments would open to use any message providers.

@hugoreadonlyuser hugoreadonlyuser added the enhancement New feature or request label Sep 17, 2020
@m17ch
Copy link
Contributor

m17ch commented Sep 24, 2020

Hi @hugoreadonlyuser -- thanks for the enhancement suggestion.

Just gathering some additional data / feedback on what you have in mind for this:

You're not necessarily looking for direct WhatsApp or Telegram support, but a generic method of sending a webhook (with the alert details payload) to external services?

Let me know if you have any additional details for what you're thinking or if I am misinterpreting the request. Thanks again!

@forrayz
Copy link

forrayz commented Sep 24, 2020

Hi sorry I was using our hugo service acc for post :) A generic webhook method would be better. Twilio vendor lock is a show stopper for us.

@ekeih
Copy link

ekeih commented Nov 16, 2020

Hi, we are also very interested in this. We would like to use goalert to send generic emails (smtp) and SMS with other providers. Maybe my thoughts about this provide some additional background that could help during decisions. I see the following options to support a broader range of outgoing alert targets:

  1. Implement SMTP handler for outgoing alerts. Add alerting (outgoing) via email (smtp) #45
  2. Implement handlers for other SMS providers one by one.
  3. Implement an exec handler, that runs an external script for outgoing alerts.
  4. Implement a webhook handler for outgoing alerts.

I think 1. would be cool, because it is already very generic and therefore could be part of the goalert core. 2. sounds like a never ending maintenance nightmare. 3. and 4. are universal solutions that would allow anyone to implement their own alert handlers without the need to change the goalert core. 3. reminds me of the NotificationCommand of Icinga2 and 4. of the webooks in Prometheus Alertmanager. I think 3. is a bit easier for the enduser, but 4. is better suited for distributed systems like Kubernetes.

Personally I would love it if goalert implements 1., 3. and 4., but I would already be happy if just 3. or 4. works. However you decide, thank you very much for all the work you put into goalert and have a nice day 🙂

@mastercactapus
Copy link
Member

So maybe for MVP:

  • exec handler defined as a CM name and command registered via cli flag (e.g. bundle GoAlert into your own container with a script)
  • the ability for a user to add a webhook contact method that issues a POST request to a URL with a fixed payload

There are further considerations like putting a webhook directly on an EP, or a more integrated/system-wide webhook (i.e., some sort of plugin system) that could be more next step things.

As far as #1 that has been merged into master, not in an official release yet though.

@mastercactapus
Copy link
Member

Another quick question, what providers are others using for SMS/Voice? Just in terms of prioritization, we have had backlog-plans to add additional provider options in the future, and would be helpful to know which to look at first.

@stale
Copy link

stale bot commented Aug 7, 2021

This issue has been automatically marked as stale because it has not had recent activity.

@stale stale bot added the stale This is inactive label Aug 7, 2021
@stale stale bot removed the stale This is inactive label Jan 25, 2022
@stale
Copy link

stale bot commented Nov 12, 2022

This issue has been automatically marked as stale because it has not had recent activity.

@stale stale bot added the stale This is inactive label Nov 12, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request needs discussion new provider stale This is inactive
Projects
None yet
Development

No branches or pull requests

6 participants