-
-
Save 02strich/440dd9c072cd84c53c1f to your computer and use it in GitHub Desktop.
#!/usr/bin/env python | |
# Send Notifications via SMS (twilio) | |
import os | |
import logging | |
from twilio.rest import TwilioRestClient | |
ACCOUNT_SID = "<<YOUR SID>>" | |
AUTH_TOKEN = "<<YOUR TOKEN>>" | |
if __name__ == '__main__': | |
message = """%(item_type)s - %(type)s | |
%(short_date)s | |
Host: %(host_name)s - %(host_state)s""" % { | |
'item_type': "SERVICE" if os.environ["NOTIFY_SERVICEDESC"] != '$SERVICEDESC$' else "HOST", | |
'type': os.environ["NOTIFY_NOTIFICATIONTYPE"], | |
'short_date': os.environ["NOTIFY_SHORTDATETIME"], | |
'host_name': os.environ["NOTIFY_HOSTNAME"], | |
'host_state': os.environ["NOTIFY_HOSTSTATE"] | |
} | |
if os.environ["NOTIFY_SERVICEDESC"] == '$SERVICEDESC$': | |
message = message + "\nOutput: " + os.environ["NOTIFY_HOSTOUTPUT"] | |
else: | |
message = message + "\nService: " + os.environ["NOTIFY_SERVICEDESC"] + " - " + os.environ["NOTIFY_SERVICESTATE"] | |
message = message + "\nOutput: " + os.environ["NOTIFY_SERVICEOUTPUT"] | |
client = TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN) | |
message = client.messages.create(to=os.environ['NOTIFY_CONTACTPAGER'], from_="<<YOUR FROM NUMBER>>", body=message) |
Here are some breadcrumbs I will leave for myself and others...
Read this for instructions as logging into cli as the site user of your check_mk
install twilio library as site user:
OMD[mysite]:~$ pip install twilio
copy the above script to : /omd/sites/name of your site here/share/check_mk/notifications/
edit the following lines as the TwilioRest client has been deprecated.
- line 7: from twilio.rest import Client
- line 9: SID
- line 10: TOKEN
- line 29: client = Client(ACCOUNT_SID, AUTH_TOKEN)
- line 30: FROM NUMBER
How does this send the message? What internet service needs to be available? I would like to setup nodeping on-prem monitoring to watch the on-prem checkmk server can reach the twilio messaging internet infrastructure and have nodeping notify me if it notices that my checkmk cannot send sms alerts via twilio. is a ping check to a specific twilio internet host enough, or do we know a http connection against twilio that I coudl check for on a specifc twilio sms messaging server?
Hi are you guys still able to help?
I did as it was informed but I'm still having trouble to make it work.
Where should I Insert the number I want checkmk send the messages to?
The number is expected in the environment variable NOTIFY_CONTACTPAGER
Hello,
where i should put this script and how can i activate it? Thank you