exports/ProxyCmdletDefinitions.ps1
# ---------------------------------------------------------------------------------- # Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.10.2, generator: @autorest/powershell@3.0.486) # Changes may cause incorrect behavior and will be lost if the code is regenerated. # ---------------------------------------------------------------------------------- <# .Synopsis Enables the multiplayer server feature for a title. .Description Enables the multiplayer server feature for a title. .Example PS C:\> {{ Add code here }} {{ Add output here }} .Example PS C:\> {{ Add code here }} {{ Add output here }} .Inputs PlayFab.Multiplayer.Models.IEnableMultiplayerServersForTitleRequest .Outputs PlayFab.Multiplayer.Models.IComponents1Lop7EgResponsesEnablemultiplayerserversfortitleresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. ENABLEMULTIPLAYERSERVERSFORTITLEREQUEST <IEnableMultiplayerServersForTitleRequest>: Enables the multiplayer server feature for a title and returns the enabled status. The enabled status can be Initializing, Enabled, and Disabled. It can up to 20 minutes or more for the title to be enabled for the feature. On average, it can take up to 20 minutes for the title to be enabled for the feature. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/enable-pfmultiplayerserver #> function Enable-PfMultiplayerServer { [OutputType([PlayFab.Multiplayer.Models.IComponents1Lop7EgResponsesEnablemultiplayerserversfortitleresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='EnableExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Enable', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IEnableMultiplayerServersForTitleRequest] # Enables the multiplayer server feature for a title and returns the enabled status. # The enabled status can be Initializing, Enabled, and Disabled. # It can up to 20 minutes or more for the title to be enabled for the feature. # On average, it can take up to 20 minutes for the title to be enabled for the feature. # To construct, see NOTES section for ENABLEMULTIPLAYERSERVERSFORTITLEREQUEST properties and create a hash table. ${EnableMultiplayerServersForTitleRequest}, [Parameter(ParameterSetName='EnableExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Enable = 'PlayFabMultiplayerApi.private\Enable-PfMultiplayerServer_Enable'; EnableExpanded = 'PlayFabMultiplayerApi.private\Enable-PfMultiplayerServer_EnableExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Lists archived multiplayer server sessions for a build. .Description Lists archived multiplayer server sessions for a build. .Example PS C:\> Get-PfArchivedMultiplayerServer -BuildId 9968f71f-f3ec-49df-82d7-d00b12c92e12 -Region AustraliaEast | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "MultiplayerServerSummaries": [ { "ConnectedPlayers": [], "LastStateTransitionTime": "2021-02-12T21:33:11.198Z", "Region": "AustraliaEast", "ServerId": "d9dae82c5be383bcba9d2c5faaee4fa2961bbdcb5ca858302b4aa03e74d373b0", "SessionId": null, "State": "Terminated", "VMId": "xcloudeau4u4yyxj4xymu:AustraliaEast:1E03_976a4cde-cb5a-4423-975f-d8e22e5815ce:tvmps_f12e69e1d9bd29bd0dc0a8ba65e251f0eb739c93c541baee571fd289bcb1a1f2_d" }, { "ConnectedPlayers": [], "LastStateTransitionTime": "2021-02-08T22:30:54.261Z", "Region": "AustraliaEast", "ServerId": "19339cb1cff398dc3f5ec9f517a8bf7b12d506fe06348e7642b7ec31ada4b3fd", "SessionId": "0352cf0f-2e7a-4aee-801d-7f27f8344c77", "State": "Terminated", "VMId": "xcloudeau4u4yyxj4xymu:AustraliaEast:1E03_976a4cde-cb5a-4423-975f-d8e22e5815ce:tvmps_f12e69e1d9bd29bd0dc0a8ba65e251f0eb739c93c541baee571fd289bcb1a1f2_d" } ], "PageSize": 2.0, "SkipToken": null }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IListMultiplayerServersRequest .Outputs PlayFab.Multiplayer.Models.IComponents12QgathResponsesListmultiplayerserversresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. LISTMULTIPLAYERSERVERSREQUEST <IListMultiplayerServersRequest>: Returns a list of multiplayer servers for a build in a specific region. BuildId <String>: The guid string build ID of the multiplayer servers to list. Region <String>: The region the multiplayer servers to list. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [PageSize <Single?>]: The page size for the request. [SkipToken <String>]: The skip token for the paged request. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfarchivedmultiplayerserver #> function Get-PfArchivedMultiplayerServer { [OutputType([PlayFab.Multiplayer.Models.IComponents12QgathResponsesListmultiplayerserversresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='ListExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='List', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IListMultiplayerServersRequest] # Returns a list of multiplayer servers for a build in a specific region. # To construct, see NOTES section for LISTMULTIPLAYERSERVERSREQUEST properties and create a hash table. ${ListMultiplayerServersRequest}, [Parameter(ParameterSetName='ListExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The guid string build ID of the multiplayer servers to list. ${BuildId}, [Parameter(ParameterSetName='ListExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The region the multiplayer servers to list. ${Region}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.Single] # The page size for the request. ${PageSize}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The skip token for the paged request. ${SkipToken}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ List = 'PlayFabMultiplayerApi.private\Get-PfArchivedMultiplayerServer_List'; ListExpanded = 'PlayFabMultiplayerApi.private\Get-PfArchivedMultiplayerServer_ListExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Gets a URL that can be used to download the specified asset. A sample pre-authenticated url - https://sampleStorageAccount.blob.core.windows.net/gameassets/gameserver.zip?sv=2015-04-05&ss=b&srt=sco&sp=rw&st=startDate&se=endDate&spr=https&sig=sampleSig&api-version=2017-07-29 .Description Gets a URL that can be used to download the specified asset. A sample pre-authenticated url - https://sampleStorageAccount.blob.core.windows.net/gameassets/gameserver.zip?sv=2015-04-05&ss=b&srt=sco&sp=rw&st=startDate&se=endDate&spr=https&sig=sampleSig&api-version=2017-07-29 .Example PS C:\> {{ Add code here }} {{ Add output here }} .Example PS C:\> {{ Add code here }} {{ Add output here }} .Inputs PlayFab.Multiplayer.Models.IGetAssetDownloadUrlRequest .Outputs PlayFab.Multiplayer.Models.IComponentsC35LhoResponsesGetassetdownloadurlresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. GETASSETDOWNLOADURLREQUEST <IGetAssetDownloadUrlRequest>: Gets a URL that can be used to download the specified asset. FileName <String>: The asset's file name to get the download URL for. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfassetdownloadurl #> function Get-PfAssetDownloadUrl { [OutputType([PlayFab.Multiplayer.Models.IComponentsC35LhoResponsesGetassetdownloadurlresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='GetExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Get', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGetAssetDownloadUrlRequest] # Gets a URL that can be used to download the specified asset. # To construct, see NOTES section for GETASSETDOWNLOADURLREQUEST properties and create a hash table. ${GetAssetDownloadUrlRequest}, [Parameter(ParameterSetName='GetExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The asset's file name to get the download URL for. ${FileName}, [Parameter(ParameterSetName='GetExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Get = 'PlayFabMultiplayerApi.private\Get-PfAssetDownloadUrl_Get'; GetExpanded = 'PlayFabMultiplayerApi.private\Get-PfAssetDownloadUrl_GetExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Lists multiplayer server game assets for a title. .Description Lists multiplayer server game assets for a title. .Example PS C:\>Get-PfAssetSummary | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "AssetSummaries": [ { "FileName": "123.zip", "Metadata": {} }, { "FileName": "BlockyBall-0.0.5.zip", "Metadata": {} } ], "PageSize": 2.0, "SkipToken": null }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IListAssetSummariesRequest .Outputs PlayFab.Multiplayer.Models.IComponents73Gb1RResponsesListassetsummariesresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. LISTASSETSUMMARIESREQUEST <IListAssetSummariesRequest>: Returns a list of multiplayer server game asset summaries for a title. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [PageSize <Single?>]: The page size for the request. [SkipToken <String>]: The skip token for the paged request. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfassetsummary #> function Get-PfAssetSummary { [OutputType([PlayFab.Multiplayer.Models.IComponents73Gb1RResponsesListassetsummariesresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='ListExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='List', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IListAssetSummariesRequest] # Returns a list of multiplayer server game asset summaries for a title. # To construct, see NOTES section for LISTASSETSUMMARIESREQUEST properties and create a hash table. ${ListAssetSummariesRequest}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.Single] # The page size for the request. ${PageSize}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The skip token for the paged request. ${SkipToken}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ List = 'PlayFabMultiplayerApi.private\Get-PfAssetSummary_List'; ListExpanded = 'PlayFabMultiplayerApi.private\Get-PfAssetSummary_ListExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Gets the URL to upload assets to. A sample pre-authenticated url - https://sampleStorageAccount.blob.core.windows.net/gameassets/gameserver.zip?sv=2015-04-05&ss=b&srt=sco&sp=rw&st=startDate&se=endDate&spr=https&sig=sampleSig&api-version=2017-07-29 .Description Gets the URL to upload assets to. A sample pre-authenticated url - https://sampleStorageAccount.blob.core.windows.net/gameassets/gameserver.zip?sv=2015-04-05&ss=b&srt=sco&sp=rw&st=startDate&se=endDate&spr=https&sig=sampleSig&api-version=2017-07-29 .Example PS C:\> Get-PfAssetUploadUrl -FileName assetName.zip | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "AssetUploadUrl": "https://example.blob.core.windows.net/gameassets/assetName5.zip?sv=2015-04-05&ss=b&srt=sco&sp=rw&st=2021-02-16T17%3A50%3A54.1522880Z&se=2021-02-16T23%3A50%3A54.1522869Z&spr=https&sig=06dW11txp76vFjq%2BV9IiXwCSfyQYGHk%2FrKbtiUlbitM%3D&api-version=2018-03-28", "FileName": "assetName.zip" }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IGetAssetUploadUrlRequest .Outputs PlayFab.Multiplayer.Models.IComponentsHvu8TvResponsesGetassetuploadurlresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. GETASSETUPLOADURLREQUEST <IGetAssetUploadUrlRequest>: Gets the URL to upload assets to. FileName <String>: The asset's file name to get the upload URL for. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfassetuploadurl #> function Get-PfAssetUploadUrl { [OutputType([PlayFab.Multiplayer.Models.IComponentsHvu8TvResponsesGetassetuploadurlresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='GetExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Get', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGetAssetUploadUrlRequest] # Gets the URL to upload assets to. # To construct, see NOTES section for GETASSETUPLOADURLREQUEST properties and create a hash table. ${GetAssetUploadUrlRequest}, [Parameter(ParameterSetName='GetExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The asset's file name to get the upload URL for. ${FileName}, [Parameter(ParameterSetName='GetExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Get = 'PlayFabMultiplayerApi.private\Get-PfAssetUploadUrl_Get'; GetExpanded = 'PlayFabMultiplayerApi.private\Get-PfAssetUploadUrl_GetExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Gets a multiplayer server build alias. .Description Gets a multiplayer server build alias. .Example PS C:\> Get-PfBuildAlias | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "BuildAliases": [ { "AliasId": "2aa2c62f-b571-42c6-9d44-895990136d0d", "AliasName": "AliasName", "BuildSelectionCriteria": [ { "BuildWeightDistribution": { "9968f71f-f3ec-49df-82d7-d00b12c92e12": 1 } } ], "PageSize": 0.0, "SkipToken": null }, { "AliasId": "b3903983-8f1e-417b-8370-dd108cccc6b2", "AliasName": "NewAliasName", "BuildSelectionCriteria": [ { "BuildWeightDistribution": { "9968f71f-f3ec-49df-82d7-d00b12c92e12": 2, "0efadb18-8c62-42da-a7f9-4deec9bf47fd": 3 } } ], "PageSize": 0.0, "SkipToken": null } ] }, "Status": "OK" } .Example PS C:\> Get-PfBuildAlias -AliasId eebd660c-2c4e-4ec3-abd7-d639bb329ad0 | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "AliasId": "eebd660c-2c4e-4ec3-abd7-d639bb329ad0", "AliasName": "NewAliasName", "BuildSelectionCriteria": [ { "BuildWeightDistribution": { "9968f71f-f3ec-49df-82d7-d00b12c92e12": 2, "0efadb18-8c62-42da-a7f9-4deec9bf47fd": 3 } } ], "PageSize": 0.0, "SkipToken": null }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IGetBuildAliasRequest .Inputs PlayFab.Multiplayer.Models.IListBuildAliasesRequest .Outputs PlayFab.Multiplayer.Models.IComponents1Ola4KgResponsesBuildaliasdetailsresponseContentApplicationJsonSchema .Outputs PlayFab.Multiplayer.Models.IComponentsAf3SjfResponsesListbuildaliasesresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. GETBUILDALIASREQUEST <IGetBuildAliasRequest>: Returns the details about a multiplayer server build alias. AliasId <String>: The guid string alias ID of the alias to perform the action on. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). LISTBUILDALIASESREQUEST <IListBuildAliasesRequest>: Returns a list of summarized details of all multiplayer server builds for a title. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [PageSize <Single?>]: The page size for the request. [SkipToken <String>]: The skip token for the paged request. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfbuildalias #> function Get-PfBuildAlias { [OutputType([PlayFab.Multiplayer.Models.IComponents1Ola4KgResponsesBuildaliasdetailsresponseContentApplicationJsonSchema], [PlayFab.Multiplayer.Models.IComponentsAf3SjfResponsesListbuildaliasesresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='ListExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Get', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGetBuildAliasRequest] # Returns the details about a multiplayer server build alias. # To construct, see NOTES section for GETBUILDALIASREQUEST properties and create a hash table. ${GetBuildAliasRequest}, [Parameter(ParameterSetName='GetExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The guid string alias ID of the alias to perform the action on. ${AliasId}, [Parameter(ParameterSetName='GetExpanded')] [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='List', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IListBuildAliasesRequest] # Returns a list of summarized details of all multiplayer server builds for a title. # To construct, see NOTES section for LISTBUILDALIASESREQUEST properties and create a hash table. ${ListBuildAliasesRequest}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.Single] # The page size for the request. ${PageSize}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The skip token for the paged request. ${SkipToken}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Get = 'PlayFabMultiplayerApi.private\Get-PfBuildAlias_Get'; GetExpanded = 'PlayFabMultiplayerApi.private\Get-PfBuildAlias_GetExpanded'; List = 'PlayFabMultiplayerApi.private\Get-PfBuildAlias_List'; ListExpanded = 'PlayFabMultiplayerApi.private\Get-PfBuildAlias_ListExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Gets a multiplayer server build. .Description Gets a multiplayer server build. .Example PS C:\> Get-PfBuild | ConvertTo-Json -depth 7 { "Code": 200, "Data": { "BuildSummaries": [ { "BuildId": "5861f6fe-bad6-40a2-87b6-9867bd0d6862", "BuildName": "testLinuxBuildWithPerfMetrics3", "CreationTime": "2020-07-22T00:12:53.674Z", "Metadata": {}, "RegionConfigurations": [ { "CurrentServerStats": { "Active": 0.0, "Propping": 0.0, "StandingBy": 3.0, "Total": 3.0 }, "DynamicStandbySettings": { "DynamicFloorMultiplierThresholds": null, "IsEnabled": false, "RampDownSeconds": null }, "MaxServers": 1.0, "Region": "WestUs", "ScheduledStandbySettings": { "IsEnabled": false, "ScheduleList": null }, "StandbyServers": 1.0, "Status": "Deployed" } ] }, { "BuildId": "9968f71f-f3ec-49df-82d7-d00b12c92e12", "BuildName": "UpdatedBuildname", "CreationTime": "2020-11-17T23:25:02.492Z", "Metadata": {}, "RegionConfigurations": [ { "CurrentServerStats": { "Active": 0.0, "Propping": 0.0, "StandingBy": 1.0, "Total": 1.0 }, "DynamicStandbySettings": { "DynamicFloorMultiplierThresholds": null, "IsEnabled": false, "RampDownSeconds": null }, "MaxServers": 2.0, "Region": "WestUs", "ScheduledStandbySettings": { "IsEnabled": false, "ScheduleList": null }, "StandbyServers": 1.0, "Status": "Deployed" }, { "CurrentServerStats": { "Active": 0.0, "Propping": 0.0, "StandingBy": 1.0, "Total": 1.0 }, "DynamicStandbySettings": { "DynamicFloorMultiplierThresholds": null, "IsEnabled": false, "RampDownSeconds": null }, "MaxServers": 2.0, "Region": "AustraliaEast", "ScheduledStandbySettings": { "IsEnabled": false, "ScheduleList": null }, "StandbyServers": 1.0, "Status": "Deployed" } ] } ] "PageSize": 2.0, "SkipToken": null }, "Status": "OK" } .Example PS C:\> Get-PfBuild -BuildId 9968f71f-f3ec-49df-82d7-d00b12c92e12 | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "AreAssetsReadonly": false, "BuildId": "9968f71f-f3ec-49df-82d7-d00b12c92e12", "BuildName": "UpdatedBuildname", "BuildStatus": "Deployed", "ContainerFlavor": "CustomLinux", "ContainerRunCommand": "", "CreationTime": "2020-11-17T23:25:02.492Z", "CustomGameContainerImage": { "ImageName": "openarena", "Tag": "0.1" }, "GameAssetReferences": [], "GameCertificateReferences": [], "InstrumentationConfiguration": { "ProcessesToMonitor": null }, "Metadata": {}, "MultiplayerServerCountPerVM": 1.0, "OSPlatform": "Linux", "Ports": [ { "Name": "udp", "Num": 27960.0, "Protocol": "UDP" } ], "RegionConfigurations": [ { "CurrentServerStats": { "Active": 0.0, "Propping": 0.0, "StandingBy": 1.0, "Total": 1.0 }, "DynamicStandbySettings": { "DynamicFloorMultiplierThresholds": null, "IsEnabled": false, "RampDownSeconds": null }, "MaxServers": 2.0, "Region": "WestUs", "ScheduledStandbySettings": { "IsEnabled": false, "ScheduleList": null }, "StandbyServers": 1.0, "Status": "Deployed" }, { "CurrentServerStats": { "Active": 0.0, "Propping": 0.0, "StandingBy": 1.0, "Total": 1.0 }, "DynamicStandbySettings": { "DynamicFloorMultiplierThresholds": null, "IsEnabled": false, "RampDownSeconds": null }, "MaxServers": 2.0, "Region": "AustraliaEast", "ScheduledStandbySettings": { "IsEnabled": false, "ScheduleList": null }, "StandbyServers": 1.0, "Status": "Deployed" } ], "ServerType": "Container", "StartMultiplayerServerCommand": null, "UseStreamingForAssetDownloads": false, "VMSize": "Standard_D2_v2" }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IGetBuildRequest .Inputs PlayFab.Multiplayer.Models.IListBuildSummariesRequest .Outputs PlayFab.Multiplayer.Models.IComponents1Ss7K7IResponsesGetbuildresponseContentApplicationJsonSchema .Outputs PlayFab.Multiplayer.Models.IComponents5B91ZxResponsesListbuildsummariesresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. GETBUILDREQUEST <IGetBuildRequest>: Returns the details about a multiplayer server build. BuildId <String>: The guid string build ID of the build to get. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). LISTBUILDSUMMARIESREQUEST <IListBuildSummariesRequest>: Returns a list of summarized details of all multiplayer server builds for a title. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [PageSize <Single?>]: The page size for the request. [SkipToken <String>]: The skip token for the paged request. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfbuild #> function Get-PfBuild { [OutputType([PlayFab.Multiplayer.Models.IComponents1Ss7K7IResponsesGetbuildresponseContentApplicationJsonSchema], [PlayFab.Multiplayer.Models.IComponents5B91ZxResponsesListbuildsummariesresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='ListExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Get', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGetBuildRequest] # Returns the details about a multiplayer server build. # To construct, see NOTES section for GETBUILDREQUEST properties and create a hash table. ${GetBuildRequest}, [Parameter(ParameterSetName='GetExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The guid string build ID of the build to get. ${BuildId}, [Parameter(ParameterSetName='GetExpanded')] [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='List', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IListBuildSummariesRequest] # Returns a list of summarized details of all multiplayer server builds for a title. # To construct, see NOTES section for LISTBUILDSUMMARIESREQUEST properties and create a hash table. ${ListBuildSummariesRequest}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.Single] # The page size for the request. ${PageSize}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The skip token for the paged request. ${SkipToken}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Get = 'PlayFabMultiplayerApi.private\Get-PfBuild_Get'; GetExpanded = 'PlayFabMultiplayerApi.private\Get-PfBuild_GetExpanded'; List = 'PlayFabMultiplayerApi.private\Get-PfBuild_List'; ListExpanded = 'PlayFabMultiplayerApi.private\Get-PfBuild_ListExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Lists multiplayer server game certificates for a title. .Description Lists multiplayer server game certificates for a title. .Example PS C:\> Get-PfCertificateSummary | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "CertificateSummaries": [ { "Name": "BLionRelayCert", "Thumbprint": "04B4B4CDBCD92FDD1114C43C666713B101D10883" }, { "Name": "BumblelionRelayCert", "Thumbprint": "04B4B4CDBCD92FDD1114C43C666713B101D10883" }, { "Name": "BumblelionRelayCertTest", "Thumbprint": "10A883F359B421AEDA1C94780D68B61BF3BCB332" }, { "Name": "BumblelionRelayTemp2c", "Thumbprint": "6F3F3888D01099F2D74D82BEFD4F1CC44627CA7B" }, { "Name": "BumblelionRelayTemp2d", "Thumbprint": "BEA12A7C730C1CC7B579A45AB43BA43E752EE3B0" }, { "Name": "xcloudpasswordtest", "Thumbprint": "C6B0FF39BB838B7CC00733E02CFEEE1826CB1434" } ], "PageSize": 6.0, "SkipToken": null }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IListCertificateSummariesRequest .Outputs PlayFab.Multiplayer.Models.IComponentsZfufn7ResponsesListcertificatesummariesresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. LISTCERTIFICATESUMMARIESREQUEST <IListCertificateSummariesRequest>: Returns a list of multiplayer server game certificates for a title. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [PageSize <Single?>]: The page size for the request. [SkipToken <String>]: The skip token for the paged request. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfcertificatesummary #> function Get-PfCertificateSummary { [OutputType([PlayFab.Multiplayer.Models.IComponentsZfufn7ResponsesListcertificatesummariesresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='ListExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='List', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IListCertificateSummariesRequest] # Returns a list of multiplayer server game certificates for a title. # To construct, see NOTES section for LISTCERTIFICATESUMMARIESREQUEST properties and create a hash table. ${ListCertificateSummariesRequest}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.Single] # The page size for the request. ${PageSize}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The skip token for the paged request. ${SkipToken}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ List = 'PlayFabMultiplayerApi.private\Get-PfCertificateSummary_List'; ListExpanded = 'PlayFabMultiplayerApi.private\Get-PfCertificateSummary_ListExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Lists the tags for a custom container image. .Description Lists the tags for a custom container image. .Example PS C:\> Get-PfContainerImageTag -ImageName exampleContainer | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "Tags": [ "0.1", "0.2", "0.3", "0.4" ] }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IListContainerImageTagsRequest .Outputs PlayFab.Multiplayer.Models.IComponents1Y9Ri2TResponsesListcontainerimagetagsresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. LISTCONTAINERIMAGETAGSREQUEST <IListContainerImageTagsRequest>: Returns a list of the tags for a particular container image that exists in the container registry for a title. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [ImageName <String>]: The container images we want to list tags for. [PageSize <Single?>]: The page size for the request. [SkipToken <String>]: The skip token for the paged request. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfcontainerimagetag #> function Get-PfContainerImageTag { [OutputType([PlayFab.Multiplayer.Models.IComponents1Y9Ri2TResponsesListcontainerimagetagsresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='ListExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='List', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IListContainerImageTagsRequest] # Returns a list of the tags for a particular container image that exists in the container registry for a title. # To construct, see NOTES section for LISTCONTAINERIMAGETAGSREQUEST properties and create a hash table. ${ListContainerImageTagsRequest}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The container images we want to list tags for. ${ImageName}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.Single] # The page size for the request. ${PageSize}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The skip token for the paged request. ${SkipToken}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ List = 'PlayFabMultiplayerApi.private\Get-PfContainerImageTag_List'; ListExpanded = 'PlayFabMultiplayerApi.private\Get-PfContainerImageTag_ListExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Lists custom container images for a title. .Description Lists custom container images for a title. .Example PS C:\> Get-PfContainerImage | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "Images": [ "openarena", "sago007/openarena" ], "PageSize": 2.0, "SkipToken": null }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IListContainerImagesRequest .Outputs PlayFab.Multiplayer.Models.IComponents10N9Lc5ResponsesListcontainerimagesresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. LISTCONTAINERIMAGESREQUEST <IListContainerImagesRequest>: Returns a list of the container images that have been uploaded to the container registry for a title. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [PageSize <Single?>]: The page size for the request. [SkipToken <String>]: The skip token for the paged request. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfcontainerimage #> function Get-PfContainerImage { [OutputType([PlayFab.Multiplayer.Models.IComponents10N9Lc5ResponsesListcontainerimagesresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='ListExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='List', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IListContainerImagesRequest] # Returns a list of the container images that have been uploaded to the container registry for a title. # To construct, see NOTES section for LISTCONTAINERIMAGESREQUEST properties and create a hash table. ${ListContainerImagesRequest}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.Single] # The page size for the request. ${PageSize}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The skip token for the paged request. ${SkipToken}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ List = 'PlayFabMultiplayerApi.private\Get-PfContainerImage_List'; ListExpanded = 'PlayFabMultiplayerApi.private\Get-PfContainerImage_ListExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Gets the credentials to the container registry. .Description Gets the credentials to the container registry. .Example PS C:\> Get-PfContainerRegistryCredentials | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "DnsName": "example.azurecr.io", "Password": "password", "Username": "exampleUsername" }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IGetContainerRegistryCredentialsRequest .Outputs PlayFab.Multiplayer.Models.IComponents14N65SuResponsesGetcontainerregistrycredentialsresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. GETCONTAINERREGISTRYCREDENTIALSREQUEST <IGetContainerRegistryCredentialsRequest>: Gets credentials to the container registry where game developers can upload custom container images to before creating a new build. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfcontainerregistrycredentials #> function Get-PfContainerRegistryCredentials { [OutputType([PlayFab.Multiplayer.Models.IComponents14N65SuResponsesGetcontainerregistrycredentialsresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='GetExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Get', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGetContainerRegistryCredentialsRequest] # Gets credentials to the container registry where game developers can upload custom container images to before creating a new build. # To construct, see NOTES section for GETCONTAINERREGISTRYCREDENTIALSREQUEST properties and create a hash table. ${GetContainerRegistryCredentialsRequest}, [Parameter(ParameterSetName='GetExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Get = 'PlayFabMultiplayerApi.private\Get-PfContainerRegistryCredentials_Get'; GetExpanded = 'PlayFabMultiplayerApi.private\Get-PfContainerRegistryCredentials_GetExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Gets multiplayer server logs after a server has terminated. .Description Gets multiplayer server logs after a server has terminated. .Example PS C:\> Get-PfMultiplayerServerLog -ServerId ad1be2a22073d5eafe58e01fdb4ff0833147adc118aaa4aef35086bb08b95d6c | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "LogDownloadUrl": "https://example.blob.core.windows.net/gamelogs/example" }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IGetMultiplayerServerLogsRequest .Outputs PlayFab.Multiplayer.Models.IComponentsZjlt10ResponsesGetmultiplayerserverlogsresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. GETMULTIPLAYERSERVERLOGSREQUEST <IGetMultiplayerServerLogsRequest>: Gets multiplayer server logs for a specific server id in a region. The logs are available only after a server has terminated. ServerId <String>: The server ID of multiplayer server to get logs for. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfmultiplayerserverlog #> function Get-PfMultiplayerServerLog { [OutputType([PlayFab.Multiplayer.Models.IComponentsZjlt10ResponsesGetmultiplayerserverlogsresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='GetExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Get', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGetMultiplayerServerLogsRequest] # Gets multiplayer server logs for a specific server id in a region. # The logs are available only after a server has terminated. # To construct, see NOTES section for GETMULTIPLAYERSERVERLOGSREQUEST properties and create a hash table. ${GetMultiplayerServerLogsRequest}, [Parameter(ParameterSetName='GetExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The server ID of multiplayer server to get logs for. ${ServerId}, [Parameter(ParameterSetName='GetExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Get = 'PlayFabMultiplayerApi.private\Get-PfMultiplayerServerLog_Get'; GetExpanded = 'PlayFabMultiplayerApi.private\Get-PfMultiplayerServerLog_GetExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Gets multiplayer server session details for a build. .Description Gets multiplayer server session details for a build. .Example PS C:\> Get-PfMultiplayerServer -BuildId 9968f71f-f3ec-49df-82d7-d00b12c92e12 -Region AustraliaEast | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "MultiplayerServerSummaries": [ { "ConnectedPlayers": [], "LastStateTransitionTime": "2021-02-12T15:25:17.395Z", "Region": "AustraliaEast", "ServerId": "02246a097e116ff57bea1ab4f182be8fa4920e4f950742b1919c78a3d011a7a0", "SessionId": null, "State": "StandingBy", "VMId": "xcloudeau4u4yyxj4xymu:AustraliaEast:1E03_976a4cde-cb5a-4423-975f-d8e22e5815ce:tvmps_811b1b0c219bc46f14d5ded077063e2e4b4096072238c3649f2642aa7a9d32ff_d" }, { "ConnectedPlayers": [], "LastStateTransitionTime": "2021-02-08T22:30:54.261Z", "Region": "AustraliaEast", "ServerId": "19339cb1cff398dc3f5ec9f517a8bf7b12d506fe06348e7642b7ec31ada4b3fd", "SessionId": "0352cf0f-2e7a-4aee-801d-7f27f8344c77", "State": "Active", "VMId": "xcloudeau4u4yyxj4xymu:AustraliaEast:1E03_976a4cde-cb5a-4423-975f-d8e22e5815ce:tvmps_f12e69e1d9bd29bd0dc0a8ba65e251f0eb739c93c541baee571fd289bcb1a1f2_d" } ], "PageSize": 1.0, "SkipToken": null }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IGetMultiplayerServerDetailsRequest .Inputs PlayFab.Multiplayer.Models.IListMultiplayerServersRequest .Outputs PlayFab.Multiplayer.Models.IComponents12QgathResponsesListmultiplayerserversresponseContentApplicationJsonSchema .Outputs PlayFab.Multiplayer.Models.IComponents1P1Mp4RResponsesGetmultiplayerserverdetailsresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. GETMULTIPLAYERSERVERDETAILSREQUEST <IGetMultiplayerServerDetailsRequest>: Gets multiplayer server session details for a build in a specific region. SessionId <String>: The title generated guid string session ID of the multiplayer server to get details for. This is to keep track of multiplayer server sessions. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). LISTMULTIPLAYERSERVERSREQUEST <IListMultiplayerServersRequest>: Returns a list of multiplayer servers for a build in a specific region. BuildId <String>: The guid string build ID of the multiplayer servers to list. Region <String>: The region the multiplayer servers to list. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [PageSize <Single?>]: The page size for the request. [SkipToken <String>]: The skip token for the paged request. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfmultiplayerserver #> function Get-PfMultiplayerServer { [OutputType([PlayFab.Multiplayer.Models.IComponents1P1Mp4RResponsesGetmultiplayerserverdetailsresponseContentApplicationJsonSchema], [PlayFab.Multiplayer.Models.IComponents12QgathResponsesListmultiplayerserversresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='GetExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Get', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGetMultiplayerServerDetailsRequest] # Gets multiplayer server session details for a build in a specific region. # To construct, see NOTES section for GETMULTIPLAYERSERVERDETAILSREQUEST properties and create a hash table. ${GetMultiplayerServerDetailsRequest}, [Parameter(ParameterSetName='GetExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The title generated guid string session ID of the multiplayer server to get details for. # This is to keep track of multiplayer server sessions. ${SessionId}, [Parameter(ParameterSetName='GetExpanded')] [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='List', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IListMultiplayerServersRequest] # Returns a list of multiplayer servers for a build in a specific region. # To construct, see NOTES section for LISTMULTIPLAYERSERVERSREQUEST properties and create a hash table. ${ListMultiplayerServersRequest}, [Parameter(ParameterSetName='ListExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The guid string build ID of the multiplayer servers to list. ${BuildId}, [Parameter(ParameterSetName='ListExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The region the multiplayer servers to list. ${Region}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.Single] # The page size for the request. ${PageSize}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The skip token for the paged request. ${SkipToken}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Get = 'PlayFabMultiplayerApi.private\Get-PfMultiplayerServer_Get'; GetExpanded = 'PlayFabMultiplayerApi.private\Get-PfMultiplayerServer_GetExpanded'; List = 'PlayFabMultiplayerApi.private\Get-PfMultiplayerServer_List'; ListExpanded = 'PlayFabMultiplayerApi.private\Get-PfMultiplayerServer_ListExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Gets multiplayer server logs after a server has terminated. .Description Gets multiplayer server logs after a server has terminated. .Example PS C:\> Get-PfMultiplayerSessionLog -SessionId 02bdef0e-e01e-4b29-8efe-ff9f47a06d8c | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "LogDownloadUrl": "https://example.blob.core.windows.net/gamelogs/example" }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IGetMultiplayerSessionLogsBySessionIdRequest .Outputs PlayFab.Multiplayer.Models.IComponentsZjlt10ResponsesGetmultiplayerserverlogsresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. GETMULTIPLAYERSESSIONLOGSBYSESSIONIDREQUEST <IGetMultiplayerSessionLogsBySessionIdRequest>: Gets multiplayer server logs for a specific server id in a region. The logs are available only after a server has terminated. SessionId <String>: The server ID of multiplayer server to get logs for. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfmultiplayersessionlog #> function Get-PfMultiplayerSessionLog { [OutputType([PlayFab.Multiplayer.Models.IComponentsZjlt10ResponsesGetmultiplayerserverlogsresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='GetExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Get', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGetMultiplayerSessionLogsBySessionIdRequest] # Gets multiplayer server logs for a specific server id in a region. # The logs are available only after a server has terminated. # To construct, see NOTES section for GETMULTIPLAYERSESSIONLOGSBYSESSIONIDREQUEST properties and create a hash table. ${GetMultiplayerSessionLogsBySessionIdRequest}, [Parameter(ParameterSetName='GetExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The server ID of multiplayer server to get logs for. ${SessionId}, [Parameter(ParameterSetName='GetExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Get = 'PlayFabMultiplayerApi.private\Get-PfMultiplayerSessionLog_Get'; GetExpanded = 'PlayFabMultiplayerApi.private\Get-PfMultiplayerSessionLog_GetExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Lists quality of service servers for party. .Description Lists quality of service servers for party. .Example PS C:\> Get-PfPartyQosServer | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "PageSize": 6.0, "QosServers": [ { "Region": "WestUs", "ServerUrl": "pfmsqosprod.westus.cloudapp.azure.com" }, { "Region": "SouthCentralUs", "ServerUrl": "xblcxplatqos-scus-9-18-2-0.cloudapp.net" }, { "Region": "CentralUs", "ServerUrl": "xblcxplatqos-cus-9-18-2-0.cloudapp.net" }, { "Region": "NorthCentralUs", "ServerUrl": "pfmsqosprod.northcentralus.cloudapp.azure.com" }, { "Region": "EastUs", "ServerUrl": "xblcxplatqos-eus-9-18-2-0.cloudapp.net" }, { "Region": "EastUs2", "ServerUrl": "pfmsqosprod.eastus2.cloudapp.azure.com" } ], "SkipToken": null }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IListPartyQosServersRequest .Outputs PlayFab.Multiplayer.Models.IComponentsAwzw9QResponsesListpartyqosserversresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. LISTPARTYQOSSERVERSREQUEST <IListPartyQosServersRequest>: Returns a list of quality of service servers for party. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfpartyqosserver #> function Get-PfPartyQosServer { [OutputType([PlayFab.Multiplayer.Models.IComponentsAwzw9QResponsesListpartyqosserversresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='ListExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='List', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IListPartyQosServersRequest] # Returns a list of quality of service servers for party. # To construct, see NOTES section for LISTPARTYQOSSERVERSREQUEST properties and create a hash table. ${ListPartyQosServersRequest}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ List = 'PlayFabMultiplayerApi.private\Get-PfPartyQosServer_List'; ListExpanded = 'PlayFabMultiplayerApi.private\Get-PfPartyQosServer_ListExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Lists quality of service servers for the title. By default, servers are only returned for regions where a Multiplayer Servers build has been deployed. .Description Lists quality of service servers for the title. By default, servers are only returned for regions where a Multiplayer Servers build has been deployed. .Example PS C:\> Get-PfQosServer | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "PageSize": 3.0, "QosServers": [ { "Region": "SouthCentralUs", "ServerUrl": "xblcxplatqos-scus-9-18-2-0.cloudapp.net" }, { "Region": "WestUs", "ServerUrl": "pfmsqosprod.westus.cloudapp.azure.com" }, { "Region": "AustraliaEast", "ServerUrl": "pfmsqosprod.australiaeast.cloudapp.azure.com" } ], "SkipToken": null }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IListQosServersForTitleRequest .Outputs PlayFab.Multiplayer.Models.IComponents1FqnmfdResponsesListqosserversfortitleresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. LISTQOSSERVERSFORTITLEREQUEST <IListQosServersForTitleRequest>: Returns a list of quality of service servers for a title. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [IncludeAllRegions <Boolean?>]: Indicates that the response should contain Qos servers for all regions, including those where there are no builds deployed for the title. [RoutingPreference <String>]: Indicates the Routing Preference used by the Qos servers. The default Routing Preference is Microsoft .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfqosserver #> function Get-PfQosServer { [OutputType([PlayFab.Multiplayer.Models.IComponents1FqnmfdResponsesListqosserversfortitleresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='ListExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='List', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IListQosServersForTitleRequest] # Returns a list of quality of service servers for a title. # To construct, see NOTES section for LISTQOSSERVERSFORTITLEREQUEST properties and create a hash table. ${ListQosServersForTitleRequest}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.Management.Automation.SwitchParameter] # Indicates that the response should contain Qos servers for all regions, including those where there are no builds deployed for the title. ${IncludeAllRegions}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # Indicates the Routing Preference used by the Qos servers. # The default Routing Preference is Microsoft ${RoutingPreference}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ List = 'PlayFabMultiplayerApi.private\Get-PfQosServer_List'; ListExpanded = 'PlayFabMultiplayerApi.private\Get-PfQosServer_ListExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Gets a remote login endpoint to a VM that is hosting a multiplayer server build. .Description Gets a remote login endpoint to a VM that is hosting a multiplayer server build. .Example PS C:\> Get-PfRemoteLoginEndpoint -BuildId 9968f71f-f3ec-49df-82d7-d00b12c92e12 -Region AustraliaEast -VMId xcloudeau4u4yyxj4xymu:AustraliaEast:1E03_976a4cde-cb5a-4423-975f-d8e22e5815ce:tvmps_f12e69e1d9bd29bd0dc0a8ba65e251f0eb739c93c541baee571fd289bcb1a1f2_d | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "Ipv4Address": "20.53.71.180", "Port": 50000.0 }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IGetRemoteLoginEndpointRequest .Outputs PlayFab.Multiplayer.Models.IComponentsVicviwResponsesGetremoteloginendpointresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. GETREMOTELOGINENDPOINTREQUEST <IGetRemoteLoginEndpointRequest>: Gets a remote login endpoint to a VM that is hosting a multiplayer server build in a specific region. BuildId <String>: The guid string build ID of the multiplayer server to get remote login information for. Region <String>: The region of the multiplayer server to get remote login information for. VMId <String>: The virtual machine ID the multiplayer server is located on. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfremoteloginendpoint #> function Get-PfRemoteLoginEndpoint { [OutputType([PlayFab.Multiplayer.Models.IComponentsVicviwResponsesGetremoteloginendpointresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='GetExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Get', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGetRemoteLoginEndpointRequest] # Gets a remote login endpoint to a VM that is hosting a multiplayer server build in a specific region. # To construct, see NOTES section for GETREMOTELOGINENDPOINTREQUEST properties and create a hash table. ${GetRemoteLoginEndpointRequest}, [Parameter(ParameterSetName='GetExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The guid string build ID of the multiplayer server to get remote login information for. ${BuildId}, [Parameter(ParameterSetName='GetExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The region of the multiplayer server to get remote login information for. ${Region}, [Parameter(ParameterSetName='GetExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The virtual machine ID the multiplayer server is located on. ${VMId}, [Parameter(ParameterSetName='GetExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Get = 'PlayFabMultiplayerApi.private\Get-PfRemoteLoginEndpoint_Get'; GetExpanded = 'PlayFabMultiplayerApi.private\Get-PfRemoteLoginEndpoint_GetExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Lists multiplayer server game secrets for a title. .Description Lists multiplayer server game secrets for a title. .Example PS C:\> Get-PfSecretSummary | ConvertTo-Json -depth 5 .Inputs PlayFab.Multiplayer.Models.IListSecretSummariesRequest .Outputs PlayFab.Multiplayer.Models.IComponents9Zn6UResponsesListsecretsummariesresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. LISTSECRETSUMMARIESREQUEST <IListSecretSummariesRequest>: Returns a list of multiplayer server game secrets for a title. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [PageSize <Single?>]: The page size for the request. [SkipToken <String>]: The skip token for the paged request. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfsecretsummary #> function Get-PfSecretSummary { [OutputType([PlayFab.Multiplayer.Models.IComponents9Zn6UResponsesListsecretsummariesresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='ListExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='List', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IListSecretSummariesRequest] # Returns a list of multiplayer server game secrets for a title. # To construct, see NOTES section for LISTSECRETSUMMARIESREQUEST properties and create a hash table. ${ListSecretSummariesRequest}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.Single] # The page size for the request. ${PageSize}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The skip token for the paged request. ${SkipToken}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ List = 'PlayFabMultiplayerApi.private\Get-PfSecretSummary_List'; ListExpanded = 'PlayFabMultiplayerApi.private\Get-PfSecretSummary_ListExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Gets the status of whether a title is enabled for the multiplayer server feature. .Description Gets the status of whether a title is enabled for the multiplayer server feature. .Example PS C:\> Get-PfTitleEnabled | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "Status": "Enabled" }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IGetTitleEnabledForMultiplayerServersStatusRequest .Outputs PlayFab.Multiplayer.Models.IComponents1J8KyqoResponsesGettitleenabledformultiplayerserversstatusresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. GETTITLEENABLEDFORMULTIPLAYERSERVERSSTATUSREQUEST <IGetTitleEnabledForMultiplayerServersStatusRequest>: Gets the status of whether a title is enabled for the multiplayer server feature. The enabled status can be Initializing, Enabled, and Disabled. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pftitleenabled #> function Get-PfTitleEnabled { [OutputType([PlayFab.Multiplayer.Models.IComponents1J8KyqoResponsesGettitleenabledformultiplayerserversstatusresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='GetExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Get', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGetTitleEnabledForMultiplayerServersStatusRequest] # Gets the status of whether a title is enabled for the multiplayer server feature. # The enabled status can be Initializing, Enabled, and Disabled. # To construct, see NOTES section for GETTITLEENABLEDFORMULTIPLAYERSERVERSSTATUSREQUEST properties and create a hash table. ${GetTitleEnabledForMultiplayerServersStatusRequest}, [Parameter(ParameterSetName='GetExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Get = 'PlayFabMultiplayerApi.private\Get-PfTitleEnabled_Get'; GetExpanded = 'PlayFabMultiplayerApi.private\Get-PfTitleEnabled_GetExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Gets a title's server quota change request. .Description Gets a title's server quota change request. .Example PS C:\> {{ Add code here }} {{ Add output here }} .Example PS C:\> {{ Add code here }} {{ Add output here }} .Inputs PlayFab.Multiplayer.Models.IGetTitleMultiplayerServersQuotaChangeRequest .Inputs PlayFab.Multiplayer.Models.IListTitleMultiplayerServersQuotaChangesRequest .Outputs PlayFab.Multiplayer.Models.IComponents1Pfedf1ResponsesGettitlemultiplayerserversquotachangeresponseContentApplicationJsonSchema .Outputs PlayFab.Multiplayer.Models.IComponents1Up6CpyResponsesListtitlemultiplayerserversquotachangesresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. GETTITLEMULTIPLAYERSERVERSQUOTACHANGEREQUEST <IGetTitleMultiplayerServersQuotaChangeRequest>: Gets a title's server quota change request. RequestId <String>: Id of the change request to get. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). LISTTITLEMULTIPLAYERSERVERSQUOTACHANGESREQUEST <IListTitleMultiplayerServersQuotaChangesRequest>: List all server quota change requests for a title. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pftitlemultiplayerserverquotachange #> function Get-PfTitleMultiplayerServerQuotaChange { [OutputType([PlayFab.Multiplayer.Models.IComponents1Pfedf1ResponsesGettitlemultiplayerserversquotachangeresponseContentApplicationJsonSchema], [PlayFab.Multiplayer.Models.IComponents1Up6CpyResponsesListtitlemultiplayerserversquotachangesresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='ListExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Get', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGetTitleMultiplayerServersQuotaChangeRequest] # Gets a title's server quota change request. # To construct, see NOTES section for GETTITLEMULTIPLAYERSERVERSQUOTACHANGEREQUEST properties and create a hash table. ${GetTitleMultiplayerServersQuotaChangeRequest}, [Parameter(ParameterSetName='GetExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # Id of the change request to get. ${RequestId}, [Parameter(ParameterSetName='GetExpanded')] [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='List', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IListTitleMultiplayerServersQuotaChangesRequest] # List all server quota change requests for a title. # To construct, see NOTES section for LISTTITLEMULTIPLAYERSERVERSQUOTACHANGESREQUEST properties and create a hash table. ${ListTitleMultiplayerServersQuotaChangesRequest}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Get = 'PlayFabMultiplayerApi.private\Get-PfTitleMultiplayerServerQuotaChange_Get'; GetExpanded = 'PlayFabMultiplayerApi.private\Get-PfTitleMultiplayerServerQuotaChange_GetExpanded'; List = 'PlayFabMultiplayerApi.private\Get-PfTitleMultiplayerServerQuotaChange_List'; ListExpanded = 'PlayFabMultiplayerApi.private\Get-PfTitleMultiplayerServerQuotaChange_ListExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Gets the quotas for a title in relation to multiplayer servers. .Description Gets the quotas for a title in relation to multiplayer servers. .Example PS C:\> Get-PfTitleMultiplayerServerQuota | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "Quota": { "CoreCapacities": [ { "Available": 64.0, "Region": "EastUs", "Total": 64.0, "VMFamily": "Av2" }, { "Available": 1024.0, "Region": "NorthCentralUs", "Total": 1024.0, "VMFamily": "Dv2" }, { "Available": 64.0, "Region": "WestEurope", "Total": 64.0, "VMFamily": "F" }, { "Available": 16.0, "Region": "WestEurope", "Total": 16.0, "VMFamily": "Fsv2" }, { "Available": 598.0, "Region": "WestUs", "Total": 600.0, "VMFamily": "Dasv4" } ] } }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IGetTitleMultiplayerServersQuotasRequest .Outputs PlayFab.Multiplayer.Models.IComponents1Vit3ZResponsesGettitlemultiplayerserversquotasresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. GETTITLEMULTIPLAYERSERVERSQUOTASREQUEST <IGetTitleMultiplayerServersQuotasRequest>: Gets the quotas for a title in relation to multiplayer servers. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pftitlemultiplayerserverquota #> function Get-PfTitleMultiplayerServerQuota { [OutputType([PlayFab.Multiplayer.Models.IComponents1Vit3ZResponsesGettitlemultiplayerserversquotasresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='GetExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Get', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGetTitleMultiplayerServersQuotasRequest] # Gets the quotas for a title in relation to multiplayer servers. # To construct, see NOTES section for GETTITLEMULTIPLAYERSERVERSQUOTASREQUEST properties and create a hash table. ${GetTitleMultiplayerServersQuotasRequest}, [Parameter(ParameterSetName='GetExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Get = 'PlayFabMultiplayerApi.private\Get-PfTitleMultiplayerServerQuota_Get'; GetExpanded = 'PlayFabMultiplayerApi.private\Get-PfTitleMultiplayerServerQuota_GetExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Lists virtual machines for a title. .Description Lists virtual machines for a title. .Example PS C:\> Get-PfVirtualMachineSummary -BuildId 9968f71f-f3ec-49df-82d7-d00b12c92e12 -Region AustraliaEast | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "PageSize": 2.0, "SkipToken": null, "VirtualMachines": [ { "HealthStatus": "Healthy", "State": "Running", "VMId": "xcloudeau4u4yyxj4xymu:AustraliaEast:1E03_976a4cde-cb5a-4423-975f-d8e22e5815ce:tvmps_811b1b0c219bc46f14d5ded077063e2e4b4096072238c3649f2642aa7a9d32ff_d" }, { "HealthStatus": "Healthy", "State": "Running", "VMId": "xcloudeau4u4yyxj4xymu:AustraliaEast:1E03_976a4cde-cb5a-4423-975f-d8e22e5815ce:tvmps_f12e69e1d9bd29bd0dc0a8ba65e251f0eb739c93c541baee571fd289bcb1a1f2_d" } ] }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IListVirtualMachineSummariesRequest .Outputs PlayFab.Multiplayer.Models.IComponents1Oxvs1QResponsesListvirtualmachinesummariesresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. LISTVIRTUALMACHINESUMMARIESREQUEST <IListVirtualMachineSummariesRequest>: Returns a list of virtual machines for a title. BuildId <String>: The guid string build ID of the virtual machines to list. Region <String>: The region of the virtual machines to list. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [PageSize <Single?>]: The page size for the request. [SkipToken <String>]: The skip token for the paged request. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/get-pfvirtualmachinesummary #> function Get-PfVirtualMachineSummary { [OutputType([PlayFab.Multiplayer.Models.IComponents1Oxvs1QResponsesListvirtualmachinesummariesresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='ListExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='List', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IListVirtualMachineSummariesRequest] # Returns a list of virtual machines for a title. # To construct, see NOTES section for LISTVIRTUALMACHINESUMMARIESREQUEST properties and create a hash table. ${ListVirtualMachineSummariesRequest}, [Parameter(ParameterSetName='ListExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The guid string build ID of the virtual machines to list. ${BuildId}, [Parameter(ParameterSetName='ListExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The region of the virtual machines to list. ${Region}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.Single] # The page size for the request. ${PageSize}, [Parameter(ParameterSetName='ListExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The skip token for the paged request. ${SkipToken}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ List = 'PlayFabMultiplayerApi.private\Get-PfVirtualMachineSummary_List'; ListExpanded = 'PlayFabMultiplayerApi.private\Get-PfVirtualMachineSummary_ListExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Untags a container image. .Description Untags a container image. .Example PS C:\> Invoke-PfImageUntagContainer -ImageName exampleContainerImage -Tag 0.1 | ConvertTo-Json -depth 5 { "Code": 200, "Data": {}, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IUntagContainerImageRequest .Outputs PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. UNTAGCONTAINERIMAGEREQUEST <IUntagContainerImageRequest>: Removes the specified tag from the image. After this operation, a 'docker pull' will fail for the specified image and tag combination. Morever, ListContainerImageTags will not return the specified tag. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [ImageName <String>]: The container image which tag we want to remove. [Tag <String>]: The tag we want to remove. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/invoke-pfimageuntagcontainer #> function Invoke-PfImageUntagContainer { [OutputType([PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='ImageExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Image', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IUntagContainerImageRequest] # Removes the specified tag from the image. # After this operation, a 'docker pull' will fail for the specified image and tag combination. # Morever, ListContainerImageTags will not return the specified tag. # To construct, see NOTES section for UNTAGCONTAINERIMAGEREQUEST properties and create a hash table. ${UntagContainerImageRequest}, [Parameter(ParameterSetName='ImageExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='ImageExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The container image which tag we want to remove. ${ImageName}, [Parameter(ParameterSetName='ImageExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The tag we want to remove. ${Tag}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Image = 'PlayFabMultiplayerApi.private\Invoke-PfImageUntagContainer_Image'; ImageExpanded = 'PlayFabMultiplayerApi.private\Invoke-PfImageUntagContainer_ImageExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Rolls over the credentials to the container registry. .Description Rolls over the credentials to the container registry. .Example PS C:\> Invoke-PfRolloverContainerRegistryCredentials | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "DnsName": "example.azurecr.io", "Password": "newPassword", "Username": "newUsername" }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IRolloverContainerRegistryCredentialsRequest .Outputs PlayFab.Multiplayer.Models.IComponents1Xbtl3TResponsesRollovercontainerregistrycredentialsresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. ROLLOVERCONTAINERREGISTRYCREDENTIALSREQUEST <IRolloverContainerRegistryCredentialsRequest>: Gets new credentials to the container registry where game developers can upload custom container images to before creating a new build. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/invoke-pfrollovercontainerregistrycredentials #> function Invoke-PfRolloverContainerRegistryCredentials { [OutputType([PlayFab.Multiplayer.Models.IComponents1Xbtl3TResponsesRollovercontainerregistrycredentialsresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='RolloverExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Rollover', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IRolloverContainerRegistryCredentialsRequest] # Gets new credentials to the container registry where game developers can upload custom container images to before creating a new build. # To construct, see NOTES section for ROLLOVERCONTAINERREGISTRYCREDENTIALSREQUEST properties and create a hash table. ${RolloverContainerRegistryCredentialsRequest}, [Parameter(ParameterSetName='RolloverExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Rollover = 'PlayFabMultiplayerApi.private\Invoke-PfRolloverContainerRegistryCredentials_Rollover'; RolloverExpanded = 'PlayFabMultiplayerApi.private\Invoke-PfRolloverContainerRegistryCredentials_RolloverExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Uploads a multiplayer server game certificate. .Description Uploads a multiplayer server game certificate. .Example PS C:\> $base64string = [Convert]::ToBase64String([IO.File]::ReadAllBytes('.\certificate.pfx')) PS C:\> $gameCertificate = @{ Name = "MyCert"; Base64EncodedValue = $base64string; Password = "password" } PS C:\> Invoke-PfUploadCertificate -GameCertificate $gameCertificate | ConvertTo-Json -depth 5 { "Code": 200, "Data": {}, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IUploadCertificateRequest .Outputs PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. GAMECERTIFICATE <ICertificate>: The game certificate to upload. Base64EncodedValue <String>: Base64 encoded string contents of the certificate. Name <String>: A name for the certificate. This is used to reference certificates in build configurations. [Password <String>]: If required for your PFX certificate, use this field to provide a password that will be used to install the certificate on the container. UPLOADCERTIFICATEREQUEST <IUploadCertificateRequest>: Uploads a multiplayer server game certificate. GameCertificate <ICertificate>: The game certificate to upload. Base64EncodedValue <String>: Base64 encoded string contents of the certificate. Name <String>: A name for the certificate. This is used to reference certificates in build configurations. [Password <String>]: If required for your PFX certificate, use this field to provide a password that will be used to install the certificate on the container. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [ForceUpdate <Boolean?>]: Forces the certificate renewal if the certificate already exists. Default is false .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/invoke-pfuploadcertificate #> function Invoke-PfUploadCertificate { [OutputType([PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='Upload', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Upload', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IUploadCertificateRequest] # Uploads a multiplayer server game certificate. # To construct, see NOTES section for UPLOADCERTIFICATEREQUEST properties and create a hash table. ${UploadCertificateRequest}, [Parameter(ParameterSetName='UploadExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.ICertificate] # The game certificate to upload. # To construct, see NOTES section for GAMECERTIFICATE properties and create a hash table. ${GameCertificate}, [Parameter(ParameterSetName='UploadExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='UploadExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.Management.Automation.SwitchParameter] # Forces the certificate renewal if the certificate already exists. # Default is false ${ForceUpdate}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Upload = 'PlayFabMultiplayerApi.private\Invoke-PfUploadCertificate_Upload'; UploadExpanded = 'PlayFabMultiplayerApi.private\Invoke-PfUploadCertificate_UploadExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Uploads a multiplayer server game secret. .Description Uploads a multiplayer server game secret. .Example PS C:\> $gameSecret = @{ Name = "MySecret"; Value = "MySecretValue"; ExpirationDate = "2026-01-01" } PS C:\> Invoke-PfUploadSecret -GameSecret $gameSecret | ConvertTo-Json -depth 5 .Inputs PlayFab.Multiplayer.Models.IUploadSecretRequest .Outputs PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. GAMESECRET <ISecret>: The game secret to add. Name <String>: A name for the secret. This is used to reference secrets in build configurations. Value <String>: Secret value. [ExpirationDate <String>]: Optional secret expiration date. UPLOADSECRETREQUEST <IUploadSecretRequest>: Uploads a multiplayer server game secret. GameSecret <ISecret>: The game secret to add. Name <String>: A name for the secret. This is used to reference secrets in build configurations. Value <String>: Secret value. [ExpirationDate <String>]: Optional secret expiration date. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [ForceUpdate <Boolean?>]: Forces the secret renewal if the secret already exists. Default is false .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/invoke-pfuploadsecret #> function Invoke-PfUploadSecret { [OutputType([PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='Upload', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Upload', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IUploadSecretRequest] # Uploads a multiplayer server game secret. # To construct, see NOTES section for UPLOADSECRETREQUEST properties and create a hash table. ${UploadSecretRequest}, [Parameter(ParameterSetName='UploadExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.ISecret] # The game secret to add. # To construct, see NOTES section for GAMESECRET properties and create a hash table. ${GameSecret}, [Parameter(ParameterSetName='UploadExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='UploadExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.Management.Automation.SwitchParameter] # Forces the secret renewal if the secret already exists. # Default is false ${ForceUpdate}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Upload = 'PlayFabMultiplayerApi.private\Invoke-PfUploadSecret_Upload'; UploadExpanded = 'PlayFabMultiplayerApi.private\Invoke-PfUploadSecret_UploadExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Creates a multiplayer server build alias. .Description Creates a multiplayer server build alias. .Example PS C:\> $buildWeightDistribution = @{ "9968f71f-f3ec-49df-82d7-d00b12c92e12" = 2; "0efadb18-8c62-42da-a7f9-4deec9bf47fd" = 3 } PS C:\> New-PfBuildAlias -AliasName NewAliasName -BuildSelectionCriteria @(@{ "BuildWeightDistribution" = $buildWeightDistribution}) | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "AliasId": "38be54ef-a3e1-442e-8c3c-bbd2e8aa4503", "AliasName": "NewAliasName", "BuildSelectionCriteria": [ { "BuildWeightDistribution": { "9968f71f-f3ec-49df-82d7-d00b12c92e12": 2, "0efadb18-8c62-42da-a7f9-4deec9bf47fd": 3 } } ], "PageSize": 0.0, "SkipToken": null }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.ICreateBuildAliasRequest .Outputs PlayFab.Multiplayer.Models.IComponents1Ola4KgResponsesBuildaliasdetailsresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. BUILDSELECTIONCRITERIA <IBuildSelectionCriterion[]>: Array of build selection criteria. [BuildWeightDistribution <IAny>]: Dictionary of build ids and their respective weights for distribution of allocation requests. CREATEBUILDALIASREQUEST <ICreateBuildAliasRequest>: Creates a multiplayer server build alias and returns the created alias. AliasName <String>: The alias name. [BuildSelectionCriteria <IBuildSelectionCriterion[]>]: Array of build selection criteria. [BuildWeightDistribution <IAny>]: Dictionary of build ids and their respective weights for distribution of allocation requests. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/new-pfbuildalias #> function New-PfBuildAlias { [OutputType([PlayFab.Multiplayer.Models.IComponents1Ola4KgResponsesBuildaliasdetailsresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Create', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.ICreateBuildAliasRequest] # Creates a multiplayer server build alias and returns the created alias. # To construct, see NOTES section for CREATEBUILDALIASREQUEST properties and create a hash table. ${CreateBuildAliasRequest}, [Parameter(ParameterSetName='CreateExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The alias name. ${AliasName}, [Parameter(ParameterSetName='CreateExpanded')] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IBuildSelectionCriterion[]] # Array of build selection criteria. # To construct, see NOTES section for BUILDSELECTIONCRITERIA properties and create a hash table. ${BuildSelectionCriteria}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Create = 'PlayFabMultiplayerApi.private\New-PfBuildAlias_Create'; CreateExpanded = 'PlayFabMultiplayerApi.private\New-PfBuildAlias_CreateExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Creates a multiplayer server build with a custom container. .Description Creates a multiplayer server build with a custom container. .Example PS C:\> $ports = @( @{ Name = 'tcp_port'; Num = 8080; Protocol = 'TCP' }, @{ Name = 'udp_port'; Num = 8081; Protocol = 'UDP' } ) PS C:\> $regions = @( @{ 'MaxServers' = 20; 'Region' = 'AustraliaEast'; StandbyServers = 2; 'ScheduledStandbySettings' = $NULL } ) PS C:\> $containerImageReference = @{ ImageName = "openarena"; Tag = "0.2" } PS C:\> New-PfBuildWithCustomContainer -BuildName ExampleBuild -ContainerFlavor CustomLinux -ContainerImageReference $containerImageReference -VMSize Standard_D2as_v4 -MultiplayerServerCountPerVM 2 -Ports $ports -RegionConfigurations $regions | ConvertTo-Json -depth 10 .Inputs PlayFab.Multiplayer.Models.ICreateBuildWithCustomContainerRequest .Outputs PlayFab.Multiplayer.Models.IComponentsXnbwy4ResponsesCreatebuildwithcustomcontainerresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. CONTAINERIMAGEREFERENCE <IContainerImageReference>: The container reference, consisting of the image name and tag. ImageName <String>: The container image name. [Tag <String>]: The container tag. CREATEBUILDWITHCUSTOMCONTAINERREQUEST <ICreateBuildWithCustomContainerRequest>: Creates a multiplayer server build with a custom container and returns information about the build creation request. BuildName <String>: The build name. MultiplayerServerCountPerVM <Single>: The number of multiplayer servers to host on a single VM. Ports <IPort[]>: The ports to map the build on. Name <String>: The name for the port. Num <Single>: The number for the port. Protocol <String>: The protocol for the port. RegionConfigurations <IBuildRegionParams[]>: The region configurations for the build. MaxServers <Single>: The maximum number of multiplayer servers for the region. Region <String>: The build region. StandbyServers <Single>: The number of standby multiplayer servers for the region. [DynamicStandbySettings <IDynamicStandbySettings>]: Optional settings to control dynamic adjustment of standby target. If not specified, dynamic standby is disabled IsEnabled <Boolean>: When true, dynamic standby will be enabled [DynamicFloorMultiplierThresholds <IDynamicStandbyThreshold[]>]: List of auto standing by trigger values and corresponding standing by multiplier. Defaults to 1.5X at 50%, 3X at 25%, and 4X at 5% Multiplier <Single>: When the trigger threshold is reached, multiply by this value TriggerThresholdPercentage <Single>: The multiplier will be applied when the actual standby divided by target standby floor is less than this value [RampDownSeconds <Single?>]: The time it takes to reduce target standing by to configured floor value after an increase. Defaults to 30 minutes [MultiplayerServerCountPerVM <Single?>]: Regional override for the number of multiplayer servers to host on a single VM of the build. [ScheduledStandbySettings <IScheduledStandbySettings>]: Optional settings to set the standby target to specified values during the supplied schedules IsEnabled <Boolean>: When true, scheduled standby will be enabled [ScheduleList <ISchedule[]>]: A list of non-overlapping schedules EndTime <String>: The date and time in UTC at which the schedule ends. If IsRecurringWeekly is true, this schedule will keep renewing for future weeks until disabled or removed. IsDisabled <Boolean>: Disables the schedule. IsRecurringWeekly <Boolean>: If true, the StartTime and EndTime will get renewed every week. StartTime <String>: The date and time in UTC at which the schedule starts. TargetStandby <Single>: The standby target to maintain for the duration of the schedule. [Description <String>]: A short description about this schedule. For example, "Game launch on July 15th". [VMSize <String>]: Regional override for the VM size the build was created on. [AreAssetsReadonly <Boolean?>]: When true, assets will not be copied for each server inside the VM. All serverswill run from the same set of assets, or will have the same assets mounted in the container. [ContainerFlavor <String>]: The flavor of container to create a build from. [ContainerImageReference <IContainerImageReference>]: The container reference, consisting of the image name and tag. ImageName <String>: The container image name. [Tag <String>]: The container tag. [ContainerRunCommand <String>]: The container command to run when the multiplayer server has been allocated, including any arguments. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [GameAssetReferences <IAssetReferenceParams[]>]: The list of game assets related to the build. FileName <String>: The asset's file name. [MountPath <String>]: The asset's mount path. [GameCertificateReferences <IGameCertificateReferenceParams[]>]: The game certificates for the build. GsdkAlias <String>: An alias for the game certificate. The game server will reference this alias via GSDK config to retrieve the game certificate. This alias is used as an identifier in game server code to allow a new certificate with different Name field to be uploaded without the need to change any game server code to reference the new Name. Name <String>: The name of the game certificate. This name should match the name of a certificate that was previously uploaded to this title. [GameSecretReferences <IGameSecretReferenceParams[]>]: The game secrets for the build. Name <String>: The name of the game secret. This name should match the name of a secret that was previously added to this title. [LinuxInstrumentationConfiguration <ILinuxInstrumentationConfiguration>]: The Linux instrumentation configuration for the build. IsEnabled <Boolean>: Designates whether Linux instrumentation configuration will be enabled for this Build [Metadata <IAny>]: Metadata to tag the build. The keys are case insensitive. The build metadata is made available to the server through Game Server SDK (GSDK).Constraints: Maximum number of keys: 30, Maximum key length: 50, Maximum value length: 100 [MonitoringApplicationConfiguration <IMonitoringApplicationConfigurationParams>]: The configuration for the monitoring application on the build AssetReference <IAssetReferenceParams>: Asset which contains the monitoring application files and scripts. ExecutionScriptName <String>: Execution script name, this will be the main executable for the monitoring application. [InstallationScriptName <String>]: Installation script name, this will be run before the ExecutionScript. [OnStartRuntimeInMinutes <Single?>]: Timespan the monitoring application will be kept alive when running from the start of the VM [ServerResourceConstraints <IServerResourceConstraintParams>]: The resource constraints to apply to each server on the VM (EXPERIMENTAL API) CpuLimit <Single>: The maximum number of cores that each server is allowed to use. MemoryLimitGb <Single>: The maximum number of GiB of memory that each server is allowed to use. WARNING: After exceeding this limit, the server will be killed [VMSize <String>]: The VM size to create the build on. [VMStartupScriptConfiguration <IVMStartupScriptParams>]: The configuration for the VmStartupScript for the build VMStartupScriptAssetReference <IAssetReferenceParams>: Asset which contains the VmStartupScript script and any other required files. [PortRequests <IVMStartupScriptPortRequestParams[]>]: Optional port requests (name/protocol) that will be used by the VmStartupScript. Max of 5 requests. Name <String>: The name for the port. Protocol <String>: The protocol for the port. GAMEASSETREFERENCES <IAssetReferenceParams[]>: The list of game assets related to the build. FileName <String>: The asset's file name. [MountPath <String>]: The asset's mount path. GAMECERTIFICATEREFERENCES <IGameCertificateReferenceParams[]>: The game certificates for the build. GsdkAlias <String>: An alias for the game certificate. The game server will reference this alias via GSDK config to retrieve the game certificate. This alias is used as an identifier in game server code to allow a new certificate with different Name field to be uploaded without the need to change any game server code to reference the new Name. Name <String>: The name of the game certificate. This name should match the name of a certificate that was previously uploaded to this title. GAMESECRETREFERENCES <IGameSecretReferenceParams[]>: The game secrets for the build. Name <String>: The name of the game secret. This name should match the name of a secret that was previously added to this title. LINUXINSTRUMENTATIONCONFIGURATION <ILinuxInstrumentationConfiguration>: The Linux instrumentation configuration for the build. IsEnabled <Boolean>: Designates whether Linux instrumentation configuration will be enabled for this Build MONITORINGAPPLICATIONCONFIGURATION <IMonitoringApplicationConfigurationParams>: The configuration for the monitoring application on the build AssetReference <IAssetReferenceParams>: Asset which contains the monitoring application files and scripts. FileName <String>: The asset's file name. [MountPath <String>]: The asset's mount path. ExecutionScriptName <String>: Execution script name, this will be the main executable for the monitoring application. [InstallationScriptName <String>]: Installation script name, this will be run before the ExecutionScript. [OnStartRuntimeInMinutes <Single?>]: Timespan the monitoring application will be kept alive when running from the start of the VM PORTS <IPort[]>: The ports to map the build on. Name <String>: The name for the port. Num <Single>: The number for the port. Protocol <String>: The protocol for the port. REGIONCONFIGURATIONS <IBuildRegionParams[]>: The region configurations for the build. MaxServers <Single>: The maximum number of multiplayer servers for the region. Region <String>: The build region. StandbyServers <Single>: The number of standby multiplayer servers for the region. [DynamicStandbySettings <IDynamicStandbySettings>]: Optional settings to control dynamic adjustment of standby target. If not specified, dynamic standby is disabled IsEnabled <Boolean>: When true, dynamic standby will be enabled [DynamicFloorMultiplierThresholds <IDynamicStandbyThreshold[]>]: List of auto standing by trigger values and corresponding standing by multiplier. Defaults to 1.5X at 50%, 3X at 25%, and 4X at 5% Multiplier <Single>: When the trigger threshold is reached, multiply by this value TriggerThresholdPercentage <Single>: The multiplier will be applied when the actual standby divided by target standby floor is less than this value [RampDownSeconds <Single?>]: The time it takes to reduce target standing by to configured floor value after an increase. Defaults to 30 minutes [MultiplayerServerCountPerVM <Single?>]: Regional override for the number of multiplayer servers to host on a single VM of the build. [ScheduledStandbySettings <IScheduledStandbySettings>]: Optional settings to set the standby target to specified values during the supplied schedules IsEnabled <Boolean>: When true, scheduled standby will be enabled [ScheduleList <ISchedule[]>]: A list of non-overlapping schedules EndTime <String>: The date and time in UTC at which the schedule ends. If IsRecurringWeekly is true, this schedule will keep renewing for future weeks until disabled or removed. IsDisabled <Boolean>: Disables the schedule. IsRecurringWeekly <Boolean>: If true, the StartTime and EndTime will get renewed every week. StartTime <String>: The date and time in UTC at which the schedule starts. TargetStandby <Single>: The standby target to maintain for the duration of the schedule. [Description <String>]: A short description about this schedule. For example, "Game launch on July 15th". [VMSize <String>]: Regional override for the VM size the build was created on. SERVERRESOURCECONSTRAINTS <IServerResourceConstraintParams>: The resource constraints to apply to each server on the VM (EXPERIMENTAL API) CpuLimit <Single>: The maximum number of cores that each server is allowed to use. MemoryLimitGb <Single>: The maximum number of GiB of memory that each server is allowed to use. WARNING: After exceeding this limit, the server will be killed VMSTARTUPSCRIPTCONFIGURATION <IVMStartupScriptParams>: The configuration for the VmStartupScript for the build VMStartupScriptAssetReference <IAssetReferenceParams>: Asset which contains the VmStartupScript script and any other required files. FileName <String>: The asset's file name. [MountPath <String>]: The asset's mount path. [PortRequests <IVMStartupScriptPortRequestParams[]>]: Optional port requests (name/protocol) that will be used by the VmStartupScript. Max of 5 requests. Name <String>: The name for the port. Protocol <String>: The protocol for the port. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/new-pfbuildwithcustomcontainer #> function New-PfBuildWithCustomContainer { [OutputType([PlayFab.Multiplayer.Models.IComponentsXnbwy4ResponsesCreatebuildwithcustomcontainerresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='Create', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Create', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.ICreateBuildWithCustomContainerRequest] # Creates a multiplayer server build with a custom container and returns information about the build creation request. # To construct, see NOTES section for CREATEBUILDWITHCUSTOMCONTAINERREQUEST properties and create a hash table. ${CreateBuildWithCustomContainerRequest}, [Parameter(ParameterSetName='CreateExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The build name. ${BuildName}, [Parameter(ParameterSetName='CreateExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.Single] # The number of multiplayer servers to host on a single VM. ${MultiplayerServerCountPerVM}, [Parameter(ParameterSetName='CreateExpanded', Mandatory)] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IPort[]] # The ports to map the build on. # To construct, see NOTES section for PORTS properties and create a hash table. ${Ports}, [Parameter(ParameterSetName='CreateExpanded', Mandatory)] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IBuildRegionParams[]] # The region configurations for the build. # To construct, see NOTES section for REGIONCONFIGURATIONS properties and create a hash table. ${RegionConfigurations}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.Management.Automation.SwitchParameter] # When true, assets will not be copied for each server inside the VM. # All serverswill run from the same set of assets, or will have the same assets mounted in the container. ${AreAssetsReadonly}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The flavor of container to create a build from. ${ContainerFlavor}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IContainerImageReference] # The container reference, consisting of the image name and tag. # To construct, see NOTES section for CONTAINERIMAGEREFERENCE properties and create a hash table. ${ContainerImageReference}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The container command to run when the multiplayer server has been allocated, including any arguments. ${ContainerRunCommand}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='CreateExpanded')] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAssetReferenceParams[]] # The list of game assets related to the build. # To construct, see NOTES section for GAMEASSETREFERENCES properties and create a hash table. ${GameAssetReferences}, [Parameter(ParameterSetName='CreateExpanded')] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGameCertificateReferenceParams[]] # The game certificates for the build. # To construct, see NOTES section for GAMECERTIFICATEREFERENCES properties and create a hash table. ${GameCertificateReferences}, [Parameter(ParameterSetName='CreateExpanded')] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGameSecretReferenceParams[]] # The game secrets for the build. # To construct, see NOTES section for GAMESECRETREFERENCES properties and create a hash table. ${GameSecretReferences}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.ILinuxInstrumentationConfiguration] # The Linux instrumentation configuration for the build. # To construct, see NOTES section for LINUXINSTRUMENTATIONCONFIGURATION properties and create a hash table. ${LinuxInstrumentationConfiguration}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # Metadata to tag the build. # The keys are case insensitive. # The build metadata is made available to the server through Game Server SDK (GSDK).Constraints: Maximum number of keys: 30, Maximum key length: 50, Maximum value length: 100 ${Metadata}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IMonitoringApplicationConfigurationParams] # The configuration for the monitoring application on the build # To construct, see NOTES section for MONITORINGAPPLICATIONCONFIGURATION properties and create a hash table. ${MonitoringApplicationConfiguration}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IServerResourceConstraintParams] # The resource constraints to apply to each server on the VM (EXPERIMENTAL API) # To construct, see NOTES section for SERVERRESOURCECONSTRAINTS properties and create a hash table. ${ServerResourceConstraints}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The VM size to create the build on. ${VMSize}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IVMStartupScriptParams] # The configuration for the VmStartupScript for the build # To construct, see NOTES section for VMSTARTUPSCRIPTCONFIGURATION properties and create a hash table. ${VMStartupScriptConfiguration}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Create = 'PlayFabMultiplayerApi.private\New-PfBuildWithCustomContainer_Create'; CreateExpanded = 'PlayFabMultiplayerApi.private\New-PfBuildWithCustomContainer_CreateExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Creates a multiplayer server build with a managed container. .Description Creates a multiplayer server build with a managed container. .Example PS C:\> $ports = @( @{ Name = 'tcp_port'; Num = 8080; Protocol = 'TCP' }, @{ Name = 'udp_port'; Num = 8081; Protocol = 'UDP' } ) PS C:\> $regions = @( @{ 'MaxServers' = 20; 'Region' = 'AustraliaEast'; StandbyServers = 2; 'ScheduledStandbySettings' = $NULL } ) PS C:\> $gameAssets = @( @{ FileName = '123.zip'; MountPath = 'C:\Assets' } ) PS C:\> New-PfBuildWithManagedContainer -BuildName ExampleBuild -StartMultiplayerServerCommand 'C:\Assets\customServer.exe' -GameAssetReferences $gameAssets -VMSize Standard_D2as_v4 -MultiplayerServerCountPerVM 2 -Ports $ports -RegionConfigurations $regions | ConvertTo-Json -depth 10 .Inputs PlayFab.Multiplayer.Models.ICreateBuildWithManagedContainerRequest .Outputs PlayFab.Multiplayer.Models.IComponentsJeulq8ResponsesCreatebuildwithmanagedcontainerresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. CREATEBUILDWITHMANAGEDCONTAINERREQUEST <ICreateBuildWithManagedContainerRequest>: Creates a multiplayer server build with a managed container and returns information about the build creation request. BuildName <String>: The build name. GameAssetReferences <IAssetReferenceParams[]>: The list of game assets related to the build. FileName <String>: The asset's file name. [MountPath <String>]: The asset's mount path. MultiplayerServerCountPerVM <Single>: The number of multiplayer servers to host on a single VM. Ports <IPort[]>: The ports to map the build on. Name <String>: The name for the port. Num <Single>: The number for the port. Protocol <String>: The protocol for the port. RegionConfigurations <IBuildRegionParams[]>: The region configurations for the build. MaxServers <Single>: The maximum number of multiplayer servers for the region. Region <String>: The build region. StandbyServers <Single>: The number of standby multiplayer servers for the region. [DynamicStandbySettings <IDynamicStandbySettings>]: Optional settings to control dynamic adjustment of standby target. If not specified, dynamic standby is disabled IsEnabled <Boolean>: When true, dynamic standby will be enabled [DynamicFloorMultiplierThresholds <IDynamicStandbyThreshold[]>]: List of auto standing by trigger values and corresponding standing by multiplier. Defaults to 1.5X at 50%, 3X at 25%, and 4X at 5% Multiplier <Single>: When the trigger threshold is reached, multiply by this value TriggerThresholdPercentage <Single>: The multiplier will be applied when the actual standby divided by target standby floor is less than this value [RampDownSeconds <Single?>]: The time it takes to reduce target standing by to configured floor value after an increase. Defaults to 30 minutes [MultiplayerServerCountPerVM <Single?>]: Regional override for the number of multiplayer servers to host on a single VM of the build. [ScheduledStandbySettings <IScheduledStandbySettings>]: Optional settings to set the standby target to specified values during the supplied schedules IsEnabled <Boolean>: When true, scheduled standby will be enabled [ScheduleList <ISchedule[]>]: A list of non-overlapping schedules EndTime <String>: The date and time in UTC at which the schedule ends. If IsRecurringWeekly is true, this schedule will keep renewing for future weeks until disabled or removed. IsDisabled <Boolean>: Disables the schedule. IsRecurringWeekly <Boolean>: If true, the StartTime and EndTime will get renewed every week. StartTime <String>: The date and time in UTC at which the schedule starts. TargetStandby <Single>: The standby target to maintain for the duration of the schedule. [Description <String>]: A short description about this schedule. For example, "Game launch on July 15th". [VMSize <String>]: Regional override for the VM size the build was created on. StartMultiplayerServerCommand <String>: The command to run when the multiplayer server is started, including any arguments. [AreAssetsReadonly <Boolean?>]: When true, assets will not be copied for each server inside the VM. All serverswill run from the same set of assets, or will have the same assets mounted in the container. [ContainerFlavor <String>]: The flavor of container to create a build from. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [GameCertificateReferences <IGameCertificateReferenceParams[]>]: The game certificates for the build. GsdkAlias <String>: An alias for the game certificate. The game server will reference this alias via GSDK config to retrieve the game certificate. This alias is used as an identifier in game server code to allow a new certificate with different Name field to be uploaded without the need to change any game server code to reference the new Name. Name <String>: The name of the game certificate. This name should match the name of a certificate that was previously uploaded to this title. [GameSecretReferences <IGameSecretReferenceParams[]>]: The game secrets for the build. Name <String>: The name of the game secret. This name should match the name of a secret that was previously added to this title. [GameWorkingDirectory <String>]: The directory containing the game executable. This would be the start path of the game assets that contain the main game server executable. If not provided, a best effort will be made to extract it from the start game command. [InstrumentationConfiguration <IInstrumentationConfiguration>]: The instrumentation configuration for the build. [IsEnabled <Boolean?>]: Designates whether windows instrumentation configuration will be enabled for this Build [ProcessesToMonitor <String[]>]: This property is deprecated, use IsEnabled. The list of processes to be monitored on a VM for this build. Providing processes will turn on performance metrics collection for this build. Process names should not include extensions. If the game server process is: GameServer.exe; then, ProcessesToMonitor = [ GameServer ] [Metadata <IAny>]: Metadata to tag the build. The keys are case insensitive. The build metadata is made available to the server through Game Server SDK (GSDK).Constraints: Maximum number of keys: 30, Maximum key length: 50, Maximum value length: 100 [MonitoringApplicationConfiguration <IMonitoringApplicationConfigurationParams>]: The configuration for the monitoring application on the build AssetReference <IAssetReferenceParams>: Asset which contains the monitoring application files and scripts. ExecutionScriptName <String>: Execution script name, this will be the main executable for the monitoring application. [InstallationScriptName <String>]: Installation script name, this will be run before the ExecutionScript. [OnStartRuntimeInMinutes <Single?>]: Timespan the monitoring application will be kept alive when running from the start of the VM [ServerResourceConstraints <IServerResourceConstraintParams>]: The resource constraints to apply to each server on the VM (EXPERIMENTAL API) CpuLimit <Single>: The maximum number of cores that each server is allowed to use. MemoryLimitGb <Single>: The maximum number of GiB of memory that each server is allowed to use. WARNING: After exceeding this limit, the server will be killed [VMSize <String>]: The VM size to create the build on. [VMStartupScriptConfiguration <IVMStartupScriptParams>]: The configuration for the VmStartupScript for the build VMStartupScriptAssetReference <IAssetReferenceParams>: Asset which contains the VmStartupScript script and any other required files. [PortRequests <IVMStartupScriptPortRequestParams[]>]: Optional port requests (name/protocol) that will be used by the VmStartupScript. Max of 5 requests. Name <String>: The name for the port. Protocol <String>: The protocol for the port. [WindowsCrashDumpConfiguration <IWindowsCrashDumpConfiguration>]: The crash dump configuration for the build. IsEnabled <Boolean>: Designates whether automatic crash dump capturing will be enabled for this Build. [CustomDumpFlags <Single?>]: See https://docs.microsoft.com/en-us/windows/win32/wer/collecting-user-mode-dumps for valid values. [DumpType <Single?>]: See https://docs.microsoft.com/en-us/windows/win32/wer/collecting-user-mode-dumps for valid values. GAMEASSETREFERENCES <IAssetReferenceParams[]>: The list of game assets related to the build. FileName <String>: The asset's file name. [MountPath <String>]: The asset's mount path. GAMECERTIFICATEREFERENCES <IGameCertificateReferenceParams[]>: The game certificates for the build. GsdkAlias <String>: An alias for the game certificate. The game server will reference this alias via GSDK config to retrieve the game certificate. This alias is used as an identifier in game server code to allow a new certificate with different Name field to be uploaded without the need to change any game server code to reference the new Name. Name <String>: The name of the game certificate. This name should match the name of a certificate that was previously uploaded to this title. GAMESECRETREFERENCES <IGameSecretReferenceParams[]>: The game secrets for the build. Name <String>: The name of the game secret. This name should match the name of a secret that was previously added to this title. INSTRUMENTATIONCONFIGURATION <IInstrumentationConfiguration>: The instrumentation configuration for the build. [IsEnabled <Boolean?>]: Designates whether windows instrumentation configuration will be enabled for this Build [ProcessesToMonitor <String[]>]: This property is deprecated, use IsEnabled. The list of processes to be monitored on a VM for this build. Providing processes will turn on performance metrics collection for this build. Process names should not include extensions. If the game server process is: GameServer.exe; then, ProcessesToMonitor = [ GameServer ] MONITORINGAPPLICATIONCONFIGURATION <IMonitoringApplicationConfigurationParams>: The configuration for the monitoring application on the build AssetReference <IAssetReferenceParams>: Asset which contains the monitoring application files and scripts. FileName <String>: The asset's file name. [MountPath <String>]: The asset's mount path. ExecutionScriptName <String>: Execution script name, this will be the main executable for the monitoring application. [InstallationScriptName <String>]: Installation script name, this will be run before the ExecutionScript. [OnStartRuntimeInMinutes <Single?>]: Timespan the monitoring application will be kept alive when running from the start of the VM PORTS <IPort[]>: The ports to map the build on. Name <String>: The name for the port. Num <Single>: The number for the port. Protocol <String>: The protocol for the port. REGIONCONFIGURATIONS <IBuildRegionParams[]>: The region configurations for the build. MaxServers <Single>: The maximum number of multiplayer servers for the region. Region <String>: The build region. StandbyServers <Single>: The number of standby multiplayer servers for the region. [DynamicStandbySettings <IDynamicStandbySettings>]: Optional settings to control dynamic adjustment of standby target. If not specified, dynamic standby is disabled IsEnabled <Boolean>: When true, dynamic standby will be enabled [DynamicFloorMultiplierThresholds <IDynamicStandbyThreshold[]>]: List of auto standing by trigger values and corresponding standing by multiplier. Defaults to 1.5X at 50%, 3X at 25%, and 4X at 5% Multiplier <Single>: When the trigger threshold is reached, multiply by this value TriggerThresholdPercentage <Single>: The multiplier will be applied when the actual standby divided by target standby floor is less than this value [RampDownSeconds <Single?>]: The time it takes to reduce target standing by to configured floor value after an increase. Defaults to 30 minutes [MultiplayerServerCountPerVM <Single?>]: Regional override for the number of multiplayer servers to host on a single VM of the build. [ScheduledStandbySettings <IScheduledStandbySettings>]: Optional settings to set the standby target to specified values during the supplied schedules IsEnabled <Boolean>: When true, scheduled standby will be enabled [ScheduleList <ISchedule[]>]: A list of non-overlapping schedules EndTime <String>: The date and time in UTC at which the schedule ends. If IsRecurringWeekly is true, this schedule will keep renewing for future weeks until disabled or removed. IsDisabled <Boolean>: Disables the schedule. IsRecurringWeekly <Boolean>: If true, the StartTime and EndTime will get renewed every week. StartTime <String>: The date and time in UTC at which the schedule starts. TargetStandby <Single>: The standby target to maintain for the duration of the schedule. [Description <String>]: A short description about this schedule. For example, "Game launch on July 15th". [VMSize <String>]: Regional override for the VM size the build was created on. SERVERRESOURCECONSTRAINTS <IServerResourceConstraintParams>: The resource constraints to apply to each server on the VM (EXPERIMENTAL API) CpuLimit <Single>: The maximum number of cores that each server is allowed to use. MemoryLimitGb <Single>: The maximum number of GiB of memory that each server is allowed to use. WARNING: After exceeding this limit, the server will be killed VMSTARTUPSCRIPTCONFIGURATION <IVMStartupScriptParams>: The configuration for the VmStartupScript for the build VMStartupScriptAssetReference <IAssetReferenceParams>: Asset which contains the VmStartupScript script and any other required files. FileName <String>: The asset's file name. [MountPath <String>]: The asset's mount path. [PortRequests <IVMStartupScriptPortRequestParams[]>]: Optional port requests (name/protocol) that will be used by the VmStartupScript. Max of 5 requests. Name <String>: The name for the port. Protocol <String>: The protocol for the port. WINDOWSCRASHDUMPCONFIGURATION <IWindowsCrashDumpConfiguration>: The crash dump configuration for the build. IsEnabled <Boolean>: Designates whether automatic crash dump capturing will be enabled for this Build. [CustomDumpFlags <Single?>]: See https://docs.microsoft.com/en-us/windows/win32/wer/collecting-user-mode-dumps for valid values. [DumpType <Single?>]: See https://docs.microsoft.com/en-us/windows/win32/wer/collecting-user-mode-dumps for valid values. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/new-pfbuildwithmanagedcontainer #> function New-PfBuildWithManagedContainer { [OutputType([PlayFab.Multiplayer.Models.IComponentsJeulq8ResponsesCreatebuildwithmanagedcontainerresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='Create1', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Create1', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.ICreateBuildWithManagedContainerRequest] # Creates a multiplayer server build with a managed container and returns information about the build creation request. # To construct, see NOTES section for CREATEBUILDWITHMANAGEDCONTAINERREQUEST properties and create a hash table. ${CreateBuildWithManagedContainerRequest}, [Parameter(ParameterSetName='CreateExpanded1', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The build name. ${BuildName}, [Parameter(ParameterSetName='CreateExpanded1', Mandatory)] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAssetReferenceParams[]] # The list of game assets related to the build. # To construct, see NOTES section for GAMEASSETREFERENCES properties and create a hash table. ${GameAssetReferences}, [Parameter(ParameterSetName='CreateExpanded1', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.Single] # The number of multiplayer servers to host on a single VM. ${MultiplayerServerCountPerVM}, [Parameter(ParameterSetName='CreateExpanded1', Mandatory)] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IPort[]] # The ports to map the build on. # To construct, see NOTES section for PORTS properties and create a hash table. ${Ports}, [Parameter(ParameterSetName='CreateExpanded1', Mandatory)] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IBuildRegionParams[]] # The region configurations for the build. # To construct, see NOTES section for REGIONCONFIGURATIONS properties and create a hash table. ${RegionConfigurations}, [Parameter(ParameterSetName='CreateExpanded1', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The command to run when the multiplayer server is started, including any arguments. ${StartMultiplayerServerCommand}, [Parameter(ParameterSetName='CreateExpanded1')] [PlayFab.Multiplayer.Category('Body')] [System.Management.Automation.SwitchParameter] # When true, assets will not be copied for each server inside the VM. # All serverswill run from the same set of assets, or will have the same assets mounted in the container. ${AreAssetsReadonly}, [Parameter(ParameterSetName='CreateExpanded1')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The flavor of container to create a build from. ${ContainerFlavor}, [Parameter(ParameterSetName='CreateExpanded1')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='CreateExpanded1')] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGameCertificateReferenceParams[]] # The game certificates for the build. # To construct, see NOTES section for GAMECERTIFICATEREFERENCES properties and create a hash table. ${GameCertificateReferences}, [Parameter(ParameterSetName='CreateExpanded1')] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGameSecretReferenceParams[]] # The game secrets for the build. # To construct, see NOTES section for GAMESECRETREFERENCES properties and create a hash table. ${GameSecretReferences}, [Parameter(ParameterSetName='CreateExpanded1')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The directory containing the game executable. # This would be the start path of the game assets that contain the main game server executable. # If not provided, a best effort will be made to extract it from the start game command. ${GameWorkingDirectory}, [Parameter(ParameterSetName='CreateExpanded1')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IInstrumentationConfiguration] # The instrumentation configuration for the build. # To construct, see NOTES section for INSTRUMENTATIONCONFIGURATION properties and create a hash table. ${InstrumentationConfiguration}, [Parameter(ParameterSetName='CreateExpanded1')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # Metadata to tag the build. # The keys are case insensitive. # The build metadata is made available to the server through Game Server SDK (GSDK).Constraints: Maximum number of keys: 30, Maximum key length: 50, Maximum value length: 100 ${Metadata}, [Parameter(ParameterSetName='CreateExpanded1')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IMonitoringApplicationConfigurationParams] # The configuration for the monitoring application on the build # To construct, see NOTES section for MONITORINGAPPLICATIONCONFIGURATION properties and create a hash table. ${MonitoringApplicationConfiguration}, [Parameter(ParameterSetName='CreateExpanded1')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IServerResourceConstraintParams] # The resource constraints to apply to each server on the VM (EXPERIMENTAL API) # To construct, see NOTES section for SERVERRESOURCECONSTRAINTS properties and create a hash table. ${ServerResourceConstraints}, [Parameter(ParameterSetName='CreateExpanded1')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The VM size to create the build on. ${VMSize}, [Parameter(ParameterSetName='CreateExpanded1')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IVMStartupScriptParams] # The configuration for the VmStartupScript for the build # To construct, see NOTES section for VMSTARTUPSCRIPTCONFIGURATION properties and create a hash table. ${VMStartupScriptConfiguration}, [Parameter(ParameterSetName='CreateExpanded1')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IWindowsCrashDumpConfiguration] # The crash dump configuration for the build. # To construct, see NOTES section for WINDOWSCRASHDUMPCONFIGURATION properties and create a hash table. ${WindowsCrashDumpConfiguration}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Create1 = 'PlayFabMultiplayerApi.private\New-PfBuildWithManagedContainer_Create1'; CreateExpanded1 = 'PlayFabMultiplayerApi.private\New-PfBuildWithManagedContainer_CreateExpanded1'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Creates a multiplayer server build with the server running as a process. .Description Creates a multiplayer server build with the server running as a process. .Example PS C:\> $ports = @( @{ Name = 'tcp_port'; Num = 8080; Protocol = 'TCP' }, @{ Name = 'udp_port'; Num = 8081; Protocol = 'UDP' } ) PS C:\> $regions = @( @{ 'MaxServers' = 20; 'Region' = 'AustraliaEast'; StandbyServers = 2; 'ScheduledStandbySettings' = $NULL } ) PS C:\> $gameAssets = @( @{ FileName = '123.zip'; } ) PS C:\> New-PfBuildWithProcess -BuildName ExampleBuild -StartMultiplayerServerCommand 'customServer.exe' -GameAssetReferences $gameAssets -VMSize Standard_Das2_v4 -MultiplayerServerCountPerVM 2 -Ports $ports -RegionConfigurations $regions | ConvertTo-Json -depth 10 .Inputs PlayFab.Multiplayer.Models.ICreateBuildWithProcessBasedServerRequest .Outputs PlayFab.Multiplayer.Models.IComponentsTqyqe4ResponsesCreatebuildwithprocessbasedserverresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. CREATEBUILDWITHPROCESSBASEDSERVERREQUEST <ICreateBuildWithProcessBasedServerRequest>: Creates a multiplayer server build with the game server running as a process and returns information about the build creation request. BuildName <String>: The build name. GameAssetReferences <IAssetReferenceParams[]>: The list of game assets related to the build. FileName <String>: The asset's file name. [MountPath <String>]: The asset's mount path. MultiplayerServerCountPerVM <Single>: The number of multiplayer servers to host on a single VM. Ports <IPort[]>: The ports to map the build on. Name <String>: The name for the port. Num <Single>: The number for the port. Protocol <String>: The protocol for the port. RegionConfigurations <IBuildRegionParams[]>: The region configurations for the build. MaxServers <Single>: The maximum number of multiplayer servers for the region. Region <String>: The build region. StandbyServers <Single>: The number of standby multiplayer servers for the region. [DynamicStandbySettings <IDynamicStandbySettings>]: Optional settings to control dynamic adjustment of standby target. If not specified, dynamic standby is disabled IsEnabled <Boolean>: When true, dynamic standby will be enabled [DynamicFloorMultiplierThresholds <IDynamicStandbyThreshold[]>]: List of auto standing by trigger values and corresponding standing by multiplier. Defaults to 1.5X at 50%, 3X at 25%, and 4X at 5% Multiplier <Single>: When the trigger threshold is reached, multiply by this value TriggerThresholdPercentage <Single>: The multiplier will be applied when the actual standby divided by target standby floor is less than this value [RampDownSeconds <Single?>]: The time it takes to reduce target standing by to configured floor value after an increase. Defaults to 30 minutes [MultiplayerServerCountPerVM <Single?>]: Regional override for the number of multiplayer servers to host on a single VM of the build. [ScheduledStandbySettings <IScheduledStandbySettings>]: Optional settings to set the standby target to specified values during the supplied schedules IsEnabled <Boolean>: When true, scheduled standby will be enabled [ScheduleList <ISchedule[]>]: A list of non-overlapping schedules EndTime <String>: The date and time in UTC at which the schedule ends. If IsRecurringWeekly is true, this schedule will keep renewing for future weeks until disabled or removed. IsDisabled <Boolean>: Disables the schedule. IsRecurringWeekly <Boolean>: If true, the StartTime and EndTime will get renewed every week. StartTime <String>: The date and time in UTC at which the schedule starts. TargetStandby <Single>: The standby target to maintain for the duration of the schedule. [Description <String>]: A short description about this schedule. For example, "Game launch on July 15th". [VMSize <String>]: Regional override for the VM size the build was created on. StartMultiplayerServerCommand <String>: The command to run when the multiplayer server is started, including any arguments. The path to any executable should be relative to the root asset folder when unzipped. [AreAssetsReadonly <Boolean?>]: When true, assets will not be copied for each server inside the VM. All serverswill run from the same set of assets, or will have the same assets mounted in the container. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [GameCertificateReferences <IGameCertificateReferenceParams[]>]: The game certificates for the build. GsdkAlias <String>: An alias for the game certificate. The game server will reference this alias via GSDK config to retrieve the game certificate. This alias is used as an identifier in game server code to allow a new certificate with different Name field to be uploaded without the need to change any game server code to reference the new Name. Name <String>: The name of the game certificate. This name should match the name of a certificate that was previously uploaded to this title. [GameSecretReferences <IGameSecretReferenceParams[]>]: The game secrets for the build. Name <String>: The name of the game secret. This name should match the name of a secret that was previously added to this title. [GameWorkingDirectory <String>]: The working directory for the game process. If this is not provided, the working directory will be set based on the mount path of the game server executable. [InstrumentationConfiguration <IInstrumentationConfiguration>]: The instrumentation configuration for the Build. Used only if it is a Windows Build. [IsEnabled <Boolean?>]: Designates whether windows instrumentation configuration will be enabled for this Build [ProcessesToMonitor <String[]>]: This property is deprecated, use IsEnabled. The list of processes to be monitored on a VM for this build. Providing processes will turn on performance metrics collection for this build. Process names should not include extensions. If the game server process is: GameServer.exe; then, ProcessesToMonitor = [ GameServer ] [IsOSPreview <Boolean?>]: Indicates whether this build will be created using the OS Preview versionPreview OS is recommended for dev builds to detect any breaking changes before they are released to retail. Retail builds should set this value to false. [LinuxInstrumentationConfiguration <ILinuxInstrumentationConfiguration>]: The Linux instrumentation configuration for the Build. Used only if it is a Linux Build. IsEnabled <Boolean>: Designates whether Linux instrumentation configuration will be enabled for this Build [Metadata <IAny>]: Metadata to tag the build. The keys are case insensitive. The build metadata is made available to the server through Game Server SDK (GSDK).Constraints: Maximum number of keys: 30, Maximum key length: 50, Maximum value length: 100 [MonitoringApplicationConfiguration <IMonitoringApplicationConfigurationParams>]: The configuration for the monitoring application on the build AssetReference <IAssetReferenceParams>: Asset which contains the monitoring application files and scripts. ExecutionScriptName <String>: Execution script name, this will be the main executable for the monitoring application. [InstallationScriptName <String>]: Installation script name, this will be run before the ExecutionScript. [OnStartRuntimeInMinutes <Single?>]: Timespan the monitoring application will be kept alive when running from the start of the VM [OSPlatform <String>]: The OS platform used for running the game process. [VMSize <String>]: The VM size to create the build on. [VMStartupScriptConfiguration <IVMStartupScriptParams>]: The configuration for the VmStartupScript for the build VMStartupScriptAssetReference <IAssetReferenceParams>: Asset which contains the VmStartupScript script and any other required files. [PortRequests <IVMStartupScriptPortRequestParams[]>]: Optional port requests (name/protocol) that will be used by the VmStartupScript. Max of 5 requests. Name <String>: The name for the port. Protocol <String>: The protocol for the port. GAMEASSETREFERENCES <IAssetReferenceParams[]>: The list of game assets related to the build. FileName <String>: The asset's file name. [MountPath <String>]: The asset's mount path. GAMECERTIFICATEREFERENCES <IGameCertificateReferenceParams[]>: The game certificates for the build. GsdkAlias <String>: An alias for the game certificate. The game server will reference this alias via GSDK config to retrieve the game certificate. This alias is used as an identifier in game server code to allow a new certificate with different Name field to be uploaded without the need to change any game server code to reference the new Name. Name <String>: The name of the game certificate. This name should match the name of a certificate that was previously uploaded to this title. GAMESECRETREFERENCES <IGameSecretReferenceParams[]>: The game secrets for the build. Name <String>: The name of the game secret. This name should match the name of a secret that was previously added to this title. INSTRUMENTATIONCONFIGURATION <IInstrumentationConfiguration>: The instrumentation configuration for the Build. Used only if it is a Windows Build. [IsEnabled <Boolean?>]: Designates whether windows instrumentation configuration will be enabled for this Build [ProcessesToMonitor <String[]>]: This property is deprecated, use IsEnabled. The list of processes to be monitored on a VM for this build. Providing processes will turn on performance metrics collection for this build. Process names should not include extensions. If the game server process is: GameServer.exe; then, ProcessesToMonitor = [ GameServer ] LINUXINSTRUMENTATIONCONFIGURATION <ILinuxInstrumentationConfiguration>: The Linux instrumentation configuration for the Build. Used only if it is a Linux Build. IsEnabled <Boolean>: Designates whether Linux instrumentation configuration will be enabled for this Build MONITORINGAPPLICATIONCONFIGURATION <IMonitoringApplicationConfigurationParams>: The configuration for the monitoring application on the build AssetReference <IAssetReferenceParams>: Asset which contains the monitoring application files and scripts. FileName <String>: The asset's file name. [MountPath <String>]: The asset's mount path. ExecutionScriptName <String>: Execution script name, this will be the main executable for the monitoring application. [InstallationScriptName <String>]: Installation script name, this will be run before the ExecutionScript. [OnStartRuntimeInMinutes <Single?>]: Timespan the monitoring application will be kept alive when running from the start of the VM PORTS <IPort[]>: The ports to map the build on. Name <String>: The name for the port. Num <Single>: The number for the port. Protocol <String>: The protocol for the port. REGIONCONFIGURATIONS <IBuildRegionParams[]>: The region configurations for the build. MaxServers <Single>: The maximum number of multiplayer servers for the region. Region <String>: The build region. StandbyServers <Single>: The number of standby multiplayer servers for the region. [DynamicStandbySettings <IDynamicStandbySettings>]: Optional settings to control dynamic adjustment of standby target. If not specified, dynamic standby is disabled IsEnabled <Boolean>: When true, dynamic standby will be enabled [DynamicFloorMultiplierThresholds <IDynamicStandbyThreshold[]>]: List of auto standing by trigger values and corresponding standing by multiplier. Defaults to 1.5X at 50%, 3X at 25%, and 4X at 5% Multiplier <Single>: When the trigger threshold is reached, multiply by this value TriggerThresholdPercentage <Single>: The multiplier will be applied when the actual standby divided by target standby floor is less than this value [RampDownSeconds <Single?>]: The time it takes to reduce target standing by to configured floor value after an increase. Defaults to 30 minutes [MultiplayerServerCountPerVM <Single?>]: Regional override for the number of multiplayer servers to host on a single VM of the build. [ScheduledStandbySettings <IScheduledStandbySettings>]: Optional settings to set the standby target to specified values during the supplied schedules IsEnabled <Boolean>: When true, scheduled standby will be enabled [ScheduleList <ISchedule[]>]: A list of non-overlapping schedules EndTime <String>: The date and time in UTC at which the schedule ends. If IsRecurringWeekly is true, this schedule will keep renewing for future weeks until disabled or removed. IsDisabled <Boolean>: Disables the schedule. IsRecurringWeekly <Boolean>: If true, the StartTime and EndTime will get renewed every week. StartTime <String>: The date and time in UTC at which the schedule starts. TargetStandby <Single>: The standby target to maintain for the duration of the schedule. [Description <String>]: A short description about this schedule. For example, "Game launch on July 15th". [VMSize <String>]: Regional override for the VM size the build was created on. VMSTARTUPSCRIPTCONFIGURATION <IVMStartupScriptParams>: The configuration for the VmStartupScript for the build VMStartupScriptAssetReference <IAssetReferenceParams>: Asset which contains the VmStartupScript script and any other required files. FileName <String>: The asset's file name. [MountPath <String>]: The asset's mount path. [PortRequests <IVMStartupScriptPortRequestParams[]>]: Optional port requests (name/protocol) that will be used by the VmStartupScript. Max of 5 requests. Name <String>: The name for the port. Protocol <String>: The protocol for the port. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/new-pfbuildwithprocess #> function New-PfBuildWithProcess { [OutputType([PlayFab.Multiplayer.Models.IComponentsTqyqe4ResponsesCreatebuildwithprocessbasedserverresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='Create2', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Create2', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.ICreateBuildWithProcessBasedServerRequest] # Creates a multiplayer server build with the game server running as a process and returns information about the build creation request. # To construct, see NOTES section for CREATEBUILDWITHPROCESSBASEDSERVERREQUEST properties and create a hash table. ${CreateBuildWithProcessBasedServerRequest}, [Parameter(ParameterSetName='CreateExpanded2', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The build name. ${BuildName}, [Parameter(ParameterSetName='CreateExpanded2', Mandatory)] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAssetReferenceParams[]] # The list of game assets related to the build. # To construct, see NOTES section for GAMEASSETREFERENCES properties and create a hash table. ${GameAssetReferences}, [Parameter(ParameterSetName='CreateExpanded2', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.Single] # The number of multiplayer servers to host on a single VM. ${MultiplayerServerCountPerVM}, [Parameter(ParameterSetName='CreateExpanded2', Mandatory)] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IPort[]] # The ports to map the build on. # To construct, see NOTES section for PORTS properties and create a hash table. ${Ports}, [Parameter(ParameterSetName='CreateExpanded2', Mandatory)] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IBuildRegionParams[]] # The region configurations for the build. # To construct, see NOTES section for REGIONCONFIGURATIONS properties and create a hash table. ${RegionConfigurations}, [Parameter(ParameterSetName='CreateExpanded2', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The command to run when the multiplayer server is started, including any arguments. # The path to any executable should be relative to the root asset folder when unzipped. ${StartMultiplayerServerCommand}, [Parameter(ParameterSetName='CreateExpanded2')] [PlayFab.Multiplayer.Category('Body')] [System.Management.Automation.SwitchParameter] # When true, assets will not be copied for each server inside the VM. # All serverswill run from the same set of assets, or will have the same assets mounted in the container. ${AreAssetsReadonly}, [Parameter(ParameterSetName='CreateExpanded2')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='CreateExpanded2')] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGameCertificateReferenceParams[]] # The game certificates for the build. # To construct, see NOTES section for GAMECERTIFICATEREFERENCES properties and create a hash table. ${GameCertificateReferences}, [Parameter(ParameterSetName='CreateExpanded2')] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IGameSecretReferenceParams[]] # The game secrets for the build. # To construct, see NOTES section for GAMESECRETREFERENCES properties and create a hash table. ${GameSecretReferences}, [Parameter(ParameterSetName='CreateExpanded2')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The working directory for the game process. # If this is not provided, the working directory will be set based on the mount path of the game server executable. ${GameWorkingDirectory}, [Parameter(ParameterSetName='CreateExpanded2')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IInstrumentationConfiguration] # The instrumentation configuration for the Build. # Used only if it is a Windows Build. # To construct, see NOTES section for INSTRUMENTATIONCONFIGURATION properties and create a hash table. ${InstrumentationConfiguration}, [Parameter(ParameterSetName='CreateExpanded2')] [PlayFab.Multiplayer.Category('Body')] [System.Management.Automation.SwitchParameter] # Indicates whether this build will be created using the OS Preview versionPreview OS is recommended for dev builds to detect any breaking changes before they are released to retail. # Retail builds should set this value to false. ${IsOSPreview}, [Parameter(ParameterSetName='CreateExpanded2')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.ILinuxInstrumentationConfiguration] # The Linux instrumentation configuration for the Build. # Used only if it is a Linux Build. # To construct, see NOTES section for LINUXINSTRUMENTATIONCONFIGURATION properties and create a hash table. ${LinuxInstrumentationConfiguration}, [Parameter(ParameterSetName='CreateExpanded2')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # Metadata to tag the build. # The keys are case insensitive. # The build metadata is made available to the server through Game Server SDK (GSDK).Constraints: Maximum number of keys: 30, Maximum key length: 50, Maximum value length: 100 ${Metadata}, [Parameter(ParameterSetName='CreateExpanded2')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IMonitoringApplicationConfigurationParams] # The configuration for the monitoring application on the build # To construct, see NOTES section for MONITORINGAPPLICATIONCONFIGURATION properties and create a hash table. ${MonitoringApplicationConfiguration}, [Parameter(ParameterSetName='CreateExpanded2')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The OS platform used for running the game process. ${OSPlatform}, [Parameter(ParameterSetName='CreateExpanded2')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The VM size to create the build on. ${VMSize}, [Parameter(ParameterSetName='CreateExpanded2')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IVMStartupScriptParams] # The configuration for the VmStartupScript for the build # To construct, see NOTES section for VMSTARTUPSCRIPTCONFIGURATION properties and create a hash table. ${VMStartupScriptConfiguration}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Create2 = 'PlayFabMultiplayerApi.private\New-PfBuildWithProcess_Create2'; CreateExpanded2 = 'PlayFabMultiplayerApi.private\New-PfBuildWithProcess_CreateExpanded2'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Creates a remote user to log on to a VM for a multiplayer server build. .Description Creates a remote user to log on to a VM for a multiplayer server build. .Example PS C:\> New-PfRemoteUser -BuildId a7d19066-cea0-42ce-a324-0bad473d3798 -Region AustraliaEast -Username example -VMId xcloudeau4u4yyxj4xymu:AustraliaEast:1E03_d63a680f-7513-4220-a4b9-5d47e26abd35:tvmps_2d52b58380bc02b08d3509ef77c241cff3b41063a8f8052028ac6df1ad2cc271_d | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "ExpirationTime": "2021-02-13T20:02:01.022Z", "Password": "examplepassword", "Username": "example" }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.ICreateRemoteUserRequest .Outputs PlayFab.Multiplayer.Models.IComponents1Lwh4J6ResponsesCreateremoteuserresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. CREATEREMOTEUSERREQUEST <ICreateRemoteUserRequest>: Creates a remote user to log on to a VM for a multiplayer server build in a specific region. Returns user credential information necessary to log on. BuildId <String>: The guid string build ID of to create the remote user for. Region <String>: The region of virtual machine to create the remote user for. Username <String>: The username to create the remote user with. VMId <String>: The virtual machine ID the multiplayer server is located on. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [ExpirationTime <String>]: The expiration time for the remote user created. Defaults to expiring in one day if not specified. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/new-pfremoteuser #> function New-PfRemoteUser { [OutputType([PlayFab.Multiplayer.Models.IComponents1Lwh4J6ResponsesCreateremoteuserresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Create', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.ICreateRemoteUserRequest] # Creates a remote user to log on to a VM for a multiplayer server build in a specific region. # Returns user credential information necessary to log on. # To construct, see NOTES section for CREATEREMOTEUSERREQUEST properties and create a hash table. ${CreateRemoteUserRequest}, [Parameter(ParameterSetName='CreateExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The guid string build ID of to create the remote user for. ${BuildId}, [Parameter(ParameterSetName='CreateExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The region of virtual machine to create the remote user for. ${Region}, [Parameter(ParameterSetName='CreateExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The username to create the remote user with. ${Username}, [Parameter(ParameterSetName='CreateExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The virtual machine ID the multiplayer server is located on. ${VMId}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The expiration time for the remote user created. # Defaults to expiring in one day if not specified. ${ExpirationTime}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Create = 'PlayFabMultiplayerApi.private\New-PfRemoteUser_Create'; CreateExpanded = 'PlayFabMultiplayerApi.private\New-PfRemoteUser_CreateExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Creates a request to change a title's multiplayer server quotas. .Description Creates a request to change a title's multiplayer server quotas. .Example PS C:\> {{ Add code here }} {{ Add output here }} .Example PS C:\> {{ Add code here }} {{ Add output here }} .Inputs PlayFab.Multiplayer.Models.ICreateTitleMultiplayerServersQuotaChangeRequest .Outputs PlayFab.Multiplayer.Models.IComponents1Sy6ReyResponsesCreatetitlemultiplayerserversquotachangeresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. CHANGES <ICoreCapacityChange[]>: Changes to make to the titles cores quota. NewCoreLimit <Single>: New quota core limit for the given vm family/region. Region <String>: Region to change. VMFamily <String>: Virtual machine family to change. CREATETITLEMULTIPLAYERSERVERSQUOTACHANGEREQUEST <ICreateTitleMultiplayerServersQuotaChangeRequest>: Creates a request to change a title's multiplayer server quotas. Changes <ICoreCapacityChange[]>: Changes to make to the titles cores quota. NewCoreLimit <Single>: New quota core limit for the given vm family/region. Region <String>: Region to change. VMFamily <String>: Virtual machine family to change. [ChangeDescription <String>]: A brief description of the requested changes. [ContactEmail <String>]: Email to be contacted by our team about this request. Only required when a request is not approved. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [Notes <String>]: Additional information about this request that our team can use to better understand the requirements. [StartDate <String>]: When these changes would need to be in effect. Only required when a request is not approved. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/new-pftitlemultiplayerserverquotachange #> function New-PfTitleMultiplayerServerQuotaChange { [OutputType([PlayFab.Multiplayer.Models.IComponents1Sy6ReyResponsesCreatetitlemultiplayerserversquotachangeresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='Create', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Create', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.ICreateTitleMultiplayerServersQuotaChangeRequest] # Creates a request to change a title's multiplayer server quotas. # To construct, see NOTES section for CREATETITLEMULTIPLAYERSERVERSQUOTACHANGEREQUEST properties and create a hash table. ${CreateTitleMultiplayerServersQuotaChangeRequest}, [Parameter(ParameterSetName='CreateExpanded', Mandatory)] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.ICoreCapacityChange[]] # Changes to make to the titles cores quota. # To construct, see NOTES section for CHANGES properties and create a hash table. ${Changes}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # A brief description of the requested changes. ${ChangeDescription}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # Email to be contacted by our team about this request. # Only required when a request is not approved. ${ContactEmail}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # Additional information about this request that our team can use to better understand the requirements. ${Notes}, [Parameter(ParameterSetName='CreateExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # When these changes would need to be in effect. # Only required when a request is not approved. ${StartDate}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Create = 'PlayFabMultiplayerApi.private\New-PfTitleMultiplayerServerQuotaChange_Create'; CreateExpanded = 'PlayFabMultiplayerApi.private\New-PfTitleMultiplayerServerQuotaChange_CreateExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Deletes a multiplayer server game asset for a title. .Description Deletes a multiplayer server game asset for a title. .Example PS C:\> Remove-PfAsset -FileName "19402022-v2.zip" | ConvertTo-Json { "Code": 200, "Data": {}, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IDeleteAssetRequest .Outputs PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. DELETEASSETREQUEST <IDeleteAssetRequest>: Deletes a multiplayer server game asset for a title. FileName <String>: The filename of the asset to delete. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/remove-pfasset #> function Remove-PfAsset { [OutputType([PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='DeleteExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Delete', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IDeleteAssetRequest] # Deletes a multiplayer server game asset for a title. # To construct, see NOTES section for DELETEASSETREQUEST properties and create a hash table. ${DeleteAssetRequest}, [Parameter(ParameterSetName='DeleteExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The filename of the asset to delete. ${FileName}, [Parameter(ParameterSetName='DeleteExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Delete = 'PlayFabMultiplayerApi.private\Remove-PfAsset_Delete'; DeleteExpanded = 'PlayFabMultiplayerApi.private\Remove-PfAsset_DeleteExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Deletes a multiplayer server build alias. .Description Deletes a multiplayer server build alias. .Example PS C:\> Remove-PfBuildAlias -AliasId 0500ae06-224f-45a9-a982-bc79c758aa0d | ConvertTo-Json { "Code": 200, "Data": {}, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IDeleteBuildAliasRequest .Outputs PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. DELETEBUILDALIASREQUEST <IDeleteBuildAliasRequest>: Deletes a multiplayer server build alias. AliasId <String>: The guid string alias ID of the alias to perform the action on. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/remove-pfbuildalias #> function Remove-PfBuildAlias { [OutputType([PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='DeleteExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Delete', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IDeleteBuildAliasRequest] # Deletes a multiplayer server build alias. # To construct, see NOTES section for DELETEBUILDALIASREQUEST properties and create a hash table. ${DeleteBuildAliasRequest}, [Parameter(ParameterSetName='DeleteExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The guid string alias ID of the alias to perform the action on. ${AliasId}, [Parameter(ParameterSetName='DeleteExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Delete = 'PlayFabMultiplayerApi.private\Remove-PfBuildAlias_Delete'; DeleteExpanded = 'PlayFabMultiplayerApi.private\Remove-PfBuildAlias_DeleteExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Removes a multiplayer server build's region. .Description Removes a multiplayer server build's region. .Example PS C:\> Remove-PfBuildRegion -BuildId a024dc36-d922-4ae0-aeda-bae450aa4d8b -Region AustraliaEast | ConvertTo-Json { "Code": 200, "Data": {}, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IDeleteBuildRegionRequest .Outputs PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. DELETEBUILDREGIONREQUEST <IDeleteBuildRegionRequest>: Removes a multiplayer server build's region. BuildId <String>: The guid string ID of the build we want to update regions for. Region <String>: The build region to delete. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/remove-pfbuildregion #> function Remove-PfBuildRegion { [OutputType([PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='DeleteExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Delete', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IDeleteBuildRegionRequest] # Removes a multiplayer server build's region. # To construct, see NOTES section for DELETEBUILDREGIONREQUEST properties and create a hash table. ${DeleteBuildRegionRequest}, [Parameter(ParameterSetName='DeleteExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The guid string ID of the build we want to update regions for. ${BuildId}, [Parameter(ParameterSetName='DeleteExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The build region to delete. ${Region}, [Parameter(ParameterSetName='DeleteExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Delete = 'PlayFabMultiplayerApi.private\Remove-PfBuildRegion_Delete'; DeleteExpanded = 'PlayFabMultiplayerApi.private\Remove-PfBuildRegion_DeleteExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Deletes a multiplayer server build. .Description Deletes a multiplayer server build. .Example PS C:\> Remove-PfBuild -BuildId 24ed06cc-59f0-4e72-b6a0-cb2ae2b9ddd3 | ConvertTo-Json { "Code": 200, "Data": {}, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IDeleteBuildRequest .Outputs PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. DELETEBUILDREQUEST <IDeleteBuildRequest>: Deletes a multiplayer server build. BuildId <String>: The guid string build ID of the build to delete. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/remove-pfbuild #> function Remove-PfBuild { [OutputType([PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='DeleteExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Delete', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IDeleteBuildRequest] # Deletes a multiplayer server build. # To construct, see NOTES section for DELETEBUILDREQUEST properties and create a hash table. ${DeleteBuildRequest}, [Parameter(ParameterSetName='DeleteExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The guid string build ID of the build to delete. ${BuildId}, [Parameter(ParameterSetName='DeleteExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Delete = 'PlayFabMultiplayerApi.private\Remove-PfBuild_Delete'; DeleteExpanded = 'PlayFabMultiplayerApi.private\Remove-PfBuild_DeleteExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Deletes a multiplayer server game certificate. .Description Deletes a multiplayer server game certificate. .Example PS C:\> Remove-PfCertificate -Name MyCert | ConvertTo-Json { "Code": 200, "Data": {}, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IDeleteCertificateRequest .Outputs PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. DELETECERTIFICATEREQUEST <IDeleteCertificateRequest>: Deletes a multiplayer server game certificate. Name <String>: The name of the certificate. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/remove-pfcertificate #> function Remove-PfCertificate { [OutputType([PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='DeleteExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Delete', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IDeleteCertificateRequest] # Deletes a multiplayer server game certificate. # To construct, see NOTES section for DELETECERTIFICATEREQUEST properties and create a hash table. ${DeleteCertificateRequest}, [Parameter(ParameterSetName='DeleteExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The name of the certificate. ${Name}, [Parameter(ParameterSetName='DeleteExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Delete = 'PlayFabMultiplayerApi.private\Remove-PfCertificate_Delete'; DeleteExpanded = 'PlayFabMultiplayerApi.private\Remove-PfCertificate_DeleteExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Deletes a container image repository. .Description Deletes a container image repository. .Example PS C:\> Remove-PfContainerImageRepository -ImageName myContainerImage | ConvertTo-Json { "Code": 200, "Data": {}, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IDeleteContainerImageRequest .Outputs PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. DELETECONTAINERIMAGEREQUEST <IDeleteContainerImageRequest>: Removes the specified container image repository. After this operation, a 'docker pull' will fail for all the tags of the specified image. Morever, ListContainerImages will not return the specified image. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [ImageName <String>]: The container image repository we want to delete. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/remove-pfcontainerimagerepository #> function Remove-PfContainerImageRepository { [OutputType([PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='DeleteExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Delete', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IDeleteContainerImageRequest] # Removes the specified container image repository. # After this operation, a 'docker pull' will fail for all the tags of the specified image. # Morever, ListContainerImages will not return the specified image. # To construct, see NOTES section for DELETECONTAINERIMAGEREQUEST properties and create a hash table. ${DeleteContainerImageRequest}, [Parameter(ParameterSetName='DeleteExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='DeleteExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The container image repository we want to delete. ${ImageName}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Delete = 'PlayFabMultiplayerApi.private\Remove-PfContainerImageRepository_Delete'; DeleteExpanded = 'PlayFabMultiplayerApi.private\Remove-PfContainerImageRepository_DeleteExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Deletes a remote user to log on to a VM for a multiplayer server build. .Description Deletes a remote user to log on to a VM for a multiplayer server build. .Example PS C:\> New-PfRemoteUser -BuildId a7d19066-cea0-42ce-a324-0bad473d3798 -Region AustraliaEast -Username example -VMId xcloudeau4u4yyxj4xymu:AustraliaEast:1E03_d63a680f-7513-4220-a4b9-5d47e26abd35:tvmps_2d52b58380bc02b08d3509ef77c241cff3b41063a8f8052028ac6df1ad2cc271_d | ConvertTo-Json -depth 5 { "Code": 200, "Data": {}, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IDeleteRemoteUserRequest .Outputs PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. DELETEREMOTEUSERREQUEST <IDeleteRemoteUserRequest>: Deletes a remote user to log on to a VM for a multiplayer server build in a specific region. Returns user credential information necessary to log on. BuildId <String>: The guid string build ID of the multiplayer server where the remote user is to delete. Region <String>: The region of the multiplayer server where the remote user is to delete. Username <String>: The username of the remote user to delete. VMId <String>: The virtual machine ID the multiplayer server is located on. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/remove-pfremoteuser #> function Remove-PfRemoteUser { [OutputType([PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='DeleteExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Delete', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IDeleteRemoteUserRequest] # Deletes a remote user to log on to a VM for a multiplayer server build in a specific region. # Returns user credential information necessary to log on. # To construct, see NOTES section for DELETEREMOTEUSERREQUEST properties and create a hash table. ${DeleteRemoteUserRequest}, [Parameter(ParameterSetName='DeleteExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The guid string build ID of the multiplayer server where the remote user is to delete. ${BuildId}, [Parameter(ParameterSetName='DeleteExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The region of the multiplayer server where the remote user is to delete. ${Region}, [Parameter(ParameterSetName='DeleteExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The username of the remote user to delete. ${Username}, [Parameter(ParameterSetName='DeleteExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The virtual machine ID the multiplayer server is located on. ${VMId}, [Parameter(ParameterSetName='DeleteExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Delete = 'PlayFabMultiplayerApi.private\Remove-PfRemoteUser_Delete'; DeleteExpanded = 'PlayFabMultiplayerApi.private\Remove-PfRemoteUser_DeleteExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Deletes a multiplayer server game secret. .Description Deletes a multiplayer server game secret. .Example PS C:\> Remove-PfSecret -Name MySecret | ConvertTo-Json .Inputs PlayFab.Multiplayer.Models.IDeleteSecretRequest .Outputs PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. DELETESECRETREQUEST <IDeleteSecretRequest>: Deletes a multiplayer server game secret. Name <String>: The name of the secret. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/remove-pfsecret #> function Remove-PfSecret { [OutputType([PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='DeleteExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Delete', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IDeleteSecretRequest] # Deletes a multiplayer server game secret. # To construct, see NOTES section for DELETESECRETREQUEST properties and create a hash table. ${DeleteSecretRequest}, [Parameter(ParameterSetName='DeleteExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The name of the secret. ${Name}, [Parameter(ParameterSetName='DeleteExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Delete = 'PlayFabMultiplayerApi.private\Remove-PfSecret_Delete'; DeleteExpanded = 'PlayFabMultiplayerApi.private\Remove-PfSecret_DeleteExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Request a multiplayer server session. Accepts tokens for title and if game client access is enabled, allows game client to request a server with player entity token. .Description Request a multiplayer server session. Accepts tokens for title and if game client access is enabled, allows game client to request a server with player entity token. .Example PS C:\> Request-PfMultiplayerServer -PreferredRegions @('AustraliaEast', 'WestEurope') -SessionId 0352cf0f-2e7a-4aee-801d-7f27f8344c77 -BuildId 9968f71f-f3ec-49df-82d7-d00b12c92e12 | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "ConnectedPlayers": [], "Fqdn": "dnsefebd26e-bd3e-4e77-9460-b95ced4023aa-azurebatch-cloudservice.australiaeast.cloudapp.azure.com", "Ipv4Address": "20.193.28.131", "LastStateTransitionTime": "2021-02-16T21:15:42.935Z", "Ports": [ { "Name": "udp", "Num": 30000.0, "Protocol": "UDP" } ], "Region": "AustraliaEast", "ServerId": "99d2022ae82600fab857fd356917697ca116054e185cd2c5f05d31397529e333", "SessionId": "0352cf0f-2e7a-4aee-801d-7f27f8344c77", "State": "Active", "VMId": "xcloudeau4u4yyxj4xymu:AustraliaEast:1E03_909ab8a8-7597-4518-b38b-e431c004fcef:tvmps_64b21aec66cb890adfb4bacd1ccfe5a2d79abd2378e31896ffab49c9eb88cd72_d" }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IRequestMultiplayerServerRequest .Outputs PlayFab.Multiplayer.Models.IComponentsGlu3TjResponsesRequestmultiplayerserverresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. BUILDALIASPARAMS <IBuildAliasParams>: The identifiers of the build alias to use for the request. AliasId <String>: The guid string alias ID to use for the request. REQUESTMULTIPLAYERSERVERREQUEST <IRequestMultiplayerServerRequest>: Requests a multiplayer server session from a particular build in any of the given preferred regions. PreferredRegions <String[]>: The preferred regions to request a multiplayer server from. The Multiplayer Service will iterate through the regions in the specified order and allocate a server from the first one that has servers available. SessionId <String>: A guid string session ID created track the multiplayer server session over its life. [BuildAliasParams <IBuildAliasParams>]: The identifiers of the build alias to use for the request. AliasId <String>: The guid string alias ID to use for the request. [BuildId <String>]: The guid string build ID of the multiplayer server to request. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [InitialPlayers <String[]>]: Initial list of players (potentially matchmade) allowed to connect to the game. This list is passed to the game server when requested (via GSDK) and can be used to validate players connecting to it. [SessionCookie <String>]: Data encoded as a string that is passed to the game server when requested. This can be used to to communicate information such as game mode or map through the request flow. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/request-pfmultiplayerserver #> function Request-PfMultiplayerServer { [OutputType([PlayFab.Multiplayer.Models.IComponentsGlu3TjResponsesRequestmultiplayerserverresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='RequestExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Request', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IRequestMultiplayerServerRequest] # Requests a multiplayer server session from a particular build in any of the given preferred regions. # To construct, see NOTES section for REQUESTMULTIPLAYERSERVERREQUEST properties and create a hash table. ${RequestMultiplayerServerRequest}, [Parameter(ParameterSetName='RequestExpanded', Mandatory)] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [System.String[]] # The preferred regions to request a multiplayer server from. # The Multiplayer Service will iterate through the regions in the specified order and allocate a server from the first one that has servers available. ${PreferredRegions}, [Parameter(ParameterSetName='RequestExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # A guid string session ID created track the multiplayer server session over its life. ${SessionId}, [Parameter(ParameterSetName='RequestExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IBuildAliasParams] # The identifiers of the build alias to use for the request. # To construct, see NOTES section for BUILDALIASPARAMS properties and create a hash table. ${BuildAliasParams}, [Parameter(ParameterSetName='RequestExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The guid string build ID of the multiplayer server to request. ${BuildId}, [Parameter(ParameterSetName='RequestExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='RequestExpanded')] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [System.String[]] # Initial list of players (potentially matchmade) allowed to connect to the game. # This list is passed to the game server when requested (via GSDK) and can be used to validate players connecting to it. ${InitialPlayers}, [Parameter(ParameterSetName='RequestExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # Data encoded as a string that is passed to the game server when requested. # This can be used to to communicate information such as game mode or map through the request flow. ${SessionCookie}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Request = 'PlayFabMultiplayerApi.private\Request-PfMultiplayerServer_Request'; RequestExpanded = 'PlayFabMultiplayerApi.private\Request-PfMultiplayerServer_RequestExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Request a party session. .Description Request a party session. .Example {{ Add code here }} .Example {{ Add code here }} .Inputs PlayFab.Multiplayer.Models.IRequestPartyServiceRequest .Outputs PlayFab.Multiplayer.Models.IComponents1Rr7M87ResponsesRequestpartyserviceresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. NETWORKCONFIGURATION <IPartyNetworkConfiguration>: The network configuration for this request. MaxDevices <Single>: The maximum number of devices allowed to connect to the network. Must be between 1 and 32, inclusive. MaxDevicesPerUser <Single>: The maximum number of devices allowed per user. Must be greater than 0. MaxEndpointsPerDevice <Single>: The maximum number of endpoints allowed per device. Must be between 0 and 32, inclusive. MaxUsers <Single>: The maximum number of unique users allowed in the network. Must be greater than 0. MaxUsersPerDevice <Single>: The maximum number of users allowed per device. Must be between 1 and 8, inclusive. [DirectPeerConnectivityOptions <String>]: Controls whether and how to support direct peer-to-peer connection attempts among devices in the network. [PartyInvitationConfiguration <IPartyInvitationConfiguration>]: An optionally-specified configuration for the initial invitation for this party. If not provided, default configuration values will be used: a title-unique invitation identifier will be generated, the revocability will be Anyone, and the EntityID list will be empty. [EntityKeys <IEntityKey[]>]: The list of PlayFab EntityKeys that the invitation allows to authenticate into the network. If this list is empty, all users are allowed to authenticate using the invitation's identifier. This list may contain no more than 1024 items. Id <String>: Unique ID of the entity. [Type <String>]: Entity type. See https://docs.microsoft.com/gaming/playfab/features/data/entities/available-built-in-entity-types [Identifier <String>]: The invite identifier for this party. If this value is specified, it must be no longer than 127 characters. [Revocability <String>]: Controls which participants can revoke this invite. REQUESTPARTYSERVICEREQUEST <IRequestPartyServiceRequest>: Requests a party session from a particular set of builds if build alias params is provided, in any of the given preferred regions. NetworkConfiguration <IPartyNetworkConfiguration>: The network configuration for this request. MaxDevices <Single>: The maximum number of devices allowed to connect to the network. Must be between 1 and 32, inclusive. MaxDevicesPerUser <Single>: The maximum number of devices allowed per user. Must be greater than 0. MaxEndpointsPerDevice <Single>: The maximum number of endpoints allowed per device. Must be between 0 and 32, inclusive. MaxUsers <Single>: The maximum number of unique users allowed in the network. Must be greater than 0. MaxUsersPerDevice <Single>: The maximum number of users allowed per device. Must be between 1 and 8, inclusive. [DirectPeerConnectivityOptions <String>]: Controls whether and how to support direct peer-to-peer connection attempts among devices in the network. [PartyInvitationConfiguration <IPartyInvitationConfiguration>]: An optionally-specified configuration for the initial invitation for this party. If not provided, default configuration values will be used: a title-unique invitation identifier will be generated, the revocability will be Anyone, and the EntityID list will be empty. [EntityKeys <IEntityKey[]>]: The list of PlayFab EntityKeys that the invitation allows to authenticate into the network. If this list is empty, all users are allowed to authenticate using the invitation's identifier. This list may contain no more than 1024 items. Id <String>: Unique ID of the entity. [Type <String>]: Entity type. See https://docs.microsoft.com/gaming/playfab/features/data/entities/available-built-in-entity-types [Identifier <String>]: The invite identifier for this party. If this value is specified, it must be no longer than 127 characters. [Revocability <String>]: Controls which participants can revoke this invite. PreferredRegions <String[]>: The preferred regions to request a party session from. The party service will iterate through the regions in the specified order and allocate a party session from the first one that is available. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). [PartyId <String>]: A guid string party ID created track the party session over its life. .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/request-pfpartyservice #> function Request-PfPartyService { [OutputType([PlayFab.Multiplayer.Models.IComponents1Rr7M87ResponsesRequestpartyserviceresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='Request', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Request', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IRequestPartyServiceRequest] # Requests a party session from a particular set of builds if build alias params is provided, in any of the given preferred regions. # To construct, see NOTES section for REQUESTPARTYSERVICEREQUEST properties and create a hash table. ${RequestPartyServiceRequest}, [Parameter(ParameterSetName='RequestExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IPartyNetworkConfiguration] # The network configuration for this request. # To construct, see NOTES section for NETWORKCONFIGURATION properties and create a hash table. ${NetworkConfiguration}, [Parameter(ParameterSetName='RequestExpanded', Mandatory)] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [System.String[]] # The preferred regions to request a party session from. # The party service will iterate through the regions in the specified order and allocate a party session from the first one that is available. ${PreferredRegions}, [Parameter(ParameterSetName='RequestExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='RequestExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # A guid string party ID created track the party session over its life. ${PartyId}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Request = 'PlayFabMultiplayerApi.private\Request-PfPartyService_Request'; RequestExpanded = 'PlayFabMultiplayerApi.private\Request-PfPartyService_RequestExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Shuts down a multiplayer server session. .Description Shuts down a multiplayer server session. .Example PS C:\> Stop-PfMultiplayerServer -BuildId 9968f71f-f3ec-49df-82d7-d00b12c92e12 -Region AustraliaEast -SessionId 0352cf0f-2e7a-4aee-801d-7f27f8344c77 | ConvertTo-Json -depth 5 { "Code": 200, "Data": {}, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IShutdownMultiplayerServerRequest .Outputs PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. SHUTDOWNMULTIPLAYERSERVERREQUEST <IShutdownMultiplayerServerRequest>: Executes the shutdown callback from the GSDK and terminates the multiplayer server session. The callback in the GSDK will allow for graceful shutdown with a 15 minute timeoutIf graceful shutdown has not been completed before 15 minutes have elapsed, the multiplayer server session will be forcefully terminated on it's own. SessionId <String>: A guid string session ID of the multiplayer server to shut down. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/stop-pfmultiplayerserver #> function Stop-PfMultiplayerServer { [OutputType([PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='ShutdownExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Shutdown', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IShutdownMultiplayerServerRequest] # Executes the shutdown callback from the GSDK and terminates the multiplayer server session. # The callback in the GSDK will allow for graceful shutdown with a 15 minute timeoutIf graceful shutdown has not been completed before 15 minutes have elapsed, the multiplayer server session will be forcefully terminated on it's own. # To construct, see NOTES section for SHUTDOWNMULTIPLAYERSERVERREQUEST properties and create a hash table. ${ShutdownMultiplayerServerRequest}, [Parameter(ParameterSetName='ShutdownExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # A guid string session ID of the multiplayer server to shut down. ${SessionId}, [Parameter(ParameterSetName='ShutdownExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Shutdown = 'PlayFabMultiplayerApi.private\Stop-PfMultiplayerServer_Shutdown'; ShutdownExpanded = 'PlayFabMultiplayerApi.private\Stop-PfMultiplayerServer_ShutdownExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Creates a multiplayer server build alias. .Description Creates a multiplayer server build alias. .Example PS C:\> $buildWeightDistribution = @{ "9968f71f-f3ec-49df-82d7-d00b12c92e12" = 2; "0efadb18-8c62-42da-a7f9-4deec9bf47fd" = 3 } PS C:\> Update-PfBuildAlias -AliasId 0731d3ec-79f7-4aef-a0c3-ebaaf13e00c6 -AliasName UpdatedName -BuildSelectionCriteria @(@{ "BuildWeightDistribution" = $buildWeightDistribution}) | ConvertTo-Json -depth 5 { "Code": 200, "Data": { "AliasId": "0731d3ec-79f7-4aef-a0c3-ebaaf13e00c6", "AliasName": "UpdatedName", "BuildSelectionCriteria": [ { "BuildWeightDistribution": { "9968f71f-f3ec-49df-82d7-d00b12c92e12": 2, "0efadb18-8c62-42da-a7f9-4deec9bf47fd": 3 } } ], "PageSize": 0.0, "SkipToken": null }, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IUpdateBuildAliasRequest .Outputs PlayFab.Multiplayer.Models.IComponents1Ola4KgResponsesBuildaliasdetailsresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. BUILDSELECTIONCRITERIA <IBuildSelectionCriterion[]>: Array of build selection criteria. [BuildWeightDistribution <IAny>]: Dictionary of build ids and their respective weights for distribution of allocation requests. UPDATEBUILDALIASREQUEST <IUpdateBuildAliasRequest>: Creates a multiplayer server build alias and returns the created alias. AliasId <String>: The guid string alias Id of the alias to be updated. [AliasName <String>]: The alias name. [BuildSelectionCriteria <IBuildSelectionCriterion[]>]: Array of build selection criteria. [BuildWeightDistribution <IAny>]: Dictionary of build ids and their respective weights for distribution of allocation requests. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/update-pfbuildalias #> function Update-PfBuildAlias { [OutputType([PlayFab.Multiplayer.Models.IComponents1Ola4KgResponsesBuildaliasdetailsresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Update', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IUpdateBuildAliasRequest] # Creates a multiplayer server build alias and returns the created alias. # To construct, see NOTES section for UPDATEBUILDALIASREQUEST properties and create a hash table. ${UpdateBuildAliasRequest}, [Parameter(ParameterSetName='UpdateExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The guid string alias Id of the alias to be updated. ${AliasId}, [Parameter(ParameterSetName='UpdateExpanded')] [PlayFab.Multiplayer.Category('Body')] [System.String] # The alias name. ${AliasName}, [Parameter(ParameterSetName='UpdateExpanded')] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IBuildSelectionCriterion[]] # Array of build selection criteria. # To construct, see NOTES section for BUILDSELECTIONCRITERIA properties and create a hash table. ${BuildSelectionCriteria}, [Parameter(ParameterSetName='UpdateExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Update = 'PlayFabMultiplayerApi.private\Update-PfBuildAlias_Update'; UpdateExpanded = 'PlayFabMultiplayerApi.private\Update-PfBuildAlias_UpdateExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Updates a multiplayer server build's name. .Description Updates a multiplayer server build's name. .Example PS C:\> Update-PfBuildName -BuildId 9968f71f-f3ec-49df-82d7-d00b12c92e12 -BuildName UpdatedBuildName | ConvertTo-Json -depth 5 { "Code": 200, "Data": {}, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IUpdateBuildNameRequest .Outputs PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. UPDATEBUILDNAMEREQUEST <IUpdateBuildNameRequest>: Updates a multiplayer server build's name. BuildId <String>: The guid string ID of the build we want to update the name of. BuildName <String>: The build name. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/update-pfbuildname #> function Update-PfBuildName { [OutputType([PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Update', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IUpdateBuildNameRequest] # Updates a multiplayer server build's name. # To construct, see NOTES section for UPDATEBUILDNAMEREQUEST properties and create a hash table. ${UpdateBuildNameRequest}, [Parameter(ParameterSetName='UpdateExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The guid string ID of the build we want to update the name of. ${BuildId}, [Parameter(ParameterSetName='UpdateExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The build name. ${BuildName}, [Parameter(ParameterSetName='UpdateExpanded')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Update = 'PlayFabMultiplayerApi.private\Update-PfBuildName_Update'; UpdateExpanded = 'PlayFabMultiplayerApi.private\Update-PfBuildName_UpdateExpanded'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Updates a multiplayer server build's region. If the region is not yet created, it will be created .Description Updates a multiplayer server build's region. If the region is not yet created, it will be created .Example PS C:\> Update-PfBuildRegion -BuildId 9968f71f-f3ec-49df-82d7-d00b12c92e12 -BuildRegionMaxServers 2 -BuildRegionRegion AustraliaEast -BuildRegionStandbyServers 1 | ConvertTo-Json -depth 5 { "Code": 200, "Data": {}, "Status": "OK" } .Example PS C:\> $buildRegions = @( @{ "MaxServers" = 2; "Region" = "AustraliaEast"; "StandbyServers" = 1; "ScheduledStandbySettings" = @{ "ScheduleList" = @() } }, @{ "MaxServers" = 2; "Region" = "WestUs"; "StandbyServers" = 1; "ScheduledStandbySettings" = @{ "ScheduleList" = @() } } ) PS C:\> Update-PfBuildRegion -BuildId 9968f71f-f3ec-49df-82d7-d00b12c92e12 -BuildRegions $buildRegions | ConvertTo-Json -depth 5 { "Code": 200, "Data": {}, "Status": "OK" } .Inputs PlayFab.Multiplayer.Models.IUpdateBuildRegionRequest .Inputs PlayFab.Multiplayer.Models.IUpdateBuildRegionsRequest .Outputs PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema .Notes COMPLEX PARAMETER PROPERTIES To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. BUILDREGION <IBuildRegionParams>: The updated region configuration that should be applied to the specified build. MaxServers <Single>: The maximum number of multiplayer servers for the region. Region <String>: The build region. StandbyServers <Single>: The number of standby multiplayer servers for the region. [DynamicStandbySettings <IDynamicStandbySettings>]: Optional settings to control dynamic adjustment of standby target. If not specified, dynamic standby is disabled IsEnabled <Boolean>: When true, dynamic standby will be enabled [DynamicFloorMultiplierThresholds <IDynamicStandbyThreshold[]>]: List of auto standing by trigger values and corresponding standing by multiplier. Defaults to 1.5X at 50%, 3X at 25%, and 4X at 5% Multiplier <Single>: When the trigger threshold is reached, multiply by this value TriggerThresholdPercentage <Single>: The multiplier will be applied when the actual standby divided by target standby floor is less than this value [RampDownSeconds <Single?>]: The time it takes to reduce target standing by to configured floor value after an increase. Defaults to 30 minutes [MultiplayerServerCountPerVM <Single?>]: Regional override for the number of multiplayer servers to host on a single VM of the build. [ScheduledStandbySettings <IScheduledStandbySettings>]: Optional settings to set the standby target to specified values during the supplied schedules IsEnabled <Boolean>: When true, scheduled standby will be enabled [ScheduleList <ISchedule[]>]: A list of non-overlapping schedules EndTime <String>: The date and time in UTC at which the schedule ends. If IsRecurringWeekly is true, this schedule will keep renewing for future weeks until disabled or removed. IsDisabled <Boolean>: Disables the schedule. IsRecurringWeekly <Boolean>: If true, the StartTime and EndTime will get renewed every week. StartTime <String>: The date and time in UTC at which the schedule starts. TargetStandby <Single>: The standby target to maintain for the duration of the schedule. [Description <String>]: A short description about this schedule. For example, "Game launch on July 15th". [VMSize <String>]: Regional override for the VM size the build was created on. BUILDREGIONS <IBuildRegionParams[]>: The updated region configuration that should be applied to the specified build. MaxServers <Single>: The maximum number of multiplayer servers for the region. Region <String>: The build region. StandbyServers <Single>: The number of standby multiplayer servers for the region. [DynamicStandbySettings <IDynamicStandbySettings>]: Optional settings to control dynamic adjustment of standby target. If not specified, dynamic standby is disabled IsEnabled <Boolean>: When true, dynamic standby will be enabled [DynamicFloorMultiplierThresholds <IDynamicStandbyThreshold[]>]: List of auto standing by trigger values and corresponding standing by multiplier. Defaults to 1.5X at 50%, 3X at 25%, and 4X at 5% Multiplier <Single>: When the trigger threshold is reached, multiply by this value TriggerThresholdPercentage <Single>: The multiplier will be applied when the actual standby divided by target standby floor is less than this value [RampDownSeconds <Single?>]: The time it takes to reduce target standing by to configured floor value after an increase. Defaults to 30 minutes [MultiplayerServerCountPerVM <Single?>]: Regional override for the number of multiplayer servers to host on a single VM of the build. [ScheduledStandbySettings <IScheduledStandbySettings>]: Optional settings to set the standby target to specified values during the supplied schedules IsEnabled <Boolean>: When true, scheduled standby will be enabled [ScheduleList <ISchedule[]>]: A list of non-overlapping schedules EndTime <String>: The date and time in UTC at which the schedule ends. If IsRecurringWeekly is true, this schedule will keep renewing for future weeks until disabled or removed. IsDisabled <Boolean>: Disables the schedule. IsRecurringWeekly <Boolean>: If true, the StartTime and EndTime will get renewed every week. StartTime <String>: The date and time in UTC at which the schedule starts. TargetStandby <Single>: The standby target to maintain for the duration of the schedule. [Description <String>]: A short description about this schedule. For example, "Game launch on July 15th". [VMSize <String>]: Regional override for the VM size the build was created on. UPDATEBUILDREGIONREQUEST <IUpdateBuildRegionRequest>: Updates a multiplayer server build's region. BuildId <String>: The guid string ID of the build we want to update regions for. BuildRegion <IBuildRegionParams>: The updated region configuration that should be applied to the specified build. MaxServers <Single>: The maximum number of multiplayer servers for the region. Region <String>: The build region. StandbyServers <Single>: The number of standby multiplayer servers for the region. [DynamicStandbySettings <IDynamicStandbySettings>]: Optional settings to control dynamic adjustment of standby target. If not specified, dynamic standby is disabled IsEnabled <Boolean>: When true, dynamic standby will be enabled [DynamicFloorMultiplierThresholds <IDynamicStandbyThreshold[]>]: List of auto standing by trigger values and corresponding standing by multiplier. Defaults to 1.5X at 50%, 3X at 25%, and 4X at 5% Multiplier <Single>: When the trigger threshold is reached, multiply by this value TriggerThresholdPercentage <Single>: The multiplier will be applied when the actual standby divided by target standby floor is less than this value [RampDownSeconds <Single?>]: The time it takes to reduce target standing by to configured floor value after an increase. Defaults to 30 minutes [MultiplayerServerCountPerVM <Single?>]: Regional override for the number of multiplayer servers to host on a single VM of the build. [ScheduledStandbySettings <IScheduledStandbySettings>]: Optional settings to set the standby target to specified values during the supplied schedules IsEnabled <Boolean>: When true, scheduled standby will be enabled [ScheduleList <ISchedule[]>]: A list of non-overlapping schedules EndTime <String>: The date and time in UTC at which the schedule ends. If IsRecurringWeekly is true, this schedule will keep renewing for future weeks until disabled or removed. IsDisabled <Boolean>: Disables the schedule. IsRecurringWeekly <Boolean>: If true, the StartTime and EndTime will get renewed every week. StartTime <String>: The date and time in UTC at which the schedule starts. TargetStandby <Single>: The standby target to maintain for the duration of the schedule. [Description <String>]: A short description about this schedule. For example, "Game launch on July 15th". [VMSize <String>]: Regional override for the VM size the build was created on. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). UPDATEBUILDREGIONSREQUEST <IUpdateBuildRegionsRequest>: Updates a multiplayer server build's regions. BuildId <String>: The guid string ID of the build we want to update regions for. BuildRegions <IBuildRegionParams[]>: The updated region configuration that should be applied to the specified build. MaxServers <Single>: The maximum number of multiplayer servers for the region. Region <String>: The build region. StandbyServers <Single>: The number of standby multiplayer servers for the region. [DynamicStandbySettings <IDynamicStandbySettings>]: Optional settings to control dynamic adjustment of standby target. If not specified, dynamic standby is disabled IsEnabled <Boolean>: When true, dynamic standby will be enabled [DynamicFloorMultiplierThresholds <IDynamicStandbyThreshold[]>]: List of auto standing by trigger values and corresponding standing by multiplier. Defaults to 1.5X at 50%, 3X at 25%, and 4X at 5% Multiplier <Single>: When the trigger threshold is reached, multiply by this value TriggerThresholdPercentage <Single>: The multiplier will be applied when the actual standby divided by target standby floor is less than this value [RampDownSeconds <Single?>]: The time it takes to reduce target standing by to configured floor value after an increase. Defaults to 30 minutes [MultiplayerServerCountPerVM <Single?>]: Regional override for the number of multiplayer servers to host on a single VM of the build. [ScheduledStandbySettings <IScheduledStandbySettings>]: Optional settings to set the standby target to specified values during the supplied schedules IsEnabled <Boolean>: When true, scheduled standby will be enabled [ScheduleList <ISchedule[]>]: A list of non-overlapping schedules EndTime <String>: The date and time in UTC at which the schedule ends. If IsRecurringWeekly is true, this schedule will keep renewing for future weeks until disabled or removed. IsDisabled <Boolean>: Disables the schedule. IsRecurringWeekly <Boolean>: If true, the StartTime and EndTime will get renewed every week. StartTime <String>: The date and time in UTC at which the schedule starts. TargetStandby <Single>: The standby target to maintain for the duration of the schedule. [Description <String>]: A short description about this schedule. For example, "Game launch on July 15th". [VMSize <String>]: Regional override for the VM size the build was created on. [CustomTags <IAny>]: The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/update-pfbuildregion #> function Update-PfBuildRegion { [OutputType([PlayFab.Multiplayer.Models.IComponentsSiuvakResponsesEmptyresponseContentApplicationJsonSchema])] [CmdletBinding(DefaultParameterSetName='Update', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] param( [Parameter(ParameterSetName='Update', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IUpdateBuildRegionRequest] # Updates a multiplayer server build's region. # To construct, see NOTES section for UPDATEBUILDREGIONREQUEST properties and create a hash table. ${UpdateBuildRegionRequest}, [Parameter(ParameterSetName='Update1', Mandatory, ValueFromPipeline)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IUpdateBuildRegionsRequest] # Updates a multiplayer server build's regions. # To construct, see NOTES section for UPDATEBUILDREGIONSREQUEST properties and create a hash table. ${UpdateBuildRegionsRequest}, [Parameter(ParameterSetName='UpdateExpanded', Mandatory)] [Parameter(ParameterSetName='UpdateExpanded1', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The guid string ID of the build we want to update regions for. ${BuildId}, [Parameter(ParameterSetName='UpdateExpanded', Mandatory)] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IBuildRegionParams] # The updated region configuration that should be applied to the specified build. # To construct, see NOTES section for BUILDREGION properties and create a hash table. ${BuildRegion}, [Parameter(ParameterSetName='UpdateExpanded')] [Parameter(ParameterSetName='UpdateExpanded1')] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IAny] # The optional custom tags associated with the request (e.g. # build number, external trace identifiers, etc.). ${CustomTags}, [Parameter(ParameterSetName='UpdateExpanded1', Mandatory)] [AllowEmptyCollection()] [PlayFab.Multiplayer.Category('Body')] [PlayFab.Multiplayer.Models.IBuildRegionParams[]] # The updated region configuration that should be applied to the specified build. # To construct, see NOTES section for BUILDREGIONS properties and create a hash table. ${BuildRegions}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [PlayFab.Multiplayer.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [PlayFab.Multiplayer.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ Update = 'PlayFabMultiplayerApi.private\Update-PfBuildRegion_Update'; Update1 = 'PlayFabMultiplayerApi.private\Update-PfBuildRegion_Update1'; UpdateExpanded = 'PlayFabMultiplayerApi.private\Update-PfBuildRegion_UpdateExpanded'; UpdateExpanded1 = 'PlayFabMultiplayerApi.private\Update-PfBuildRegion_UpdateExpanded1'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Uploads an asset. .Description Uploads an asset. .Example PS C:\> New-PfAsset -FilePath C:\example.zip -AssetName example.zip Version : 1.1 Content : System.Net.Http.StreamContent StatusCode : Created ReasonPhrase : Created Headers : {[x-ms-request-id, System.String[]], [x-ms-version, System.String[]], [x-ms-request-server-encrypted, System.String[]], [Date, System.String[]]...} RequestMessage : Method: PUT, RequestUri: 'https://example.blob.core.windows.net/gameassets/example.zip?sv=2015- 04-05&ss=b&srt=sco&sp=rw&st=2021-05-07T16:17:02.6110864Z&se=2021-05-07T22:17:02.6110856Z&spr=https&sig=YOf bOYfU5Po5Bu/Wpxx3VVPJPYsFAHRgflH4UCR9J7U=&api-version=2018-03-28&comp=blocklist', Version: 1.1, Content: System.Net.Http.StringContent, Headers: { Content-Type: text/plain; charset=utf-8 Content-Length: 116 } IsSuccessStatusCode : True .Outputs PlayFab.Multiplayer.Models.IApiErrorWrapper .Outputs PlayFab.Multiplayer.Models.IComponentsHvu8TvResponsesGetassetuploadurlresponseContentApplicationJsonSchema .Outputs System.Net.Http.HttpResponseMessage .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/new-pfasset #> function New-PfAsset { [OutputType([PlayFab.Multiplayer.Models.IComponentsHvu8TvResponsesGetassetuploadurlresponseContentApplicationJsonSchema], [PlayFab.Multiplayer.Models.IApiErrorWrapper], [System.Net.Http.HttpResponseMessage])] [CmdletBinding(PositionalBinding=$false)] param( [Parameter(Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The path to the local file to upload. ${FilePath}, [Parameter(Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The name of the asset to upload. ${AssetName}, [Parameter()] [PlayFab.Multiplayer.Category('Body')] [System.Int32] # The size of the buffer used for uploading (in bytes). ${BufferSize} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ __AllParameterSets = 'PlayFabMultiplayerApi.custom\New-PfAsset'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } <# .Synopsis Requests a Title EntityToken and sets it to an environment variable that is used in future MPS requests. .Description Requests a Title EntityToken and sets it to an environment variable that is used in future MPS requests. .Example PS C:\> Set-PfTitle -TitleId 1E03 -SecretKey CE5DM4156UQRMEK38I4QDG83EXMEJCFT7JXFAU78K1HOQ5HOCY | ConvertTo-Json -depth 5 { "code": 200, "status": "OK", "data": { "EntityToken": "M3x7ImkiOiIyMDIxLTAyLTE2VDIxOjQwOjQxLjczOTM2ODNaIiwiaWRwIjoiVW5rbm93biIsImUiOiIyMDIxLTAyLTE3VDIxOjQwOjQxLjczOTM2ODNaIiwiaCI6IjQ2RjJGRkNDOTFDRDdBQzciLCJzIjoiSGRBWGJFY3FFUXl1elhDUWRGanExQ2Y5NHpSY2JVRmRURGlZcHN3UVhyQT0iLCJlYyI6InRpdGxlITVGRUM4RTc3QjRENjIzRi8xRTAzLyIsImVpIjoiMUUwMyIsImV0IjoidGl0bGUifQ==", "TokenExpiration": "2021-02-17T21:40:41.739Z", "Entity": { "Id": "1E03", "Type": "title", "TypeString": "title" } } } .Outputs System.Management.Automation.PSObject .Link https://docs.microsoft.com/en-us/powershell/module/playfabmultiplayerapi/set-pftitle #> function Set-PfTitle { [OutputType([System.Management.Automation.PSObject])] [CmdletBinding(PositionalBinding=$false)] param( [Parameter(Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The PlayFab TitleId ${TitleId}, [Parameter(Mandatory)] [PlayFab.Multiplayer.Category('Body')] [System.String] # The SecretKey for the title. ${SecretKey}, [Parameter()] [PlayFab.Multiplayer.Category('Body')] [System.String] # The hostname to use for requests. # Defaults to "playfabapi.com". ${PlayFabApiHostName} ) begin { try { $outBuffer = $null if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { $PSBoundParameters['OutBuffer'] = 1 } $parameterSet = $PSCmdlet.ParameterSetName $mapping = @{ __AllParameterSets = 'PlayFabMultiplayerApi.custom\Set-PfTitle'; } $cmdInfo = Get-Command -Name $mapping[$parameterSet] [PlayFab.Multiplayer.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet) $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) $scriptCmd = {& $wrappedCmd @PSBoundParameters} $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) $steppablePipeline.Begin($PSCmdlet) } catch { throw } } process { try { $steppablePipeline.Process($_) } catch { throw } } end { try { $steppablePipeline.End() } catch { throw } } } |