> ## 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.

# XblMultiplayerSessionMember

> XblMultiplayerSessionMember

# XblMultiplayerSessionMember

表示多人游戏会话中成员的只读引用。

## 语法

```cpp theme={null}
typedef struct XblMultiplayerSessionMember {  
    uint32_t MemberId;  
    const char* TeamId;  
    const char* InitialTeam;  
    XblTournamentArbitrationStatus ArbitrationStatus;  
    uint64_t Xuid;  
    const char* CustomConstantsJson;  
    const char* SecureDeviceBaseAddress64;  
    const XblMultiplayerSessionMemberRole* Roles;  
    size_t RolesCount;  
    const char* CustomPropertiesJson;  
    char Gamertag[XBL_GAMERTAG_CHAR_SIZE];  
    XblMultiplayerSessionMemberStatus Status;  
    bool IsTurnAvailable;  
    bool IsCurrentUser;  
    bool InitializeRequested;  
    const char* MatchmakingResultServerMeasurementsJson;  
    const char* ServerMeasurementsJson;  
    const uint32_t* MembersInGroupIds;  
    size_t MembersInGroupCount;  
    const char* QosMeasurementsJson;  
    XblDeviceToken DeviceToken;  
    XblNetworkAddressTranslationSetting Nat;  
    uint32_t ActiveTitleId;  
    uint32_t InitializationEpisode;  
    time_t JoinTime;  
    XblMultiplayerMeasurementFailure InitializationFailureCause;  
    const char** Groups;  
    size_t GroupsCount;  
    const char** Encounters;  
    size_t EncountersCount;  
    XblMultiplayerSessionReference TournamentTeamSessionReference;  
    void* Internal;  
} XblMultiplayerSessionMember  
```

### 成员

*MemberId*\
类型：uint32\_t

此成员的 ID。在此成员所属会话的上下文中唯一。

*TeamId*\
类型：const char\*

此成员在锦标赛中的团队 ID。已弃用。此项将在未来版本中删除。

*InitialTeam*\
类型：const char\*

来自 SmartMatch 的初始团队分配。

*ArbitrationStatus*\
类型：[XblTournamentArbitrationStatus](/reference/live/xsapi-c/multiplayer_c/enums/xbltournamentarbitrationstatus)

锦标赛中成员的仲裁状态。已弃用。此项将在未来版本中删除。

*Xuid*\
类型：uint64\_t

成员的 XBOX 用户 ID。仅在成员已接受时可知。

*CustomConstantsJson*\
类型：const char\*

指定成员自定义常量的 JSON 字符串。

*SecureDeviceBaseAddress64*\
类型：const char\*

成员的 base64 编码安全设备地址。（可选）

*Roles*\
类型：const [XblMultiplayerSessionMemberRole\*](/reference/live/xsapi-c/multiplayer_c/structs/xblmultiplayersessionmemberrole)

此成员的角色数组。（可选）

*RolesCount*\
类型：size\_t

Roles 数组中的条目数。

*CustomPropertiesJson*\
类型：const char\*

指定成员自定义属性的 JSON 字符串。

*Gamertag*\
类型：char\[XBL\_GAMERTAG\_CHAR\_SIZE]

成员的玩家代号。（可选）仅在成员已接受时可知。

*Status*\
类型：[XblMultiplayerSessionMemberStatus](/reference/live/xsapi-c/multiplayer_c/enums/xblmultiplayersessionmemberstatus)

此成员的状态。

*IsTurnAvailable*\
类型：bool

仅当此成员准备好轮到自己时为 true。

*IsCurrentUser*\
类型：bool

指示此 MultiplayerSessionMember 是否为当前用户。

*InitializeRequested*\
类型：bool

指示为该用户运行 QoS 初始化。默认为 false。如果会话没有 “memberInitialization” 部分，则忽略。

*MatchmakingResultServerMeasurementsJson*\
类型：const char\*

当匹配将用户添加到会话时，它可以提供有关如何以及为何将他们匹配到会话中的一些上下文。这是用户从匹配会话中的 serverMeasurements 的副本。

*ServerMeasurementsJson*\
类型：const char\*

按游戏服务器连接字符串进行 QoS 测量。与所有字段一样，“serverMeasurements” 必须作为一个整体进行更新，因此应在测量完成后设置一次。如果为空，则表示没有任何测量在 “serverMeasurementTimeout” 内完成。

*MembersInGroupIds*\
类型：const uint32\_t\*

所在组中 memberId 的集合。如果设置了 “initializationGroup” 列表，则该成员自己的索引在未存在时将始终添加。在托管初始化期间，如果列表中的任何成员失败，此成员也将失败。

*MembersInGroupCount*\
类型：size\_t

MembersInGroupIds 数组中的条目数。

*QosMeasurementsJson*\
类型：const char\*

按安全设备地址进行 QoS 测量。与所有字段一样，“measurements” 必须作为一个整体进行更新。应在测量完成后设置一次，而不是增量更新。如果设置了 “measurements” 对象，则不能包含成员自己地址的条目。

*DeviceToken*\
类型：[XblDeviceToken](/reference/live/xsapi-c/multiplayer_c/structs/xbldevicetoken)

在成员上传安全设备地址时设置。它是一个不区分大小写的字符串，可用于相等性比较。

*Nat*\
类型：[XblNetworkAddressTranslationSetting](/reference/live/xsapi-c/multiplayer_c/enums/xblnetworkaddresstranslationsetting)

这是成员上传安全设备地址时设备的 NAT 设置。

*ActiveTitleId*\
类型：uint32\_t

如果成员处于活动状态，则这是他们所处活动状态的标题 ID。

*InitializationEpisode*\
类型：uint32\_t

此值仅在标题手动管理其自己的 QoS 时读取有用。如果设置了 “memberInitialization” 部分，并且成员是使用 “initialize”:true 添加的，则此项设置为该成员将参与的初始化 episode，否则为 0。用户批量加入会话。初始化 episode 号指示需要针对其执行 QoS 的一组用户。初始化 episode 1 是特殊值，用于在创建时添加到新会话的成员。

*JoinTime*\
类型：time\_t

用户加入会话的时间。如果 “reserved” 为 true，则这是进行预留的时间。

*InitializationFailureCause*\
类型：[XblMultiplayerMeasurementFailure](/reference/live/xsapi-c/multiplayer_c/enums/xblmultiplayermeasurementfailure)

初始化失败的原因；如果没有失败，则为 XblMultiplayerMeasurementFailure::None。在此成员未通过时，从 “joining” 或 “measuring” 阶段过渡出去时设置。

*Groups*\
类型：const char\*\*

当前用户的组名称数组，指示该用户在多人游戏会话期间所属的组。

*GroupsCount*\
类型：size\_t

Groups 数组中的项数。

*Encounters*\
类型：const char\*\*

获取当前用户的组名称列表，指示该用户在多人游戏会话期间遇到的组。

*EncountersCount*\
类型：size\_t

Groups 数组中的项数。

*TournamentTeamSessionReference*\
类型：[XblMultiplayerSessionReference](/reference/live/xsapi-c/multiplayer_c/structs/xblmultiplayersessionreference)

锦标赛团队会话引用。已弃用。此项将在未来版本中删除。

*Internal*\
类型：void\*

仅供内部使用。

## 要求

**头文件：** multiplayer\_c.h

## 另请参阅

[multiplayer\_c](/reference/live/xsapi-c/multiplayer_c/multiplayer_c_members)


## Related topics

- [XblMultiplayerSessionMembers](/zh-CN/reference/live/xsapi-c/multiplayer_c/functions/xblmultiplayersessionmembers.md)
- [XblMultiplayerSessionMemberStatus](/zh-CN/reference/live/xsapi-c/multiplayer_c/enums/xblmultiplayersessionmemberstatus.md)
- [XblMultiplayerMeasurementFailure](/zh-CN/reference/live/xsapi-c/multiplayer_c/enums/xblmultiplayermeasurementfailure.md)
- [XblTournamentArbitrationStatus](/zh-CN/reference/live/xsapi-c/multiplayer_c/enums/xbltournamentarbitrationstatus.md)
- [XblNetworkAddressTranslationSetting](/zh-CN/reference/live/xsapi-c/multiplayer_c/enums/xblnetworkaddresstranslationsetting.md)
