linux 脚本调用企业微信_shell或python调用企业微信发送消息(实现报警功能)
shell或python調(diào)用企業(yè)微信發(fā)送消息(實(shí)現(xiàn)報(bào)警功能)
官方文檔
注冊(cè)登陸企業(yè)微信
登錄企業(yè)微信管理端 -> 應(yīng)用與小程序 -> 應(yīng)用 -> 自建,點(diǎn)擊“創(chuàng)建應(yīng)用”,設(shè)置應(yīng)用log、應(yīng)用名稱(chēng)等信息,創(chuàng)建應(yīng)用。
創(chuàng)建完成后,在管理端的應(yīng)用列表里進(jìn)入該應(yīng)用,可以看到agentid、secret等信息,這些信息在使用企業(yè)微信API時(shí)會(huì)用到。
創(chuàng)建完成后,該應(yīng)用會(huì)自動(dòng)出現(xiàn)在可見(jiàn)范圍內(nèi)的成員的企業(yè)微信終端上(包括手機(jī)端、pc端、微工作臺(tái))
shell腳本
#!/bin/bash
# shell調(diào)用企業(yè)微信發(fā)送消息命令
# ./weixin.sh ${人員} "消息"
# 例:
# ./weixin.sh @all "hello!"
# ./weixin.sh maYun "hello!"
# 注:
# 消息中可以使用"\n"表示換行;
# 消息中不可以使用空格;
# 微信接口參數(shù)
# 根據(jù)自己申請(qǐng)的企業(yè)微信上接口參數(shù)調(diào)整;
corpid=‘XXXXXXXXXXXXXXXXXX‘
appsecret=‘XXXXXXXXXXXXXXXXXX‘
agentid=XXXXXXX
#獲取accesstoken
accesstoken=$(/usr/bin/curl https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=${corpid}\&corpsecret=${appsecret} | jq -r ‘.access_token‘)
#發(fā)送消息
msgsend_url="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=${accesstoken}"
json_params="{\"touser\":\"${1}\",\"msgtype\":\"text\",\"agentid\":\"${agentid}\",\"text\":{\"content\":\"${2}\"},\"safe\":\"0\"}"
echo -e "\n${json_params}"
#/usr/bin/curl -X POST ${msgsend_url} -d ${json_params} | jq -r ‘.errcode‘
/usr/bin/curl -X POST ${msgsend_url} -d ${json_params}
python腳本
#!/usr/bin/env python3
#-*- coding: utf-8 -*-
# python調(diào)用企業(yè)微信發(fā)送消息命令
# 發(fā)送消息命令
# python weixin.py ${人員} 主題 正文
# 例如:
# python3 weixin.py maYun a b
# ./weixin.py maYun n m
# 說(shuō)明;當(dāng)一個(gè)變量含有多個(gè)值或者含有空格、回車(chē)符號(hào)時(shí),可以使用雙引號(hào)。
# 當(dāng)通知所有用戶(hù)時(shí)可以把用戶(hù)參數(shù)設(shè)置成"@all"
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(chǎn)‘)
# 微信接口參數(shù)
# 根據(jù)自己申請(qǐng)的企業(yè)微信上接口參數(shù)調(diào)整;
corpid=‘XXXXXXXXXXXXXXXXXX‘
appsecret=‘XXXXXXXXXXXXXXXXXX‘
agentid=XXXXXXX
#獲取accesstoken
token_url=‘https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=‘ + corpid + ‘&corpsecret=‘ + appsecret
req=requests.get(token_url)
accesstoken=req.json()[‘a(chǎn)ccess_token‘]
#發(fā)送消息
msgsend_url=‘https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=‘ + accesstoken
touser=sys.argv[1]
subject=sys.argv[2]
#toparty=‘3|4|5|6‘
message=sys.argv[2] + "\n\n" +sys.argv[3]
params={
"touser": touser,
# "toparty": toparty,
"msgtype": "text",
"agentid": agentid,
"text": {
"content": message
},
"safe":0
}
req=requests.post(msgsend_url, data=json.dumps(params))
# 寫(xiě)日志
logging.info(‘sendto:‘ + touser + ‘;;subject:‘ + subject + ‘;;message:‘ + message)
總結(jié)
以上是生活随笔為你收集整理的linux 脚本调用企业微信_shell或python调用企业微信发送消息(实现报警功能)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java 虚拟机内存管理_java虚拟机
- 下一篇: 程序员常见保健方法【转贴】