zoneminder报警(微信、QQ提醒)
来源:互联网 发布:mac 资料库在哪 编辑:程序博客网 时间:2024/04/29 18:17
zoneminder报警:当无人在家(dhcp保留手机IP,通过ping手机IP判断是否有人在家),过去10秒所有帧画面平均分值超过10分时,发送报警邮件到QQ邮箱,微信开通邮件提醒后,可以直接经过微信通知
suspend:检测到手机,不报警
fine:检测不到手机,开启报警,无警报
alarm:检测不到手机,开启报警,有警报
#!/usr/bin/python# -*- coding: UTF-8 -*-import MySQLdbimport smtplibimport datetimeimport osfrom email.mime.text import MIMETextmail_host = 'smtp.163.com'mail_user = '***'mail_pass = '***'mail_postfix = '163.com'mail_subject = 'zm_alarm:' + datetime.datetime.now().strftime('%y-%m-%d_%H:%M:%S')strsql='select e.id,f.score from frames f,events e where f.eventid=e.id and e.monitorid=1 and f.timestamp>date_sub(now(), interval 10 second)'def send_mail(sub,content): me='zm<' + mail_user + '@' + mail_postfix + '>' msg = MIMEText(content,_subtype='html',_charset='utf-8') msg['Subject'] = sub msg['From'] = me msg['To'] = '***@qq.com' try: server = smtplib.SMTP() server.connect(mail_host) server.login(mail_user,mail_pass) server.sendmail(me, '***@qq.com', msg.as_string()) server.close() except Exception, e: print str(e)if len(os.popen('ping -c 2 -W 1 192.168.2.188 | grep time | grep from ').readlines()) == 0: db = MySQLdb.connect('192.168.2.50','zmuser','zmpass','zm' ) cur = db.cursor() num = cur.execute(strsql) data = cur.fetchall() score = 0 scoremax = 0 eventid = 0 for rec in data: score = score + rec[1] if rec[1] > 10: eventid = rec[0] if scoremax < rec[1]: scoremax=rec[1] if score > num * 10: print 'ALARM' send_mail(mail_subject + '[mx:%s]'%(scoremax,),\ 'Alarm <br />EventID:<a href="http://***/zm?view=event&mode=stream&mid=1&eid=%s">%s</a>'\ '<br />Frames: %s<br />MaxScore: %s<br />'\ 'CAM_VIEW:<a href="http://***/zm/?view=montage&group=0" target="_blank">http://***/zm/?view=montage&group=0</a>'%(eventid,eventid,num,scoremax)) os.system('echo `date "+%Y-%m-%d %H:%M:%S : 1 - ALARM."` >> /var/works/mlog') else: os.system('echo `date "+%Y-%m-%d %H:%M:%S : 0 - FINE."` >> /var/works/mlog') cur.close() db.close()else: os.system('echo `date "+%Y-%m-%d %H:%M:%S : 0 - SUSPEND."` >> /var/works/mlog')
0 0
- zoneminder报警(微信、QQ提醒)
- 微信客服之qq消息提醒
- 类似qq,微信的消息提醒
- 观察者模式设计qq邮箱日历提醒 -- qq终端,qq邮箱终端,微信终端提醒
- Nagios微信报警
- zabbix微信报警
- 飞鸽快信微信消息-LINUX服务器告警、状态监控预警、程序报警提醒等消息实时推送工具
- 飞鸽快信微信消息-LINUX服务器告警、状态监控预警、程序报警提醒等消息实时推送工具
- zabbix实现微信报警
- zabbix2.4 微信报警
- zabbix微信报警脚本
- zabbix3.0 微信报警
- 微信服务号报警
- zabbix微信报警脚本
- Golang 实现微信报警
- zoneminder
- ZONEMINDER
- Zoneminder
- sdnu 1315
- 从头到尾彻底解析哈希表算法
- 正则表达式
- redis基本操作
- 假期学习之XML和Json 篇
- zoneminder报警(微信、QQ提醒)
- json
- sdnu 1010
- ubuntu14.04 安装 kdbg 以及运行 kdbg 遇到的问题
- NUCLEO-F767ZI以太网功能实现笔记本电脑不开盖开机
- Constructing Roads
- 马踏棋盘算法(骑士周游问题)
- [bzoj3956] Count
- 1小时学会:最简单的iOS直播推流(一)介绍