本文实例为大家分享了zabbix发送短信的具体代码,供大家参考,具体内容如下
使用方法
./sendSMS.py PHONE_NUMBER args_2 SMS_MSG
接收参数输入
参数一: 接收手机号(zabbix传来的第1个参数,报警接收手机号),第一个参数可以对比发送邮件的脚本
参数二: 短信主题(zabbix传来的第2个参数,报警主题),在命令行测试必须输入,用来占位,脚本中并不获取这个参数
参数三: 短信内容(zabbix传来的第3个参数,报警内容)
手动调试方法
python sendSMS.py *********** argv2 "报警测试"
关于命令行测试的另外一种方式
使用shell自带的curl来测试
GET
复制代码代码如下:
curl http://HOST/path/to/path/webapi/sendSMS/?phone=18101111253&smsText='SMS test'
POST
复制代码代码如下:
curl -d phone=18101111253 -d smsText='SMS test' http://HOST/path/to/path/webapi/sendSMS
代码
#!/usr/bin/env python#-*- coding: utf8 -*-import sysimport requestsdef sendsms(key, phone, message): """ 发送短信 """ values = {'Key': key, 'smsMob': phone, 'smsText': message } host = '192.168.0.07' post_url = 'http://' + host + '/path/to/path/webapi/sendSMS' try: req= requests.post(url=post_url, data=values) print req.content except Exception, e: print eif __name__ == '__main__': key = '712ab57ec021f8f05f862652c95f3344' phone = sys.argv[1] # subject = sys.argv[2] message = sys.argv[3] sendsms(key, phone, message)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持VEVB武林网。
注:相关教程知识阅读请移步到python教程频道。