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

2026-09-02 · 原文发布日

Facebook Marketplace 询盘自动打分并分流到 Slack

这个 n8n 免费模板通过 Facebook webhook 接收 Marketplace 页面消息,交给 GPT-4o-mini 提取意向、涉及商品并生成摘要,写入 Supabase 后按意向计算线索分数,再把热、温、冷线索分别推送到不同 Slack 频道;解析失败时字段降级为 unknown,适合有 Marketplace 店铺的卖家自动分拣询盘。

原文要点

这是 n8n 站点发布的免费模板(工作流19046):Facebook webhook 订阅收到 Marketplace 相关主页消息后触发;消息文本交给 OpenAI GPT-4o-mini 输出严格 JSON,包含意向分类、商品提及和摘要;解析失败时字段降级为 unknown;结构化结果写入 Supabase 的 marketplace_inquiries 表(product_id、product_mentioned、summary、intent 列);按意向计算线索分数,分数≥5 为热线索,≥3 为温线索,其余为冷线索,分别推送到三个不同 Slack 频道。原文只描述节点职责与设置项,未给出提示词全文、评分代码或可导入文件。

这次做成什么

照着做出一条「Facebook 主页消息→AI 结构化→Supabase 存档→按分数分流到三个 Slack 频道」的分拣流程。由于原模板未公开提示词与评分代码,本站独立补写可粘贴的提取提示词、评分 Code 节点示例和一条合成测试消息,先用「手动触发+假数据」跑通,再接真实 webhook。

准备什么

  • 一个可登录的 n8n 实例(云版或自托管均可),能添加凭据并激活工作流
  • Facebook 开发者账号、一个 Facebook 应用并绑定有 Marketplace 消息的主页,能配置 webhook 订阅
  • OpenAI API key(模板指定 GPT-4o-mini,调用会产生费用)
  • Supabase 项目及服务密钥,能建表
  • Slack 工作区及可发消息的 Bot token,预先建好三个测试频道

具体怎么做

  1. 配置 Facebook 触发

    在 Facebook 开发者后台创建应用并绑定主页,订阅主页消息 webhook;在 n8n 加 Facebook Trigger 节点,把模板里的 App ID 占位符换成你的应用 ID,完成开发者后台的 webhook 验证。练习阶段先用 Manual Trigger 代替,避免反复验证。

  2. 接入 OpenAI 提取节点

    在 n8n 凭据中新建 OpenAI(填入 API key),加一个 AI 聊天节点,模型选 gpt-4o-mini,系统提示词粘贴下方「询盘提取提示词」,用户消息传入上一节点的消息文本,要求严格 JSON 输出。

  3. 安全解析 JSON

    在 AI 节点后加 Code 节点:尝试 JSON.parse 模型输出,捕获异常时把 intent、product_id、product_mentioned、summary 四个字段全部置为 unknown,保证下游不因格式错误中断。

  4. 写入 Supabase

    在 Supabase SQL 编辑器建 marketplace_inquiries 表(id 自增主键,product_id text,product_mentioned text,summary text,intent text,created_at 默认当前时间);n8n 加 Supabase 凭据和 Insert 节点,把解析后的四个字段映射进对应列。

  5. 评分与三路分支

    加 Code 节点按意向打分(见下方评分示例配置),再加两个 IF 节点:第一层 score≥5 走热线索 Slack 节点,第二层 score≥3 走温线索,其余走冷线索。三个 Slack 节点各填对应频道 ID,消息里带上摘要、商品和分数。

  6. 用合成数据联调

    把下方测试消息 JSON 贴进 Manual Trigger 的输出里逐节点执行,确认 Supabase 出现一行、正确的 Slack 频道收到格式化的告警,再激活工作流接真实 Facebook 流量。

可直接复制的材料

询盘提取提示词(本站独立编写)

本站按模板字段独立撰写,粘贴到 AI 节点系统提示词;如店铺商品有固定编号规则,可在规则里补充说明。

你是电商询盘分析助手。用户会给你一条 Facebook Marketplace 买家发来的主页私信原文。
请只输出一个 JSON 对象,不要输出任何其他文字或 Markdown 代码块,字段如下:
{"intent": "buy|negotiate|question|spam 四选一", "product_id": "若能从消息推断商品编号则填字符串,否则填 unknown", "product_mentioned": "消息中提到的商品名称,没有则填 unknown", "summary": "用一句不超过40字的中文概括买家需求"}
判定规则:明确表达购买或约看货为 buy;主要谈价为 negotiate;只询问商品细节为 question;广告、无关内容为 spam。无法判断时对应字段填 unknown。

线索评分 Code 节点示例(本站独立编写)

阈值对齐原文「热≥5、温≥3」;分值表是本站设定,可按业务在 Code 节点里调整。

const intent = ($json.intent || 'unknown').toLowerCase();
const scoreMap = { buy: 6, negotiate: 4, question: 2, spam: 0, unknown: 1 };
const score = scoreMap[intent] ?? 1;
const tier = score >= 5 ? 'hot' : score >= 3 ? 'warm' : 'cold';
return [{ json: { ...$json, score, tier } }];

合成测试消息(本站虚构)

纯虚构练习数据,sender_id、page_id 均为假值;联调时替换为你手动构造的输入,不要放真实客户信息。

{"message_id": "m_test_0001", "sender_id": "psid_demo_7788", "text": "你好,那台二手戴森V11吸尘器还在吗?我今天下午能过来自提,2000元可以马上转账。", "page_id": "100200300"}

输入与输出示例

本站虚构演示,未实际调用 OpenAI/Slack;真实输出以你的模型与配置为准。

输入

使用上方合成消息:「你好,那台二手戴森V11吸尘器还在吗?我今天下午能过来自提,2000元可以马上转账。」走完整条练习流程。

对应输出

AI 节点输出 {"intent":"buy","product_id":"unknown","product_mentioned":"二手戴森V11吸尘器","summary":"买家欲今天自提戴森V11并立即付款"};Supabase 插入一行 intent=buy;评分节点算出 score=6、tier=hot;热线索 Slack 频道收到「🔥 热线索|二手戴森V11吸尘器|分数6|买家欲今天自提并立即付款」。

做完检查这些

  • AI 节点对测试消息返回的是纯 JSON,不含 Markdown 代码块,解析节点不报错
  • Supabase 的 marketplace_inquiries 表新增一行,四列与解析结果一致
  • score=6 的消息只进入热线索频道,温、冷频道没有重复消息
  • 把 AI 输出故意改成乱码时,四个字段降级为 unknown,流程仍走完全程不中断
  • 激活工作流后,Facebook 开发者后台的 webhook 验证通过且测试消息能触发

容易卡住的地方

  • Facebook 应用未完成主页绑定或缺少消息权限时触发器完全无数据,先查 webhook 订阅
  • 模板节点里的 App ID 是占位符,不替换就无法通过 Facebook 验证
  • 模型偶尔输出带代码块的 JSON,解析节点必须带 try/catch 降级,否则整批中断
  • Slack 频道 ID 不是频道名,且 Bot 需先被邀请进频道,否则发信失败
  • Supabase 列名与插入映射不一致会静默失败,建表后先手动插一行核对
  • GPT-4o-mini 调用按 OpenAI 计费,量大的店铺要估算月度成本

原文与作者资料 ↗

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

原文标题
Score and route Facebook Marketplace leads with OpenAI, Supabase, and Slack
原作者
WeblineIndia
原始发布日期
2026-09-02T06:11:31.619Z
来源
https://n8n.io/workflows/19046