shell脚本之微信报警功能的实现
导语:现在越来越流行微信报警功能了。下面就来看看具体实现吧!
1.先申请一个微信企业号
传送门:http://work.weixin.qq.com/
2.添加用户

2.创建应用

3.创建管理组并添加管理员

接下来准备三个东西:
CorpID 在我的企业一栏中
AgentId
Secret 这2个都在应用中
API调试传送门:http://work.weixin.qq.com/api/devtools/devtool.php
shell脚本的实现
1 #!/bin/bash
2 # -*- coding: utf-8 -*-
3 ###SCRIPT_NAME:weixin.sh###
4 ###send message from weixin for monitoring###
5 ###leo###
6 ###V1-2017-09-05
7
8 CropID='xxx'
9 Secret='xxx'
10 GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret"
11 Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F \" '{print $10}')
12 PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Gtoken"
13 function body() {
14 local int AppID=xxx # 企业号中的应用id
15 local UserID=$1 # 部门成员id,zabbix中定义的微信接收者
16 #local PartyID=$2 # 部门id,定义了范围,组内成员都可接收到消息
17 local Msg="hello" # 过滤出zabbix中传递的第三个参数
18 printf '{\n'
19 printf '\t"touser": "'$UserID'",\n'
20 #printf '\t"toparty": "$PartyID",\n'
21 printf '\t"msgtype": "text",\n'
22 printf '\t"agentid": "'$AppID'",\n'
23 printf '\t"text": {\n'
24 printf '\t\t"content": "'$Msg'"\n'
25 printf '\t},\n'
26 printf '\t"safe":"0"\n'
27 printf '}\n'
28 }
29 #body $1
30 curl --data-ascii "$(body $1)" $PURL
31 printf '\n'
32 echo "over!"
cli 测试
sh weixin.sh mei
{
"touser": "mei",
"msgtype": "text",
"agentid": "xxx",
"text": {
"content": "hello"
},
"safe":""
}
over!
手机上

OK!到此,通过微信企业号发送报警就成功实现了!
其他相关:
错误码查询页:https://work.weixin.qq.com/api/doc/#10649
发送消息帮助页:https://work.weixin.qq.com/api/doc/#10167
shell脚本之微信报警功能的实现的更多相关文章
- Android随笔之——用shell脚本模拟用户按键、触摸操作
之前写过两篇关于Android中模拟用户操作的博客(其实用一篇是转载的),现在就来讲讲用shell脚本来模拟用户按键操作.本次的目标是用shell脚本打开微信并在其搜索框中搜索相关内容. 本文的模拟功 ...
- UDP端口检查告警SHELL脚本(企业微信版机器人版)
脚本准备 0Batch_Check.sh 1port_check.sh 2wechat_bot_alert.sh CheckList CheckList #支持大/小写 10.1.1.5 Udp 53 ...
- 安装完Ubuntu后通过shell脚本一键安装软件
安装完Ubuntu后通过shell脚本一键安装软件 以下代码中#是单行注释 :<<! ! 是多行注释. 运行的时候需要把多行注释去掉. 比如把以下代码保存为install.sh, 那么在终 ...
- 【shell脚本】shell脚本实现的 函数差集查找
文本地址 点击关注微信公众号 wenyuqinghuai 分享提纲: 1. 问题背景 2. 代码实现 1.问题背景 在做公司的测试的自动化测试时,覆盖了一些开发代码的函数,但是那些还没有做,使用一个函 ...
- 如何快速学好Shell脚本? 转
如何快速学好Shell脚本? 目录 写作思路 知识体系 Shell 语言作为类 Unix 系统的原生脚本,有着非常实用的价值.但对于很多刚刚接触 Shell 脚本的同学来说,搞懂 Shell 语言 ...
- Shell脚本 | 截取包名
之前写 shell 脚本的几篇文章都是先大致介绍脚本的功能和写法,然后一股脑的给出完整的代码.并没有细致入微的解释脚本中的每一行是如何思考如何编写的. 今天反其道而行之,只介绍一行代码.争取能讲的清楚 ...
- Shell脚本应用(for、while循环语句和case分支语句)
1.for:读取不同的变量值,逐个执行同一组命令,直到取值完毕退出,变量值以空格分隔 语法: for 变量值 in 取值列表 do 命令序列 done 2.while:重复测试某个条件,成立则执 ...
- 如何快速学好Shell脚本?
Shell 语言作为类 Unix 系统的原生脚本,有着非常实用的价值.但对于很多刚刚接触 Shell 脚本的同学来说,搞懂 Shell 语言的语法却是一件非常困难的事情.甚至有人吐槽,或许没有谁能清楚 ...
- Shell脚本 | 性能测试之启动流量
安卓应用的流量统计有多种方式,点击「阅读原文」可以看到一篇别人写的文章,关于安卓流量数据的获取,写的挺全的,列举了几种不同方式的优劣.(见文末参考链接) 今天我要分享的是通过脚本一键获取应用的启动流量 ...
随机推荐
- 【AC自动机】【动态规划】hdu2296 Ring
题解:http://www.cnblogs.com/swm8023/archive/2012/08/08/2627535.html 要输出路径,价值最大优先,价值相同的取长度较小者,仍相同取字典序较小 ...
- 【计算几何】【极角序】【二分】bzoj1914 [Usaco2010 OPen]Triangle Counting 数三角形
极角排序后枚举每个点,计算其与原点连线的左侧的半平面内的点与其组成的三角形数(二分/尺取),这些都不是黄金三角形. 补集转化,用平面内所有三角形的个数(C(n,3))减去这些即可. 精度很宽松,几乎不 ...
- 摄氏度和华氏度之间的额转换 Exercise06_08
/** * @author 冰樱梦 * 时间:2018年下半年 * 题目:摄氏度和华氏度之间的额转换 * */ public class Exercise06_08 { public static v ...
- Bootstrap标签Tabs
<!--标签--> <ul class="nav nav-tabs" role="tablist"> <li class=&quo ...
- PostgreSQL配置文件--WAL
3 WAL WRITE AHEAD LOG 3.1 Settings 3.1.1 fsync 字符串 默认: fsync = on 开启后强制把数据同步更新到磁盘,可以保证数据库将在OS或者硬件崩溃的 ...
- sqlmapapi的跨域访问Access-Control-Allow-Origin:*;ajax
1.做sqlmapapi的二次开发时,需要通过ajax方式调用sqlmapapi,但是默认情况下,sqlmapapi是不允许跨域访问的 2.尝试增加ajax的header,修改origin的值,来避免 ...
- 织梦默认分页样式改动 解决分页列表显示,去掉li
近期装了个织梦dedecmsV5.7版本号时,调用分页显示出现的结果出现好几行,怎么也不能在一排显示,找了非常多资料,才了解到是由织梦模板中分页加了<Li>列表标签,解决有两种方法,以下将 ...
- javascript快速入门6--Script标签与访问HTML页面
Script标签 script标签用于在HTML页面中嵌入一些可执的脚本 <script> //some script goes here </script> script标签 ...
- Oracle OS认证 口令文件 密码丢失处理
Oracle OS认证 口令文件 密码丢失处理 分类: Oracle Basic Knowledge2009-10-19 14:24 5031人阅读 评论(9) 收藏 举报 oracleos数据库sq ...
- fetch的用法
fetch api是被设计用来替换XmlHttpRequest的,详细用法如下: http://javascript.ruanyifeng.com/bom/ajax.html#toc27