python实现zabbix发送短信脚本

yipeiwu_com6年前Python基础

本文实例为大家分享了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 sys
import requests

def 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 e

if __name__ == '__main__':
 key = '712ab57ec021f8f05f862652c95f3344'
 phone = sys.argv[1]
 # subject = sys.argv[2]
 message = sys.argv[3]

 sendsms(key, phone, message)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Django框架视图函数设计示例

本文实例讲述了Django框架视图函数。分享给大家供大家参考,具体如下: 视图函数即为处理HTTP请求的python函数。一般情况下,视图函数的功能是通过模型层对象处理数据,然后通过下面...

python实现装饰器、描述符

概要 本人python理论知识远达不到传授级别,写文章主要目的是自我总结,并不能照顾所有人,请见谅,文章结尾贴有相关链接可以作为补充 全文分为三个部分装饰器理论知识、装饰器应用、装饰器...

关于你不想知道的所有Python3 unicode特性

我的读者知道我是一个喜欢痛骂Python3 unicode的人。这次也不例外。我将会告诉你用unicode有多痛苦和为什么我不能闭嘴。我花了两周时间研究Python3,我需要发泄我的失望...

人机交互程序 python实现人机对话

自己随便写了一个人机交互的程序。不存在任何智能,只是可以识别姓名,可以记录对话内容,并保存等到下一次交互时加载。 (推荐面向对象版本) # hello.py # 这是老早写的。不过...

Python中将字典转换为列表的方法

Python中将字典转换为列表的方法

说明:列表不可以转换为字典 ①转换后的列表为无序列表 a = {'a' : 1, 'b': 2, 'c' : 3} #字典中的key转换为列表 key_value = list(a...