赞
踩
1.首先注册一个公众号,公众号分为个人类型的订阅号及组织公司类型的服务号,所对应的权限不一样,详情可以查询下。
这里注册的是订阅号,是没有调用发送信息的接口权限的,但是公众平台提供权限比较高的测试账号,以供使用。
2.登录公众号,点击左边菜单栏最下方的开发者工具。
点击 “公共平台测试账号” 可以获得一个公众号:
下面有测试号的二维码,关注之后会显示到用户列表中,如下图所示:
3.编写shell脚本
cat weixin.sh
#!/bin/bash
#填写测试公众号的ID
CropID='id'
#填写测试公众号的密码
Secret='passwd'
#请求token的URL
GURL="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=${CropID}&secret=${Secret}"
#存储token的文件
TOKENFILE=token.txt
#判断存储token的文件是否存在,不存在则创建,并将token写入。
if [ ! -f $TOKENFILE ];then
touch $TOKENFILE
Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F\" '{print $4}')
echo $Gtoken > $TOKENFILE
else
#token文件的创建时间与当前时间作对比,如果超过7000秒则重新请求,因为token的有效期为7200秒。
a=`stat -c %Y $TOKENFILE`
b=`date +%s`
if [ $[ $b - $a ] -gt 7000 ];then
Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F\" '{print $4}')
rm -rf $TOKENFILE
touch $TOKENFILE
echo $Gtoken > $TOKENFILE
else
Gtoken=`cat $TOKENFILE`
fi
fi
#发送信息的URL
PURL="https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=$Gtoken"
#信息格式
function body() {
printf '{\n'
printf '\t"touser": "'"o7OgJs6P_8161dSIGy9b1rwodcXI"\"",\n"
printf '\t"msgtype": "text",\n'
printf '\t"agentid": "'"1"\"",\n"
printf '\t"text": {\n'
printf '\t\t"content": "'"$1"\""\n"
printf '\t},\n'
printf '\t"safe":"0"\n'
printf '}\n'
}
#发送
/usr/bin/curl --data-ascii "$(body $1)" $PURL
运维脚本:./weixin.sh test
返回结果:
{"errcode":0,"errmsg":"ok"}
查看微信:
可以结合zabbix使用。
还可以使用微信公众平台接口调试工具进行测试:
可以获取token,以及发送信息:(选择相对应的接口类型)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。