2026-09-08 · 原文发布日
房产线索自动评分、分配与跟进
网站表单POST到webhook后,流程校验邮箱、电话和预算字段,无效直接返回错误。合格线索写入PostgreSQL表,交gpt-4o-mini给出评分、冷热分级和理由,按位置分配销售后回写同一条记录。评分超过80的热线索会发Twilio短信、Gmail确认邮件并向Slack销售频道告警,随后按设定延迟再发一封跟进邮件。需要PostgreSQL、OpenAI、Gmail、Twilio和Slack五套凭证。
原文要点
该n8n工作流(WeblineIndia发布)用Webhook接收网站表单POST的name、email、phone、budget、property_type、location、message字段;邮箱、电话或预算缺失或非法时直接返回错误响应。合格线索插入PostgreSQL的public.leads_tracking表,再发OpenAI(gpt-4o-mini)生成线索评分、HOT/WARM/COLD分级和理由,解析JSON后与原始数据合并,按location分配销售,并把评分、分级、销售、理由回写同一条记录。评分超过80的热线索发Twilio短信、Gmail确认邮件并向Slack销售频道告警,随后按设定延迟再发一封Gmail跟进邮件。需要PostgreSQL、OpenAI、Gmail、Twilio、Slack五套凭据,Twilio需替换有效发送号码。
这次做成什么
搭建一个房产线索评分练习流:Webhook收单→字段校验→入库→AI评分分级→按地区派单→热线索多渠道通知→延迟跟进。这是本站依据原流程描述独立设计的练习方案,节点细节需以n8n.io/workflows/19365原模板为准核对;OpenAI、Twilio等调用可能产生费用。
准备什么
- 可用的n8n实例与新建工作流权限
- PostgreSQL数据库及建表权限(本地Docker实例即可)
- OpenAI API Key且账号可用gpt-4o-mini模型
- Gmail OAuth2、Slack Bot凭据,以及带有效发送号码的Twilio试用或正式账号
- 一个可发POST的测试工具(curl或Postman均可)
具体怎么做
建库表与Webhook入口
在PostgreSQL执行建表(见材料)。n8n加Webhook节点,方法POST、路径如real-estate-lead,激活后复制生产URL。练习阶段先用测试URL,用curl发一条完整线索确认能收到七字段。
校验并拒绝坏数据
接IF或Code节点校验:email匹配简单邮箱格式、phone为8位以上数字、budget为大于0的数字。任一不合格直接用Respond to Webhook返回HTTP 400和失败原因JSON,不入库不调用AI。
入库并调用gpt-4o-mini评分
用Postgres节点把校验后字段插入leads_tracking并取回自增id。再把线索文本拼入评分提示词发OpenAI,要求返回严格JSON:lead_score、lead_type、reasoning。JSON解析节点把结果与原字段合并。
按地区派单并回写
用Switch或Code节点按location映射销售:练习规则'朝阳/海淀→王顾问,浦东/静安→李顾问,其他→池顾问'。再用Postgres UPDATE按id回写lead_score、lead_type、assigned_agent、reasoning四列。
热线索通知与延迟跟进
IF节点判断lead_score>80:真分支并行发Twilio SMS、Gmail确认邮件、Slack告警,然后Respond to Webhook返回成功;接一个Wait节点(练习设1分钟,正式可设24小时)后发Gmail跟进邮件。非热线索只回写库并返回普通成功响应。
可直接复制的材料
建表SQL
本站按原文提到的列名独立编写的练习建表语句,可直接在测试库执行;生产环境请再加索引和约束。
CREATE TABLE public.leads_tracking (
id SERIAL PRIMARY KEY,
name VARCHAR(100),
email VARCHAR(200),
phone VARCHAR(30),
budget NUMERIC,
property_type VARCHAR(50),
location VARCHAR(100),
message TEXT,
lead_score INT,
lead_type VARCHAR(10),
assigned_agent VARCHAR(50),
reasoning TEXT,
created_at TIMESTAMP DEFAULT NOW()
);线索评分提示词
本站独立编写的示例提示词,非原模板原文;占位符在n8n中用表达式替换,评分标准可按业务改写。
你是房产销售线索评分助手。根据下面的线索信息输出严格JSON,不要输出其他文字。
线索:姓名{name},预算{budget}元,意向房型{property_type},区域{location},留言:{message}
返回格式:
{"lead_score": 0到100整数, "lead_type": "HOT|WARM|COLD之一", "reasoning": "60字内中文理由"}
评分参考:预算明确且高于300万加分,留言提到具体时间(如本周末看房)加分,只问泛泛信息减分。不要臆测留言中没有的信息。练习用测试POST数据
本站虚构合成测试数据,邮箱电话均为示例值,不对应真实个人。
{
"name": "赵一鸣",
"email": "zhaoym@example.com",
"phone": "13800001234",
"budget": 5200000,
"property_type": "三居室",
"location": "朝阳",
"message": "预算520万左右,想看朝阳公园附近三居,本周末可以看房"
}输入与输出示例
本站虚构演示输入与示意输出,未实际运行,分数不保证与gpt-4o-mini真实输出一致。
输入
用curl向Webhook POST上述赵一鸣线索:预算5200000元、三居室、朝阳、留言'本周末可以看房'。对应输出
Webhook返回{"status":"success","lead_id":7,"lead_type":"HOT"};leads_tracking表第7行回写lead_score=88、lead_type=HOT、assigned_agent=王顾问、reasoning='预算明确高于300万且约定本周末看房,购买意向强';Twilio发出确认短信,Slack销售频道出现热线索告警,1分钟后Gmail发出跟进邮件。做完检查这些
- POST缺email或budget为0的请求收到HTTP 400且数据库不新增任何行
- 合法请求入库后同一行的lead_score、lead_type、assigned_agent、reasoning四列均被回写而非新增重复行
- 构造预算低于100万且留言只问'随便看看'的线索,其lead_type应为COLD且不触发Twilio和Slack
- lead_score>80时Twilio短信、Gmail确认、Slack告警三者都送达,并在Wait结束后收到跟进邮件
- location为未映射城市时assigned_agent落到默认顾问而不是报错中断
容易卡住的地方
- 原文明确Twilio节点的Your_Phone_Number和from值必须替换为有效Twilio发送号码,否则短信步骤报凭据错误
- OpenAI返回偶尔带Markdown代码围栏,JSON解析节点需先做剥离处理,否则回写步骤会中断
- gpt-4o-mini可用性取决于你的OpenAI账号与地区,原文要求自行确认模型可用,不要假设默认可调
- 评分>80才通知意味着提示词评分尺度的改动会直接改变短信和邮件量,改提示词后要用合成数据回归验证
- 练习Wait设1分钟即可验证链路,不要把正式24小时延迟和练习等待混为一谈
- Twilio、OpenAI按用量计费,批量灌测试数据前先用单条验证
本站借助AI整理来源事实,独立编写中文操作指南与示例。示例不代表实际运行结果;来源效果尚未由本站独立复现。付费模板与模型、服务费用分别计算。
- 原文标题
- Qualify and route real estate leads with OpenAI, PostgreSQL, Gmail and Slack
- 原作者
- WeblineIndia
- 原始发布日期
- 2026-09-08T05:52:14.979Z
- 来源
- https://n8n.io/workflows/19365