news 2026/10/20 19:19:07

企业微信 API 接口:外部群机器人消息推送与交互实现

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
企业微信 API 接口:外部群机器人消息推送与交互实现

外部群机器人是企微 API 里一个容易被误解的概念。很多人以为"机器人"是一个独立账号,实际上它是通过 API 向外部群发消息的能力。这篇讲清楚外部群机器人能做什么、怎么发消息、以及交互怎么实现。

先搞清"外部群机器人"是什么

企微的外部群(客户群)里,机器人不是一个人,而是一种能力。你通过 API 向群里发消息,群成员看到的是"企业微信助手"或你自定义的名称在发言。

关键约束:

  • 只能向已有群发消息,不能主动建群(建群走room/createGroup)

  • 消息类型支持文本、富文本、图片、文件

  • 群成员发的消息,通过 Webhook 回调接收

向外部群发消息

向外部群发消息和向个人发消息,接口是同一个message/sendText,区别只在conversationId指向群会话:

def send_to_group(group_conv_id, text): resp = requests.post( f"{BASE}/wx-api/api/message/sendText", headers=HEADERS, json={ "appid": APPID, "conversationId": group_conv_id, "content": text, } ).json() return resp["code"] == 0

group_conv_id是群的会话 id,int64。怎么拿到?从群列表接口room/getGroupList里查,或者从group_member_add回调里取。

富文本消息

纯文本太单调,正式通知用富文本:

content = { "title": "订单发货通知", "items": [ {"type": "text", "content": "您的订单已发货"}, {"type": "text", "content": "物流单号:SF123456789", "bold": True}, ] } resp = requests.post( f"{BASE}/wx-api/api/message/sendRichText", headers=HEADERS, json={"appid": APPID, "conversationId": conv_id, "content": content} )

富文本支持加粗、颜色、换行,适合发结构化通知。

群成员消息怎么收

群成员发的消息通过 Webhook 回调推给你。message事件的messageType字段区分:

  • messageType=0:单聊

  • messageType=1:群聊

群聊消息里带roomId(int64),标识具体哪个群:

def handle_message(data): if data["messageType"] == 1: # 群聊 room_id = data["roomId"] sender = data["senderUin"] content = data["content"] # 群消息处理逻辑

交互怎么实现

群成员发消息 → 你收到回调 → 自动回复,这就是最基础的交互。进阶玩法:

关键词触发:群里 @机器人 或发特定关键词,自动回复对应内容。

指令解析:把消息当命令解析,比如"查订单 SF123456",自动调订单系统返回结果。

定时推送:不依赖群成员发言,定时向群里发日报、周报、活动提醒。

几个注意点

点

说明

群会话 id 是 int64

JSON 里传 number,别加引号

群里 @机器人 不会触发回调

只有普通消息才推,@ 是客户端行为

自己发的消息不回推

接口发的消息只推已读回执

群成员变动有回调

group_member_add、group_member_remove事件

一个完整的群机器人流程

# 1. 监听群消息 def handle_group_message(data): room_id = data["roomId"] content = data["content"] if content.startswith("查订单"): order_no = content.replace("查订单", "").strip() result = query_order(order_no) send_to_group(room_id, f"订单 {order_no} 状态:{result}") # 2. 定时推送 def daily_report(): groups = get_active_groups() for g in groups: send_to_group(g["conversationId"], "今日订单量:128")

这套流程里,接收靠回调,发送靠 API,交互逻辑全在自己代码里。接口用的是Eyun 平台的企业微信 API,群相关接口走room模块,凭证在官网开通实例时拿到。

外部群机器人的本质是"用 API 模拟一个群成员"。理解这一点,后面的功能扩展都是自然延伸。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/20 19:19:07

STM32驱动DS1302实时时钟芯片:三线协议、寄存器与工程实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/20 19:19:05

国产AI芯片落地实战:嵌入式与消费电子场景的能效-精度-时延平衡

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/20 19:19:01

显示驱动调试工具全解析:从内核到硬件的分层定位与实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/20 19:18:13

单片机部署AI模型实战:三类典型用例与部署链路全解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/20 19:17:38

本地部署 DeepSeek 实战:Ollama 从安装到调优全流程

简介:这份PDF文档面向对AI技术感兴趣的开发者、初学者及具备一定硬件基础的专业人士,系统讲解DeepSeek模型本地部署的完整流程与优化策略。内容围绕低、中、高三种硬件配置给出选型建议,并梳理Ollama、Python、CUDA等工具的安装要点&#xff…

作者头像 李华
网站建设 2026/10/20 19:16:55

ThinkPHP实战:构建礼品卡回收订单系统,从卡密到打款全流程

简介:基于Thinkphp框架开发的百分百收卡网点卡回收、礼品卡兑换与二手礼品卡回收网站源码,适合有PHP开发基础的站长或二次开发者快速搭建线上回收交易平台。整份资源共2000个文件,压缩包约47.57MB,主要包含1157个php后端逻辑、246…

作者头像 李华