shell或python调用企业微信发送消息(实现报警功能)
发布时间:2020-12-15 23:10:19 所属栏目:安全 来源:网络整理
导读:shell或python调用企业微信发送消息(实现报警功能) 官方文档 企业内部开发 简易教程:https://work.weixin.qq.com/api/doc#90000/90003/90487 服务端API:https://work.weixin.qq.com/api/doc#90000/90135/90664 注册登陆企业微信 登录企业微信管理端 - 应
shell或python调用企业微信发送消息(实现报警功能)
官方文档企业内部开发 注册登陆企业微信登录企业微信管理端 -> 应用与小程序 -> 应用 -> 自建,点击“创建应用”,设置应用log、应用名称等信息,创建应用。 shell脚本#!/bin/bash # shell调用企业微信发送消息命令 # ./weixin.sh ${人员} "消息" # 例: # ./weixin.sh @all "hello!" # ./weixin.sh maYun "hello!" # 注: # 消息中可以使用"n"表示换行; # 消息中不可以使用空格; # 微信接口参数 # 根据自己申请的企业微信上接口参数调整; 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‘) #发送消息 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调用企业微信发送消息命令 # 发送消息命令 # python weixin.py ${人员} 主题 正文 # 例如: # python3 weixin.py maYun a b # ./weixin.py maYun n m # 说明;当一个变量含有多个值或者含有空格、回车符号时,可以使用双引号。 # 当通知所有用户时可以把用户参数设置成"@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‘) # 微信接口参数 # 根据自己申请的企业微信上接口参数调整; 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()[‘access_token‘] #发送消息 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] + "nn" +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)) # 写日志 logging.info(‘sendto:‘ + touser + ‘;;subject:‘ + subject + ‘;;message:‘ + message) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |