> For AI agents: the complete documentation index is available at /llms.txt, the full documentation bundle is available at /llms-full.txt.

# Lead 联系节奏设计

系统根据**联系节奏**为每个 Lead 自动计算**联系时间基准**，通过**任务提醒**驱动员工执行，以**短信模板**支持内容发送，并用**预警策略**监控执行质量。店铺可在系统默认值基础上自定义参数。

| 模块        | 本质                 | 层次                    |
| --------- | ------------------ | --------------------- |
| §1 联系节奏   | 核心节奏（per Lead）     | **决策层** — 决定"做什么、何时做" |
| §2 联系时间基准 | §1 的计算输出，后续一切度量的锚点 | **基准层** — 决定"什么时候该完成" |
| §3 提醒机制   | 倒计时展示 + 主动推送通知     | **调度层** — 负责"提醒员工去做"  |
| §4 预警策略   | 全局监控规则（店铺级）        | **监控层** — 负责"没做好怎么办"  |
| §5 短信模板   | 短信渠道的内容模板          | **工具层** — 负责"短信怎么写"   |

***

## 1. 联系节奏（Contact Cadence）

### 1.1 节奏的两个维度

联系节奏不是一套固定规则，而是根据以下两个维度动态调整：

| 维度                  | 说明                                    | 影响        |
| ------------------- | ------------------------------------- | --------- |
| **温度（Temperature）** | Hot / Warm / Cold，反映跟进紧迫度             | 决定联系频率和力度 |
| **阶段（Stage）**       | 首次触达前（Pre-Contact）/ 跟进中（Post-Contact） | 决定联系方式和目标 |

::: info 两个维度的本质区别

- **温度**回答的是"有多紧迫"——Hot 意味着全力以赴，Warm 意味着持续推进，Cold 意味着停止投入
- **阶段**回答的是"该做什么"——首次触达前的目标是"联系上这个人"，跟进中的目标是"推进转化"

:::

#### 1.1.1 首次触达前联系节奏（Pre-Contact Cadence）

首次触达前节奏适用于 **Lead 进入系统后、尚未成功接通** 的阶段。目标是**联系上客户**。

**(1) Hot 阶段（Day 0 \~ Day 1）**

这是转化的黄金窗口。Lead 在提交后 5 分钟内接到电话的转化率是 30 分钟后的 21 倍。

| 次数    | 时间节点               | 渠道      | 说明              |
| ----- | ------------------ | ------- | --------------- |
| 第 1 次 | Lead 进入后 **5 分钟内** | 电话      | 趁热打铁，客户还在"冲动期"  |
| 第 2 次 | 首次未响应后 **2 小时**    | 电话      | 换时段重试           |
| 第 3 次 | 当天下班前              | 电话 + 短信 | 发短信建立认知，为次日致电铺垫 |
| 第 4 次 | Day 1（换时段）         | 电话      | Hot 窗口最后一搏      |

::: tip Hot 阶段核心原则

- 每次未响应后**换时段**重试，避免在同一时段反复拨打
- 第 3 次起加入短信渠道，降低客户对陌生来电的警惕
- 非工作时间进入的 Lead，在次日最早可联系时段发起首次联系

:::
**(2) Warm 阶段（Day 2 \~ Day 5）**

热度已过，但仍在可转化窗口内。此阶段降低频率，增加渠道多样性。

| 次数    | 时间节点       | 渠道      | 说明            |
| ----- | ---------- | ------- | ------------- |
| 第 5 次 | Day 2      | 电话 + 短信 | 继续尝试接通，短信辅助   |
| 第 6 次 | Day 3（换时段） | 电话      | 覆盖不同时段        |
| 第 7 次 | Day 4      | 短信      | 以短信为主，保持存在感   |
| 第 8 次 | Day 5      | 电话      | Warm 窗口最后一次尝试 |

::: info Warm 阶段注意事项

- 联系频率从 Hot 的"每天 2-3 次"降至"每天 1 次"
- 系统应根据前几次未响应的时段分析，**自动推荐下次最佳联系时段**
- 如果客户在 Warm 阶段回复了短信但未接电话，优先使用短信渠道继续沟通

:::
**(3) Cold 阶段（Day 5 之后）**

跟进窗口关闭，系统停止主动联系。除非发生升温事件（详见 [Lead Temperature §2.2](/product-design/future-plans/lead-temperature.md#22-自动升温事件驱动)），否则系统自动判定最终状态。

#### 1.1.2 跟进联系节奏（Post-Contact Cadence）

跟进节奏适用于 **已成功触达但未成交** 的客户。目标是**推进转化**。

跟进节奏与首次触达节奏的根本区别：**你已经和客户沟通过**，所以每次联系都应引用上次沟通内容，进行个性化跟进。

**(1) Hot 阶段跟进**

客户刚进入跟进流程，或因升温事件重新变 Hot，此时跟进最紧迫。

**按跟进场景区分：**

\=== "试课后未成交（最紧迫）"

```
| 时间点 | 动作 | 渠道 |
|--------|------|------|
| 试课后 2-4 小时 | 感谢短信 + 回顾体验亮点 | 短信 |
| 试课后 24 小时内 | 第一次跟进，了解感受、解决顾虑 | 电话 |
| Day 2 | 未成交则提供限时优惠或额外体验 | 电话/短信 |

::: warning 试课后 24 小时是黄金窗口

客户对体验的记忆和热情快速消退。超过 48 小时未跟进，成交率大幅下降。

:::
```

\=== "到店未试课"

```
| 时间点 | 动作 | 渠道 |
|--------|------|------|
| 离店后 2-4 小时 | 感谢到店 + 询问未试课原因 | 短信 |
| Day 1 | 针对顾虑回应，提供灵活试课安排 | 电话 |
| Day 2 | 提供免费体验课或低门槛方案 | 电话/短信 |
```

\=== "预约后未到店（爽约）"

```
| 时间点 | 动作 | 渠道 |
|--------|------|------|
| 爽约当天 | 友好询问原因，重新安排时间 | 电话 |
| Day 1 | 未联系上则发短信确认新时间 | 短信 |
| Day 2 | 再次确认，如无回应则降级 | 电话/短信 |
```

\=== "触达后未预约"

```
| 时间点 | 动作 | 渠道 |
|--------|------|------|
| 首次沟通后 24 小时 | 发送客户感兴趣的信息（课程、环境、价格方案） | 短信 |
| Day 2 | 针对上次提到的具体顾虑回应 | 电话 |
| Day 3 | 提出明确预约建议（"这周六下午 3 点有体验课，给您留个位？"） | 电话/短信 |
```

**(2) Warm 阶段跟进**

热度下降，降低跟进频率，但保持有节奏的推进。

| 维度          | 策略                  |
| ----------- | ------------------- |
| **频率**      | 每 2-3 天联系一次         |
| **渠道**      | 电话 + 短信交替，给客户空间     |
| **内容**      | 个性化（引用上次沟通细节），不重复推销 |
| **每次未响应重试** | 最多 2 次（间隔 1 天），不轰炸  |

::: info Warm 跟进的关键

Warm 阶段跟进要避免两个极端：**过于频繁**造成骚扰，**过于稀疏**失去机会。每次跟进都应有新的价值信息（新课程、优惠活动、客户关心的内容），而不是简单重复"考虑得怎么样了"。

:::
**(3) Cold 阶段跟进**

跟进窗口关闭。系统根据员工执行记录自动判定最终状态（详见 [Lead Temperature §3](/product-design/future-plans/lead-temperature.md#3-cold-之后系统自动判定的三个终态)）。除非发生升温事件，否则不再主动联系。

#### 1.1.3 联系节奏总览表

| 温度      | 阶段    | 联系频率        | 单日最大联系次数 | 渠道        | 目标     |
| ------- | ----- | ----------- | -------- | --------- | ------ |
| 🔥 Hot  | 首次触达前 | 每 2-4 小时    | 3 次      | 电话为主，短信辅助 | 联系上客户  |
| 🔥 Hot  | 跟进中   | 每天 1-2 次    | 2 次      | 电话 + 短信   | 推进转化   |
| ☀️ Warm | 首次触达前 | 每天 1 次      | 1 次      | 电话 + 短信交替 | 联系上客户  |
| ☀️ Warm | 跟进中   | 每 2-3 天 1 次 | 1 次      | 电话 + 短信交替 | 推进转化   |
| ❄️ Cold | 任何阶段  | 停止          | 0        | —         | 系统自动判定 |

#### 1.1.4 下一期参考：按 Lead Temperature 逐步降频

下面是一套外部业务参考方案。它以 **Lead 创建后的时间**作为主要温度依据，随着 Lead 从 Red Hot 逐步变为 Dormant，强制联系频率持续降低。

![Lead Temperature 与 Follow-up Cadence 参考表](/images/OTF/lead-temperature-follow-up-cadence.svg)

| 温度           | 适用 Lead Status                                               | Lead 创建后时间                  | 累计联系次数 | Follow-up Cadence                      |
| ------------ | ------------------------------------------------------------ | --------------------------- | ------ | -------------------------------------- |
| **Red Hot**  | Lead                                                         | 0-3 天                       | 5 次    | Day 1 联系 3 次、Day 2 联系 1 次、Day 3 联系 1 次 |
| **Red Hot**  | Appt Booked / Missed Guest / No Show                         | 0-3 天                       | 5 次    | 每天强制联系，直到完成转化                          |
| **Hot**      | Lead / Appt Booked / Missed Guest / No Show                  | 4-21 天                      | 14 次   | 每隔一天强制联系一次                             |
| **Warm**     | Lead / Appt Booked / Missed Guest / No Show                  | 22-60 天                     | 20 次   | 每 3 天强制联系一次                            |
| **Lukewarm** | Lead / Appt Booked / Missed Guest / No Show                  | 61-90 天                     | 25 次   | 每周强制联系一次                               |
| **Cold**     | Lead / Appt Booked / Missed Guest / No Show                  | 91 天以上                      | 30 次   | 不再强制联系                                 |
| **Dormant**  | Do Not Contact / Lead / Appt Booked / Missed Guest / No Show | 91 天以上，或状态变为 Do Not Contact | 31 次以上 | 不再强制联系                                 |

这套方案表达的核心流程是：

```text
Red Hot（0-3 天）
  → Hot（4-21 天）
  → Warm（22-60 天）
  → Lukewarm（61-90 天）
  → Cold（91 天以上）
  → Dormant（停止投入）
```

::: info 当前实现与下一期范围

- **当前已实现**：新 Lead 的首次 `Lead Outreach` 需要在 **15 分钟 SLA** 内完成。
- **当前尚未实现**：首次 Outreach 之后，没有根据 Lead Temperature 自动创建的周期性 Follow-up Cadence。
- **下一期可以增加**：温度自动变化、后续 `next_action` 调度、累计联系次数约束，以及 Cold / Dormant 的停止规则。

:::
::: warning 进入实施前需要确认

- 图中的 `# of Contacts` 暂按**累计联系次数目标或上限**理解，但原始规则没有明确它是最小值、目标值还是硬上限。
- `Forced contact` 应理解为系统创建或推进员工任务，**不代表系统自动给客户打电话或发短信**。
- `Do Not Contact` 必须作为即时停止条件，不应等待 Lead 达到 91 天或 31 次联系。
- Booked、Converted、明确拒绝和退订等状态需要定义独立的退出条件，避免机械跟进。
- 所有节奏仍必须受静默时间、客户时区和单日最大联系次数约束。

:::

### 1.2 静默时间（Quiet Hours）

静默时间是**所有联系节奏的前置约束**——无论温度多高、任务多紧迫，都不得在静默时间内向客户发起电话或短信。

#### 1.2.1 法律合规要求（TCPA）

美国联邦《电话消费者保护法》（TCPA）明确规定：营销类电话和短信**只允许在收件人当地时间 8:00 AM \~ 9:00 PM 之间**发起。违规每次可被处以 $500\~$1,500 罚款。

::: warning 时区以客户所在地为准

静默时间按**客户的本地时区**计算，而非门店所在时区。系统必须根据客户手机号的区号或地址推算其所在时区，确保合规。

:::

#### 1.2.2 系统静默规则

| 静默类型     | 默认规则                       | 说明               |
| -------- | -------------------------- | ---------------- |
| **夜间静默** | 9:00 PM \~ 8:00 AM（客户当地时间） | TCPA 法律要求，系统硬性约束 |

#### 1.2.3 静默时间与联系节奏的交互

当联系节奏要求的时间点落在静默时间内时，系统自动延迟到下一个可联系时段：

```
节奏要求：Lead 进入后 5 分钟内联系
Lead 进入时间：周二 10:30 PM
     │
     ▼  当前处于夜间静默（9 PM ~ 8 AM）
系统行为：暂存任务，次日 8:00 AM 自动触发首次联系
          同时推送通知给员工："有一条 Hot Lead 等待联系（因静默时间延迟）"
```

### 1.3 行业最佳联系时间（Best Time to Contact）

系统根据行业数据为每次联系推荐基准时段。当时间窗口（见 [§2](#2-联系时间基准contact-time-baseline)）足够宽时，系统在窗口内推荐接通率最高的子时段。

#### 1.3.1 行业基准时段

当系统尚无该客户的历史响应数据时，按行业基准推荐：

| 优先级  | 时段                       | 说明              |
| ---- | ------------------------ | --------------- |
| ⭐ 首选 | **10:00 AM \~ 11:30 AM** | 接通率最高，客户处理完早间事务 |
| ⭐ 首选 | **4:00 PM \~ 5:30 PM**   | 接通率次高，下班前心态开放   |
| 可选   | 8:00 AM \~ 10:00 AM      | 通勤时段，部分人会接      |
| 可选   | 1:00 PM \~ 4:00 PM       | 下午工作时间，接通率中等    |
| 可选   | 5:30 PM \~ 8:00 PM       | 晚间，愿意沟通但注意不要太晚  |
| 禁止   | 9:00 PM \~ 8:00 AM       | 夜间静默（TCPA）      |

::: tip 首选 vs 可选

- **首选窗口**：系统在任务列表中高亮显示，标记为"推荐现在拨打"
- **可选窗口**：允许拨打，不额外提示
- 员工在首选或可选窗口内拨打，均视为**合理执行节奏**，不会触发时段偏差预警

:::

#### 1.3.2 最佳联系日

周二至周四的接通率和预约转化率显著高于周一和周五（数据来源：37,000+ 通销售电话分析）。

| 日期       | 推荐度  | 说明               |
| -------- | ---- | ---------------- |
| 周二 \~ 周四 | ⭐ 首选 | 接通率和转化率最高        |
| 周一       | 可选   | 客户处理周末积压事务，接通率略低 |
| 周五       | 可选   | 客户心态已转向周末，专注度下降  |
| 周六       | 可选   | 部分客户可联系          |
| 周日       | 可选   | 部分客户可联系          |

### 1.4 个性化最佳联系时间（Personalized Contact Timing）

当系统积累了某个客户的历史联系数据后，自动生成个性化的最佳联系时间推荐，优先级高于 [§1.3](#13-行业最佳联系时间best-time-to-contact) 的行业基准。

| 数据来源          | 推荐逻辑           | 示例                             |
| ------------- | -------------- | ------------------------------ |
| **历史接通时段**    | 该客户曾在哪些时段接通过电话 | 客户 3 次在傍晚 5-6 PM 接通 → 推荐 5 PM  |
| **短信回复时段**    | 该客户通常在什么时段回复短信 | 客户总在晚 8 PM 回短信 → 推荐 7:30 PM 致电 |
| **Lead 提交时段** | 客户填写表单的时间      | 客户在早 7 AM 提交 → 推荐 8 AM 联系（早起型） |
| **未接听时段**     | 该客户在哪些时段从未接听   | 连续 3 次上午未接 → 排除上午，推荐下午/傍晚      |

::: info 数据积累门槛

个性化推荐需要至少 **2 次**以上的历史联系记录才会启用。在此之前，系统使用 [§1.3 行业基准](#13-行业最佳联系时间best-time-to-contact)。

## :::

## 2. 联系时间基准（Contact Time Baseline）

联系时间基准是系统根据 §1 的四个要素（节奏 × 静默 × 行业时间 × 个性化时间）**计算出的预期时间窗口**，包括两部分：**SLA**（首次响应基准）和**联系时段**（后续联系基准）。员工在每条 Lead 卡片上看到的"什么时候该联系"就是这个基准。后续的提醒（§3）、预警（§4）和绩效评估都以此基准为度量锚点。

### 2.1 SLA 与联系时段的定义

| 概念       | 行业术语                              | 适用场景 | 定义                                        |
| -------- | --------------------------------- | ---- | ----------------------------------------- |
| **SLA**  | Speed to Lead / Lead Response SLA | 首次响应 | Lead 进入系统后，员工首次**尝试联系**（拨出）的最长等待时间，不论是否接通 |
| **联系时段** | Contact Cadence Window            | 后续联系 | 每次联系应在多长时间窗口内完成                           |

::: info SLA 不因温度变化而消失
只要 Lead **从未被联系过**（Pre-Contact），无论当前温度是 Hot 还是 Warm，SLA 始终适用。温度降级后 SLA 的具体处理方式见 [§2.3 基准的动态管理](#23-基准的动态管理dynamic-baseline-adjustment)。

:::

### 2.2 基准计算逻辑

系统为每条 Lead 的每次联系任务自动计算时间窗口，由四层规则叠加：

```
§1.1 联系节奏（温度 × 阶段 × 场景）
     │  确定基础时间要求和窗口宽度
     │  例：Hot 首次响应 = 5 min，Warm 跟进 = 2-3 天
     │
     ▼  受约束于
§1.2 静默时间（TCPA 夜间 9 PM ~ 8 AM）
     │  排除不可联系的时段
     │  例：Lead 在 10:30 PM 进入 → SLA 起点延迟到次日 8:00 AM
     │
     ▼  叠加推荐
§1.3 行业最佳联系时间（基准时段 + 最佳联系日）
§1.4 个性化联系时间（客户历史数据，优先级 > §1.3）
     │  在窗口内推荐接通率最高的子时段
     │
     ▼
═══════════════════════════════════════════
  SLA（首次响应）/ 联系时段（后续联系）
  → 员工在 Lead 卡片上看到的时间窗口 + 推荐时机
═══════════════════════════════════════════
```

**计算示例：**

| 场景                      | §1.1 节奏     | §1.2 静默   | §1.3/§1.4 推荐        | 最终基准                                |
| ----------------------- | ----------- | --------- | ------------------- | ----------------------------------- |
| Hot Lead 周二 10:00 AM 进入 | SLA: 5 分钟   | 无冲突       | 窗口极窄，无需推荐           | **SLA: 5 分钟** → "立即联系"              |
| Hot Lead 周二 10:30 PM 进入 | SLA: 5 分钟   | 夜间静默 → 延迟 | 次日首选 10:00-11:30 AM | **SLA: 次日 8:00 AM 起** → 推荐 10:00 AM |
| Warm 跟进 Day 3           | 联系时段: 2-3 天 | 排除夜间      | §1.4: 客户傍晚接通率高      | **联系时段: 2 天内** → 推荐今天 5:00 PM       |

**窗口宽度总览：**

| 类型           | 场景                | 窗口宽度   | 紧迫度 | 系统行为            |
| ------------ | ----------------- | ------ | --- | --------------- |
| **SLA**      | Pre-Contact 首次响应  | 5 分钟   | 极高  | 直接推送"立即联系"      |
| **SLA（已超时）** | Pre-Contact 但温度已降 | 已超时    | 极高  | 标红"SLA 超时"，优先处理 |
| **联系时段**     | 试课后跟进             | 2-4 小时 | 高   | 黄金窗口，优先提醒       |
| **联系时段**     | 爽约当天跟进            | 当天     | 较高  | 当日处理            |
| **联系时段**     | Hot 跟进（一般）        | 24 小时  | 中等  | 推荐最佳子时段         |
| **联系时段**     | Warm 跟进           | 2-3 天  | 低   | 有节奏推进，推荐最佳日+时段  |

### 2.3 基准的动态管理（Dynamic Baseline Adjustment）

基准不是静态的。当员工未按基准执行时，系统&#x6309;**"立即补上 → 恢复节奏 → 感知剩余窗口"**&#x7684;原则动态调整后续基准。

::: warning 典型场景：SLA 跨温度超时

SLA 衡量的是"第一次响应速度"。只要 Lead **从未被联系过**（Pre-Contact），无论当前温度是 Hot 还是 Warm，SLA 始终适用：

| 温度      | 阶段                 | 基准类型         | 系统行为                               |
| ------- | ------------------ | ------------ | ---------------------------------- |
| 🔥 Hot  | Pre-Contact（从未联系）  | **SLA**      | 正常 SLA 倒计时（5 分钟）                   |
| ☀️ Warm | Pre-Contact（从未联系）  | **SLA（已超时）** | 标红"SLA 已超时 Xh"，优先级**高于**正常 Warm 跟进 |
| ☀️ Warm | Post-Contact（已联系过） | 联系时段         | 正常联系时段（2-3 天）                      |

**关键区分**：Warm + Pre-Contact（SLA 已超时）比 Warm + Post-Contact（正常跟进）紧迫得多。系统在任务列表中将前者排在更高优先级。

:::

#### 2.3.1 动态调整原则

| 原则            | 说明                                    |
| ------------- | ------------------------------------- |
| **逾期即最高优先**   | 超时的基准立即标记为"逾期 · 立即执行"，排在任务列表最前        |
| **从实际时间恢复**   | 员工完成逾期联系后，后续基准从**实际联系时间**重新计算，而非原计划时间 |
| **感知剩余窗口**    | 重新计算时考虑当前温度窗口的剩余时间，必要时压缩间隔            |
| **跳过已无意义的基准** | 如果多个基准连续超时，只保留第一个逾期任务，后续的暂时挂起         |

#### 2.3.2 动态调整流程

```
基准 #N 超时
     │
     ▼
该联系任务标记为"逾期 · 立即执行"
（后续基准暂时挂起，不叠加多个逾期任务）
     │
     ├─→ 员工完成联系（接通或未接通）
     │        │
     │        ▼
     │   从实际联系时间起，按 §1 节奏计算下一个基准
     │   系统检查剩余温度窗口：
     │        → 若充足：正常间隔
     │        → 若紧张：等比压缩间隔（不低于最小间隔）
     │
     └─→ 员工仍未行动
              │
              ▼
         进入预警升级流程（见 §4）
```

**示例：**

```
Lead 周二 10:00 AM 进入（Hot，Pre-Contact）

原始基准序列：
  #1: SLA 5 分钟 → 10:05 AM
  #2: +2h → 12:05 PM
  #3: 当天下班前
  #4: Day 1 换时段

员工直到 3:00 PM 才看到（#1、#2 均超时）
     │
     ▼
系统当前状态：
  · #1: 🔴 SLA 超时 4h 55m — "逾期 · 立即联系"
  · #2~#4: 暂时挂起（#1 完成前不显示）
     │
     ▼  员工在 3:05 PM 拨打（未接通）
     │
系统重新计算：
  · #1 已完成（记录为 SLA breach，超时 4h 55m）
  · 新 #2: 从 3:05 PM 起 +2h = 5:05 PM（当天仍有时间，正常间隔）
  · 新 #3: Day 1 换时段 → 保持不变
  · Hot 窗口还剩 ~21h，剩余 3 次可正常排布，无需压缩
```

#### 2.3.3 窗口压缩规则

当剩余温度窗口不足以按正常间隔排完所有剩余联系时，系统等比压缩：

| 情况                  | 处理方式                     |
| ------------------- | ------------------------ |
| 剩余时间 ≥ 正常间隔 × 剩余次数  | 正常间隔，不压缩                 |
| 剩余时间 \< 正常间隔 × 剩余次数 | 等比压缩间隔，但不低于最小间隔          |
| 剩余时间 \< 最小间隔 × 剩余次数 | 在剩余时间内尽量安排，超出部分顺延到下一温度阶段 |

**最小间隔（防骚扰底线）：**

| 温度   | 最小间隔 | 说明                   |
| ---- | ---- | -------------------- |
| Hot  | 1 小时 | 即使窗口紧张，也不在 1 小时内重复联系 |
| Warm | 半天   | 降频阶段，给客户充分空间         |

***

## 3. 系统任务提醒机制（Task Reminder System）

系统提醒与预警不同：**提醒是主动推送待办任务**，帮助员工按节奏执行；**预警是检测异常行为**，在出问题时告警。提醒分为两种形式：**被动展示**（卡片倒计时，始终可见）和**主动推送**（通知提醒，按时触发）。

### 3.1 卡片倒计时与状态

每条 Lead 卡片上实时显示时间窗口的倒计时，帮助员工直观判断紧迫程度：

| 状态          | 含义       | 视觉标识          | 触发时机        |
| ----------- | -------- | ------------- | ----------- |
| 🟢 **充裕**   | 窗口内，时间充裕 | 绿色倒计时         | 窗口已过不到一半    |
| 🟡 **即将截止** | 窗口即将关闭   | 黄色闪烁倒计时       | 窗口已过一半，尚未联系 |
| 🔴 **已超时**  | 窗口已关闭    | 红色计时器（显示超时时长） | 超过窗口仍未联系    |

状态显示在 Lead Tracker 的每条 Lead 卡片上，管理者可在 Dashboard 上实时监控全店达标率（SLA 达标率 + 联系时段达标率）。阈值可在 [§6 店铺自定义](#6-店铺自定义store-customization) 中配置。

```
员工视角（任务列表）：

┌──────────────────────────────────────────────┐
│  🔥 John Smith（Hot · 首次触达前 · 第 1 次联系） │
│                                              │
│  SLA：🟢 4:32 剩余                             │
│  最佳时机：现在（首选窗口 10:00-11:30 AM）        │
│                                              │
│  [立即拨打]  [稍后提醒]  [查看详情]              │
└──────────────────────────────────────────────┘

┌──────────────────────────────────────────────┐
│  ☀️ Mike Lee（Warm · 首次触达前 · 从未联系）     │
│                                              │
│  SLA：🔴 已超时 26h — "逾期 · 立即联系"          │
│  ⚠️ 该 Lead 从未被联系，SLA 已严重超时            │
│                                              │
│  [立即拨打]  [查看详情]                         │
└──────────────────────────────────────────────┘

┌──────────────────────────────────────────────┐
│  ☀️ Lisa Chen（Warm · 跟进中 · 第 3 次跟进）     │
│                                              │
│  联系时段：🟡 6h 12m 剩余                       │
│  最佳时机：今天 4:00 PM ~ 5:30 PM              │
│  原因：该客户上午 2 次未接听，傍晚时段接通率更高    │
│                                              │
│  [立即拨打]  [稍后提醒]  [查看详情]              │
└──────────────────────────────────────────────┘
```

### 3.2 单条 Lead 的提醒生命周期

系统根据联系节奏自动计算每条 Lead 的下次联系时间和联系时段。一条 Lead 从任务生成到完成（或升级为预警），经历以下完整流程：

```
任务生成 ──→ 窗口开始 ──→ 窗口内未行动 ──→ 窗口结束 ──→ 超过基准时限
  │              │              │               │              │
  ▼              ▼              ▼               ▼              ▼
加入待办列表   首次提醒推送    二次提醒推送     滚入下一窗口    升级为预警
（静默）       （温和）        （加重）         （静默）        （见 §4）
```

| 阶段          | 触发条件                         | 通知方式              | 内容示例                   |
| ----------- | ---------------------------- | ----------------- | ---------------------- |
| **① 任务生成**  | 新 Lead 进入 / 上次联系结束后基准计算出下次时间 | 无推送，静默加入待办列表      | 任务列表中出现新卡片，标注联系时段      |
| **② 首次提醒**  | 当前时间进入联系时段                   | App 内通知 + 任务列表高亮  | "Lead \[姓名] 现在是推荐联系时间" |
| **③ 二次提醒**  | 首次提醒后 **30 分钟**仍未行动          | App 内通知（加重标记 🔔）  | "Lead \[姓名] 联系时段即将关闭"  |
| **④ 窗口结束**  | 联系时段关闭，员工未行动                 | 无推送，任务自动滚入下一个联系时段 | 任务卡片更新为下一时段时间          |
| **⑤ 升级为预警** | 超过节奏规定时限仍未联系                 | 进入超时预警流程（见 §4）    | 从提醒系统移出，转入预警系统         |

> **设计原则**：每个联系时段内最多推送 **2 次**通知（首次 + 二次），避免过度打扰。员工在任一阶段完成联系，提醒流程即终止。

### 3.3 提醒与预警的边界

提醒（Reminder）和预警（Alert）是两套独立机制，分别服务于不同目的：

|          | 提醒（Reminder）            | 预警（Alert）     |
| -------- | ----------------------- | ------------- |
| **目的**   | 帮员工安排工作节奏               | 检测执行偏差        |
| **语气**   | "建议现在拨打"                | "该 Lead 联系超时" |
| **触发**   | 联系时段到达                  | 联系时段超时        |
| **通知对象** | 仅负责员工                   | 员工 + 管理者      |
| **后果**   | 无，仅辅助                   | 可能触发自动重分配     |
| **衔接**   | 提醒未果 → 超过联系时段 → 自动升级为预警 |               |

### 3.4 每日任务摘要

系统在每天工作开始时（默认 8:00 AM）自动推送当日任务摘要：

```
📋 今日待办（8 条 Lead）

🔥 Hot（3 条）—— 优先处理
  · Jane Doe — 第 1 次联系（5 分钟前进入）⚡ 立即拨打
  · Mike Lee — 第 3 次联系 · 推荐 10:00-11:30 AM
  · Sarah Kim — 试课后跟进 · 推荐 4:00-5:30 PM（黄金窗口）

☀️ Warm（4 条）
  · Tom Wang — 第 6 次联系 · 推荐 10:00-11:30 AM
  · Lisa Chen — 跟进（触达后未预约）· 推荐 4:00-5:30 PM
  · ...

⏰ 因静默时间延迟（1 条）
  · Alex Park — 昨晚 10:15 PM 进入 · 推荐 8:00 AM 拨打
```

***

## 4. 预警策略（Alert Strategy）

预警策略用于**监控员工执行情况和 Lead 状态异常**，确保联系节奏被合理执行。预警由系统自动触发，通知到相关员工和管理者。

### 4.1 时段超时预警（Contact Time Window Breach）

每条 Lead 的联系任务都有一个时间窗口（见 [§2](#2-联系时间基准contact-time-baseline)），**倒计时自动启动**。员工在时段内完成联系即为"达标"；超时则触发逐级升级的预警。

#### 4.1.1 时段状态与预警级别

| 时段状态    | 预警级别  | 默认阈值         | 触发条件              | 通知对象       | 系统动作            |
| ------- | ----- | ------------ | ----------------- | ---------- | --------------- |
| 🟢 充裕   | —     | 时段未过半        | 员工在时段内，无需干预       | —          | Lead 卡片显示绿色倒计时  |
| 🟡 即将截止 | ⚠️ 提醒 | 时段过半         | 联系时段已过一半，员工仍未发起联系 | 负责员工       | 推送提醒 + 卡片变为黄色闪烁 |
| 🔴 已超时  | 🔴 警告 | 超时 **30 分钟** | 已超过联系时段，员工仍未发起联系  | 负责员工 + 管理者 | 推送警告 + 建议重分配    |
| 🔴 已超时  | 🚨 严重 | 超时 **2 小时**  | 严重超时，员工仍未发起联系     | 管理者        | **自动重分配**给空闲员工  |

#### 4.1.2 Lead 卡片上的时段展示

```
┌──────────────────────────────────────────────┐
│  🔥 John Smith（Hot · Pre-Contact）           │
│                                              │
│  联系时段：🟢 4:32 剩余                        │ ← 充裕
│  最佳时机：今天 10:00 AM ~ 11:30 AM            │
│  [立即拨打]  [稍后提醒]                         │
└──────────────────────────────────────────────┘

┌──────────────────────────────────────────────┐
│  🔥 Jane Doe（Hot · Pre-Contact）             │
│                                              │
│  联系时段：🔴 已超时 · 超出 1h 23m              │ ← 已超时
│  ⚠️ 管理者已收到通知                            │
│  [立即拨打]  [查看详情]                         │
└──────────────────────────────────────────────┘
```

::: info 时段达标率

管理者可在 Dashboard 上查看全店时段达标率（= 在联系时段内完成联系的 Lead 数 / 总 Lead 数）。行业基准约 **80%**，低于此值建议优化排班或增加人手。

:::

### 4.2 温度降级预警

当 Lead 即将从高温度降至低温度时，提前通知员工抓住窗口。

| 预警触发        | 提前时间                          | 通知内容                              | 通知对象 |
| ----------- | ----------------------------- | --------------------------------- | ---- |
| Hot → Warm  | Day 1 下午（距 Hot 窗口结束 **4 小时**） | "该 Lead 即将进入 Warm，请尽快完成 Hot 阶段联系" | 负责员工 |
| Warm → Cold | Day 4（距 Warm 窗口结束 **1 天**）    | "该 Lead 即将进入 Cold，请完成最后一次跟进"      | 负责员工 |

### 4.3 节奏执行偏差预警

当员工的联系行为偏离节奏要求时触发。

| 偏差类型     | 触发条件                  | 预警内容                      | 通知对象       |
| -------- | --------------------- | ------------------------- | ---------- |
| **联系不足** | 员工联系次数 \< 节奏规定次数的 50% | "该 Lead 联系次数不足，可能面临放弃风险"  | 负责员工 + 管理者 |
| **间隔异常** | 两次联系间隔超过基准规定的 2 倍     | "跟进间隔过长，请按节奏推进"           | 负责员工       |
| **渠道单一** | 连续 3 次以上使用同一渠道且均未响应   | "建议切换联系渠道（电话→短信 或 短信→电话）" | 负责员工       |
| **时段重复** | 连续 3 次在同一时段联系且均未响应    | "建议换时段联系，该客户在此时段可能不方便"    | 负责员工       |

### 4.4 跟进场景预警

针对跟进阶段特有的关键节点预警。

| 预警触发       | 触发条件                  | 通知内容                    | 通知对象       |
| ---------- | --------------------- | ----------------------- | ---------- |
| **试课后未跟进** | 试课结束 **4 小时**内未发起跟进   | "客户刚完成试课，请立即跟进（黄金窗口）"   | 负责员工       |
| **爽约未处理**  | 客户爽约 **当天**未发起联系      | "客户今天爽约，请尽快联系了解原因"      | 负责员工       |
| **长期无进展**  | 同一客户连续 **3 次**跟进均无推进  | "该客户可能为隐性拒绝，建议评估是否继续跟进" | 负责员工 + 管理者 |
| **批量积压**   | 员工待处理 Lead 数超过 **阈值** | "当前待处理 Lead 数量过多，建议重分配" | 管理者        |

### 4.5 超时预警升级机制

超时预警不是一次性通知，而是随超时时长自动升级：

```
🟢 充裕（联系时段未过半）
     │  员工未在时段内联系
     ▼
🟡 即将截止 → ⚠️ 提醒员工（时段过半）
     │  员工仍未响应
     ▼
🔴 已超时 → 🔴 警告员工 + 通知管理者（超时 30 min）
     │  继续无响应
     ▼
🔴 已超时 → 🚨 系统自动重分配（超时 2 hr）
```

::: info 预警不是惩罚

超时预警的目的是**帮助员工抓住联系时段**，而不是监控和惩罚。预警设计应简洁实用：只在真正需要行动时提醒，避免过度通知造成"预警疲劳"。

## :::

## 5. 短信模板（SMS Templates）

短信是联系节奏中的重要渠道，与电话各有适用场景：电话未接通时，短信用于**建立认知、为下次致电铺垫**；而预约确认、到店提醒、试课后感谢、信息发送等场景，**短信本身就是最合适的渠道**。

### 5.1 短信使用场景

| 场景           | 触发条件             | 短信目的                |
| ------------ | ---------------- | ------------------- |
| **首次短信（破冰）** | 电话未接通 2-3 次后     | 自我介绍 + 说明来意，为下次致电铺垫 |
| **跟进信息发送**   | 电话沟通后 24 小时      | 发送客户感兴趣的课程/价格/环境信息  |
| **预约确认**     | 客户预约成功后          | 确认预约时间和地点           |
| **预约提醒**     | 预约前 24 小时 / 2 小时 | 到店提醒，降低爽约率          |
| **试课后感谢**    | 试课结束后 2-4 小时     | 感谢体验 + 回顾亮点，为电话跟进预热 |
| **长期未联系唤醒**  | Warm 阶段后期        | 保持存在感，提供新信息（新课程、优惠） |

### 5.2 模板机制：系统模板 + 手动编辑

系统为每个场景提供**预设短信模板**，员工可在模板基础上**手动修改**后发送：

```
┌──────────────────────────────────────────┐
│  短信发送界面                              │
│                                          │
│  收件人：John Smith · (555) 123-4567      │
│  场景：首次短信（破冰）                      │
│                                          │
│  ┌──────────────────────────────────────┐│
│  │ Hi John, this is {员工姓名} from      │ │
│  │ {店铺名称}! I noticed you showed      │ │
│  │ interest in our fitness programs.    │ │
│  │ I'd love to chat about how we can    │ │
│  │ help you reach your goals. Feel free │ │
│  │ to call or text me back anytime!     │ │
│  │                                      │ │
│  │ — {员工姓名}, {店铺名称}                │ │
│  └──────────────────────────────────────┘ │
│                                           │
│  💡 可自由编辑以上内容                       │
│                                           │
│  [发送]  [恢复模板]  [保存为我的模板]         │
└──────────────────────────────────────────┘
```

### 5.3 模板类型

\=== "首次破冰（Pre-Contact）"

```
**默认模板（英文）：**

> Hi {客户名}, this is {员工名} from {店铺名}! I saw you're interested in getting started with fitness. I'd love to help you find the right program. When's a good time for a quick chat? Feel free to call or text me back!

**变量：** `{客户名}` `{员工名}` `{店铺名}` 由系统自动填充
```

\=== "跟进信息（Post-Contact）"

```
**默认模板：**

> Hi {客户名}, great chatting with you earlier! As promised, here's the info on {课程/价格/方案}. Let me know if you have any questions — happy to help! {链接}

**变量：** `{课程/价格/方案}` `{链接}` 由员工选择或手动填写
```

\=== "预约确认"

```
**默认模板：**

> Hi {客户名}, your visit to {店铺名} is confirmed for {日期} at {时间}! Address: {地址}. Looking forward to seeing you! Reply STOP to unsubscribe.
```

\=== "预约提醒"

```
**默认模板：**

> Reminder: Your visit to {店铺名} is tomorrow ({日期}) at {时间}. Can't wait to see you! Need to reschedule? Just reply to this text.
```

\=== "试课后感谢"

```
**默认模板：**

> Hi {客户名}, thanks for coming in today! Hope you enjoyed the {课程名称} class. If you have any questions about membership options, I'm here to help. Talk soon!
```

\=== "Warm 阶段唤醒"

```
**默认模板：**

> Hi {客户名}, just wanted to share — we have a {新活动/优惠} coming up that I thought you'd love! Let me know if you'd like to learn more.
```

### 5.4 模板管理规则

| 规则           | 说明                                                     |
| ------------ | ------------------------------------------------------ |
| **系统模板不可删除** | 店铺可修改默认模板的文案，但不能删除系统预设的场景模板                            |
| **店铺自定义模板**  | 管理者可为每个场景创建店铺级自定义模板，覆盖系统默认                             |
| **员工个人模板**   | 员工可保存自己常用的模板（"保存为我的模板"），仅自己可见                          |
| **发送前必须确认**  | 短信不自动发送，员工必须查看内容并点击发送（防止误发）                            |
| **变量自动填充**   | `{客户名}` `{员工名}` `{店铺名}` 等由系统自动替换，员工无需手动输入              |
| **TCPA 合规**  | 每条短信末尾自动附加退订指引（"Reply STOP to unsubscribe"），系统自动处理退订请求 |
| **字符数提示**    | 编辑时实时显示字符数，超过 160 字符提示将拆分为多条短信                         |

***

## 6. 店铺自定义（Store Customization）

系统提供合理的默认策略，同时允许店铺根据自身业务特点进行自定义。

### 6.1 联系节奏可自定义参数

| 参数                | 默认值                     | 可自定义范围         | 说明                       |
| ----------------- | ----------------------- | -------------- | ------------------------ |
| **Hot 首次响应时限**    | 5 分钟                    | 1-30 分钟        | Lead 进入后首次联系的最长等待时间      |
| **Hot 阶段最大联系次数**  | 4 次                     | 2-6 次          | Hot 阶段内允许的最大联系尝试         |
| **Warm 阶段最大联系次数** | 4 次                     | 2-6 次          | Warm 阶段内允许的最大联系尝试        |
| **联系重试间隔（Hot）**   | 2 小时                    | 1-4 小时         | Hot 阶段内两次联系的最小间隔         |
| **联系重试间隔（Warm）**  | 1 天                     | 0.5-2 天        | Warm 阶段内两次联系的最小间隔        |
| **允许联系时间窗口**      | 8:00 AM - 9:00 PM       | 不得超出 TCPA 法定范围 | 允许向客户发起联系的时段范围（客户当地时间）   |
| **短信介入时机**        | 第 3 次未响应后               | 第 1-5 次后       | 从第几次未响应开始加入短信渠道          |
| **跟进最大次数**        | 6 次                     | 3-10 次         | 每个 Follow-up 客户的最大跟进联系次数 |
| **跟进间隔（Hot）**     | 1 天                     | 0.5-2 天        | Hot 阶段跟进的两次联系间隔          |
| **跟进间隔（Warm）**    | 2-3 天                   | 1-5 天          | Warm 阶段跟进的两次联系间隔         |
| **跟进冷却期**         | 2 周                     | 1-4 周          | 多次跟进无进展后暂停的时间            |
| **最佳联系时机首选窗口**    | 10-11:30 AM + 4-5:30 PM | 可自定义两个首选窗口     | 宽时段内系统推荐的最佳联系时机（见 §1.3）  |
| **Hot 温度时间窗口**    | Day 0 \~ Day 1          | 0.5-3 天        | Hot 阶段持续时长               |
| **Warm 温度时间窗口**   | Day 2 \~ Day 5          | 2-10 天         | Warm 阶段持续时长              |
| **最小联系次数**        | 2 次                     | 1-4 次          | 每条 Lead 在放弃前至少尝试联系的次数    |
| **自动判定逻辑**        | 系统默认规则                  | 可调整判定条件        | Cold 后系统判定未触达/失联/放弃的规则参数 |

### 6.2 任务提醒可自定义参数

| 参数            | 默认值     | 可自定义范围                | 说明              |
| ------------- | ------- | --------------------- | --------------- |
| **任务提醒方式**    | App 内通知 | 可选：App 通知 / 短信提醒 / 邮件 | 系统向员工推送待办任务的渠道  |
| **每日任务摘要时间**  | 8:00 AM | 7:00-10:00 AM         | 每日任务摘要的推送时间     |
| **时段关闭前提醒时间** | 30 分钟   | 15-60 分钟              | 联系时段结束前多久推送二次提醒 |

### 6.3 短信模板可自定义参数

| 参数         | 默认值 | 可自定义范围         | 说明              |
| ---------- | --- | -------------- | --------------- |
| **短信模板语言** | 英文  | 英文 / 西班牙文 / 双语 | 短信默认模板的语言       |
| **发送前确认**  | 开启  | 开启 / 关闭        | 短信发送前是否要求员工手动确认 |

### 6.4 时段与预警策略可自定义参数

| 参数               | 默认值                               | 可自定义范围   | 说明                     |
| ---------------- | --------------------------------- | -------- | ---------------------- |
| **超时提醒阈值（即将截止）** | 时段过半                              | 可调整比例    | 触发 ⚠️ 提醒，Lead 卡片变为黄色闪烁 |
| **超时警告阈值（已超时）**  | 超时 30 分钟                          | 15-60 分钟 | 触发 🔴 警告，通知管理者，建议重分配   |
| **超时自动重分配阈值**    | 超时 2 小时                           | 1-4 小时   | 触发 🚨 系统自动重分配给空闲员工     |
| **温度降级提前提醒**     | Hot→Warm: 4 小时前 / Warm→Cold: 1 天前 | 可调整      | 温度即将降级时的提前通知时间         |
| **员工积压 Lead 上限** | 20 条                              | 10-50 条  | 超过此数触发积压预警             |
| **隐性拒绝判定次数**     | 3 次无进展                            | 2-5 次    | 连续几次跟进无推进后触发隐性拒绝判定     |

### 6.5 自定义约束

::: warning 自定义的边界

店铺自定义不能突破以下系统硬性约束：

- **TCPA 夜间静默不可突破**：9:00 PM \~ 8:00 AM（客户当地时间）为系统硬性静默边界，店铺只能在此范围内进一步收窄，不可放宽

:::

### 6.6 店铺配置界面

店铺管理者可在 **Settings → Store Strategy** 中配置以上参数。配置页面按 Tab 分组：

| Tab                       | 对应章节       | 配置内容                                          |
| ------------------------- | ---------- | --------------------------------------------- |
| **Contact Cadence**       | §1 联系节奏    | 首次触达前/跟进节奏参数、温度窗口、拨打窗口、最小联系次数、自动判定            |
| **Quiet Hours**           | §1.2 静默时间  | 夜间静默时段配置、TCPA 合规信息                            |
| **Contact Time Baseline** | §2 联系时间基准  | SLA 定义、基准计算、动态管理规则                            |
| **Task Reminders**        | §3 系统任务提醒  | 提醒渠道、每日摘要时间、窗口关闭前提醒                           |
| **Alerts & Timing**       | §4 预警策略    | 超时预警阈值（即将截止 / 已超时 / 自动重分配）、温度降级提醒、积压上限、隐性拒绝次数 |
| **SMS Templates**         | §5 短信模板    | 模板语言、发送前确认、各场景模板编辑                            |
| **Constraints**           | §6.5 自定义约束 | TCPA 夜间静默（不可修改）                               |

页面底部提供**一键恢复系统默认值**按钮。

::: tip UI 原型

完整交互原型见 [UI Prototype → Store Strategy](../../ui-design/ui-mvp.md)

## :::

## 7. 节奏执行与系统判定的关系

联系节奏不仅指导员工行为，也是系统自动判定 Lead 最终状态的**基准线**。

```
联系节奏（店铺配置）
     │
     │  作为基准
     ▼
员工实际执行记录
     │
     │  系统比对
     ▼
┌─────────────────────────────────┐
│  节奏执行评估                      │
│                                   │
│  执行了节奏 + 从未接通  → 未触达    │
│  执行了节奏 + 曾接通后失联 → 失联   │
│  未执行节奏              → 放弃    │
└─────────────────────────────────┘
```

::: tip 节奏是管理工具，不是僵化规则

联系节奏的最终目的是**帮助员工高效工作、帮助管理者发现问题**。系统应在节奏框架内给予员工灵活性（如根据客户画像自动推荐最佳联系时段和渠道），而不是机械地要求每一步都严格执行。
:::
