
这是「飞书对接」小专题的第5篇,共5篇,从《MCP实战手记(十一):MCP接飞书,从机器人到事件订阅的三层深度接入》延伸(对应正文第5层钉钉横向对比)。
篇11正文第5层把钉钉拆成两层说,避免笼统写"钉钉双向受限"。把实测过程和边界补全:钉钉群自定义机器人 Outgoing 现状如何、加签怎么验、Stream 模式差在哪。重点一句:受限仅指"群自定义机器人 Outgoing线",不是泛指钉钉平台------已有钉钉企业体系,Stream是等价路线。
钉钉群自定义机器人Outgoing:截至2026-10实测"维护中"
钉钉群机器人也能加签 POST 推消息,加签公式和飞书同构:timestamp + "\n" + secret做 HMAC-SHA256 再 Base64。
java
// 钉钉群机器人加签(与飞书同构)
String stringToSign = timestamp + "\n" + secret;
Mac mac = Mac.getInstance("HmacSHA256");
mac.init(new SecretKeySpec(secret.getBytes(UTF_8), "HmacSHA256"));
String sign = Base64.getEncoder().encodeToString(mac.doFinal(stringToSign.getBytes(UTF_8)));
String url = webhook + "×tamp=" + timestamp + "&sign=" + URLEncoder.encode(sign, "UTF-8");
截至2026-10实测 :这条 Outgoing 线显示"功能维护中",单向推送(机器人 → 群)可达,加签 POST 返回 {"errcode":0,"errmsg":"ok"} 验证链路通;但收@消息的回调不可用。也就是说,钉钉群机器人目前能"推"不能"收",双向闭环在 Outgoing 线打不通。
这是本篇独家实测差异:网上很多文照搬旧文档说钉钉群机器人能收消息,实际截至2026-10这条线维护中。写对比时务必加时间限定,别拿旧结论当现状。
钉钉Stream模式:能力对等飞书长连接
钉钉官方推荐的双向方案是 Stream模式:
- 本质和飞书长连接一样------TCP持久连接、免公网入站,服务端出站连钉钉。
- 能力对等飞书第3层:群里@机器人 → 收事件 → 调工具 → 回卡。
- 差异在门槛:Stream需"企业内部应用 + 组织开发者权限",个人免费版开不出来。
- 事件模型:Stream 与飞书长连接大致同构------都是服务端常驻长连、平台推事件、客户端按
event_id去重,接入时主要差异在 SDK 与权限申请流程,不在事件机制本身(本次未实测,仅作模型对照)。
所以飞书长连接个人本机就能跑,钉钉Stream要企业身份------这是两者对个人开发者最实在的差距,不是能力差距。
横向差距一张表
| 维度 | 飞书(长连接) | 钉钉(Outgoing / Stream) |
|---|---|---|
| 个人免费版双向 | ✅ 长连接可达 | ❌ Outgoing维护中 / Stream需企业 |
| 收消息机制 | 长连接事件订阅 | Outgoing维护中;Stream对等但需企业 |
| 入站要求 | 免公网、出站连 wss |
Stream同样免公网,但需企业应用 |
| 加签公式 | timestamp+"\n"+secret HMAC |
同构 |
| 适合人群 | 个人/小团队本机实测 | 已有钉钉企业体系 |
三个坑
坑一:拿旧文档当现状。 钉钉Outgoing收消息在2026-10实测维护中,照搬旧教程会卡在"收不到回调"。对比文一定加时间限定。
坑二:混淆两套钉钉方案。 群自定义机器人(轻量、个人可建)和Stream(企业应用)是两回事,能力、门槛都不同,别写"钉钉双向受限"泛指平台。
坑三:只看加签不看权限。 加签能跑通只能证明"推"通了;要"收"得走Stream,而Stream的前提是企业应用 + 组织开发者权限,个人版直接卡死。
小结
飞书和钉钉的双向能力其实对等(长连接 / Stream 都是免公网的持久连接),真正的差距在个人开发者门槛:飞书长连接个人本机即可跑通完整闭环,钉钉Stream需企业身份。已有钉钉企业体系的话,Stream 是完全可行的等价路线;如果只是个人实测,飞书是目前最低门槛的选择。
同专题推荐
本文是「飞书对接」小专题的第5篇,共5篇:
-
- 钉钉接入实战与平台横向差距(← 当前这篇)
相关阅读
- 《MCP实战手记(十一):MCP接飞书,从机器人到事件订阅的三层深度接入》
- 《MCP实战手记系列(九):生产化MCP Server的6层安全防护》(身份透传底座)
- 《MCP实战手记系列(八):无状态之后的生产落地清单》(Server 无状态可水平扩展)
- 《MCP实战手记系列(十):MCP Server高可用实战》(6工具复用 StoreService)
- 配套代码:https://gitee.com/ethanliang2016/mcp-in-action(模块
11-feishu,tagv11)