> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flashcat.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# 值班管理

> 灵活配置值班表与轮换规则，确保 7x24 小时故障响应

在应急响应（On-call）体系中，**值班表**（Schedule）是连接"故障"与"人"的桥梁。一个合理的值班机制，既能确保故障发生时"一定有人响应"，又能避免让某一个人长期处于高压状态，实现团队的可持续运维。

Flashduty On-call 提供极具灵活性的值班编排能力，支持按天、周、自定义周期轮换，同时也支持白班/夜班、主备值班等复杂场景。

## 核心概念

***

在配置之前，理解以下概念有助于您更好地规划值班：

| 概念       | 说明                                                                         |
| -------- | -------------------------------------------------------------------------- |
| **值班表**  | 一个独立的值班单元（如"SRE 值班表"、"DBA 值班表"），包含多条具体的值班规则                                |
| **值班层**  | 一个值班表可以包含多层规则。例如，第一层是"白班"，第二层是"夜班"。多层规则叠加，最终形成完整的值班计划                      |
| **轮换**   | 决定了值班人员如何交接。例如"每周一上午 10 点交接"                                               |
| **临时调班** | 在不修改长期规则的前提下，临时调整某一段时间的值班人（常用于请假、临时顶班）                                     |
| **日期掩码** | 选择参与值班的时期，比如周一到周五时 A 团队值班，周末是 B 团队值班                                       |
| **连续轮换** | 开启后，轮换边界以班次开始时间为基准计算，避免班次在 00:00 被拆分。仅在配置日期掩码时支持，详见[日期掩码与连续轮换](#日期掩码与连续轮换) |
| **公平轮换** | 系统自动调整轮换顺序，确保每个成员都有机会在不同的时间段或轮次中参与值班，避免某个成员始终在休息日值班                        |

![值班表概念图](https://docs-cdn.flashcat.cloud/images/png/3423a4f3133d5caa1f0aaebca970d404.png)

## 配置流程

***

<Steps>
  <Step title="创建值班表">
    进入 **值班管理**，点击"创建值班表"

    * **值班名称**：长度为 1\~40 个字符，同一账户下不可重复
    * **管理团队**：指定该值班表归属哪个团队管理，团队成员将获得该值班表的编辑权限
    * **值班描述**：支持 Markdown 语法，该区域的内容可以在通知时携带，长度不超过 500 字符
  </Step>

  <Step title="设置换班通知">
    为了避免忘记值班或交接，系统提供两种通知时机：

    * **提前通知**：在轮换交接前 N 分钟（以 5 分钟为步长），同时通知"即将下班"和"即将接班"的人员
    * **定时通知**：在值班期间，每天固定时间（如上午 8:00）发送通知，提醒当前谁在值班

    启用任一通知时机后，您需要配置通知渠道：

    * **单聊渠道**：向值班人员个人发送通知
      * **遵循个人偏好**：每个值班人员按各自在个人账户中配置的通知渠道接收通知
      * **遵循统一设置**：由管理员统一选择通知渠道（短信、邮件，以及已集成的 IM 应用）
    * **群聊渠道**：将通知发送到群聊中，支持以下平台：
      * 飞书应用、钉钉应用、Slack 应用（通过已集成的 IM 应用选择群聊）
      * 企业微信机器人、钉钉机器人、飞书机器人（通过 Webhook 地址发送）
      * Slack 机器人、Telegram 机器人、Zoom 机器人

    <Warning>
      选择 **遵循个人偏好** 时，值班人员需满足以下前置条件，否则即便处于值班时段也收不到通知：

      1. 在 **个人中心** 完成短信、邮件等个人渠道的设置
      2. 通过 IM 应用（飞书、钉钉、企业微信等）中的 **Flashduty 应用** 登录并完成账号绑定
      3. 在 **个人账户** 页面配置通知偏好（选择优先使用哪些渠道）
    </Warning>
  </Step>

  <Step title="定义值班规则">
    这是最核心的步骤。您可以添加一层或多层规则。每层规则包含：

    * **值班人员**：选择参与轮换的成员，支持按组排列，支持设置主备角色
    * **开始时间**：该层规则从何时起开始生效
    * **结束时间**（可选）：该层规则何时失效，留空表示永不失效。搭配开始时间可用于配置阶段性轮换，例如"下周一起生效"或"本季度内有效"
    * **轮换周期**：支持小时、天、周、月四种单位，数值范围为 1\~30。例如"2 天"表示每 2 天轮换一次
    * **交接时间**：当轮换周期合计为 1 周（例如 1 周、7 天）时，可以指定在周几的什么时间进行交接
    * **公平轮换**：开启后，系统自动调整轮换顺序，避免某个成员始终在休息日值班
    * **日期掩码**：选择一周中的哪些天安排值班，默认勾选 **周一至周五**，详见[日期掩码与连续轮换](#日期掩码与连续轮换)
    * **值班时间**：（可选）限定成员在每个轮换周期内的实际值班时间段，支持以下模式：
      * **不限制**：成员在整个轮换周期内值班
      * **每天**：设置每天的值班时间段（如 09:00\~18:00），可添加多个时间段
      * **每周**：设置按星期+时间的值班范围（如周一 09:00 \~ 周五 18:00），可添加多个时间段

    <Note>当开启日期掩码时，"每周"模式不可用，因为日期掩码已提供按星期的控制。如果开启日期掩码时，值班时间正处于"每周"模式，系统会自动将其重置为"不限制"以避免冲突。设置值班时间后，轮换周期内可能存在无人值班的时段，请确保有其他规则覆盖。</Note>
  </Step>
</Steps>

## 值班角色

***

Flashduty 的值班角色不仅仅限于"主值班 / 备值班"，而是一种账户级资源：您可以在账户角色管理页面维护任意数量的命名角色（如"研发主值班"、"DBA 备值班"、"SRE 响应官"），并在配置值班表时将成员映射到对应角色。

* **账户级资源**：角色在账户层面统一管理，所有值班表共享同一角色库
* **规则内按角色分组**：在值班规则中添加人员时，可将成员绑定到指定角色 ID，形成"角色 → 成员"的映射
* **分派策略按角色定向**：分派策略的通知对象支持 **所有值班人员**、**指定角色**（如仅通知主值班）或 **指定成员**，实现更细粒度的告警路由

<Tip>
  如果您的团队只需要"主 / 备"两种角色，直接使用系统内置的主备角色即可，无需创建新的角色。
</Tip>

## 临时调班与请假

***

当值班人员需要请假或临时有事时，**不要修改永久的值班规则**，请使用"临时调班"（Override）功能。临时调班是一种独立的规则类型，会在其生效窗口内**完全抢占**同一时段的正常值班规则，窗口结束后自动恢复原规则。

### 两种创建入口

<Steps>
  <Step title="日历点击创建">
    进入值班表详情页，在日历视图中点击需要调整的时间段，选择 **临时调班**。系统会自动将默认时间窗口填为 **\[今日 00:00, 次日 00:00]**，您可以按需调整。
  </Step>

  <Step title="通过 新增规则 创建">
    在值班规则列表中点击 **新增规则**，将规则类型切换为 **临时调班**。该入口适合提前批量安排请假或替班。
  </Step>
</Steps>

### 可配置字段

临时调班的字段较普通规则更精简，仅包含：

* **开始时间** / **结束时间**：定义替班窗口，默认 `[今日 00:00, 次日 00:00]`
* **替班人员**：在该窗口内替代原值班人员的成员

临时调班不支持轮换周期、日期掩码、主备角色、分组等普通规则字段。

<Note>
  * **抢占语义**：临时调班在其时间窗口内**完全替换**所有普通值班规则（不论对方属于哪一层），而不是与之叠加。窗口结束后，原规则自动恢复生效
  * **记录留痕**：所有调班记录都会被保存，方便后续审计
</Note>

<Tip>
  建议在正式交接班前，新旧值班人员进行一次简短的同步会，确认遗留问题和当前系统状态，这比单纯的系统通知更安全。
</Tip>

## 日期掩码与连续轮换

***

### 日期掩码

日期掩码用于控制值班规则在一周中的哪些天生效。通过选择不同的星期组合，可以灵活实现工作日与周末的差异化排班。

常见使用场景：

* **工作日/周末分离**：工作日由 A 团队值班，周末由 B 团队值班
* **特定日期值班**：仅在周一、三、五安排某组人员值班
* **白班/夜班按天区分**：工作日配置白班和夜班规则，周末配置全天值班规则

### 连续轮换

默认情况下，排班按照自然日 00:00 进行切分。如果班次跨越午夜，将被拆分为多个时间段。

![简单轮换](https://docs-cdn.flashcat.cloud/images/png/695199d7990bf99cafab58ed10be75a1.png)

开启**连续轮换**后，轮换边界将以班次开始时间为基准计算，而不再以 00:00 为切分点。每位值班成员将完整执行一个轮换周期，不会因 00:00 被拆分。

![连续轮换](https://docs-cdn.flashcat.cloud/images/png/d56eca56d65aa17df67110ad4a0c61a7.png)

<Note>
  以下场景建议开启连续轮换：

  * 轮换周期为 24 小时
  * 班次开始时间不是 00:00
  * 配置了按星期掩码排班
  * 工作日与周末采用不同轮换规则
</Note>

## 常见排班场景

***

<Tabs>
  <Tab title="7x24 简单轮换">
    **需求**：运维组有 A、B、C 三位同学，每人值班一周，周一上午 10:00 交接。

    **配置**：

    * 人员序列：A, B, C
    * 轮换周期：1 周
    * 交接时间：周一 10:00

    **效果**：A 值班一周 → B 值班一周 → C 值班一周 → A 值班一周...

    ![简单轮换](https://docs-cdn.flashcat.cloud/images/png/1a730fa3bf86e2bf206f1e4c9869371c.png)
  </Tab>

  <Tab title="白班/夜班分离">
    **需求**：

    * **白班**（9:00-18:00）：由研发团队轮流值班
    * **夜班**（18:00-次日 9:00）：由 SRE 团队轮流值班
    * **周末**：全天由监控小组值班

    **配置思路**：创建多个规则

    1. **规则 1（研发白班）**：添加研发人员，限制生效时间为 `工作日 09:00 ~ 18:00`
    2. **规则 2（SRE 夜班）**：添加 SRE 人员，限制生效时间为 `工作日 18:00 ~ 09:00`
    3. **规则 3（监控小组）**：添加监控人员，限制生效时间为 `周六 00:00 ~ 周日 23:59`

    ![白班夜班规则](https://docs-cdn.flashcat.cloud/images/png/b9d927672873bd1baf46f5146fde34e9.png)

    ![白班夜班效果](https://docs-cdn.flashcat.cloud/images/png/d9045ae9474bc300d38bf0d24bb69abc.png)
  </Tab>

  <Tab title="主备值班">
    **需求**：重要业务需要双重保障，设有一名主值班和一名备值班。

    **配置思路**：

    * **同一规则内**：在添加值班人员时，支持同时设置主备人员
    * **通知**：在分派策略的通知对象中，可以选择将告警通知给值班表的主值班或备值班
    * **优势**：无需创建多层规则，管理更简单

    ![主备值班配置](https://docs-cdn.flashcat.cloud/images/png/3eef3b3290befffa076316d1bae8b521.png)

    ![主备值班通知](https://docs-cdn.flashcat.cloud/images/png/261cb975427527cc305c3ad467dd935e.png)
  </Tab>
</Tabs>

## 查看值班详情

***

点击值班表名称进入详情页，您可以查看排班日历和管理值班规则。页面右上角提供以下操作：

* **视图切换**：在"一周"、"两周"和"日历"（月视图）之间切换
* **高亮我的值班**：开启后，您的值班时段将被高亮显示，方便快速识别

在日历中点击任意时间段，可以查看当前值班人员，或创建临时调班。

## 查看个人值班计划

***

进入 **值班管理** → **个人值班计划**，你可以在统一视图中查看自己参与的所有值班表安排。

页面顶部展示你当前正在值班的值班表名称，点击可跳转到对应值班表详情。

你可以通过右上角的时间范围按钮切换查看区间：

| 选项      | 说明                |
| :------ | :---------------- |
| **1 天** | 查看当天的值班安排         |
| **4 天** | 查看未来 4 天的值班安排     |
| **1 周** | 查看未来 1 周的值班安排     |
| **2 周** | 查看未来 2 周的值班安排（默认） |
| **1 月** | 查看未来 1 个月的值班安排    |

使用左右箭头按钮可以翻页查看前后时间段的值班安排，点击 **今天** 按钮可快速回到当前时间。

## 延伸阅读

***

<CardGroup cols={2}>
  <Card title="分派策略" icon="sitemap" href="/zh/on-call/channel/escalation-rule">
    配置告警通知规则和升级路径
  </Card>

  <Card title="服务日历" icon="calendar" href="/zh/on-call/configuration/service-calendar">
    定义工作日和休息日
  </Card>
</CardGroup>
