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

# 信誉概述

> 介绍 XBOX Live 信誉作为全局用户统计信息，包括反馈处理、正面奖励以及对多人游戏权限的影响。

信誉是一种用户统计信息，与其他统计信息一样，包含在检索用户所有统计信息并将其用于报告和跟踪的调用中。

* **Reputation** 类表示信誉。
* **ReputationService** 类表示信誉服务。
* 相应的 URI 在 **Reputation URIs** 中进行了描述。

<Info>信誉统计信息在整个服务中是全局的，不依赖于特定游戏。该服务的服务配置 ID (SCID) 是用于访问信誉统计信息的全局 SCID。</Info>

## 信誉功能

* 以相同方式处理反馈和投诉。实体提交有关用户的反馈，此反馈会影响用户的信誉。然后可以将反馈转发给执法团队采取进一步行动。
* 允许用户对其他用户提供反馈。游戏可以自动提交反馈。
* 允许游戏直接访问 API。用户可以直接从游戏内提交反馈，并且是在用户当前所在游戏区域的上下文中。
* 将低信誉处理为影响用户在 XBOX Live 上以及游戏内可以执行的操作。因此，用户必须关注自己的信誉，并在在线游戏中更恰当地表现。
* 允许正面反馈和负面反馈。帮助 XBOX 社区或游戏社区的用户可以因其努力而获得奖励，甚至可能获得特殊权限。
* 派生一个单一的整体信誉，由 **Reputation.OverallReputation** 属性表示，该属性派生自以下信誉类型：
  * 公平游戏。由 **Reputation.FairplayReputation** 属性表示。
  * 通信。由 **Reputation.CommunicationsReputation** 属性表示。
  * 用户生成内容 (UGC)。由 **Reputation.UserGeneratedContentReputation** 属性表示。

有关详细信息，请参阅 **ResetReputation (JSON)**。

## 信誉服务的使用流程

信誉服务的总体流程分为两个阶段：报告信誉和信誉过滤匹配。

## 报告信誉

当针对特定用户报告了足够多的负面反馈时，游戏会设置 **Reputation.OverallReputation 属性** 以指示该用户的信誉不佳（JSON 属性 OverallReputationIsBad）。
如果一段时间内没有投诉，用户的信誉会慢慢改善，曾经信誉不佳的用户有可能再次获得良好信誉。

## 信誉过滤匹配

对于由 XBOX 要求 (XR) 指定的信誉过滤匹配，游戏会检索玩家的 **Reputation.OverallReputation** 属性。此值是一个分数，指示玩家整体信誉的状态。

> **注意：**
> 如果您的游戏在 JSON 文件中查找 `OverallReputationIsBad` 属性但未找到，则可以安全地假定该用户信誉良好。
> 新账户可能出现这种情况，直到处理完针对该用户的反馈。
> 拥有来自其他用户任何反馈的玩家将始终具有信誉统计信息以及 **Reputation.OverallReputation** 属性的值。

## 信誉作为行为指标

信誉提供了用户在系统上行为方式的指标。
例如，此人是否是友好的玩家？
其他会话成员的反馈决定了玩家的信誉。

每个用户在 XBOX Live 上到处都携带着一个信誉分数。
信誉分数在朋友可以看到的社交场所中显眼地展示，以便他们可以对玩家施加同伴压力，使其表现得更好。

例如：

* 信誉分数显示在每个用户的个人资料卡上。系统中的任何人都可以单击一次查看用户的个人资料。
* 信誉分数显示在多人游戏中。当用户一起在线玩游戏时，团队的信誉等于团队中信誉最低玩家的信誉。团队只会与具有类似信誉的其他团队匹配。其他玩家使用信誉来决定该游戏中有哪些类型的玩家，并决定他们是否想加入游戏。

## 信誉的关键要素

游戏可以判断用户是否在公平游戏、通信或用户生成内容 (UGC) 类别上达到了避免我 (Avoid Me) 级别。

如果以下任何一个属性设置为 1，则用户已达到关联类别的避免我级别：

* **Reputation.OverallReputation 属性**。关联的 JSON 属性为 OverallReputationIsBad。
* **Reputation.FairplayReputation 属性**。关联的 JSON 属性为 FairplayReputationIsBad。
* **Reputation.CommunicationsReputation 属性**。关联的 JSON 属性为 CommsReputationIsBad。
* **Reputation.UserGeneratedContentReputation 属性**。关联的 JSON 属性为 UserContentReputationIsBad。

## 好游戏报告

除了报告用户的不当行为外，用户之间还可以互相发送好游戏报告，这些报告可以在游戏中作为对最有价值玩家的投票创建。

## 反馈历史记录

反馈历史记录报告诸如用户上次被举报的时间以及被举报的原因等信息，例如"最近收到了关于通信方式的反馈"。

## 信誉的 XBOX 要求

XBOX 要求 (XR) 068《按信誉过滤匹配》要求将低信誉玩家与高信誉玩家分开。
这是通过查看玩家的 **Reputation.OverallReputation** 值以及玩家在用户统计信息中的 OverallReputationIsBad 属性来实现的。

您的游戏可以通过将 "OverallReputation" 传递给 **UserStatisticsService.GetSingleUserStatisticsAsync 方法 (String, String, String)** 的 *statisticName* 参数来检索用户的信誉。
WinRT 方法调用 **GET (/users/xuid({xuid})/scids/{scid}/stats)**，如以下 JSON 正文所示。

```json theme={null}
    {
      "requestedusers": [
        "2533274792693551"
      ],
      "requestedscids": [
        {
          "scid": "7492baca-c1b4-440d-a391-b7ef364a8d40",
          "requestedstats": [
            "OverallReputationIsBad",
            "FairplayReputationIsBad",
            "CommsReputationIsBad",
            "UserContentReputationIsBad"
          ]
        }
      ]
    }
```

当用户来自其他玩家的反馈达到低水平时，该用户的 OverallReputationIsBad 将被设置为 1。
**Reputation.OverallReputation** 为 1 的人只应与其他 **OverallReputation** 设置为 1 的人匹配。

默认情况下，人们进入对局时通常不必与信誉低的人打交道。
游戏可以选择性地允许信誉良好的玩家选择加入以与低信誉玩家匹配。

有关适用于信誉的最新版本 XR，请参阅 [XBOX 要求](https://learn.microsoft.com/gaming/gdk/docs/services/store/policies/GC-policies-nav)。

## 创建整体信誉不佳的用户用于测试

对于测试，可以设置信誉非常差的用户来测试游戏的匹配过滤实现。
要为用户设置特定值，测试游戏或工具会调用 **POST (/users/xuid({xuid})/resetreputation)**，并提供一个设置用户特定信誉值的 JSON 文件。
有关详细信息，请参阅 **ResetReputation (JSON)**。

例如，以下 JSON 正文将用户的公平游戏信誉设置为非常差的值：

```json theme={null}
    {
      "fairplayReputation": 5,
      "commsReputation": 75,
      "userContentReputation": 75
    }
```

合作伙伴可以为除 RETAIL 之外的所有沙盒进行此调用。
此请求设置用户的基础信誉分数，玩家对正面反馈的权重都将归零。

此调用后用户的实际信誉由这些基础分数加上玩家的大使奖励，再加上玩家的关注者奖励组成。
此机制创建一个分数低且 **Reputation.OverallReputation** 设置为 1 的用户，用于测试匹配过滤 XR。

游戏可以从用户统计信息服务中获取用户的信誉分数，如本文的"信誉的 XBOX 要求"部分所述。

## 将用户的信誉重置为默认值

游戏设置 OverallReputationIsBad 属性以指示用户信誉良好。
它调用 **POST (/users/me/resetreputation)** 并将所有值设置为 75。
对 **/users/xuid({xuid})/deleteuserdata** 的一次调用可用于重置多个 XBOX 用户 ID。

请求正文为：

```json theme={null}
    {
      "xuids": [
        "2814659110958830"
      ]
    }
```

## 从游戏发送反馈

游戏可以发送有关对局中玩家的公平游戏反馈。
这可以直接从游戏发送，也可以从游戏服务批量发送。

游戏可以使用 **ReputationService.SubmitReputationFeedbackAsync 方法**或以下直接 REST 方法：

| 方法          | 终结点                                                         |
| ----------- | ----------------------------------------------------------- |
| 客户端 POST    | `https://reputation.xboxlive.com/users/xuid{XUID}/feedback` |
| 服务（批量） POST | `https://reputation.xboxlive.com:10443/users/batchfeedback` |

有关提交的示例 JSON 正文以及允许字段的定义，请参阅 **Feedback (JSON)**。

## 允许的反馈类型

可以发布的反馈类别在 **Feedback (JSON)** 中定义。

## 游戏应何时发送反馈

当事件对游戏中的玩家体验产生负面影响时，游戏应发送负面反馈。
作为一般规则，游戏应每种类型每轮游戏只发送一个反馈。

例如，游戏应：

1. 每轮只针对一个人发送一次 FairPlayKillsTeammates 反馈项以杀死 3 名或更多队友，而不是每次该人杀死队友时都发送一个事件。

2. 当有人故意提前退出对局时发送 FairplayQuitter 反馈项。

3. 在赛车游戏中当用户逆向行驶时，每场比赛发送一次 FairplayUnsporting 反馈项。

## 另请参阅

* [从游戏发送信誉反馈](/services/xbox-services/community/reputation/concepts/live-sending-reputation-feedback)


## Related topics

- [信誉](/zh-CN/services/xbox-services/community/reputation/live-reputation-nav.md)
- [信誉概念](/zh-CN/services/xbox-services/community/reputation/concepts/live-reputation-concepts-nav.md)
- [社交功能概述](/zh-CN/services/xbox-services/community/live-social-overview.md)
- [XBOX services 概述](/zh-CN/services/xbox-services/fundamentals/live-xbl-overview.md)
- [用户身份](/zh-CN/services/xbox-services/fundamentals/identity/xs-identity-overview.md)
