Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何修改zabbix脚本?_Python_Linux_Shell_Email_Zabbix - Fatal编程技术网

Python 如何修改zabbix脚本?

Python 如何修改zabbix脚本?,python,linux,shell,email,zabbix,Python,Linux,Shell,Email,Zabbix,我用zabbix做监视器但我有个问题, 当zabbix发送报警电子邮件时,该电子邮件将通过短信发送到我的iphone。 如果电子邮件标题是日语或中文。 短信是无序代码。这里是脚本,如何修改它 #!/usr/bin/python26 #coding:utf-8 import smtplib from email.mime.text import MIMEText import sys mail_host = 'smtp.189.cn' mail_user = 'tom_a' mai

我用zabbix做监视器但我有个问题, 当zabbix发送报警电子邮件时,该电子邮件将通过短信发送到我的iphone。 如果电子邮件标题是日语或中文。 短信是无序代码。这里是脚本,如何修改它

 #!/usr/bin/python26
 #coding:utf-8
 import smtplib
 from email.mime.text import MIMEText
 import sys
 mail_host = 'smtp.189.cn'
 mail_user = 'tom_a'
 mail_pass = '123456'
 mail_postfix = '189.cn'
 def send_mail(to_list,subject,content):
   me = mail_user+"<"+mail_user+"@"+mail_postfix+">"
   msg = MIMEText(content,_subtype='plain',_charset='utf-8')
   msg['Subject'] = subject
   msg['From'] = me
   msg['to'] = to_list
   try:
     s = smtplib.SMTP()
     s.connect(mail_host)
     s.login(mail_user,mail_pass)
     s.sendmail(me,to_list,msg.as_string())
     s.close()
     return True
   except Exception,e:
     print str(e)
     return False
 if __name__ == "__main__":
   send_mail(sys.argv[1], sys.argv[2], sys.argv[3])
#/usr/bin/python26
#编码:utf-8
导入smtplib
从email.mime.text导入MIMEText
导入系统
邮件主机='smtp.189.cn'
mail\u user='tom\u a'
邮递通行证='123456'
mail_postfix='189.cn'
def发送邮件(收件人列表、主题、内容):
me=邮件用户+“”
msg=MIMEText(内容,_subtype='plain',_charset='utf-8')
msg['Subject']=主语
msg['From']=我
msg['to']=收件人列表
尝试:
s=smtplib.SMTP()
s、 连接(邮件主机)
s、 登录(邮件用户、邮件通行证)
s、 sendmail(我,收件人列表,msg.as\u string())
s、 关闭()
返回真值
除例外情况外,e:
打印str(e)
返回错误
如果名称=“\uuuuu main\uuuuuuuu”:
发送邮件(sys.argv[1]、sys.argv[2]、sys.argv[3])

您正在使这个问题变得比需要的复杂得多。相反,看看Zabbix内置的SMS功能并使用它。与其尝试侵入电子邮件发送功能(我认为),不如与您选择的短信提供商合作


然后将其添加到您关心的触发器的警报选项中。例如,您可能希望它仅在灾难级别触发时运行。

我知道zabbix可以使用sms,但我使用emali,然后电子邮件将发送到我的iphone,因为它是免费的,189邮件或139邮件具有免费功能,所以我想发送电子邮件,然后电子邮件将自动发送到我的iphone。那么您到底需要什么帮助?