PartyNetwork::CreateInvitation

排队异步尝试,创建网络邀请。

语法

PartyError CreateInvitation(  
    const PartyLocalUser* localUser,  
    const PartyInvitationConfiguration* invitationConfiguration,  
    void* asyncIdentifier,  
    PartyInvitation** invitation  
)  

参数

localUserPartyLocalUser*

网络中拥有邀请的本地用户。 如果此本地用户出于任何原因离开网络,邀请将自动撤销。

invitationConfigurationPartyInvitationConfiguration*
可选

新创建邀请的可选指定配置。

如果此值为 null,则将使用默认配置值。 默认情况下,PlayFab Party 将为游戏生成唯一的邀请标识符,可撤销性将 PartyInvitationRevocability::Creator,PlayFab 实体 ID 列表将为空,允许任何用户使用邀请加入。

如果提供了配置,则游戏可以选择指定配置上的标识符。 如果标识符为 nullptr 或空字符串,PlayFab Party 库将为游戏生成标识符。 可以保证此生成的标识符,将不同于 PlayFab Party 库将在所有设备上为此网络上的所有未来邀请生成的所有标识符。 游戏可以通过在配置中提供非 null 的非空值来指定自己的标识符。 如果游戏指定标识符,则游戏有责任确保此标识符不会与通过任何设备上的 PartyNetwork::CreateInvitation() 在此网络上创建的未来邀请的标识符冲突。 如果游戏尝试用一个标识符创建一个邀请,而这个标识符与预先存在的邀请冲突,则该异步操作失败,游戏将收到一个PartyInvitationDestroyedStateChange,后跟一个PartyCreateInvitationCompletedStateChange失败结果。

如果提供了配置,则其可撤销性必须为 PartyInvitationRevocability::Creator。

如果提供了配置并且 PlayFab 实体 ID 列表为空,则将允许所有用户使用新邀请加入。

asyncIdentifier void*

一个可选应用定义的指针大小的上下文值,可用于将完成状态更改与此调用关联起来。

invitationPartyInvitation**
可选、库分配的输出

可选的输出邀请,可立即通过 AuthenticateLocalUser()对网络上的用户身份验证进行排队。

返回值

PartyError

c_partyErrorSuccess 如果创建邀请的异步操作已开始,否则为错误代码。 如果此方法失败,则不会生成任何相关的状态更改。 可通过 PartyManager::GetErrorMessage() 检索错误代码的可读形式。

备注

若要加入网络,用户必须提供 AuthenticateLocalUser()的邀请。

此方法为异步尝试排队,以创建网络邀请。 异步操作完成后将提供 PartyCreateInvitationCompletedStateChange,指示成功或失败。 成功后,将事先生成 PartyInvitationCreatedStateChange ,以指示透明云中继服务器已准备好使用邀请的标识符接受身份验证。 失败时,将事先生成一个 PartyInvitationDestvitedStateChange ,以指示邀请对象不再有效,并且将不可通过 GetInvitations()查询。

邀请的生存期与网络中拥有的本地用户成员身份相关联,因此 localUser 必须经过身份验证或正在进行身份验证。 如果 localUser 出于任何原因离开网络,邀请将自动撤销,随后尝试使用该邀请的标识符加入网络将失败,直到使用该标识符创建新邀请。

使用此方法创建的邀请只能通过创建邀请的本地设备上的 GetInvitations() 进行查询。

成功返回后,此方法会使之前由 GetEndpoints()返回的任何数组的内存无效,因为它会同步将新终结点添加到数组中。 PartyManager::StartProcessingStateChanges() 也会使数组的内存无效。 返回的 invitation 对象将一直有效,直到生成 PartyEndpointDestroyedStateChange 并且引用该对象的所有状态更改都已返回到 PartyManager::FinishProcessingStateChanges()

要求

标题: Party.h

另请参阅

PartyNetwork
PartyInvitationRevocability
PartyNetwork::AuthenticateLocalUser
PartyInvitationCreatedStateChange
PartyCreateInvitationCompletedStateChange
PartyInvitationDestroyedStateChange
PartyManager::CreateNewNetwork