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

2026-10-05 · 原文发布日

安保巡逻报告自动分级与升级通知

一个面向安保团队的n8n流程:保安通过表单提交巡逻或事件报告,系统先做字段校验(缺项会回邮提示补填),再由模型把报告分为紧急、普通、知会三级并生成主管十秒能读完的摘要和处理建议,全部记录写入Google Sheets,紧急件即时邮件通知运营主管和客户。另有每天早六点的24小时日报和每月一日的AI月度汇总邮件。

原文要点

Khairul Muhtadin发布的免费n8n模板(2026年10月更新)。流程用n8n表单收巡逻/事件报告,规范化出报告ID(SEC-yyyyMMdd-###),校验姓名、邮箱、站点、描述四项,缺项不保存并回邮提示;模型gpt-6-luna把报告分为urgent/normal/informational并写60词内摘要,紧急件附一条建议动作;全部记录写入Google Sheets的“Security Log”页,紧急件当场邮件通知运营主管与客户;每天06:00发近24小时日报(含紧急时主题加标记),每月1日08:00发AI月度汇总。

这次做成什么

在自建n8n中复现“表单→校验→AI三级分级→台账→紧急升级邮件→日报/月报”整条链路。本站练习用任意OpenAI兼容聊天模型替代gpt-6-luna(该模型名为原文所用,替换后输出格式需自行核对),用合成巡逻数据走通一次紧急件升级。

准备什么

  • 一个可建工作流的n8n实例(自托管或云端)
  • Google Sheets OAuth2凭据,及一个含“Security Log”标签页的表格
  • Gmail OAuth2凭据(发件与回邮用同一账号即可)
  • 一个聊天模型API凭据(OpenAI或兼容接口)
  • 练习用的主管与客户测试邮箱(别用真实客户地址)

具体怎么做

  1. 建表与配凭据

    新建Google Sheets,建标签页“Security Log”,列依次为report_id、submitted_at、officer_name、officer_email、site_client、shift、report_type、event_time、description、severity、summary、suggested_action、is_urgent、supervisor_email、client_email(本站建议列名,最终以模板中Google Sheets节点写入字段为准)。在n8n凭据页添加Google Sheets OAuth2、Gmail OAuth2和聊天模型凭据。

  2. 表单与规范化

    用n8n Form节点建“巡逻/事件报告”表单,字段:保安姓名、保安邮箱、站点或客户、班次、报告类型(巡逻/事件)、事件时间、经过描述。后接Code节点做规范化:生成report_id(格式SEC-yyyyMMdd-三位序号)、写入提交时间戳submitted_at,并把主管与客户邮箱合并进数据(对应原文Normalize Report节点)。

  3. 校验与补填回邮

    加IF节点判断officer_name、officer_email、site_client、description任一为空即为无效。无效分支不写表,用Gmail节点给提交人回邮,正文列出缺失字段和本次已提交的值,提示改正后重新提交。

  4. AI分级与合并

    有效分支调聊天模型节点,使用下方分级提示词,要求只返回JSON。解析severity、summary、suggested_action后合并回报告,置is_urgent =(severity等于urgent)。

  5. 写台账与紧急升级

    Google Sheets节点把整行追加到Security Log。再接IF节点:is_urgent为真时发两封Gmail——给主管的“URGENT”告警(含摘要与建议动作),给站点客户的紧急事件通知(说明主管正在协调处置);非紧急不写邮件。

  6. 日报与月报

    Schedule Trigger每天06:00触发:读Security Log,筛近24小时记录,逐行拼成日报发运营经理,窗口内有紧急件时主题加“(INCLUDES URGENT ITEM)”。另一个Schedule Trigger每月1日08:00触发:汇总近30天总量、事件数、紧急数与按站点分组,交模型起草月度汇总邮件发经理。激活前在n8n设置里核对时区。

可直接复制的材料

巡逻报告分级提示词

本站按原文功能独立撰写;{{$json.xxx}}为n8n表达式,字段名需与你的表单一致。

你是安保运营调度助手。根据下面这份巡逻/事件报告完成两件事:
1. 把严重程度定为三档之一:urgent(对人员或财产有即时威胁,需要立即响应)、normal(需要关注处理但非紧急)、informational(仅需知会记录)。
2. 写一段不超过60字的白话摘要,让主管十秒内读完;若定为urgent,再给出一条具体可执行的建议动作。
只返回JSON,不要输出其他文字,格式:{"severity":"urgent|normal|informational","summary":"...","suggested_action":"...或空字符串"}
报告内容:
站点:{{$json.site_client}}
班次:{{$json.shift}}
类型:{{$json.report_type}}
事件时间:{{$json.event_time}}
经过:{{$json.description}}

Security Log合成示例行

本站虚构合成数据;导入前确认列名与模板Google Sheets节点一致。

report_id,submitted_at,officer_name,officer_email,site_client,shift,report_type,event_time,description,severity,summary,suggested_action,is_urgent,supervisor_email,client_email
SEC-20261102-001,2026-11-02 02:20:11,王强,wangqiang@example.com,星河湾3号仓库,夜班,incident,2026-11-02 02:15,巡逻发现西侧围栏被破坏仓库门虚掩现场有陌生脚印未见人员,urgent,夜班巡逻发现西侧围栏破损且仓库门虚掩疑似有人闯入未造成可见损失,立即电话通知值班经理到场封锁西翼并调取02:00前后监控,TRUE,ops-sup@example.com,client-xhw@example.com
SEC-20261102-002,2026-11-02 06:40:02,李敏,limin@example.com,星河湾3号仓库,早班,patrol,2026-11-02 06:30,例行巡逻各门禁正常消防通道无遮挡灭火器压力正常,informational,早班例行巡逻一切正常无异常发现,,FALSE,ops-sup@example.com,client-xhw@example.com

校验与定时配置示例

本站整理的独立配置参考,非原工作流导出文件。

{
  "requiredFields": ["officer_name", "officer_email", "site_client", "description"],
  "reportIdPattern": "SEC-yyyyMMdd-###",
  "dailyDigest": {"trigger": "schedule", "time": "06:00", "windowHours": 24, "urgentSubjectFlag": "(INCLUDES URGENT ITEM)"},
  "monthlyReview": {"trigger": "schedule", "dayOfMonth": 1, "time": "08:00", "windowDays": 30},
  "timezoneNote": "在n8n实例设置中确认时区后再激活"
}

输入与输出示例

本站虚构演示,非原作者结果,未实际调用模型。

输入

表单提交:{"officer_name":"王强","officer_email":"wangqiang@example.com","site_client":"星河湾3号仓库","shift":"夜班","report_type":"incident","event_time":"2026-11-02 02:15","description":"巡逻发现西侧围栏被破坏,仓库门虚掩,现场有陌生脚印,未见人员。"}

对应输出

模型返回{"severity":"urgent","summary":"夜班巡逻发现西侧围栏破损且仓库门虚掩,疑似有人闯入,未见人员、未见明显损失。","suggested_action":"立即通知值班经理到场封锁西翼入口,并调取02:00前后监控核实。"};随后写入Security Log一行(report_id=SEC-20261102-001,is_urgent=TRUE),同一轮执行中主管收到主题“URGENT: 星河湾3号仓库事件”的邮件,客户收到紧急事件通知邮件。

做完检查这些

  • 缺少description的提交不会出现在Security Log中,且提交人收到列明缺失字段与已提交值的回邮
  • 紧急件执行一次后,主管邮箱与客户邮箱各收到一封邮件,主管邮件含摘要和建议动作
  • Security Log每行都有SEC-yyyyMMdd-###格式的report_id和severity三档之一
  • 次日06:00日报覆盖近24小时全部记录,窗口含紧急件时主题带(INCLUDES URGENT ITEM)

容易卡住的地方

  • gpt-6-luna是原文所用模型名,换成其他模型后要核对JSON输出是否稳定,必要时加输出解析兜底
  • 报告序号在两人同时提交时可能重复,可用执行ID或写表后行号兜底
  • 日报月报的06:00/08:00依赖n8n实例时区设置,错位会漏掉夜班记录
  • 表单必须发布并把URL发给保安;未发布时只在编辑器测试生效
  • 表头列名与Google Sheets节点字段不一致会写空列,先手工插一行测试

原文与作者资料 ↗

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

原文标题
Collect and escalate security patrol reports with gpt-6-luna, Google Sheets, and Gmail
原作者
Khairul Muhtadin
原始发布日期
2026-10-05T10:43:39.084Z
来源
https://n8n.io/workflows/20438