2026-10-13 · 原文发布日
访客回访自动提醒:Webmetic联动HubSpot
这条n8n流程每小时从Webmetic拉取近7天内访问网站两次以上的公司并去重(每天每公司只提醒一次),按域名在HubSpot查公司并确认存在进行中的交易,取最近更新的那笔,把交易与访问页面上下文交给OpenAI生成简短跟进建议HTML,然后给交易负责人建HubSpot任务并在Microsoft Teams频道发摘要通知,帮销售抓住回访热度。
原文要点
原模板由Yannik Süß发布,核心事实:小时级触发;Webmetic取近7天访问≥2次的公司并按公司每日去重;用域名查HubSpot公司且仅在有进行中交易时继续;取最近更新交易;OpenAI生成简短HTML跟进建议;为负责人建HubSpot任务并向Microsoft Teams频道发摘要。设置项含域名、公司名、销售内容与输出语言。
这次做成什么
把这条“回访提醒”思路落成一套可本地演练的n8n设计:用合成访客数据代替真实Webmetic,跑通触发→筛选→分支→OpenAI文案→任务/通知字段映射;上线前再替换为正式凭据并在原模板核对节点参数。
准备什么
- 一个n8n实例与可编辑工作流,练习阶段不用连接真实客户系统
- Webmetic Visitor Intelligence API key、HubSpot私有应用token、OpenAI凭据、Microsoft Teams授权
- 一份不含真实个人信息的合成公司访问JSON,域名用example.com等保留域
- HubSpot沙盒或测试门户中预置公司、进行中交易与负责人字段
- 明确通知渠道:Teams测试团队/频道,避免发到生产频道
具体怎么做
搭小时触发与去重分支
用Schedule Trigger设为每小时;后接Function/Code节点读入合成visitors,过滤last7DaysVisits>=2,以domain+当天日期生成dedupeKey,已在今日集合则丢弃,否则写入临时去重表。得到候选公司列表。
映射HubSpot查询条件
HTTP/HubSpot节点用domain查Companies;若无公司或openDealsCount<1走Stop分支。继续时按companyId查Deals,条件为open/未关闭,按updatedAt倒序取第一条;映射dealId、dealName、ownerId、amount、lastPage。
生成HTML建议
OpenAI节点输入deal上下文与访问页面,要求只输出80至140字中文HTML片段,含<p><strong>;禁止虚构承诺。输出写入aiHtml,并在Code节点做去标签长度检查,超过160字截断。
建任务并发摘要
HubSpot Task节点关联dealId、companyId、ownerId,subject写“回访跟进:{company}”,body放aiHtml与访问统计;Teams节点发摘要到测试频道,字段为company、domain、visits、dealName、taskId。失败分支把错误写入日志表。
可直接复制的材料
合成访问与HubSpot字段映射数据
本站合成练习数据;example.com/example.org为保留域,金额币种仅为演示,不接真实CRM。
{"visitors":[{"company":"北辰智造示例","domain":"example.com","last7DaysVisits":4,"lastSeenAt":"2026-10-13T09:20:00+08:00","pages":["/pricing","/cases/manufacturing"],"country":"CN"},{"company":"蓝湾零售示例","domain":"example.org","last7DaysVisits":1,"pages":["/"]}],"hubspot":{"companyByDomain":"example.com","openDeals":[{"dealId":"D1001","dealName":"北辰智造-年度订阅","ownerId":"O88","amount":"48000 CNY","updatedAt":"2026-10-12T18:00:00+08:00"}]},"dedupeKeyFormat":"{domain}|{YYYY-MM-DD}"}OpenAI跟进建议提示词
本站独立编写;whatWeSell、language对应原模板设置值,需在n8n里填入实际销售内容与中文。
你是B2B销售助理。根据输入JSON生成一段可直接放进HubSpot任务正文的中文HTML,只输出HTML,不要Markdown。要求:1) 80至140个汉字;2) 用<p>包裹,首句包含<strong>回访热度</strong>;3) 提及最近访问页面和次数;4) 建议下一步动作,但不得承诺折扣、效果或合同;5) 若deal.amount存在,用“预算线索约{amount}”表述;6) 语气克制。输入JSON:{company, domain, last7DaysVisits, pages, dealName, amount, ownerId, whatWeSell, language}。练习用设置值与凭据边界
占位凭据仅用于隔离练习;不要把真实token写进导出的工作流或截图。
{"settings":{"websiteDomain":"example.com","companyName":"本站示例公司","whatWeSell":"演示型SaaS订阅","outputLanguage":"zh-CN"},"credentials":{"webmetic":"TEST_ONLY_API_KEY","hubspot":"TEST_ONLY_PRIVATE_APP_TOKEN","openai":"TEST_ONLY_KEY","teams":"TEST_ONLY_TEAM/CHANNEL"},"routing":{"onNoCompany":"stop","onNoOpenDeal":"stop","onOpenAiInvalidHtml":"repair_once_then_log","onTaskCreated":"post_teams_summary"}}输入与输出示例
本站虚构演示,非OpenAI或原模板实际返回,未声称运行成功。
输入
{"company":"北辰智造示例","domain":"example.com","last7DaysVisits":4,"pages":["/pricing","/cases/manufacturing"],"dealName":"北辰智造-年度订阅","amount":"48000 CNY","ownerId":"O88","whatWeSell":"演示型SaaS订阅","language":"zh-CN"}对应输出
<p><strong>回访热度</strong>:北辰智造示例近7天访问4次,最近查看/pricing与/cases/manufacturing,预算线索约48000 CNY。建议负责人今天以案例页切入点约15分钟回访,确认采购时间线与试用阻碍。</p>做完检查这些
- 仅example.com进入HubSpot分支,example.org因访问次数不足被过滤
- 同一domain在同一日期第二次运行时因dedupeKey命中不重复提醒
- 无进行中交易时流程停止且Teams不出现摘要
- aiHtml只含一个<p>片段,长度80至140汉字且无折扣承诺
- HubSpot任务必须同时关联dealId、companyId、ownerId后再发Teams
容易卡住的地方
- Webmetic近7天与访问次数口径要以其API返回为准,不要用页面浏览量冒充公司访问
- 按域名匹配可能漏掉集团子域或别名域名,需要维护域名别名表
- 最近更新交易不一定是最该跟进交易,金额或阶段优先级要在分支里另设
- OpenAI输出若含脚本或夸大承诺应拦截重生成,不能直接进CRM
- Teams通知频率受每小时触发与去重影响,别把测试频道指到销售生产频道
本站借助AI整理来源事实,独立编写中文操作指南与示例。示例不代表实际运行结果;来源效果尚未由本站独立复现。付费模板与模型、服务费用分别计算。
- 原文标题
- Follow up on open HubSpot deals using Webmetic, OpenAI and Microsoft Teams
- 原作者
- Yannik Süß
- 原始发布日期
- 2026-10-13T06:00:42.481Z
- 来源
- https://n8n.io/workflows/20844