WhatsApp 流程(可视化构建器)操作指南:配置触发器、多级分支、AI 节点与运行日志排查
流程是引导 WhatsApp 对话一步步前进的可视化自动化:发送消息、提问、按回答分支、等待、调用 AI 模型、预约、向 Google Sheets 写入一行、销售商品等等。在导航的流程(Flows)下打开,用拖拽式画布搭建。
本篇内容
概览
流程是引导 WhatsApp 对话一步步前进的可视化自动化:发送消息、提问、按回答分支、等待、调用 AI 模型、预约、向 Google Sheets 写入一行、销售商品等等。在导航的流程(Flows)下打开,用拖拽式画布搭建。
一个流程由若干步骤(称为节点)组成,节点之间用连线表示路径。有且仅有一个节点是触发器——决定哪些联系人、在什么时机进入流程的入口。你在画布上设计流程;保存后即被安全存储;运行时 WAthink 会逐步执行,并通过工作区当前已连接的 WhatsApp 协议连接号码发送对应的 WhatsApp 消息。
核心概念
- 草稿 → 已发布 → 已暂停:新流程以草稿开始。发布后变为已发布(生效运行)。关闭已发布流程会变为已暂停——停止运行但保留设计。列表会显示每个流程为已发布、已暂停或草稿。
- 触发器节点:每个流程有且仅有一个,且始终是第一个节点。每次保存都会记录触发器,因此当标签或分组事件发生时,WAthink 无需打开整个流程就能快速找到应启动的流程。
- 变量与合并标签:提问节点会把客户的回答保存到具名变量。之后可在任意消息中用
{{var}}标签复用(例如谢谢 {{name}}!)。发送消息时 WAthink 会填入保存的值。 - 分支:部分节点会拆分路径。条件有 yes / no;预约有 booked / no slots;商店节点有 purchased / abandoned;多选项节点(按钮、列表、投票)每个选项一个分支。把每个分支接到不同的下一步。
- 订阅者:每个流经流程的联系人都是一个订阅者,状态为 active、paused、completed 或 failed。你可以按流程查看并暂停/恢复他们。
- 按工作区与连接隔离:流程属于工作区,列表显示当前工作区已连接 WhatsApp 号码下的流程。任何具有管理员(Admin)角色的队友都可以创建和管理流程。
触发器
触发器的类型决定联系人如何进入流程。常用类型如下:
| 触发器类型 | 触发时机 |
|---|---|
| 关键词 | 客户发来的 WhatsApp 消息匹配你设置的关键词之一(如 hi, hello, start)。也可以选择任意消息作为兜底路由——仅在没有任何关键词流程匹配时运行。 |
| 添加标签 | 联系人被添加指定标签时(手动、由规则、或另一个流程的标签节点)。 |
| 加入分组 | 联系人被加入指定联系人分组时。 |
| 手动加入 | 你在流程的加入(Enroll)操作中手动选择联系人或分组加入。 |
| 新联系人 | 工作区新建联系人时自动触发,无需额外配置。 |
| 重新订阅 | 联系人重新订阅(opt-in)时触发,无需额外配置。 |
| 下单 | 商店产生新订单时触发;订单客户会匹配到已保存的联系人后加入流程。 |
| 商机阶段变更 | 商机被移入你指定的管线阶段时,其关联联系人加入流程。 |
| 挂机(Away 模式) | 工作区开启挂机模式期间,任意入站消息触发;每位联系人只加入一次。可在自动回复页面切换挂机模式。 |
| 非营业时间 | 在工作区营业时间之外收到入站消息时触发;每位联系人只加入一次。营业时间在工作区设置中配置。 |
设置触发器
- 打开流程并点击触发器节点(始终位于画布最前)。
- 在侧边面板选择类型:关键词、添加标签、加入分组、手动加入、新联系人、重新订阅、下单、商机阶段变更、挂机或非营业时间。
- 关键词:输入逗号分隔的关键词列表;选择「任意消息」可作为兜底路由。
- 添加标签 / 加入分组:从下拉框选择标签或分组(列表来自工作区中真实的标签与分组,直接选择即可)。
- 商机阶段变更:选择要触发流程的管线阶段。
- 可选:绑定设备(见 设备绑定),决定由哪个已连接号码启动流程。
- 保存流程。之后重命名标签或修改触发器类型时,再次保存即可保持同步。
匹配方式。当标签被添加、联系人加入分组、新建联系人、重新订阅、产生订单或商机进入阶段时,WAthink 会查找触发器匹配且处于已发布且启用状态的流程,并把联系人加入每个匹配流程。关键词触发器针对入站消息匹配;挂机与非营业时间触发器在条件满足期间对任意入站消息触发,且每位联系人只加入一次。草稿或已暂停的流程不会加入任何联系人。
节点参考
节点面板按用途分组。下表列出你可以使用的节点。「分支」列说明可以从该节点继续接线的路径。
消息类节点
| 节点 | 作用 | 分支 |
|---|---|---|
| 消息 | 发送单条文本消息(可包含 {{var}} 个性化)。 | 一条后续路径 |
| 序列 | 按顺序发送多条回复——文本、图片、视频、音频或文档——作为一个节点,每条之间有短暂停顿。 | 一条后续路径 |
| 媒体 | 发送一份图片、视频、音频或文档,可带说明文字。 | 一条后续路径 |
| 模板 | 发送一条保存好的模板(可复用消息内容),正文、变量、媒体与按钮按保存的内容填充。 | 含快捷回复按钮时每个按钮一个分支,否则一条后续路径 |
| CTA | 操作按钮——最多 3 个,可组合「访问网站(链接)」「拨打电话」与「复制代码」。 | 一条后续路径 |
| 位置 | 发送位置(名称、地址、坐标)。 | 一条后续路径 |
| 投票 | 发送一个含 2–12 个选项的投票,可允许多选。 | 每个选项一个分支 |
输入与分支节点
| 节点 | 作用 | 分支 |
|---|---|---|
| 提问 | 提出问题并把输入的回答保存到变量。可要求回答必须是有效的邮箱、电话或数字。若列出了预期答案,回复会沿匹配的分支继续。 | 每个预期答案一个分支,或一条后续路径 |
| 按钮 | 回复按钮(最多 3 个)。每个选项一个分支,便于对点击作出反应。 | 每个选项一个分支 |
| 列表 | 交互式列表(最多 10 行)。每个选项一个分支,可设置「打开列表」按钮的文字。 | 每个选项一个分支 |
| 条件 | 基于一条或多条变量规则(AND/OR 组合)拆分路径。 | yes / no |
| 延迟 | 在继续前等待设定时长(秒、分钟、小时或天)。 | 一条后续路径 |
条件检查:等于、不等于、包含、不包含、大于、小于与为空。文本比较忽略大小写与首尾空格;大于 / 小于把两侧都当作数字。使用多条规则时,由你选择它们之间的 AND/OR;流程采用第一个匹配的结果。
AI、动作与集成
| 节点 | 作用 | 分支 |
|---|---|---|
| AI 助手 | 向 AI 模型提问(以对话为上下文),然后保存并发送回复。你只能选择管理员已启用的提供商。 | 一条后续路径 |
| 聊天机器人 | 把对话交给你的某个 AI 客服助手,进行一段独立的对话。 | 一条后续路径 |
| 标签 | 为联系人添加或移除标签。可使用已有标签,或输入新名称创建。 | 一条后续路径 |
| 分配客服 | 把对话交给某个团队队列(或指定客服),并附内部备注。 | 一条后续路径 |
| Webhook | 通过互联网调用另一个系统(请求中可插入变量),并可选择把响应保存到变量。 | 一条后续路径 |
| 子流程 | 运行另一个流程,结束后返回并继续当前流程。 | 一条后续路径 |
| 预约 | 以列表形式提供可用时段,把所选时段预约到日历并发送确认。 | booked / no slots |
| Google Meet | 创建 Google Meet 链接并在流程中发送,可设置会议开始前的提前量。 | 一条后续路径 |
| Google Sheets | 向电子表格追加一行,或按匹配值查找一行并把单元格保存到变量。 | 一条后续路径 |
| Google Docs | 复制模板文档、填入占位符、以「拿到链接的人均可查看」方式共享并发送链接。 | 一条后续路径 |
| Google Form | 发送 Google 表单链接并暂停;表单提交后流程继续。 | submitted / timed out(提交或超时) |
| 商机(CRM) | 创建商机,或把商机移动到指定管线阶段(可带金额与负责人),并把商机 ID 保存到变量。 | created / moved / error |
| WhatsApp 商店 / WooCommerce / Shopify | 发送商品列表或目录并等待购买。客户购买后走 purchased 分支;超过等待时间仍未购买则走 abandoned 分支。 | purchased / abandoned |
| 结束 | 停止流程的该条分支。 | — |
如果某个节点无法被识别(例如未来版本变更后),它会被跳过并给出警告,而不会中断整个流程。
Google 节点需要绑定 Google 账户。使用 Sheets、Docs、Form 或 Meet 前,请先连接工作区的 Google 账户(与日历、预约共用同一连接)。
构建与连接流程
- 进入流程并点击创建流程(或打开已有流程编辑)。
- 为流程填写名称与可选的分类。
- 先设置触发器节点——选择类型,并按需填写关键词、标签、分组或阶段(见 设置触发器)。
- 从节点面板把节点拖到画布上。布局从左到右阅读。
- 连接节点:从节点的输出拖到下一个节点。分支节点有多个输出——把每个分支接到不同的下一步。条件接 yes 与 no;按钮/列表每个选项接一个;商店节点接 purchased 与 abandoned。
- 打开每个节点填写设置。在任意消息中使用
{{var}}标签复用前面提问节点捕获的回答。 - 每条分支都以结束节点(或最后一条消息)收尾。未连接的分支会直接结束流程。
- 点击保存。流程被存储,可以运行。
- 点击发布使其生效。之后可用暂停停止加入新联系人,而不删除流程。
变量提示。提问节点保存到你指定的变量(默认answer);按钮/列表默认保存到choice;AI 助手保存到reply;Webhook 把响应保存到response。起清晰的变量名并复用,例如{{name}}、{{choice}}。
用 AI 构建
构建器可以根据一段自然语言描述生成起始流程。描述你的自动化(例如「问候客户、询问姓名,然后提供一组服务并预约」),WAthink 会在画布上起草完整的流程——包括节点与连线——供你继续调整。
- 打开构建器并启动 AI 生成。
- 选择提供商与模型——只能选择管理员已启用的选项。
- 输入描述(最多 2000 个字符)并生成。
- 检查并编辑结果,然后照常保存与发布。
工作原理:AI 被要求构建一个干净的流程——先放一个触发器、每条分支都完成、从左到右布局、使用 {{var}} 标签、不含表情符号——结果在出现在画布前会被限制在合理规模(最多 20 个节点)。如果提供商不可用或 AI 返回不可用的结果,会给出明确错误。
始终检查生成的流程。AI 产出的是起点。发布前请核对触发器、文案、每个分支以及设备/标签/分组选择,并先用自己的号码测试。
设备绑定
流程从工作区的某个已连接号码发送。你可以在触发器节点上指定号码,或留空以使用工作区默认号码。
- 号码选择器只列出本工作区已配对且处于活动状态的 WhatsApp 协议连接号码。
- 如果指定了号码,流程会使用它——前提是该号码仍处于活动状态且属于当前工作区。
- 如果未指定(或指定的号码已不存在),流程会使用工作区的第一个活动号码。
- 如果流程尝试启动时没有任何可用号码,订阅者会被标记为 failed,原因为 "No connected device for this workspace"——请连接号码后重新加入该联系人。
Google、商店与媒体选择器
- Google 选择器。Google Sheets / Docs / Form 节点允许你从已连接的 Google 账户中选择真实的电子表格、模板文档或表单,并把其中的占位符或列与流程变量对应。这些节点需要先连接工作区的 Google 账户——与日历、预约共用同一连接。
- 商店选择器。WhatsApp 商店 / WooCommerce / Shopify 节点允许你先选择一个商店,再从其中挑选商品。商品详情(名称、图片、价格)会随节点保存,因此卡片可以立即显示。旧流程继续可用——其中的商品会自动升级。
- 媒体上传。媒体与序列节点接受图片、视频、音频与文档文件。上传上限为 50 MB。
加入与订阅者
- 关键词 / 标签 / 分组流程在匹配事件发生时自动加入联系人——但仅在流程已发布且启用时。
- 手动加入流程由你操作:打开流程,选择联系人或分组并加入。流程必须处于启用状态。已在运行中的同一联系人不会重复加入;此前失败的联系人会被重试。
- 订阅者状态:active、paused、completed、failed。流程详情面板列出订阅者及其状态、加入时间与失败原因;流程列表显示每个流程的 active/completed/failed 数量。
- 暂停 / 恢复订阅者:暂停会在你让该联系人保持静默期间,阻止其被标签/分组触发器再次加入;它不会停止已经在进行的对话。恢复会清除暂停与失败状态,但有意不重新启动流程(避免对话中途的联系人重复收到消息)。
防封号。流程发送的是真实的 WhatsApp 消息。在 WhatsApp 协议连接下,向大量冷淡号码激进自动发送是导致封号的最快路径。保持合理的延迟,只加入已订阅的联系人,避免向大受众群发完全相同的消息。新流程先用自己的号码测试再上线。
不要用真实联系人做线上发送测试。已发布且连接正常的流程会真的给人发消息。测试时请使用你自己控制的临时测试联系人——不要为了「看看能不能跑」而加入真实受众。
流程的运行方式
当联系人被加入后,WAthink 会为该客户启动一段实时对话,并逐步执行:
- 逐步执行。流程从第一个节点开始,沿连线前进。每个节点之后,按客户回复选择的分支执行下一个节点。分支没有连接时,该路径结束。
- 读取回复。对于按钮、列表、投票与带选项的提问,客户的回复会选择分支。WhatsApp 的回复可能有多种形式,WAthink 都能识别,因此无论客户用什么设备或运营商,点击都能被正确路由。直接输入数字(「1」「2」……)也可以作为兜底。
- 1 小时等待窗口。等待客户的节点(列表、按钮、提问、投票、商店)会把对话保持打开最多 1 小时。超时后闲置对话会被清理——既够人阅读和点击,又不会堆积。
- 延迟。延迟节点只是等待你设定的时间再继续。
- 商店等待。商店节点会暂停你设置的等待时间。如果客户购买,流程走 purchased 分支;如果时间先到,则走 abandoned。等待期间对话不会取消——迟到的回复仍可能生成结账链接。
- 预约。预约节点获取可用时段,以列表发送,把所选时段预约到日历,发送确认,并走 booked 分支(如果没有空档或无法匹配回复,则走 no slots)。
- 品牌页脚。如果你的套餐会附加品牌页脚,它会自动添加到外发文本与交互消息(模板除外)。
运行记录与重试
在流程 → 分析中查看每个流程的运行情况与失败详情。页面从统一的执行历史中生成三种视图:
- 运行记录:每次流程执行(即一个订阅者)一行,显示状态(active、paused、completed、failed)、加入/完成/失败时间、失败原因与重试次数;可按流程、状态与日期范围筛选,并按联系人、号码、流程名或失败原因搜索。
- 错误日志:把失败按原因归组,显示每组数量、首次与最近出现时间、受影响的流程,并可对某一组失败批量重试。
- 重试记录:每次重试的结果(queued、succeeded、failed)、重试前后的状态与失败原因,以及触发重试的人(系统触发时为空)。
单个失败运行可在运行记录中直接重试。批量重试必须明确指定运行 ID——没有「全部重试」;单批最多 50 条,同一运行两次重试之间需间隔 30 秒,避免误点造成重复发送。重试会把联系人重新入组并重新启动流程,请先修复失败原因(连接、号码或联系人信息)。
管理流程
- 复制:以全新草稿复制流程(标题带 " (Copy)"),便于在不影响线上版本的情况下迭代。
- 暂停 / 恢复:已暂停的流程停止加入新联系人,但保留设计。
- 发布 / 取消发布:发布使流程生效;取消发布把它退回草稿。
- 删除:移除流程。流程属于你的工作区;同一工作区的队友可以管理它们。
- 筛选:列表支持按状态(已发布 / 已暂停 / 草稿)、分类与名称筛选,并突出显示最常用的流程。
- 套餐限制:套餐决定你可以创建多少流程。编辑已有流程不占用额度。
故障排查
| 现象 | 可能原因与处理 |
|---|---|
| 标签/分组触发器没有加入联系人 | 流程必须同时处于已发布且启用状态,且触发器的标签/分组匹配。修改触发器后请再次保存流程。 |
| 订阅者显示 failed——"No connected device" | 流程尝试启动时工作区没有可用号码。连接一个号码(或在触发器上指定号码)后重新加入。 |
| 订阅者失败——"Contact has no usable mobile number" | 联系人没有有效手机号。修正联系人后重新加入。 |
| 订阅者失败——连接 / 服务器错误 | 流程引擎无法访问。请在管理设置中确认辅助服务(连接运行服务)已配置并正在运行。 |
| "abandoned" 分支从不触发 | 请在商店节点上连接 abandoned 分支——未连接的分支会直接结束流程。同时确认已设置等待时间。 |
| AI 生成 / AI 节点失败 | 提供商必须由管理员启用。选择已启用的提供商/模型,或联系管理员。如果提示 "no workspace",请刷新页面。 |
| 流程在对话中途超时 | 等待回复的节点给客户 1 小时。若未及时回复,对话会结束——需要重新启动流程。 |
| 无法再创建流程 | 已达到套餐的流程数量上限。删除不再使用的流程或升级套餐。 |
| 运行失败后如何恢复 | 打开流程 → 分析查看失败原因,修复后对单个运行重试,或对同一原因的失败批量重试(见 运行记录与重试)。 |