三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

企业微信消息推送神器 Wecom酱:无需装App也能把通知一秒送到微信

企业微信消息推送神器 Wecom酱:无需装App也能把通知一秒送到微信

企业微信消息推送神器 Wecom酱:无需装App也能把通知一秒送到微信

【免费下载链接】wecomchan微信推送服务Server酱的开源替代。通过企业微信向微信推送消息的配置文档、直推函数和可自行搭建的在线服务代码。项目地址: https://gitcode.com/gh_mirrors/we/wecomchan

想给手机推一条通知,你还在用邮件轰炸、短信套餐或者各种不稳定的第三方接口吗?今天介绍的开源项目Wecom酱(wecomchan),是一款专注"企业微信消息推送"到个人微信的工具,免费、开源、不用安装任何额外应用,配置一次就能长期使用。它本质上是微信推送服务 Server酱 的开源替代,把"从服务器发消息给微信"这件事,简化成了几行代码或一个 HTTP 请求。

先聊聊痛点:为什么"推消息"这么麻烦

做技术的朋友应该深有体会:脚本跑完了、服务报警了、爬虫出错了,第一时间都希望手机上能收到提醒。可现实往往是——

  • 邮件提醒没人看,重要告警被淹没在收件箱里;
  • 短信接口要实名、要花钱、还有频率限制;
  • 一些商业推送服务有免费额度,但数据握在别人手里。

更尴尬的是,很多服务需要你专门安装对应 App 才能收消息。有没有一种方案,让消息直接落到每天都在用的微信上

Wecom酱 是什么:借力企业微信,直达微信

Wecom酱的思路非常巧妙:既然企业微信和微信同属腾讯生态、天然互通,那就通过企业微信的开放接口发消息,让消息以企业应用通知的形式出现在个人微信里

一次配置,持续使用。配置完成后,你只需要微信就能收消息,连企业微信客户端都不用装。消息接口无需认证,个人用户注册一个企业即可开用。

项目仓库里打包了三样东西:企业微信的详细配置说明、支持多语言的直推函数、以及可自行搭建的在线服务源码。你可以把它当成一个"消息中转站",任何系统都能通过它把话递到你的微信。

它能推什么:四种消息格式一张表看懂

Wecom酱覆盖了日常几乎全部的通知需求:

消息类型支持内容典型用途
文本消息换行、超链接服务器告警、任务提醒
图片消息Base64 编码图片截图、验证码、图表
Markdown 消息富文本排版日报、报表、带格式的通知
文件消息文件附件日志包、备份文件

推送对象也足够灵活:默认推给企业全员(@all),也可以按成员 ID 精确指定到某个人,多人用|分隔即可。

拿什么写:五种语言任选,覆盖主流技术栈

这是 Wecom酱最有诚意的地方——不做语言绑架。无论你的项目用什么技术,基本都能找到对应的推送函数:

  • PHP:适合传统 Web 服务器环境,一个函数搞定
  • Python:适合脚本、爬虫、数据分析项目
  • Go:高性能容器化部署方案
  • TypeScript:前端与 Node.js 项目的福音
  • .NET Core:面向微软技术栈开发者

函数逻辑完全透明,参考任一版本就能自己改写出其他语言,项目方也欢迎提交 PR 补充更多实现。

部署怎么选:四种路子,丰俭由人

1. 传统服务器(PHP 版)

环境要求不高:PHP 7.4+、开启 JSON 与 CURL 扩展、能访问外网即可。把index.php传上去,访问http://你的域名/?sendkey=你设定的sendkey&text=要发送的内容就能发消息。

2. Docker 容器化(Go 版)

Go 1.16+ 环境可编译二进制;更省心的是直接拉取镜像,用环境变量传入企业微信的 ID、Secret、应用 ID 等参数,一次构建、多次使用,还支持 docker-compose 一键拉起 Redis 缓存,并兼容 arm64 设备。

3. 云函数(Serverless 免运维)

不想维护服务器?项目为多家云平台提供了现成方案:

云平台形态
阿里云函数计算上传代码包,配置 HTTP 触发
华为云函数工作流复制 main.py,创建 APIG 网关
百度智能云函数计算创建空白函数,配置触发器
腾讯云云函数上传二进制,API 网关触发

下面以阿里云函数计算为例,感受一下部署的轻松程度。

第一步创建服务,在"服务及函数"页面点"创建服务":

第二步创建函数,运行环境选 Python3,内存 128MB 足够用:

第三步上传项目代码包,在网页编辑器里把index.py中的变量替换成自己的企业 ID、应用 Secret 等,点"部署代码"即可:

百度智能云的操作思路一致——先创建服务,再选择"空白函数"模板,然后配置 HTTP 触发器作为推送入口:

完成后,在触发器列表里拿到公网访问地址,整个服务就跑起来了:

五步完成配置:拿到三个凭证

在写代码或部署之前,需要先完成企业微信侧的设置。全程大约五分钟:

  1. 注册企业:打开企业微信官网,注册一个企业账号(个人用微信就能注册)
  2. 创建应用:进入管理后台,在「应用管理 → 自建 → 创建应用」中新建应用,名称和 Logo 随意
  3. 获取凭证:进入应用详情页,记下应用 ID(agentid)、应用 Secret(secret),再到「我的企业」页面底部拿到企业 ID(corpid)——这就是代码里要填的三件套
  4. 配置可信IP:2022 年 6 月之后创建的应用,需在详情页把服务器 IP 加入「企业可信IP」。用云函数时记得开"固定公网IP",否则可能报第三方服务 IP 错误
  5. 绑定微信:在「我的企业 → 微信插件」扫码关注,之后推送的消息就会出现在个人微信里

小提示:如果出现"接口正常、企业微信收到、个人微信收不到"的情况,请在微信插件设置里勾选"允许成员在微信插件中接收和回复聊天消息",并在企业微信客户端关闭"仅在企业微信中接收消息"的限制。

一分钟跑通首个推送

凭证到手后,推送就这么简单。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)

消息内支持\r\n换行,也支持<a href="...">超链接</a>这种富文本写法。图片消息则传入 Base64 编码串即可。

为什么值得选:六个让你安心的理由

  • 开源免费:代码全部公开透明,可自由修改、二次开发,不依赖任何商业服务
  • 多语言接口:PHP、Python、Go、TypeScript、.NET Core 全覆盖
  • 易于集成:标准 RESTful API 风格,支持 Webhook 方式调用,几行代码就能嵌入现有系统
  • 高可靠性:内置消息去重机制(默认 600 秒间隔),避免重复骚扰;支持发送状态回执,消息可追溯
  • 安全有保障:HTTPS 加密传输、访问令牌自动刷新、IP 白名单防护
  • 生态丰富:属于方糖推送生态的一员,与 Server酱、PushDeer 等方案互操作,可组合出完整的推送链路

几个实用建议,帮你少踩坑

上线前先测:建议先在测试环境完整跑一遍配置和推送,确认参数无误再上生产。企业微信的测试模式可以帮你安全验证。

性能优化:高并发场景下,函数实现支持连接池与批量发送,配合智能重试机制提升送达率;Redis 缓存 access_token 可避免频繁换取令牌(index.php中有带缓存的参考实现)。

日常维护:定期检查 access_token 有效性、关注发送成功率,并开启日志便于排查问题。

三个小习惯

  • 固定使用一个自设的 sendkey 做鉴权,别到处散落;
  • 合理设置去重时间间隔,既防骚扰又不漏关键告警;
  • 按场景选消息格式——日常提醒用文本,报表用 Markdown,出错截图用图片。

把它用起来,让每个重要消息都准时到达

Wecom酱把"消息推送"这件事的成本降到了最低:个人开发者可以用它给手机发定时提醒和天气播报,运维团队可以用它接住监控告警,团队协作时还能把它接进 CI 流程,让构建结果和项目进度自动同步到微信。

心动不如行动:克隆仓库(https://gitcode.com/gh_mirrors/we/wecomchan),花五分钟完成企业微信配置,再用你熟悉的语言写出第一条推送。如果过程中有更好的想法,也欢迎给项目提 PR——开源项目的魅力,就在于每个人都能参与让它变得更好。🚀

【免费下载链接】wecomchan微信推送服务Server酱的开源替代。通过企业微信向微信推送消息的配置文档、直推函数和可自行搭建的在线服务代码。项目地址: https://gitcode.com/gh_mirrors/we/wecomchan

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

← 返回列表