Wecom酱终极指南:3步免费搭建企业微信消息推送服务
【免费下载链接】wecomchan微信推送服务Server酱的开源替代。通过企业微信向微信推送消息的配置文档、直推函数和可自行搭建的在线服务代码。项目地址: https://gitcode.com/gh_mirrors/we/wecomchan
你是否曾遇到过这样的困扰?服务器宕机了没人知道,重要数据备份失败了没人提醒,项目构建完成了没有及时通知……每天需要手动检查各种系统状态,既繁琐又容易遗漏重要信息。😫
好消息是,现在有了Wecom酱这个开源神器!它能够让你轻松实现通过企业微信向微信推送消息,而且完全免费!无需复杂的服务器配置,无需昂贵的第三方服务,只需要简单的3步配置,就能拥有一个稳定可靠的消息推送系统。
为什么选择Wecom酱?🤔
在众多消息推送方案中,Wecom酱有三大核心优势:
- 完全免费- 企业微信应用消息接口免费开放,无需任何费用
- 配置简单- 一次配置,永久使用,无需频繁维护
- 开源透明- 代码完全开源,安全可控,可自行部署
最重要的是,配置好以后,只需要微信就能收消息,不再需要安装企业微信客户端!这对于个人用户和小团队来说简直是福音。
第一步:准备工作 - 获取企业微信凭证 🔑
注册企业微信账号
用电脑打开企业微信官网,注册一个企业(是的,个人也可以注册!)。注册成功后,进入管理界面,选择「应用管理」→「自建」→「创建应用」。
创建应用时,应用名称可以填入「Server酱」,应用logo可以使用项目提供的图片,可见范围选择公司名。
创建企业微信应用界面
创建完成后进入应用详情页,可以得到两个关键参数:
- 应用ID(
agentid) - 这是应用的唯一标识 - 应用Secret(
secret) - 这是应用的安全密钥
获取企业ID
进入「我的企业」页面,拉到最下边,可以看到企业ID,复制并保存好这个值。
配置可信IP(重要!)
如果你是2022年6月20日之后创建的应用,需要额外配置可信IP。在「应用详情页」的最下方,开发者接口分类中,找到「企业可信IP」,点击「配置」,并填入你的服务器IP。
如果你使用云函数等公用IP的云服务,可能需要在云函数的设置界面中打开「固定公网IP」来获得一个独立的IP。
关注微信插件
进入「我的企业」→「微信插件」,拉到下边扫描二维码,关注以后即可在微信中收到推送的消息。
第二步:选择部署方案 🚀
Wecom酱提供了多种部署方案,你可以根据自己的技术栈和需求选择最适合的一种:
方案一:云函数部署(推荐新手)
阿里云函数计算部署
- 创建服务:登录阿里云函数计算控制台,创建服务。在创建服务页面,填写服务名称(如
wechat_push),启用日志功能以便后续调试。
- 创建函数:选择"通过HTTP请求触发",运行环境选择Python 3,内存配置为128MB。
- 上传代码:将项目中的代码文件打包成ZIP包,在函数代码页面上传该ZIP包,并配置入口函数为
index.handler。
百度智能云函数部署
- 创建函数:登录百度智能云控制台,进入函数服务,创建函数。填写函数名称(如
wecom123),选择Python 3.6运行环境,内存设置为128MB,超时时间改为30秒。
- 上传代码:在函数代码页面,选择"上传函数.ZIP包",上传项目中的代码文件。
- 配置触发器:创建HTTP触发器,获取访问地址,该地址将用于后续的消息推送请求。
方案二:Docker部署(推荐技术用户)
如果你熟悉Docker,可以使用Go版本的Wecom酱,它提供了完整的Docker支持:
# 拉取镜像 docker pull aozakiaoko/go-wecomchan # 运行容器 docker run -dit -p 8080:8080 \ -e SENDKEY=你的sendkey \ -e WECOM_CID=你的企业ID \ -e WECOM_SECRET=你的应用Secret \ -e WECOM_AID=你的应用ID \ aozakiaoko/go-wecomchan方案三:直接使用代码
如果你有自己的服务器,可以直接使用项目提供的各种语言版本:
| 语言 | 文件位置 | 特点 |
|---|---|---|
| PHP | index.php | 最简单,无需额外依赖 |
| Python | 各云函数目录 | 功能最全,支持图片和Markdown |
| Go | go-wecomchan/ | 性能最好,支持Docker |
| .NET Core | dotNetCore.cs | 适合.NET开发者 |
第三步:配置和测试 🧪
配置关键参数
无论选择哪种部署方案,都需要配置以下四个关键参数:
- 企业ID(
WECOM_CID) - 从企业微信管理后台获取 - 应用ID(
WECOM_AID) - 从应用详情页获取 - 应用Secret(
WECOM_SECRET) - 从应用详情页获取 - 发送密钥(
SENDKEY) - 自定义的安全密钥
发送测试消息
配置完成后,就可以发送第一条测试消息了!以下是不同语言的示例:
PHP版本:
$ret = send_to_wecom("推送测试\r\n测试换行", "企业ID", "应用ID", "应用Secret"); print_r($ret);Python版本:
ret = send_to_wecom("推送测试\r\n测试换行", "企业ID", "应用ID", "应用Secret") print(ret)Go版本(通过HTTP调用):
curl "http://localhost:8080/wecomchan?sendkey=你的sendkey&msg=测试消息&msg_type=text"如果一切正常,你的微信会立即收到推送消息!🎉
高级功能:不只是文本消息 📱
Wecom酱不仅支持文本消息,还支持更多丰富的消息格式:
发送Markdown消息
Markdown消息支持标题、列表、链接等格式,适合推送结构化的信息:
markdown_content = """ # 服务器监控报告 ## 系统状态 - ✅ CPU使用率:45% - ✅ 内存使用率:68% - ⚠️ 磁盘使用率:85% ## 今日提醒 1. 数据库备份完成 2. 安全扫描通过 3. [查看详细报告](https://your-domain.com/report) """ ret = send_to_wecom_markdown(markdown_content, "企业ID", "应用ID", "应用Secret")发送图片消息
需要先将图片转换为Base64编码:
import base64 with open("alert.png", "rb") as image_file: base64_content = base64.b64encode(image_file.read()).decode('utf-8') ret = send_to_wecom_image(base64_content, "企业ID", "应用ID", "应用Secret")发送超链接消息
在消息内容中使用Markdown格式的链接语法即可:
message = "系统出现异常,请立即[查看详情](https://your-domain.com/alert/12345)" ret = send_to_wecom(message, "企业ID", "应用ID", "应用Secret")实际应用场景 🎯
场景一:服务器监控告警
当服务器出现异常时,自动发送告警消息到微信:
import psutil import requests # 检查CPU使用率 cpu_percent = psutil.cpu_percent(interval=1) if cpu_percent > 80: message = f"⚠️ CPU使用率过高:{cpu_percent}%" send_to_wecom(message, WECOM_CID, WECOM_AID, WECOM_SECRET)场景二:定时任务通知
每天定时发送日报或周报:
import schedule import time def send_daily_report(): report = generate_daily_report() # 你的报告生成函数 send_to_wecom(report, WECOM_CID, WECOM_AID, WECOM_SECRET) # 每天上午9点发送 schedule.every().day.at("09:00").do(send_daily_report) while True: schedule.run_pending() time.sleep(60)场景三:网站状态监控
监控网站是否可访问:
import requests def check_website(url): try: response = requests.get(url, timeout=5) if response.status_code != 200: message = f"❌ 网站 {url} 不可访问,状态码:{response.status_code}" send_to_wecom(message, WECOM_CID, WECOM_AID, WECOM_SECRET) except Exception as e: message = f"❌ 网站 {url} 连接失败:{str(e)}" send_to_wecom(message, WECOM_CID, WECOM_AID, WECOM_SECRET)常见问题解决 🔧
问题1:收不到消息怎么办?
- 检查企业微信配置:确保已关注微信插件,并在企业微信客户端中关闭"仅在企业微信中接受消息"限制
- 检查可信IP:如果是新创建的应用,确保已配置服务器IP为可信IP
- 检查参数:确认企业ID、应用ID、应用Secret都填写正确
问题2:消息发送失败怎么办?
- 检查网络:确保服务器可以访问企业微信API
- 检查Token:企业微信的access_token有效期为2小时,如果长时间未使用需要重新获取
- 查看日志:查看云函数或服务器的日志,找到具体的错误信息
问题3:如何提高发送频率?
企业微信应用消息接口有限制:
- 每个应用每分钟最多发送200条消息
- 每个用户每分钟最多接收30条消息
- 每个应用每天最多发送5000条消息
对于个人使用来说,这个限制完全足够。如果需要更高的频率,可以考虑创建多个应用轮询发送。
小贴士和最佳实践 💡
安全性建议
- 不要硬编码密钥:将企业微信的凭证存储在环境变量或配置文件中
- 使用SENDKEY验证:在HTTP接口中添加sendkey验证,防止未授权访问
- 定期轮换密钥:定期更新应用Secret,提高安全性
性能优化
- 缓存access_token:企业微信的access_token有效期为2小时,可以缓存起来重复使用
- 批量发送:如果需要发送大量消息,可以考虑批量发送
- 异步处理:对于非实时性要求高的消息,可以使用消息队列异步发送
扩展功能
Wecom酱的代码结构清晰,很容易进行扩展:
- 添加消息模板:创建常用的消息模板,如告警模板、日报模板等
- 支持更多消息类型:企业微信还支持文件、视频、图文等消息类型
- 集成其他系统:可以将Wecom酱集成到你的CI/CD、监控系统、办公系统中
总结 🎉
Wecom酱是一个功能强大、配置简单、完全免费的消息推送解决方案。通过简单的3步配置,你就能拥有一个稳定可靠的消息推送系统:
- 注册企业微信并获取凭证- 10分钟完成
- 选择部署方案并部署服务- 15分钟完成
- 配置参数并测试发送- 5分钟完成
总共不到30分钟,你就能搭建起一个专业级的消息推送服务!
无论是个人开发者还是小团队,Wecom酱都能帮助你:
- ✅ 实时接收服务器状态通知
- ✅ 及时获取项目构建结果
- ✅ 自动接收系统告警
- ✅ 定时获取数据报告
最重要的是,这一切都是完全免费的!不要再为消息推送烦恼了,现在就动手试试Wecom酱吧!
如果你在配置过程中遇到任何问题,可以参考项目中的详细文档,或者在项目仓库中提出issue。Happy pushing! 🚀
【免费下载链接】wecomchan微信推送服务Server酱的开源替代。通过企业微信向微信推送消息的配置文档、直推函数和可自行搭建的在线服务代码。项目地址: https://gitcode.com/gh_mirrors/we/wecomchan
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考