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

# Tutorial: Implementación de compilaciones mediante PowerShell/API

> Tutorial para implementar compilaciones de PlayFab Multiplayer Servers con sistema operativo Windows mediante PowerShell y la API de Multiplayer Servers con el ejemplo Windows Runner de C#.

En este tema se describe cómo implementar o crear compilaciones para máquinas virtuales con sistema operativo Windows en PowerShell en un dispositivo de desarrollo con Windows 10, basándose en el ejemplo Windows Runner de C#.

<Note>
  Para usar y ver los servidores de PlayFab Multiplayer Servers, debe habilitar la característica. Se recomienda usar el método de Game Manager para habilitar esta característica. Para obtener instrucciones, consulte [Habilitación de la característica PlayFab Server](/services/playfab/multiplayer/servers/enable-playfab-multiplayer-servers).
</Note>

## Requisitos previos

Asegúrese de haber completado los pasos siguientes.

* [Configuración de la opción de característica de API](/services/playfab/multiplayer/servers/windows-runner-sample#configure-api-feature-option)
* [Configuración del servidor](/services/playfab/multiplayer/servers/windows-runner-sample#server-set-up).

## 1. Obtención del identificador del título y la clave secreta de desarrollador

* Obtenga el identificador del título de PlayFab
  * Inicie sesión en su cuenta de desarrollador en [PlayFab.com](https://developer.playfab.com)
  * En Game Manager, vaya a la página **My Studios and Titles**. Busque su título de juego y obtenga el identificador del título de juego de PlayFab

* Obtenga la clave secreta de desarrollador para el título
  * En Game Manager, seleccione su título > configuración (icono de engranaje)
  * Seleccione **Title settings** y, después, la pestaña **Secret Keys** para obtener la clave secreta de desarrollador

Para obtener más información sobre las claves secretas, consulte [Administración de claves secretas](/services/playfab/live-service-management/gamemanager/secret-key-management)

## 2. Instalación del módulo de PowerShell de PlayFab Multiplayer

Abra Windows PowerShell como administrador y ejecute el comando siguiente para instalar el [módulo de API PlayFabMultiplayer](https://github.com/PlayFab/MpsPowershell). Este nuevo [módulo de API PlayFabMultiplayer](https://github.com/PlayFab/MpsPowershell) reemplaza al módulo de PowerShell Multiplayer en desuso.

Si instaló anteriormente el módulo [PlayFab Multiplayer Powershell](https://github.com/PlayFab/MultiplayerPowershell), desinstálelo con el comando siguiente. Para quienes realicen la transición al nuevo módulo, consulte [Asignación de comandos](/services/playfab/multiplayer/servers/deploy-using-powershell-api#mapping-commands) para encontrar los nuevos comandos equivalentes.

```powershell theme={null}
Uninstall-Package PlayFabMultiplayer
```

Tanto los comandos como los argumentos son diferentes en este nuevo módulo. Para obtener documentación detallada sobre cada comando, consulte la [documentación de los cmdlets](https://github.com/PlayFab/MpsPowershell/tree/main/MpsPowershell/docs).

```powershell theme={null}
Install-Module -Name PlayFabMultiplayerApi
```

<Tip>
  Antes de instalar el módulo, puede que primero necesite establecer la directiva de ejecución mediante `Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope CurrentUser`. Para obtener más información, consulte [Directivas de ejecución de PowerShell](https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_execution_policies).
</Tip>

## 3. Obtención de un EntityToken para el título

En la ventana de **PowerShell**, ejecute el comando siguiente con su identificador de título y la clave de desarrollador asociada:

```powershell theme={null}
Set-PfTitle -TitleID "mytitleID" -SecretKey "mysecretkey"
```

## 4. Carga de recursos

Cuando implementa servidores de Windows, usaría el contenedor de Windows administrado. Lo único que tiene que hacer es cargar la compilación del servidor de juegos de PlayFab Multiplayer como un recurso.

Actualice el valor de la marca **FilePath** con la ubicación del archivo local **winrunnerSample.zip**. Si no sabe dónde está este archivo, siga las instrucciones que se indican [aquí](/services/playfab/multiplayer/servers/windows-runner-sample#server-set-up) para obtenerlo.

```powershell theme={null}
New-PfAsset -FilePath C:\windowsRunnerCSharp.zip -AssetName windowsRunnerCSharp.zip
```

## 5. Creación de una compilación

Ahora que el recurso está cargado, podemos crear una compilación. Ejecute los comandos siguientes.

El código siguiente usa la máquina virtual **Standard\_D2as\_v4** en la región **EastUS**. Reemplace las cadenas según la máquina virtual y la región que quiera usar.

```powershell theme={null}
$vmSize = "Standard_D2as_v4"

$regions = @( @{ StandbyServers = 1; MaxServers = 1; Region = 'EastUS'; ScheduledStandbySettings = $NULL } )

$ports = @( @{ Name = 'game_port'; Num = 3600; Protocol = 'TCP' } )

$gameAssets = @( @{ FileName = 'windowsRunnerCSharp.zip'; MountPath = 'C:\Assets' } )

$buildResponse = New-PfBuild -BuildName PSTest_build -ContainerFlavor ManagedWindowsServerCore -StartMultiplayerServerCommand 'C:\Assets\WindowsRunnerCSharp.exe' -GameAssetReferences $gameAssets -VMSize $vmSize -MultiplayerServerCountPerVM 1 -Ports $ports -RegionConfigurations $regions

# All PlayFabMultiplayerApi cmdlets return objects, so we can pass the returned object to ConvertTo-Json for human readability.
$buildResponse | ConvertTo-Json -depth 5
```

## Comprobación de que la compilación es correcta

En unos segundos, verá la compilación creada a través de **PowerShell** o de la [API ListBuildSummaries](xref:titleid.playfabapi.com.multiplayer.multiplayerserver.listbuildsummariesv2).

También puede ejecutar el comando siguiente para comprobar que la compilación se implementó correctamente.

```powershell theme={null}
Get-PfBuild | ConvertTo-Json -depth 5
```

## Consulte también

* [Tutorial: Implementación de compilaciones mediante Game Manager](/services/playfab/multiplayer/servers/quickstart-for-multiplayer-servers-game-manager)
* [Ejemplo Windows Runner de C#](/services/playfab/multiplayer/servers/windows-runner-sample)
* [Ejemplos y recursos](/services/playfab/multiplayer/servers/server-samples-resources)


## Related topics

- [Implementación de compilaciones mediante PowerShell/API](/es/services/playfab/multiplayer/servers/deploy-using-powershell-api.md)
- [Implementación de compilaciones de servidores multijugador de PlayFab](/es/services/playfab/multiplayer/servers/deploying-playfab-multiplayer-server-builds.md)
- [Administración de secretos (versión preliminar)](/es/services/playfab/multiplayer/servers/manage-secrets.md)
- [Creación e implementación de compilaciones de Linux](/es/services/playfab/multiplayer/servers/deploying-linux-based-builds.md)
- [Ejemplo de Windows Runner](/es/services/playfab/multiplayer/servers/windows-runner-sample.md)
