企业微信API&群机器人配置

本文介绍了如何利用企业微信API配置群机器人,将服务器告警和日志信息发送到企业微信群。内容包括发送文本和文件类型的示例,如shell中curl调用API发送文本消息以及使用python脚本发送文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我们公司用的企业微信,会把相关开发或者运维拉到一个群里,然后配置上一个群机器人,这样的话就可以用企业微信API来配置群机器人接收消息,把一些日常的服务器或者日志告警发送到对应的群。
以下介绍两种常用的消息发送类型:文本类型和文件类型

发送文本类型的消息

  1. 文本消息示例
{
    "msgtype": "text",
    "text": {
        "content": "广州今日天气:29度,大部分多云,降雨概率:60%",
        "mentioned_list":["wangqing","@all"],  #可选
        "mentioned_mobile_list":["13800001111","@all"]  #可选
    }
}
  1. 假设webhook是:https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa,webhook是创建机器人的时候生成的特有的
  2. shell中的curl调用API发送示例
result='{"msgtype": "text","text": { "content": "'$(hostname)'_'$ip'_'server alert test'"}}'
curl "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa" -H 'Content-Type: application/json' -d "$result"

发送文件类型的消息

  1. 先上传文件,得到一个media_id,该media_id三天有效
请求方式:POST(HTTPS)
请求地址
### 使用 Python 配置企业微信机器人 为了实现这一目标,首先需要创建 `config.ini` 文件来保存必要的配置信息。此文件应包含企业的唯一标识符以及用于获取访问令牌的秘密密钥。 #### 创建配置文件 ```ini [WECHAT_BOT] corpId=【企业ID】 corpSecret=【应用密钥】 ``` 接着,在 Python 中读取这些设置并请求 `access_token` 是至关重要的一步。这可以通过发送 HTTP GET 请求到指定 URL 来完成,该 URL 结合了从配置文件中提取的企业 ID 和应用程序秘密[^1]。 #### 获取 Access Token ```python import requests from configparser import ConfigParser def get_access_token(): config = ConfigParser() config.read('config.ini') corp_id = config['WECHAT_BOT']['corpId'] secret = config['WECHAT_BOT']['corpSecret'] url = f"https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid={corp_id}&corpsecret={secret}" response = requests.get(url).json() if 'errcode' not in response or response['errcode'] != 0: raise Exception(f"Failed to fetch token, error code {response['errcode']}") return response["access_token"] ``` 一旦获得了有效的 `access_token`,就可以利用这个令牌向特定的消息接收者发送消息。对于聊中的自动化回复功能,则需监听来自用户的输入,并根据预定义规则作出响应[^4]。 #### 发送消息至聊 ```python def send_message_to_chat(access_token, chatid, content): message_url = "https://qyapi.weixin.qq.com/cgi-bin/appchat/send" params = {"access_token": access_token} data = { "touser": "@all", # 或者具体成员账号列表 "toparty": "", # 如果是部门则填写部门ID "totag": "", "msgtype": "text", "agentid": 1, "text": { "content": content }, "safe": 0, "enable_duplicate_check": 0, "duplicate_check_interval": 1800 } resp = requests.post(message_url, json=data, params=params) result = resp.json() if result['errmsg']!='ok': print("Error:",result) ``` 上述代码展示了如何构建一个简单的接口以与企业微信服务器交互,从而控制机器人的行为。需要注意的是实际部署时应当考虑安全性措施如环境变量存储敏感信息而非硬编码于源码内;另外还需遵循官方API指南确保合法合规操作。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值