本文教你无需复杂开发 / 简单代码两种方式,在飞书群里实现机器人自动 @另一个机器人,可用于自动任务触发、流程联动、告警通知等场景。
一、前置必备条件
- 准备两个机器人 (自定义机器人 / 应用机器人均可),并都加入同一个飞书群
- 拿到被 @机器人的 open_id(核心关键)
- 发送消息的机器人拥有群内发消息权限
二、第一步:获取被 @机器人的 open_id
方法:最简单通用(无需 API 权限)
-
在目标群里手动 @被 @的机器人 ,随便发一句话,例如:
@机器人B 测试 -
用任意能接收消息的机器人(飞书机器人助手 / 自建机器人)捕获这条消息
-
在消息内容中找到: plaintext
mentions → [0] → user_id这个
ou_xxxxxx就是机器人 B 的 open_id
方式一:无代码实现(飞书机器人助手)
适合运营、产品、不会代码的用户。
1. 新建机器人流程
- 打开 飞书机器人助手 网页版
- 新建流程 → 选择群机器人
2. 设置触发条件
根据需求选择:
- 收到关键词消息触发
- 定时触发
- 表单提交触发
3. 添加「发送群消息」动作
- 选择发送到指定群聊
- 在消息内容中直接填入 @ 格式:
plaintext
<at user_id="ou_xxxxxx">机器人B</at> 请处理任务
将 ou_xxxxxx 替换为你获取到的 open_id。
4. 保存并启用
触发后即可看到:机器人 A 自动 @机器人 B
方式二:代码实现(自定义机器人 Webhook)
适合需要对接系统、自动批量触发的场景。
1. 创建自定义机器人
-
群右上角「...」→ 群设置 → 群机器人 → 添加机器人
-
选择自定义机器人(Webhook)
-
复制 Webhook 地址,类似: plaintext
https://open.feishu.cn/open-apis/bot/v2/hook/xxxxxxx
2. 发送 @机器人消息
消息格式(直接复制使用)
json
{
"msg_type": "text",
"content": {
"text": "<at user_id=\"ou_xxxxxx\">机器人B</at> 任务已自动触发"
}
}
Python 示例代码
python
运行
import requests
url = "你的Webhook地址"
data = {
"msg_type": "text",
"content": {
"text": "<at user_id=\"ou_xxxxxx\">机器人B</at> 自动任务执行"
}
}
resp = requests.post(url, json=data)
print(resp.json())
运行后,群内即可实现机器人 @机器人。
方式三:富文本 @ 机器人(更美观)
适合需要卡片、多行展示的场景:
json
{
"msg_type": "post",
"content": {
"post": {
"zh_cn": {
"content": [
[
{"tag": "text", "text": "系统提醒:"},
{"tag": "at", "user_id": "ou_xxxxxx", "user_name": "机器人B"},
{"tag": "text", "text": "请立即处理"}
]
]
}
}
}
}
三、常见问题排查
-
@了但机器人 B 没反应
- 检查 open_id 是否正确
- 机器人 B 是否在群内
- 机器人 B 是否开启了 @响应
-
发送失败
- Webhook 地址是否正确
- 群内是否有权限
- 飞书后台是否开启 IP 白名单 / 签名验证
-
频率限制
- 自定义 Webhook:20 条 / 分钟
- 应用机器人:更高 QPS,适合企业级使用
四、最终效果
触发后群内显示:
机器人 A: @机器人 B 请处理任务
实现机器人自动 @机器人联动完成。