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

# Microsoft Teams

> 通过集成 Microsoft Teams 第三方应用，您可以在 Microsoft Teams 内接收和响应告警

<Tip>**版本要求**：IM 集成需要 On-call 专业版及以上订阅。[了解更多](https://flashcat.cloud/flashduty/price/)</Tip>

<Warning>
  如果您的组织限制第三方应用，请先联系 Microsoft Teams 管理员允许使用 Flashduty。
</Warning>

<Note>
  如需了解 Teams 应用处理 Teams 用户、团队、频道、群聊和故障卡片数据的规则，请参阅《[Flashduty Microsoft Teams 应用隐私政策](/zh/compliance/microsoft-teams-app-privacy-policy)》和《[Flashduty Microsoft Teams 应用使用条款](/zh/compliance/microsoft-teams-app-terms-of-use)》。
</Note>

## 一、数据和权限说明

Flashduty Teams 应用只在发送告警通知、完成关联配置和处理故障卡片操作所需的范围内处理 Teams 数据。

| 数据或能力                                          | 使用场景                                                                |
| ---------------------------------------------- | ------------------------------------------------------------------- |
| Teams 用户 ID、Microsoft Entra ID（AAD Object ID）  | 关联 Teams 用户与 Flashduty 用户；校验故障卡片操作人；向关联用户发送个人通知或操作反馈                |
| Team ID、Team 名称、Channel ID                     | 关联 Teams 团队或频道；把告警和故障通知发送到指定 Teams 频道；查询指定 Team 的详情和频道列表            |
| Group Chat ID、用户输入的 Chat 名称                    | 关联 Teams 群聊；把告警和故障通知发送到指定群聊                                         |
| Conversation ID、Activity ID、Bot Framework 会话引用 | 在应用安装后发送、更新或回复 Teams 通知卡片                                           |
| Bot 指令和卡片动作                                    | 处理 `help`、`linkUser`、`linkTeam`、`linkChat` 指令，以及认领、解决、暂缓、自定义操作等卡片按钮 |
| Flashduty 告警和故障卡片数据                            | 在 Teams 中展示告警或故障详情，并把卡片操作结果同步回 Flashduty                            |

Flashduty Teams 应用不会读取与 Flashduty 功能无关的普通 Teams 聊天内容。它只处理个人聊天中发送给 bot 的消息、团队或群聊中 @ bot 的消息、卡片按钮动作、应用安装和会话所需的引用信息，以及发送或更新 Flashduty 通知所需的数据。

当前应用包不申请用于读取全组织聊天内容的 Microsoft Graph 权限。如后续版本引入新的 Teams 权限或数据处理场景，Flashduty 将更新本文档和相关隐私说明。

## 二、从 Microsoft Teams 获取应用

<Steps>
  <Step title="查找 Flashduty">
    在 Microsoft Teams 中选择 **Apps**，搜索 **Flashduty**，然后打开应用详情页。
  </Step>

  <Step title="添加应用">
    选择 **Add**。根据使用场景，选择添加到团队/频道、群聊或个人聊天。
  </Step>
</Steps>

<Note>
  以下指令中的 `{ID}` 请替换为 Flashduty Microsoft Teams 集成 ID；`{ChatName}` 请替换为群聊名称。
</Note>

## 三、关联团队 (Team)

<Steps>
  <Step title="查找应用">
    在 Teams 中打开 **Apps**，找到 **Flashduty**，然后选择 **Add to a team**。

    <Note>
      如果无法找到或添加应用，请联系 Microsoft Teams 管理员。
    </Note>
  </Step>

  <Step title="添加到团队">
    将应用添加到目标 Team。

    <Warning>
      此步骤必须选择目标 Team 的 General Channel，否则将无法发送故障到 Team 中。
    </Warning>

    ![2025-09-18-17-11-29](https://docs-cdn.flashcat.cloud/images/png/01fa86b63d01d2735aa6c4a53efb3c69.png)
  </Step>

  <Step title="发送关联指令">
    在 Team 的 General Channel 中 @Flashduty 并发送 `linkTeam {ID}`，然后选择 **立即关联**。

    ![2025-09-18-13-55-05](https://docs-cdn.flashcat.cloud/images/png/3192b5481b0595fcb58e5cc43abad125.png)
  </Step>

  <Step title="解除团队关联">
    如需解除该 Team 的关联，请在同一频道中发送 `@Flashduty unlinkTeam {ID}`。在响应卡片中选择 **Unlink in FlashDuty** 后，Flashduty 会自动解除关联并显示成功提示。
  </Step>
</Steps>

## 四、关联群聊 (Chat)

<Steps>
  <Step title="查找应用">
    在 Teams 中打开 **Apps**，找到 **Flashduty**，然后选择 **Add to a chat**。

    <Note>
      如果无法找到或添加应用，请联系 Microsoft Teams 管理员。
    </Note>
  </Step>

  <Step title="添加到群聊">
    将应用添加到目标 Chat。

    ![2025-09-18-17-14-23](https://docs-cdn.flashcat.cloud/images/png/6e56d7de341737fe495e5ff18eb1af34.png)
  </Step>

  <Step title="发送关联指令">
    在群聊中 @Flashduty 并发送 `linkChat {ID} {ChatName}`，然后选择 **立即关联**。

    ![2025-09-18-13-56-17](https://docs-cdn.flashcat.cloud/images/png/d0beee141db63714ccecb095affee79b.png)
  </Step>

  <Step title="解除群聊关联">
    如需解除该群聊的关联，请在同一群聊中发送 `@Flashduty unlinkChat {ID}`。在响应卡片中选择 **Unlink in FlashDuty** 后，Flashduty 会自动解除关联并显示成功提示。
  </Step>
</Steps>

## 五、消息卡片操作

当故障通知推送到 Microsoft Teams 后，通知卡片可包含以下交互操作；具体可用按钮以您收到的 Flashduty 卡片和后台配置为准：

* **认领（Acknowledge）**：标记您已开始处理该故障
* **解决（Resolve）**：将故障标记为已解决并关闭
* **暂缓（Snooze）**：暂时挂起故障，在指定时间后重新提醒
* **自定义操作（Custom Actions）**：触发您预先配置的自定义操作（如重启服务、回滚变更等）

<Note>
  作战室（War Room）功能目前不支持 Microsoft Teams。如果您需要使用作战室功能，请考虑使用 Slack、飞书、钉钉或企业微信集成。
</Note>

## 六、关联用户

<Steps>
  <Step title="查找应用">
    在 Teams 中打开 **Apps**，找到 **Flashduty**，然后选择 **Open**。

    <Note>
      如果无法找到或打开应用，请联系 Microsoft Teams 管理员。
    </Note>
  </Step>

  <Step title="打开应用">
    点击 **打开应用**。

    ![2025-09-18-13-56-55](https://docs-cdn.flashcat.cloud/images/png/2e6862103d718a913d2b3c449cbf2366.png)
  </Step>

  <Step title="发送关联指令">
    在与 Flashduty 的个人聊天中发送 `linkUser {ID}`，然后选择 **立即关联**。

    ![2025-09-18-13-57-13](https://docs-cdn.flashcat.cloud/images/png/671ae7883bbba839419e539762db99de.png)
  </Step>

  <Step title="解除个人账号关联">
    如需解除您的 Teams 账号关联，请在同一个人聊天中发送 `unlinkUser {ID}`。在响应卡片中选择 **Unlink in FlashDuty** 后，Flashduty 会自动解除关联并显示成功提示。已关联的当前用户也可以前往 **集成中心 → 即时消息 → Microsoft Teams → 关联用户**，点击 **解除我的关联**，再在确认框中选择 **确认**。
  </Step>
</Steps>

## 七、常见问题

<AccordionGroup>
  <Accordion title="团队或个人收不到消息？">
    请前往 集成中心 → 即时消息 → **Microsoft Teams**，检查团队和用户是否已成功关联。
  </Accordion>

  <Accordion title="如何查看已关联的团队和用户？">
    请前往 集成中心 → 即时消息 → **Microsoft Teams**，在 **关联 Teams** 和 **关联用户** 中查看。
  </Accordion>

  <Accordion title="如何取消已关联的团队和用户？">
    请在原始 Teams 上下文中使用对应指令：在 Team 频道中使用 `unlinkTeam {ID}`，在群聊中使用 `unlinkChat {ID}`，或在个人聊天中使用 `unlinkUser {ID}`。在响应卡片中选择 **Unlink in FlashDuty** 后，Flashduty 会自动解除对应关联。已关联的当前用户也可以在 **关联用户** 中点击 **解除我的关联**，再在确认框中选择 **确认**。
  </Accordion>
</AccordionGroup>
