微信报警


第一步: 注册企业微信


企业微信注册网址(如果有直接登陆即可)
https://work.weixin.qq.com


API接口文档

https://work.weixin.qq.com/api/doc#90000/90003/90487


在企业微信中需要获取知道的信息

  1. CorpID(获取方法:企业微信中我的企业 -> 企业信息)
  2. User(获取方法:企业微信中通信录点击要接收消息者的名字)
  3. Partyid(获取方法:企业微信中通信录左侧部门的选择按钮显示部门ID)[群发时需要]
  4. Agentid(获取方法:在企业微信中企业用用中创建自建应用中,所以微信监控需要在微信企业中自建一个应用)
  5. Secret(获取方法:同 Agentid)


第二步: 准备python脚本

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import requests
import sys
import os
import json
import logging

logging.basicConfig(level=logging.DEBUG,
                    format='%(asctime)s, %(filename)s %(levelname)s %(message)s',
                    datefmt='%a, %d %b %Y %H:%M:%S',
                    filename=os.path.join('/tmp', 'weixin.log'),
                    filemode='a'
                    )

# 企业微信id
corpid = 'ww2ae2f5ee2a7764e4'

# app的Secret
appsecret = 'f-J3XOvCyAjtO4FkMTy4w6VzSC423tO8caskhMt8G8A'

# 应用id
agentid = 1000002

# 获取accesstoken
token_url = 'https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=%s&corpsecret=%s' % (corpid, appsecret)
req = requests.get(token_url)
accesstoken = req.json()['access_token']

# 发送消息
msgsend_url = 'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=%s' % accesstoken

touser = sys.argv[1]
subject = sys.argv[2]
message = "%s\n\n%s" % (sys.argv[2], sys.argv[3])

params = {
    'touser': touser,
    'msgtype': "text",
    "agentid": agentid,
    "text": {
        "content": message
    },
    "safe": 0
}

req = requests.post(msgsend_url, data=json.dumps(params))

logging.info('sendto: %s;;subject: %s;;message: %s'%(touser, subject, message))


第三步: 配置报警媒介类型为脚本

参考文档: https://www.zabbix.com/documentation/3.0/manual/introduction/whatsnew300



第四步: 设置收件人


12-29 20:59