AI PLAY玩法更新持续收录
← 回到更新流

2026-09-10 · 原文发布日

司机拍照上传,AI核验签收凭证后才标记送达

司机通过n8n表单提交运单号、收件人和现场照片,流程先在Google Sheets配送台账里查运单,查不到就记异常并邮件加Telegram告警;有单但没照片也记异常不标记完成;有照片时交给OpenAI视觉模型判断是否呈现包裹、门口、签收等可信送达场景,通过的才把台账更新为已送达并邮件通知客户,不通过的记入PodLog交人工复核。

原文要点

原流程是 n8n Form 收运单号、收件人、备注和可选照片;先规范化并生成 POD ID,缺运单直接告警停止。查到 Deliveries 不存在就写 PodLog 并 Gmail/Telegram 告警;有单无照片记 no photo 且不改完成;有照片才交 OpenAI 视觉模型 gpt-5.6-terra 判 ok/mismatch。仅 ok 更新 Deliveries 为 Delivered、写 PodLog、邮件客户并发 Telegram;mismatch 留人工复核。需要 Google Sheets、Gmail、Telegram、OpenAI 四类凭据和 Deliveries/PodLog 两个表。

这次做成什么

搭一个可演示的“司机提交凭证→查单→照片核验→仅通过后标记送达”的最小闭环;不导入原模板,因来源未给可下载 n8n JSON,以下为本站按描述重建的练习方案,界面名称需在 n8n 实际版本核对。

准备什么

  • n8n 实例可创建 Form Trigger、Google Sheets、Gmail、Telegram、OpenAI 节点
  • 一个测试 Google 表格含 Deliveries 与 PodLog 两个工作表且已授权 OAuth2
  • Telegram Bot Token 与测试 chat_id,Gmail 测试收件箱,OpenAI API Key
  • 准备 3 张测试图:门口包裹、空白模糊图、自拍照各一张

具体怎么做

  1. 建台账与日志表

    在 Google Sheets 建 Deliveries:waybill,customer_name,customer_email,status,assigned_date;建 PodLog:log_id,waybill,status,signal,recipient,notes,created_at。填入 WB10086 一行 status=Out for delivery,作为唯一可查测试单。

  2. 配置表单入口

    用 n8n Form Trigger 发布测试表单,字段:waybill 必填文本,recipient 必填文本,notes 可选,photo 文件可选且限制 image/*。开启文件上传后复制表单 URL,只发给测试司机,不用于真实客户。

  3. 先做缺单与查单分支

    Form 后接 Function/Set 规范化:trim waybill,生成 pod_id=POD-时间戳,has_photo=二进制是否存在。IF 缺 waybill:Gmail 发 ops 收件箱、Telegram 发告警并 Stop。查 Deliveries 用 Filter waybill=提交值;未找到走 Append PodLog status=Unrecognized waybill 并告警。

  4. 接入视觉核验

    存在照片时把图片二进制与上下文传 OpenAI 视觉节点,模型名先填来源提到的 gpt-5.6-terra,若凭据无该模型则改账户可用视觉模型并在 PodLog notes 记录替换。要求只返回 JSON:verdict,summary,signals。解析失败按 mismatch 处理。

  5. 只放行 ok 结果

    IF verdict=ok:Update Deliveries 匹配 waybill 行 status=Delivered;Append PodLog status=verified;Gmail 发 customer_email 送达确认;Telegram 发成功。否则 Append PodLog status=exception、signal=mismatch,Gmail+Telegram 通知人工复核,绝不更新 Deliveries。

可直接复制的材料

视觉核验提示词

本站独立编写;waybill/recipient/notes 用 n8n 表达式替换,模型需支持图像输入。

你是配送签收凭证核验器。输入包含运单号、收件人、司机备注和一张现场照片。只依据图像判断是否可信送达:应呈现包裹/箱件、门口/门阶/入口、或有人接收货物等场景;自拍、收据、截图、全黑、模糊、无关街景不可信。必须只输出 JSON,不要多余文字:{"verdict":"ok|mismatch","summary":"不超过40字","signals":["parcel|doorstep|person|blurry|selfie|screenshot|none"]}. 若无法确定,verdict=mismatch。运单号:{{waybill}};收件人:{{recipient}};备注:{{notes}}

合成测试数据

全部为虚构邮箱与单号;勿把 WB40400 当作应存在单,它用于测试未识别分支。

Deliveries 表头: waybill,customer_name,customer_email,status,assigned_date
WB10086,林测试,lin.test@example.com,Out for delivery,2026-09-10
WB40400,周不存在,none@example.com,Out for delivery,2026-09-10

PodLog 表头: log_id,waybill,status,signal,recipient,notes,created_at

字段映射与凭据清单

ops_to、chat_id、文档 ID 必须替换;未提供原工作流文件,不能声称等同原模板。

Form.waybill -> Lookup Deliveries Filter.waybill;Form.recipient -> PodLog.recipient;Form.notes -> OpenAI context 与 PodLog.notes;Form.photo binary -> OpenAI image input;OpenAI.verdict -> IF ok/mismatch;ok 时 Update Deliveries.status=Delivered where waybill=Form.waybill。凭据:Google Sheets OAuth2 选中测试文档;Gmail OAuth2 设 ops_to=ops.test@example.com;Telegram Bot API 设 chat_id=123456789;OpenAI API 设模型先为 gpt-5.6-terra,失败再降级并记录。

输入与输出示例

本站虚构演示,未运行原流程;输出结构来自本页提示词约束,不代表原作者实测。

输入

表单提交:waybill=WB10086,recipient=林测试,notes=放前台左侧,photo=door-parcel.jpg(清晰显示纸箱在门垫前);台账中 WB10086 当前 status=Out for delivery。

对应输出

OpenAI 返回 {"verdict":"ok","summary":"纸箱置于门前地垫,像送达现场","signals":["parcel","doorstep"]};Deliveries 的 WB10086 更新为 Delivered;PodLog 追加 log_id=POD-1726000000,waybill=WB10086,status=verified,signal=ok;客户邮箱收到“已送达”示意,Telegram 发成功提示。

做完检查这些

  • 无 waybill 时只发 ops 邮件和 Telegram,不读写 Deliveries,不生成 Delivered
  • 未知 waybill 只在 PodLog 出现 status=Unrecognized waybill,客户不收到邮件
  • 有单无照片只记录 no photo,Deliveries.status 保持 Out for delivery
  • verdict=ok 才改 Deliveries 并通知客户;mismatch/解析失败都进入人工复核

容易卡住的地方

  • 文件上传未开启会把 has_photo 恒为 false,导致全部进入 no photo 分支
  • 模型无权限或名称不存在时不能静默放行,应解析失败转 mismatch
  • Deliveries 的 waybill 列名不一致会让查单永远找不到
  • Telegram chat_id 填群 ID 与 Bot 未进群都会告警失败

原文与作者资料 ↗

本站借助AI整理来源事实,独立编写中文操作指南与示例。示例不代表实际运行结果;来源效果尚未由本站独立复现。付费模板与模型、服务费用分别计算。

原文标题
Verify photo proof of delivery with gpt-5.6-terra, Google Sheets, Gmail and Telegram
原作者
Khairul Muhtadin
原始发布日期
2026-09-10T09:05:06.056Z
来源
https://n8n.io/workflows/19440