WhatsApp 定时消息设置教程:按客户时区创建单次或周期发送计划,管理暂停与重试
定时消息用于安排一次或周期性的 WhatsApp 发送,例如产品通知、周报或账单提醒。在 More → Scheduled 中设置时间与受众,并通过任务状态核对结果。
本篇内容
概览
定时消息让你把一次 WhatsApp 发送排到未来时间 — 可以只发一次,也可以按重复计划发送。功能位于 More → Scheduled。它适合你想设置后就无需操心的时效性发送:上午 9:00 的产品发布通知、每周一的周报,或每月的账单提醒。
每个计划各自追踪收件人并回报送达结果,因此详情页会显示谁已发送、已送达、已读或失败。WAthink 会显示下一次运行时间,实际发送在后台自动执行 — 即使你未登录也会照常进行。
访问权限:定时消息需要工作区的 Manager 角色或更高权限,且套餐包含 Scheduled messages 功能。套餐还会限制工作区可创建的计划数量。
创建计划
在列表页点击 New schedule,填写编辑器:
- 命名。为计划起一个名称,便于你在报表和列表视图中识别。
- 选择计划类型。选择 Once(单次)或 Recurring(周期)(见单次与周期)。
- 选择发送号码。选择一个号码,或多个号码进行多设备发送(见多设备与受众)。选择器只列出当前工作区已连接的 WhatsApp 协议连接号码,因此不会出现无法使用的旧设备。
- 编写消息。选择消息类型 — Plain 纯文本、Template 模板(可复用消息内容)、Media 媒体附件,或 Location 位置。选择器中列出工作区已保存的全部模板,无需审批。
- 选择受众。把收件人类型设为 Group(分组)、Queue(队列,即过去某条已完成广播的受众),或手动输入的 Numbers(号码)(见收件人)。
- 设置日期、时间和时区。见时区与提前量。周期计划还需设置重复规则和可选的结束日期。
提交后,WAthink 会检查计划,把每位收件人以 pending 加入列表(以便详情页显示谁将收到),记录所使用的发送号码,并注册任务在所选时间触发。随后计划显示为 scheduled(单次)或 running(周期)。
提前量:计划时间必须至少在 2 分钟之后,否则表单会提示 "Schedule must be at least 2 minutes from now."。这给系统留出建立计划的时间,并避免时区边界情况。发送日期本身必须是今天或更晚。
消息类型
选择计划要发送的内容:
| 类型 | 发送内容 |
|---|---|
| Plain(纯文本) | 一条自由文本消息。 |
| Template(模板) | 一条已保存的模板(可复用消息内容)— 正文、页眉、页脚、按钮与轮播,触发时按收件人填充联系人信息。按账号授权与发送条件执行。 |
| Media(媒体) | 上传的图片、视频或文档(最大 50 MB),可带说明文字(caption)。 |
| Location(位置) | 地图定位点(需要纬度和经度)。 |
发送模板消息时,WAthink 会在每次运行前为每位收件人构建完整消息,因此按钮、轮播与媒体页眉都能正确发送,并同样执行发送前的安全预检(内容有效、媒体可达)。
收件人
设置收件人类型以确定唯一的名单来源:
| 类型 | 来源 | 发送时是否刷新? |
|---|---|---|
| Group(分组) | 一个或多个联系人分组。 | 会(单号码)— 任务触发时会重新检查分组中的成员,因此之后新增的联系人也会被包含。 |
| Queue(队列) | 一条或多条过去已完成的广播;它们原本的收件人会被重新作为目标。选择器最多列出 50 条最近完成的发送。 | 取自每条广播的收件人列表。 |
| Number(号码) | 直接输入的手机号码(每个 8–20 个字符)。 | 固定为输入的列表。 |
如果所选收件人合计没有任何有效号码,表单会提示 "Selected recipients are empty."。每个号码都会尽可能与工作区联系人匹配,以便详情页显示姓名。
单次与周期
计划分为两种类型:
- Once(单次) — 在你设置的日期和时间触发一次,然后完成。
- Recurring(周期) — 按规则重复,并在两次运行之间保持活动。可配置:
- 重复间隔:每日、每周或每月。
- 重复频率:在该间隔内的重复次数,例如每 2 周(1–365)。
- 星期几:每周计划必须设置 — 选择在哪些工作日触发。
- 结束日期:可选;过了该日期计划停止并标记为已完成。
每次周期运行结束后,WAthink 会按计划自身的时区计算下一次运行时间(每日加上所选天数,每周移到下一个允许的工作日,每月加上所选月数)。计划会一直运行,直到到达结束日期或没有更多运行,此时即完成。
时区与提前量
每个计划都绑定到特定的时区(例如 Asia/Kolkata 或 America/New York),默认预选你的工作区时区。你输入的日期和时间都按该时区解读,因此:
- 设为 "9:00 AM Asia/Kolkata" 的发送始终在本地时间上午 9:00 触发,无论服务器位于何处。
- 周期运行使用计划自身的时区,因此每日和每周运行每次都落在相同的时钟时间。
- 夏令时变化会被正确处理,时钟上的时间保持不变。
如上所述,时间必须至少在 2 分钟之后。
慎重选择时区。选错时区(或选了自己的而不是受众的)是计划在意料之外的时间触发的最常见原因。保存前请务必复核。
计划与收件人状态
列表页按状态汇总计划;详情页显示逐收件人的结果,并汇总到总计中。
| 状态 | 含义 |
|---|---|
| scheduled(已排期) | 单次计划(或周期计划的下一次运行)正在等待触发。 |
| running(运行中) | 已激活并等待下一个时间槽的周期计划。 |
| paused(已暂停) | 暂时停止;恢复前不会触发。 |
| completed(已完成) | 单次计划已触发,或周期计划已到达结束时间,不会再运行。 |
| failed(失败) | 运行无法执行;界面会显示原因。 |
| cancelled(已取消) | 在触发前被你停止。 |
每位收件人都像广播一样独立追踪为 pending、sent、delivered、read 或 failed。送达更新会去重并核对,因此计数保持准确。钱包积分只针对新发送扣费,因此重复或乱序的更新绝不会重复扣费。
暂停、恢复、取消、立即运行与编辑
在列表页或详情页,你可以在计划的整个生命周期内对它进行操作。即使后台辅助服务短暂繁忙,仪表盘中的状态也会立即更新。
| 操作 | 效果 | 可用状态 |
|---|---|---|
| Pause(暂停) | 停止计划触发;状态变为 paused。 | scheduled / running |
| Resume(恢复) | 把暂停的计划重新激活为 scheduled(单次)或 running(周期)。 | paused |
| Run now(立即运行) | 在下一次检查时触发计划(约 60 秒内),忽略设定的时间。 | 除 completed / cancelled 外的任意状态 |
| Cancel(取消) | 彻底停止未来的计划;状态变为 cancelled。 | 除 completed / cancelled / failed 外的任意状态 |
| Edit(编辑) | 更新名称、消息、日期、时间或时区。任何时间字段变化都会重新计算下一次运行时间。 | 任意未结束状态 |
结束后即锁定编辑。处于 completed、cancelled 或 failed 的计划无法编辑 — 请新建一个计划,或对失败的计划使用 Retry(见下文)。
重试失败的计划
如果计划以 failed 结束,打开重试操作并选择新的日期、时间和时区(同样至少 2 分钟之后)。随后 WAthink 会:
- 取消失败运行遗留的任务,避免同一批收件人被发送两次。
- 重置计划为 scheduled,清除旧的失败详情,并把运行计数器(包括计费计数器)归零。
- 重置每位收件人为 pending,确保干净地重新运行。
- 重新注册任务,在新的时间触发。
重试仅适用于 failed 状态的计划 — 其它状态请改用 Run now。
多设备与受众
选择两个或更多号码会把计划拆分为每个号码一个计划,并把受众平均分配到各号码。为了正确拆分,多设备发送时分组与队列受众会在创建计划时转换为固定的号码列表 — 否则每个号码都会重新展开同一分组,导致每位联系人每个号码各收到一份。单号码计划保留分组或队列的引用,因此成员可以在发送时刷新。
每个号码的计划只持有它那份收件人。保存后,你会看到在多少个号码上创建了多少个计划。
发送如何触发与重启恢复
发送在辅助服务(连接运行服务)中执行,因此即使无人登录,计划也会准时触发。有两点值得了解:
- Run now 的时机:"Run now" 会在下一次检查时触发计划,约在 60 秒内。
- 重启恢复:如果辅助服务重启,它会重新加载所有活动(scheduled 或 running)计划并重新安排。此时会重新检查收件人(因此已增长的分组也会被纳入);如果计划所有者连一条消息的余额都负担不起,该计划会被跳过 — 因此没有积分的钱包绝不会开始发送。
删除计划
你可以从列表页删除计划。删除会先取消已注册的任务 — 因此被删除的计划绝不会发出多余消息 — 然后移除计划及上传的媒体文件。实际上,删除最常用于清理已经 completed、cancelled 或 failed 的计划;对于活动中的计划,通常应先使用 Pause 或 Cancel,这样操作可以撤销。
防封号与发送节奏
定时发送与 WAthink 的其它发送一样,受管理员在 Admin → Settings → System Message → Sender pacing 中设置的安全控制节流:
| 控制项 | 默认值 | 效果 |
|---|---|---|
| 消息间隔(Message gap) | 3 秒 | 两条消息之间的延迟,并在 ±20% 范围内随机浮动。 |
| 批大小(Batch size) | 50 位收件人 | 开启分批后,每发送多少条消息暂停一次。 |
| 批次间隔(Batch gap) | 5 分钟 | 批次之间的冷却时间,同样在 ±20% 范围内随机浮动。 |
| 每日发送上限 | 4000 / 天 / 号码 | 单个号码每天最多可发送的消息数(每日重置)。 |
周期发送请务必谨慎。周期计划每次触发都会重新发送 — 只面向已订阅(opt-in)的受众,保持内容新鲜且相关,并设置结束日期,避免被遗忘的计划永远给人发消息。反复发送未经许可的消息,是 WhatsApp 号码被封的快速路径。另外,计划在固定的本地时间触发,时区选错可能让消息在受众的半夜送达 — 这会引发投诉,并提高封号风险。请确认时区与你要发送的对象一致。