采用微信报警时,管理员账户中必须要设置"示警媒体"一项,"收件人"一项可随便填写一下。其它成员则可以不用添加设置。

-------------------------------------------------------------------------------------------------------------------------------------

1. 首先要自己申请一个微信企业号(貌似一个人可以申请好几个,我测试的时候同样的信息申请了2个没问题)。团体模式的 三分钟就ok

微信企业号官网链接: https://qy.weixin.qq.com/

申请账号就不细说了,填下自己的信息然后用绑定了自己银行卡的微信扫一下..注意下面几个地方就ok: 

2.申请完毕后登陆进去(每次登陆都会要求微信扫码认证,很恶心,但是很安全) 
注意:主要上传logo..不然发消息的时候会返回报错…(应该算是bug了…) 

这时候先把自己配置好 然后加关注. 
 
这里设置好邮箱..可以发送二维码到邮箱邀请关注.后期可能会比较有用 

上面在通讯录里面加好自己以后,直接扫描设置里面的二维码.进行关注. 

ok。。。关注完成了..那么下面需要创建一个管理组,生成Corpip和Secret (这里说明下,,,后面通过api进行调用时,会通过corpip和Secret生成认证token.以此作为凭证进行身份确认.默认过期时间为7200秒) 

然后权限管理里面加上自己,会发送邮件到对应邮箱,进行确认就ok

页面配置都ok,然后根据官网文档的API接口进行测试..我这里就不演示了 具体可以去看官方API

http://qydev.weixin.qq.com/wiki/index.php?title=%E4%B8%BB%E5%8A%A8%E8%B0%83%E7%94%A8

然后写了一个简单的Python 根据位置变量传入要发送的信息

#!/usr/bin/env python
# -*- coding: utf- -*-
import urllib2
import simplejson as json
import sys
class weChat:
def __init__(self,url,Corpid,Secret):
url = '%s/cgi-bin/gettoken?corpid=%s&corpsecret=%s' % (url,Corpid,Secret)
res = self.url_req(url)
self.token = res['access_token'] def url_req(self,url,method='get',data={}):
if method == 'get':
req = urllib2.Request(url)
res = json.loads(urllib2.urlopen(req).read())
elif method == 'post':
req = urllib2.Request(url,data)
res = json.loads(urllib2.urlopen(req).read())
else:
print 'error request method...exit'
sys.exit()
return res
def send_message(self,userlist,content,agentid=):
self.userlist = userlist
self.content = content
url = 'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=%s' % self.token
data = {
"touser": "",
"toparty": "",
"totag": "",
"msgtype": "text",
"agentid": "",
"text": {
"content": ""
},
"safe":""
}
data['touser'] = userlist
data['agentid'] = agentid
data['text']['content'] = content
data = json.dumps(data,ensure_ascii=False)
# print data
res = self.url_req(url,method='post',data=data)
if res['errmsg'] == 'ok':
print 'send sucessed!!!'
else:
print 'send failed!!'
print res if __name__ == '__main__':
userlist = sys.argv[]
content = sys.argv[:]
content = '\n'.join(content)
Corpid = 'wx647eb76cd7038c3d'
Secret = 'DTmfHEEQw1bwLG5T1MMtABzrJe1Dhon54s4XvIS8H0rHpZ09L7E0bJg0nL8HFwMt'
url = 'https://qyapi.weixin.qq.com' wechat = weChat(url,Corpid,Secret)
wechat.send_message(userlist,content)

3.关联zabbix

  1. 将 sendwechat.py 脚本放到zabbix安装目录下的share/zabbix/alertscripts
  1. 添加警类型
  2. 添加联系人,这里的联系人,对应之前设置的userid 

最后进行测试.根据自己的情况进行调整.

参考资料:http://blog.csdn.net/u011744758/article/details/45363125

通过微信企业号发送zabbix报警的更多相关文章

  1. python与shell通过微信企业号发送消息

    python与shell通过微信企业号发送信息,脚本来源于网络,做好搬运工,哈哈,相应的参考链接放在末位 shell版本: #!/bin/bash # CropID="xxxx" ...

  2. 微信企业号 发送信息 shell

    微信企业号发送信息shell #可作为shell函数模块调用,用于微信通知.jenkins发版微信通知等等 # 微信API官方文档 https://work.weixin.qq.com/api/doc ...

  3. 微信企业号发送监控消息【php】

    公司这边有做监控异常并将消息发送到企业公众号的功能.大概如下: 定时任务检测异常消息 将消息存入redis队列 定时处理队列异常消息 发送到微信企业号对应的部门组 这里我们来看一下微信发送过程,其他不 ...

  4. [置顶] 个人微信号发送zabbix告警信息

    之前使用邮件和短信发送zabbix告警信息,但告警信息无法实时查看或者无法发送,故障无法及时通知运维人员. 后来使用第三方微信接口发送信息,愉快地用了一年多,突然收费了. zabbix告警一直是我的痛 ...

  5. zabbix之微信告警(python版):微信个人报警,微信企业号告警脚本

    微信个人告警脚本 微信个人告警:使用个人微信,发送到微信群组,微信好友 两个脚本执行: 1)能连接网络2)先执行server.py,扫描登录微信,登录之后没有报错,打开新终端查看端口是否起来了3)在z ...

  6. 通过脚本发送zabbix微信报警

    实现zabbix通过微信报警的方式也是通过脚本来实现,与邮件报警不同的是,脚本调用的微信的相关接口的获取相对复杂一点 1.申请一个微信公众号(企业号) 申请方法不多说,如果已申请请忽略 2.在微信企业 ...

  7. 毕业设计之zabbix+微信企业号报警

    需要自己申请一个微信企业号 创建应用 AgentId 1000003 Secret SOI8b20G96yUVM29K02-bP5N5o6dovwSF2RrDaXHJNg 企业ID(自己再企业信息里面 ...

  8. zabbix报警媒介------>微信报警

    zabbix报警媒介------>微信报警 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 欢迎加入高级运维工程师之路:598432640 微信在我们的生活中使用的比较频繁,有 ...

  9. Zabbix实战-简易教程--通过公众平台企业号发送短信

    一.注册企业号[体验号] 打开页面 http://qydev.weixin.qq.com/try?t=experience   (2016年注册的时候的连接)现在可能变了.进行注册操作,默认有90天的 ...

随机推荐

  1. windows调试器尝鲜

    曾几何时,我也下载过看雪论坛精华看的津津有味.可惜一直没有动手去调试,学到的x86汇编指令也忘得差不多了.最近将老机器的T4200 CPU换成了更省电,温度更低的P8800,为了支援新的VT虚拟化,特 ...

  2. 记录以下boost::shared_ptr的一个使用细节

    shared_ptr<T>::operator->返回的是T*类型指针,非const T*指针.因此通过const shared_ptr<T>&类型的ptr可以直 ...

  3. javac

    http://openjdk.java.net/groups/compiler/ http://crazyjavahacking.org/tag/javac/ http://openjdk.java. ...

  4. php递归函数--遍历

    多应用在 栏目多级.无限极调用 数据库数据如: id   catname   pid 1    关于我们     0 2     新闻          0 3    公司新闻     2 4     ...

  5. linux 常用的酷炫命令

    1 命令行日常系快捷键 如下的快捷方式非常有用,能够极大的提升你的工作效率: CTRL + U -剪切光标前的内容 CTRL + K -剪切光标至行末的内容 CTRL + Y -粘贴 CTRL + E ...

  6. Android之旅---广播(BroadCast)

    什么是广播 在Android中,Broadcast是一种广泛运用的在应用程序之间传输信息的机制.我们拿广播电台来做个比方.我们平常使用收音机收音是这样的:许许多多不同的广播电台通过特定的频率来发送他们 ...

  7. Type Project has no default.properties file! Edit the project properties to set one.

    Description Resource Path Location Type Project has no default.properties file! Edit the project pro ...

  8. shell问题(转)

    一个同学问我一个问题,说有以下文件内容,要求输出为特定的格式.这里就献丑给出一个处理的方法吧,由于时间关系可能我的答案并不是最好的,但是我尽量将我的答案讲解明白,让你理解处理的方法.如果您有简单明了的 ...

  9. 10、java中的抽象类

    当多个类中出现相同功能,但是功能主体不同,这是可以进行向上抽取.这时,只抽取功能定义,而不抽取功能主体. 抽象:看不懂. 抽象类的特点:1,抽象方法一定在抽象类中.2,抽象方法和抽象类都必须被abst ...

  10. HackerRank "Kruskal (MST): Really Special Subtree"

    Kruskal Algorithm is based on Union-Find - quite intuitive. #include <vector> #include <ios ...