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

2026-09-04 · 原文发布日

自动分级消防喷淋检查缺陷邮件

这是一个付费n8n模板,面向消防维保场景:每15分钟轮询Gmail里主题含缺陷或喷淋检查的邮件,OpenAI把缺陷内容分为生命安全级、一般违规或提示类。生命安全级立刻给业主发紧急整改邮件并标注24小时申报期限;一般违规发Telegram工单提醒,疑似重复违规还会邮件抄送消防主管部门。所有处理结果追加到Google Sheets的合规日志备查。

原文要点

这是Swapnil Mandloi发布的付费n8n模板(n8n.io/workflows/19181),需购买后获得原工作流文件。原流程:每15分钟轮询Gmail中主题含deficiency或sprinkler inspection的未读邮件,规范化主题、发件人、正文、时间戳,计算24小时(关键)和30天(一般)期限并用关键词标记疑似重复违规;OpenAI(gpt-5-mini)分三级;生命安全级发业主紧急整改邮件,一般违规发Telegram工单且重复违规抄送消防主管,最后合并写入Google Sheets合规日志。外部节点带3次重试。

这次做成什么

在n8n中按原模板思路自建一条"消防喷淋检查缺陷邮件→AI分级→分渠道通知→表格留痕"的自动流水线,并用一封合成缺陷邮件完成端到端测试。原模板需付费购买,以下为按公开说明独立重建的练习方案,节点细节需以你购买后的原模板为准。

准备什么

  • 一个已启用API的Gmail账号(用于触发和发送,OAuth2凭据)
  • OpenAI API密钥(分类模型,原文写gpt-5-mini,可用你账户可用模型替代)
  • Telegram Bot Token及合规负责人的chat ID(通过@BotFather建机器人)
  • Google Sheets OAuth2凭据及一张已建好的合规日志表
  • n8n实例(云版或自托管1.x),以及合成测试邮件,勿用真实业主邮箱

具体怎么做

  1. 建Gmail轮询触发器

    新建工作流,添加Gmail Trigger节点,事件选Message Received,轮询间隔设为Every 15 Minutes,绑定Gmail OAuth2凭据。在过滤条件中设置搜索词:subject:(deficiency OR "sprinkler inspection") is:unread,与原模板一致只抓未读缺陷报告邮件。用执行测试确认能抓到一封测试邮件。

  2. 规范化字段并计算期限

    在触发器后接Code节点(JavaScript),从邮件JSON中取subject、From、text/plain正文、internalDate,输出统一字段:subject、sender、body、receivedAt;同时计算两个候选期限:关键级=receivedAt+24小时、一般级=receivedAt+30天;并用关键词(如repeat、again、second notice)匹配正文生成repeatFlag布尔值。注意这只是关键词启发式,不是历史记录比对。

  3. OpenAI三级分类

    添加AI Agent或OpenAI Chat节点,挂OpenAI Chat Model子节点,系统提示词使用下文材料中的分级提示词全文,把body字段作为用户输入传入。要求模型只返回JSON:{"severity":"life_safety_critical|standard_violation|informational","reason":"..."}。再用一个Code节点解析JSON,解析失败时默认归为standard_violation并记录parseError=true。

  4. 三路分支通知

    加Switch节点按severity分三路:life_safety_critical路接Gmail Send节点,收件人填占位业主邮箱(练习用你自己的测试邮箱),正文包含缺陷摘要与24小时内向消防主管部门(AHJ)申报的期限;standard_violation路接Telegram节点发工单提醒给合规负责人chat ID,并在repeatFlag为true时再并一个Gmail Send节点抄送消防主管占位邮箱;informational路不通知,直接进日志。每个发送节点设置On Error=Continue Regular Output并配3次重试、间隔2秒,防止单路失败阻断日志写入。

  5. 合并写入合规日志

    三路末端汇入Merge节点,再接Google Sheets Append节点,绑定Sheets凭据,选择你的"AHJ Compliance Log"表格,按下列字段映射追加一行:receivedAt、sender、subject、severity、repeatFlag、deadline、notifiedChannel、status=logged。触发一次端到端执行,确认三条severity支路的数据都能正确落表且无字段错位。

可直接复制的材料

缺陷严重程度分级提示词(系统消息全文)

本站按原模板三级分类思路独立编写,可整体粘贴为系统消息;类别名可扩展,例如新增antifreeze_or_backflow需同步在Switch节点加分支。

你是消防喷淋系统维保合规助理。你会收到一封喷淋检查缺陷报告邮件的正文。请把缺陷归入以下三类之一:
1. life_safety_critical:直接危及生命安全的缺陷,例如喷淋泵故障、管网无水压、控制阀被关闭或被封堵、报警阀失效、大面积喷头损坏或被遮挡导致保护失效。
2. standard_violation:不符合规范但短期内不直接危及生命的违规,例如个别喷头被油漆覆盖、备用喷头数量不足、标识缺失、水压表读数异常但系统仍可用、检查记录不全。
3. informational:提示性或外观类问题,例如轻微锈蚀、管道支架油漆脱落、报告排版问题。
判断规则:
- 拿不准时按更严重的类别处理。
- 只依据邮件正文描述,不要臆测正文没有的设备状态。
输出要求:只返回一行JSON,不要输出任何其他文字:
{"severity":"life_safety_critical|standard_violation|informational","reason":"不超过40字的中文判断依据"}

合成测试缺陷邮件(发给你的测试收件箱)

本站虚构的合成邮件,不对应任何真实建筑或检查记录;用它验证三级分类与repeatFlag(正文含second notice应触发true)。

主题:Sprinkler Inspection Deficiency Report - Building A
发件人:inspector-test@example.com
正文:
Date: 2026-09-04 09:12
Building: Building A, 3F East Wing
Findings:
1. Main sprinkler control valve found in CLOSED position during inspection. No signage or supervision present. System would not discharge on fire event.
2. Two spare sprinkler heads missing from cabinet.
3. Repeat note: valve closure was reported on prior inspection dated 2026-06-11 (second notice).

AHJ Compliance Log表头配置

本站按公开说明中"每封邮件追加一行审计记录"独立设计的列结构;原模板的确切列名需在购买的模板中核对。

列A receivedAt(ISO时间戳)
列B sender(检查员邮箱)
列C subject(邮件主题)
列D severity(life_safety_critical/standard_violation/informational)
列E repeatFlag(true/false)
列F deadline(按分级计算的期限时间)
列G notifiedChannel(email/telegram/email+telegram/none)
列H status(logged)

输入与输出示例

本站虚构演示,未实际运行;分类措辞与期限数值取决于你的模型版本与时区设置。

输入

上面的合成测试邮件:控制阀处于关闭状态、缺两个备用喷头、且正文注明是第二次通报(second notice)。

对应输出

OpenAI分类输出:{"severity":"life_safety_critical","reason":"主控制阀关闭,火灾时无法喷水"};Switch走紧急支路:业主测试邮箱收到含24小时AHJ申报期限的紧急整改邮件;Sheets追加一行:receivedAt=2026-09-04T09:12:00Z,severity=life_safety_critical,repeatFlag=true,deadline=2026-09-05T09:12:00Z,notifiedChannel=email,status=logged。

做完检查这些

  • 触发器过滤后只命中主题含deficiency或sprinkler inspection的未读邮件,普通邮件不进入流程
  • 合成邮件被分为life_safety_critical,且业主邮箱收到正文含24小时期限字样的邮件
  • 正文含second notice时repeatFlag为true;一般违规支路在该条件下额外发出消防主管抄送邮件
  • 三种severity类型的执行都在Sheets中各产生且只产生一行完整日志,无空字段、无重复行
  • 人为断开Telegram凭据后重跑,Gmail与Sheets写入仍能完成(continueRegularOutput生效)

容易卡住的地方

  • 这是付费模板,公开页不含可导入的工作流JSON;本指南是按说明重建的练习方案,节点参数需以购买后的原文件为准
  • 重复违规判定仅基于正文关键词启发式,不查历史申报数据库,容易漏报或误报
  • 24小时/30天期限按NFPA-25假设计算,原文明确提示需对照本地消防法规核实,不能直接当作法定期限
  • Gmail搜索语法大小写与引号敏感,写错会导致触发器静默抓不到邮件
  • OpenAI分类费按调用计费,每封邮件一次调用;批量历史邮件导入时注意成本
  • 练习全程用测试邮箱与合成数据,不要把真实业主或消防部门邮箱填进发送节点

原文与作者资料 ↗

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

原文标题
Route fire sprinkler deficiencies with Gmail, OpenAI, Telegram and Sheets
原作者
Swapnil Mandloi
原始发布日期
2026-09-04T04:39:05.920Z
来源
https://n8n.io/workflows/19181