确定通知电子邮件的收件人
Azure DevOps Services | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018
许多因素决定了事件与订阅匹配时电子邮件通知的收件人。 如果你不知道,这些因素可能会导致收件箱收到过多或太少的电子邮件。 了解订阅类型、其传递设置、传递首选项和其他因素如何确定收件人集。
注意
本文中介绍的许多概念适用于早期版本的Azure DevOps,尽管用户界面可能已更改。
自定义个人订阅
使用自定义个人订阅,电子邮件将传递到拥有订阅的用户 的首选电子邮件地址 或订阅上配置的电子邮件地址。
注意
对于本地Azure DevOps Server,请为团队成员配置 SMTP 服务器,以查看其组织或用户配置文件菜单中的“通知”选项并接收通知。
个人订阅的首选电子邮件地址 (默认)

个人订阅上的自定义电子邮件地址

团队和组的交付设置
当团队或组是通知的收件人时,传递设置控制默认传递行为。 订阅配置了一个传递选项,用于查看收件人的传递设置。
可以在团队级别或组织级别管理订阅和传递设置。
组织级别设置
在“组织”设置中,选择“全局通知>订阅者>”你的团队>交付设置。

在“组织”设置中,选择 团队>订阅者>传递设置。

- 从以下设置中进行选择:
传递到电子邮件地址: 通知将传递到特定电子邮件地址。
传递到单个成员: 通知将传递到组或团队的每个成员。 此设置通常是默认选项。 有关默认选项的详细信息,请参阅 团队扩展。
不传递: 默认情况下不会传递通知。

如果未显式选择团队或组的传递设置,则会从 组织级交付设置确定。 默认值为 “传递到单个成员 ”或 “不传递”。
提示
传递设置对话框不指示当前所选内容是显式设置的还是继承的。
自定义团队和组订阅收件人
自定义团队或组订阅的收件人由订阅确定。 但是,对于某些传递选项,团队的默认传递设置用于确定收件人集。

以下传递选项可用于组或团队订阅:
- 按角色划分的团队成员: 收件人是具有所选 (角色之一的团队或组的成员,例如工作项被分配者)
- 团队首选项: 收件人取决于团队或组 (不传递、 首选电子邮件地址或 团队成员)
- 自定义电子邮件地址: 收件人是指定的电子邮件地址
- 团队成员: 收件人是团队或组的所有成员,但选择退出订阅的成员除外。
- SOAP:类似于API 管理,收件人是通过向 SOAP 服务添加电子邮件地址 (订阅) 来指定的。
注意
遵守每个成员的默认传递设置,包括属于团队或组成员的组。

可以从组或团队订阅的以下传递选项中进行选择:
| 选项 | 收件人 |
|---|---|
| 按角色组成的团队成员 | 具有所选角色之一的团队或组的成员,例如工作项被分配者。 |
| 团队首选项 | 由团队或组的交付设置确定, (不传递、首选电子邮件地址或团队成员) 。 |
| 自定义电子邮件地址 | 指定的电子邮件地址。 |
| 团队成员 | 团队或组的成员,但选择退出订阅的成员除外。 |
注意
遵守每个成员的默认传递设置,包括属于团队或组成员的组。
按角色组成的团队成员
电子邮件收件人列表由事件中具有角色的成员确定。 例如,分配工作项的用户具有 分配给 (新) 的角色,而分配工作项的标识具有分配给 上一) (的角色。 每个事件类型的角色的完整列表显示在 受支持的事件类型中。

对于大多数事件类型, “Skip 发起程序”选项控制是否应从收件人集中显式排除启动事件的用户或组。 一般情况下,此选项应为“开”,因为大多数用户不想收到有关其所做操作的通知。
团队首选项
交付选项取自团队的交付设置,可以是以下选项之一:
- 传递到电子邮件地址: 电子邮件将传递到团队的首选电子邮件地址。
- 传送给单个成员: 请参阅以下选项: team_的成员。
- 不交付: 未发送任何电子邮件。

团队的交付设置值显示在 地址 标签之后,无法更改。
自定义电子邮件地址
通知将发送到多个自定义电子邮件地址,这些地址由分号分隔。

团队成员
展开团队或组成员身份以确定电子邮件收件人。 在简单情况下,团队或组将展开到个人列表,每个组都包含在生成的电子邮件的 “To:” 行中。 但是,此扩展的结果可能很复杂,并在 团队和组扩展 部分更详细地解释。

默认订阅收件人
默认订阅的传递选项通常是一个或多个角色。 无法更改这些值。 角色和 Skip 发起程序 选项因事件类型而异。 有关详细信息和可用于每个事件类型的角色列表,请参阅 支持的事件类型。

注意
Skip 发起程序选项不适用于所有事件类型。
电子邮件收件人的团队和组扩展
当团队或组收到通知,并且订阅或传递首选项都适用于所有成员时,必须“展开”团队才能确定实际的电子邮件收件人集。 这是一个潜在的递归过程,首先查看团队的直接成员。
只有 未 选择退出订阅的成员才被视为最终收件人列表。 作为单个用户的任何成员都会添加到收件人列表中。
仅保留Azure DevOps Services组。 对于每个组,将检查组的传递首选项:
- “不交付”:在此组上没有进一步评估,并评估下一个成员组
- “传递到电子邮件地址”:将电子邮件地址添加到最终收件人列表中
- “传送给单个成员”:组 (展开,如其父组) ,并遵循评估其成员的相同规则
方案
让我们看看几个方案。 我们使用以下符号来表示成员的类型:
I:单个用户T:嵌套团队或组A:已启用邮件Azure Active Directory (Azure AD) 组。
| 方案 | 示例 |
|---|---|
| 具有“不传递首选项”的成员 | 团队有成员 I1, I2还有 T1。 T1“传递首选项” 不是传递。 会发生什么情况:仅 I1 通过其 I2 首选电子邮件地址获取通知。 T1未收到通知的成员。 |
| 具有 “传送到单个成员 ”首选项的成员 | 团队有成员 I1, I2还有 T1。 T1“传递首选项”是 传递给单个成员。 T1 具有成员 I2 和 I3. 会发生什么情况: T1 由于其传递首选项) 等 I1,扩展 (, I2并通过 I3 其首选电子邮件地址获得通知。 |
| 嵌套组 | 团队有成员 I1, I2还有 T1。 T1 具有成员 I2, I3以及 T2。 T1“传递首选项” 不是传递。 T2 具有成员 I4 和 I5. T2“传递首选项”是 传递给单个成员。 会发生什么情况:由于T1未展开 (,因为它的传递首选项是“不传递”) ,并且仅I1I2通过其首选电子邮件地址收到通知。 |
| 作为 Azure AD 组的成员 | 团队有成员 I1, I2还有 A1。 会发生什么情况:仅 I1 通过其 I2 首选电子邮件地址获取通知。 A1不会收到通知的成员,因为传递通知时Azure DevOps不会扩展 AD 组。 |