我们公司用的企业微信,会把相关开发或者运维拉到一个群里,然后配置上一个群机器人,这样的话就可以用企业微信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)
请求地址:https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key=KEY&type=TYPE(KEY是webhook地址,TYPE这里是file)curl请求示例curl --location --request POST 'https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key=693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa&type=file' \
--form 'Content-Disposition="form-data"' \
--form 'name="media"' \
--form 'filename="wework.txt"' \
--form 'boundary=@"/tmp/test.py"'
可以理解为把这个文件发送到企业微信的一个临时云端保存
  1. 得到media_id之后,通过这个id去企业微信临时保存的拉取,发送到群里
第1步返回的数据结果
{"errcode": 0,"errmsg": "ok","type": "file","media_id": "1G6nrLmr5EC3MMb_-zK1dDdzmd0p7cNliYu9V5w7o8K0","created_at": "1380000000"
}
接下来通过curl去发送消息到api,把这个文件发送到对应webhook的群里
result={"msgtype": "file","file": {"media_id": "1G6nrLmr5EC3MMb_-zK1dDdzmd0p7cNliYu9V5w7o8K0"}}
curl "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa" -H 'Content-Type: application/json' -d "$result"
注意要求文件大小在5B~20M之间
  1. 分享我用python写的一个发送文件的脚本
#脚本的作用就是每天调用一个python脚本筛选生成一个日志文件,然后把这个日志文件发送到企业微信#!/usr/bin/env python
#coding:utf-8
import requests,datetime,os,json
today=datetime.datetime.now().strftime("%Y-%m-%d")
onedayago = (datetime.datetime.now() + datetime.timedelta(days=-1)).strftime("%Y-%m-%d")
os.system('python /tmp/tool/get_log.py %s~%s' %(onedayago,today))
logfile="/tmp/test_log_%s_%s.txt" %(onedayago,today)
filename="test_log_%s_%s.txt" %(onedayago,today)if os.path.isfile(logfile):url = "https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key=693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa&type=file"payload={'Content-Disposition': 'form-data','name': 'media','filename': 'wework.txt'}files=[('boundary',('%s' %filename,open('%s' %logfile,'rb'),'application/octet-stream'))]headers = {}response = requests.request("POST", url, headers=headers, data=payload, files=files)mediaid = response.json()['media_id']url2 = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa"headers2 = {'Content-Type': 'application/json'}payload2 = {"msgtype": "file","file": { "media_id": "%s" %mediaid}}requests.request("POST", url2, headers=headers2, data=json.dumps(payload2))

参考链接:https://open.work.weixin.qq.com/api/doc/90000/90136/91770

企业微信API群机器人配置相关推荐

  1. zabbix 配置企业微信告警群机器人告警

    一.企业微信端配置 1.创建微信群机器人 在需要接收告警信息的企业微信群上右键(注意群里成员至少要3人以上),选择"添加群机器人",设置机器人名称,系统自动生成此机器人的webho ...

  2. 企业微信外部群机器人api接口sdk登陆

    用代码实现hook拦截获取到微信二维码,用到的工具有 ce od. 先看下图片在内存里面的表现形式,微信登陆的二维码是一个png的格式,看下png在内存的表现形式,看下图,就是png在内存里面的格式, ...

  3. 企业微信添加群机器人并向群里发布消息

    背景 在开发时出现一些需要实时监控的任务,类似服务器挂了,执行脚本未按时执行,报错日志展示等.需要及时通知,以免造成重大损失. 配置企业微信群机器人 企业微信有对外开放的api 接口,只要配置相关参数 ...

  4. python 在企业微信通过群机器人发送消息

    1.在企业微信新建一个群,最开始最好只加入自己,方便测试,以免影响他人 在企业微信群昵称处右键鼠标,选择添加群机器人-添加群机器人-新创建一个机器人,如下图所示: 2.添加完群机器人之后,在群的联系人 ...

  5. 持续集成之消息推送:钉钉与企业微信的群聊机器人通用示例

    使用钉钉和企业微信的群聊机器人可以进行消息推送,这篇文章使用一个简单的脚本来说明其使用方式. 推送消息的方法 钉钉或者企业微信的群机器人都可提供消息推送的功能,相关的机器人的添加和消息推送的方法可以参 ...

  6. 利用企业微信API实现天气机器人、故障报警机器人等

    概述 很多公司内部都会使用企业微信进行通讯,恰恰企业微信又对我们开放了API,我们可以很方便的使用它提供的API实现一些自动化的功能. 比如在我们公司内部,定加班餐都需要在美餐页面点,并且只能是当天且 ...

  7. 企业微信通过群聊机器人用springboot发送信息

    前言 学习了一下,如何通过企业微信的群聊机器人发送信息,没想到比想象中的简单,那么这次就来讲讲如何进行通过群聊机器人发送信息吧 步骤 第一步,在自己的企业进行创建一个群聊 然后,在自己的群聊里,添加机 ...

  8. Python构建企业微信智能应答机器人(含服务器部署)

    有定制化需求可私信联系 文章目录 简介 基本概念 corpid agentid和secret touser 安装 初试 获取access_token 发送应用消息 Python高并发服务部署--Ngi ...

  9. v3 微信api 请求微信_企业微信API使用基本教程

    在企业微信创建自建应用 1.登录企业微信后台,在"应用管理>自建"中点击"创建应用",填写应用信息创建. API配置表参数值获取 1.corpid:企业I ...

  10. insert时调用本身字段_python3调用企业微信api!开发一款属于自己的企业微信

    python3调用企业微信api 最后更新时间:2020/5/11 前段时间,我将企业微信官方提供的python接口代码的部分功能修改成了python3的,并且自己也使用并测试过部分功能: 因为并没有 ...

最新文章

  1. 周末思考:浅谈如何成为技术一号位?
  2. R语言sunburst图(sunburst plot)可视化实战:使用sunburstR包和ggplot2包进行可视化
  3. 如何使用Swift获取App版本和内部版本号?
  4. VTK:几何对象之TextActor
  5. QT的QHttpPart类的使用
  6. ElasticSearch5.3的 head插件启动与关闭
  7. postgresq dur_DUR的完整形式是什么?
  8. 计算一个人出生了多少天(炸窝)
  9. linux 误删etc,centos7中误删/etc/passwd与etc/shadow文件恢复
  10. JavaScript--如何插入JS
  11. 哎呦,我他妈真操了!
  12. 显卡刷bios改型号_怎么刷显卡bios(显卡刷BIOS可以提高性能)
  13. 六、矩阵键盘的扫描原理与基本应用
  14. 计算机类专业分类及优缺点,计算机专业优势介绍及学科分类
  15. 4D领导力打造卓越团队
  16. Exploiting Unintended Feature Leakage in Collaborative Learning 阅读心得
  17. matlab 绘图与动画制作
  18. Unity中帧数FPS的显示查看
  19. GitLab搭建局域网改外网
  20. 2020微信小微商户、微信支付商业版签约商户流程

热门文章

  1. 【华为_数通】常用命令备忘
  2. PropertyUtils.copyProperties复制对象失败
  3. 【Matlab】数字图像处理_基本原理_1
  4. HTC官方通用解锁教程(附一键解锁工具)
  5. uploadify 实现文件上传
  6. S3C2440开发板烧录笔记
  7. Python导入模块,Python import用法(超级详细)
  8. 【升级版】和秋叶一起学Office
  9. c++用化简命题逻辑公式的方法设计一个5人表决开关电路,要求3人以上(含3人)同意则表决通过
  10. 在c语言中有函数leapyear定义如下,职业教育概论——职业教育的发展历史超星尔雅答案题库...