コード例 #1
0
        public static async Task <EmptyResponse> AddMember(PlayFabAuthenticationContext authenticationContext, string matchlobbyId, EntityKey member)
        {
            var apiSettings = new PlayFabApiSettings
            {
                TitleId            = Environment.GetEnvironmentVariable(Constants.PLAYFAB_TITLE_ID, EnvironmentVariableTarget.Process),
                DeveloperSecretKey = Environment.GetEnvironmentVariable(Constants.PLAYFAB_DEV_SECRET_KEY, EnvironmentVariableTarget.Process)
            };
            var groupApi = new PlayFabGroupsInstanceAPI(apiSettings, authenticationContext);
            var members  = new List <EntityKey>()
            {
                member
            };

            var response = await groupApi.AddMembersAsync(new AddMembersRequest
            {
                Group = new EntityKey
                {
                    Id   = matchlobbyId,
                    Type = "group"
                },
                Members = members
            });

            if (response.Error != null)
            {
                throw new Exception($"An error occurred while the addition of member to the group: Error: {response.Error.GenerateErrorReport()}");
            }

            return(response.Result);
        }
コード例 #2
0
        public static async Task DeletePlayFabMatchLobbyAsync(PlayFabApiSettings apiSettings, PlayFabAuthenticationContext authenticationContext, string matchlobbyId)
        {
            var groupApi = new PlayFabGroupsInstanceAPI(apiSettings, authenticationContext);
            var request  = new DeleteGroupRequest {
                Group = CreateEntityKey(matchlobbyId)
            };

            await groupApi.DeleteGroupAsync(request);
        }
コード例 #3
0
        public static async Task <IActionResult> Run(
            [HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req,
            ILogger log)
        {
            var serverSettings = new PlayFab.PlayFabApiSettings()
            {
                TitleId            = Environment.GetEnvironmentVariable("PlayFab.TitleId", EnvironmentVariableTarget.Process),
                DeveloperSecretKey = Environment.GetEnvironmentVariable("PlayFab.TitleSecret", EnvironmentVariableTarget.Process),
            };

            var authAPI       = new PlayFabAuthenticationInstanceAPI(serverSettings);
            var titleResponse = await authAPI.GetEntityTokenAsync(new PlayFab.AuthenticationModels.GetEntityTokenRequest());

            var title      = titleResponse.Result.Entity;
            var titleToken = titleResponse.Result.EntityToken;

            log.LogInformation($"Title is  : {title.Id}");
            log.LogInformation($"Token is  : {titleToken}");

            var request = new PlayFab.GroupsModels.ListMembershipRequest()
            {
                Entity = new PlayFab.GroupsModels.EntityKey
                {
                    Id   = "7B66887BFE1A76CE",
                    Type = "title_player_account",
                }
            };

            log.LogInformation($"Request is  : {JsonConvert.SerializeObject(request)}");

            var titleAuthContext = new PlayFabAuthenticationContext();

            titleAuthContext.EntityToken = titleToken;

            var api    = new PlayFabGroupsInstanceAPI(serverSettings, titleAuthContext);
            var result = await api.ListMembershipAsync(request);

            //var result = await PlayFabGroupsAPI.ListMembershipAsync(request);

            var groups = result.Result.Groups;
            var msg    = $"group is {JsonConvert.SerializeObject(groups)}\n";

            return((ActionResult) new OkObjectResult($"{msg}"));
        }