1.注册企业微信
打开链接注册企业微信(实名制)
企业信息可根据你自己企业进行设置
https://work.weixin.qq.com/wework_admin/register_wx?from=0010500502
企业信息可根据你自己企业进行设置
https://work.weixin.qq.com/wework_admin/register_wx?from=0010500502
2.创建应用
注册完成之后,在应用管理中,创建应用
3.填写应用信息
填写应用信息
可见范围选择整个系统部门
可见范围选择整个系统部门
4.查看四个ID信息
查找这四个信息,在后面写脚本需要填写这四个信息
5.编写脚本
[root@zabbix-server ~]# vim /usr/lib/zabbix/alertscripts/weixin.sh
[root@zabbix-server ~]# cat /usr/lib/zabbix/alertscripts/weixin.sh
#!/bin/bash
CropID='ww452669cf8d3cd473' #企业ID
Secret='ANtAh0BsAB7F8F6RJJTkO8m2l_lsMem0taT9WpVpzyk' #Secret值
GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret"
Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F\" '{print $10}')
PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Gtoken"
function body() {
local int AppID=1000003 #企业号中的应用AgentId值
local UserID=$1 #部门成员id,zabbix中定义的微信接收者
local PartyID=1 #部门id,定义了范围,组内成员都可接收到消息
local Msg=$(echo "$@" | cut -d" " -f3-) #过滤出zabbix中传递的第三个参数
printf '{\n'
printf '\t"touser": "'"$User"\"",\n"
printf '\t"toparty": "'"$PartyID"\"",\n"
printf '\t"msgtype": "text",\n'
printf '\t"agentid": "'" $AppID "\"",\n"
printf '\t"text": {\n'
printf '\t\t"content": "'"$Msg"\""\n"
printf '\t},\n'
printf '\t"safe":"0"\n'
printf '}\n'
}
/usr/bin/curl --data-ascii "$(body $1 $2 $3)" $PURL
这四个值填写你自己的,刚才让你查找的,要一一对应
6.手机扫你自己的企业二维码并关注
在我的企业,微信插件中,找到邀请关注的二维码,使用你自己的手机扫一扫,即可在微信进入你的企业应用了。
7.使用命令测试报警发送给微信
先在通讯录系统中查找管理成员的账号(也就是成员ID)
./weixin.sh 为执行脚本
LiXian 为成员ID
1 为部门ID
测试–哈哈 为测试内容
./weixin.sh 为执行脚本
LiXian 为成员ID
1 为部门ID
测试–哈哈 为测试内容
[root@zabbix-server ~]# cd /usr/lib/zabbix/alertscripts/
#给脚本赋予执行权限
[root@zabbix-server /usr/lib/zabbix/alertscripts]# chmod +x weixin.sh
#执行脚本 + 成员ID + 部门ID + 内容
[root@zabbix-server /usr/lib/zabbix/alertscripts]# ./weixin.sh LiXian 1 测试--哈哈
#errmsg结果为OK则成功。
{"errcode":0,"errmsg":"ok. Warning: wrong json format. ","invaliduser":""}[root@zabbix-server /usr/lib/zabbix/alertscripts]#
8.创建报警媒介类型
9.设置报警媒介信息为脚本,并添加三个参数
{ALERT.SENDTO} #发送的⽤户
{ALERT.SUBJECT} #发送的主题
{ALERT.MESSAGE} #发送的内容
10.填写用户报警信息
类型选择报警媒介为微信报警
收件人为微信的管理成员ID
收件人为微信的管理成员ID
11.更新用户报警媒介
这里一定要选择更新
12.测试登录用户过多和解决
在本地多连接几个xshell用户,大于5个会报警并发送邮件和微信
恢复也会发送邮件和微信
恢复也会发送邮件和微信


















