/// <summary> /// Creates a multiplayer server build with a managed container. /// </summary> public static void CreateBuildWithManagedContainer(CreateBuildWithManagedContainerRequest request, Action <CreateBuildWithManagedContainerResponse> resultCallback, Action <PlayFabError> errorCallback, object customData = null, Dictionary <string, string> extraHeaders = null) { var context = (request == null ? null : request.AuthenticationContext) ?? PlayFabSettings.staticPlayer; PlayFabHttp.MakeApiCall("/MultiplayerServer/CreateBuildWithManagedContainer", request, AuthType.EntityToken, resultCallback, errorCallback, customData, extraHeaders, context); }
/// <summary> /// Creates a multiplayer server build with a managed container. /// </summary> public void CreateBuildWithManagedContainer(CreateBuildWithManagedContainerRequest request, Action <CreateBuildWithManagedContainerResponse> resultCallback, Action <PlayFabError> errorCallback, object customData = null, Dictionary <string, string> extraHeaders = null) { var context = (request == null ? null : request.AuthenticationContext) ?? authenticationContext; var callSettings = apiSettings ?? PlayFabSettings.staticSettings; if (!context.IsEntityLoggedIn()) { throw new PlayFabException(PlayFabExceptionCode.NotLoggedIn, "Must be logged in to call this method"); } PlayFabHttp.MakeApiCall("/MultiplayerServer/CreateBuildWithManagedContainer", request, AuthType.EntityToken, resultCallback, errorCallback, customData, extraHeaders, context, callSettings, this); }
protected override void ProcessRecord() { CreateBuildWithManagedContainerRequest buildRequest = new CreateBuildWithManagedContainerRequest() { BuildName = BuildName, ContainerFlavor = ContainerFlavor.ManagedWindowsServerCore, GameAssetReferences = AssetReferences, GameCertificateReferences = CertificateReferences, Metadata = Metadata, Ports = Ports, MultiplayerServerCountPerVm = MultiplayerServerCountPerVm, StartMultiplayerServerCommand = StartMultiplayerServerCommand, VmSize = VmSize, RegionConfigurations = RegionConfiguration }; CreateBuildWithManagedContainerResponse response = CallPlayFabApi(() => Instance.CreateBuildWithManagedContainerAsync(buildRequest)); WriteVerbose($"Created build {BuildName}"); WriteObject(response); }
/// <summary> /// Creates a build /// </summary> /// <returns> /// Boolean representing whether the call was successful or not /// </returns> public async Task <bool> CreateBuild( string strName, ContainerFlavor containerFlavor, List <AssetReferenceParams> lstGameAssets, List <GameCertificateReferenceParams> lstCertificates, List <Port> lstPorts, Dictionary <string, string> metaData, List <BuildRegionParams> lstRegions, int multiplayerServerCountPerVm, string strStartGameCommand, AzureVmSize VMSize ) { // Create a build with the requested specificaitons CreateBuildWithManagedContainerRequest createRequest = new CreateBuildWithManagedContainerRequest() { BuildName = strName, ContainerFlavor = containerFlavor, GameAssetReferences = lstGameAssets, GameCertificateReferences = lstCertificates, Ports = lstPorts, Metadata = metaData, RegionConfigurations = lstRegions, MultiplayerServerCountPerVm = multiplayerServerCountPerVm, StartMultiplayerServerCommand = strStartGameCommand, VmSize = VMSize }; var createResp = await PlayFabMultiplayerAPI.CreateBuildWithManagedContainerAsync(createRequest); bool hasError = CheckForError(createResp); if (hasError) { throw new Exception(String.Format("Create Build failed with error: {0}", createResp.Error.ErrorMessage)); } return(!hasError); }
/// <summary> /// Creates a multiplayer server build with a managed container. /// </summary> public static void CreateBuildWithManagedContainer(CreateBuildWithManagedContainerRequest request, Action <CreateBuildWithManagedContainerResponse> resultCallback, Action <PlayFabError> errorCallback, object customData = null, Dictionary <string, string> extraHeaders = null) { PlayFabHttp.MakeApiCall("/MultiplayerServer/CreateBuildWithManagedContainer", request, AuthType.EntityToken, resultCallback, errorCallback, customData, extraHeaders); }
/// <summary> /// Creates a multiplayer server build with a managed container. /// </summary> public static async Task <PlayFabResult <CreateBuildWithManagedContainerResponse> > CreateBuildWithManagedContainerAsync(CreateBuildWithManagedContainerRequest request, object customData = null, Dictionary <string, string> extraHeaders = null) { if (PlayFabSettings.EntityToken == null) { throw new PlayFabException(PlayFabExceptionCode.EntityTokenNotSet, "Must call GetEntityToken before calling this method"); } var httpResult = await PlayFabHttp.DoPost("/MultiplayerServer/CreateBuildWithManagedContainer", request, "X-EntityToken", PlayFabSettings.EntityToken, extraHeaders); if (httpResult is PlayFabError) { var error = (PlayFabError)httpResult; PlayFabSettings.GlobalErrorHandler?.Invoke(error); return(new PlayFabResult <CreateBuildWithManagedContainerResponse> { Error = error, CustomData = customData }); } var resultRawJson = (string)httpResult; var resultData = PluginManager.GetPlugin <ISerializerPlugin>(PluginContract.PlayFab_Serializer).DeserializeObject <PlayFabJsonSuccess <CreateBuildWithManagedContainerResponse> >(resultRawJson); var result = resultData.data; return(new PlayFabResult <CreateBuildWithManagedContainerResponse> { Result = result, CustomData = customData }); }