真实操作案例自动化与工作流

消息多平台推送:Tokeny 实操案例

将同一通知分别转为钉钉、企业微信、飞书的文本 webhook JSON,发送到三个本地 HTTP 接收路径并记录请求和响应。只验证适配格式与本地投递,不连接真实企业群。

作者:Tokeny 团队 · Windows · Tokeny 1.7.8 · gpt-6-sol

准备这次任务的输入

在 Tokeny 中新建工作空间,将下载的样例解压到工作空间,选择支持工具调用的模型。本例使用合成演示数据或文中列出的公开资料。

  • notice.json
下载输入样例

把任务交给 Tokeny

将同一通知分别转为钉钉、企业微信、飞书的文本 webhook JSON,发送到三个本地 HTTP 接收路径并记录请求和响应。只验证适配格式与本地投递,不连接真实企业群。

交付文件:notify.py、receiver.py、delivery-log.json、payloads.json。
验收要点:
- 三个本地接收路径实际收到 POST
- 三种 payload 结构分别保存
- 不声称完成平台鉴权或群消息送达
这是使用合成演示输入或指定公开资料的真实操作案例。请先读取工作空间输入,再实际生成文件并自检。所有写入、脚本与临时服务限于当前工作空间;临时服务只监听 127.0.0.1,执行后关闭;不触达外部收件人、不发布、不付款、不更改系统设置,不调用子智能体。需要公开资料时可读取给定 URL。只启用完成任务必需的工具。另写 report.md(中文)和 report.en.md(英文),简洁、完整,包含输入、处理步骤、真实结果、检查方式和局限;失败或未验证部分如实记录,不能宣称成功。最终回复用中文列出产物、关键结果与待核实项。
排版检查:Word 主标题仅出现一次,标题为黑色且与后续正文或表格保持同页;表格的标题、表头和第一条数据保持同页,单行不要跨页拆分;Excel 表头和长文字不能被窄列截断,合理设置列宽、换行、行高;HTML 在 390px 视口不能整页横向溢出。临时网络服务请用系统分配端口(0),记录实际端口,不使用固定端口,避免并发案例互相访问。报告没有固定字数要求,不要为字数反复改写。
复核后追加的任务(1 次)
独立复核发现飞书自定义机器人 webhook 格式不正确:payloads.feishu.content 当前是 JSON 字符串。机器人 webhook 文本消息需要 {"msg_type":"text","content":{"text":"通知内容"}},content 为对象;不要混用应用消息发送 API 的字符串字段。请修正 notify.py 和 payloads.json,并让本地 receiver 对三种路径分别验证结构,错误格式应返回400。重新实际执行三个本地POST验证正确请求200、错误飞书字符串content被拒绝;保存真实收件记录、响应和清理结果,更新两份报告,仍明确未验证外部平台鉴权与送达。

本次使用独立演示工作空间。复现时,请根据自己的文件与权限设置检查操作,确认后继续。

实际执行过程

任务从 Tokeny 输入框提交,由在线模型读取资料并调用工具实际执行。三种消息格式投递到本地 HTTP 接收端。本例未验证钉钉、企业微信或飞书的真实平台鉴权与群消息送达。

Tokeny 1.7.8 中「消息多平台推送」的真实执行会话与生成文件。点击可查看原图。
Tokeny 1.7.8 中「消息多平台推送」的真实执行会话与生成文件。点击可查看原图。

产物、结果与复核

输入

读取工作空间中的 notice.json:标题为“演示日报”,正文为“订单汇总已生成,合计 5064 元。”,备注为“本地联调数据”。该内容是合成演示输入。

处理步骤

  1. notify.py 读取输入并生成钉钉、企业微信、飞书的文本 webhook JSON。
  2. receiver.py 启动仅监听 127.0.0.1 的 HTTP 服务,使用系统分配端口,提供 /dingtalk、/wecom、/feishu 三个接收路径。
  3. notify.py 向三个本地路径分别发送正确的 POST,并额外向 /feishu 发送 content 为字符串的错误请求。
  4. receiver.py 按路径验证三种结构;正确请求应返回 200,错误飞书请求应返回 400。
  5. 保存真实收件记录、全部响应和临时服务清理结果。

真实结果

本次使用系统分配端口 62073。三个正确 payload 实际收到 POST 并均返回 HTTP 200;错误飞书 payload(content 为字符串)也被实际收到并返回 HTTP 400,验证错误明确指出 content 必须为对象。共保存 4 条真实收件记录,状态依次为 200、200、200、400。临时服务已停止,process_stopped 为 true;Windows 进程终止返回码记录为 1。飞书正确结构已保存为 content: {"text": "..."}。

检查方式

检查 delivery-log.json 的 summary.validated_http_200 是否为 3、summary.invalid_feishu_http_400 是否为 true,并核对 receiver_records 中四条收件记录、请求体、响应体和验证错误;检查 payloads.json 中 payloads.feishu.content 的 JSON 类型为对象而非字符串。

局限

本实测只验证 payload 结构和本机 HTTP 投递链路;未连接真实企业群,未执行平台鉴权、签名校验、限流处理或真实群消息送达验证。因此不能据此声称平台鉴权完成或群消息已送达。

下载产物,自己核对

压缩包保存本次执行生成的文件。替换成自己的资料后,可以按下面的检查点验收。

  • 三个本地接收路径实际收到 POST
  • 三种 payload 结构分别保存
  • 不声称完成平台鉴权或群消息送达
notify.py · 4 KBreceiver.py · 6 KBdelivery-log.json · 7 KBpayloads.json · 1 KBreport.md · 2 KBreport.en.md · 2 KB
下载本次实际产物

继续探索同类场景