/// <summary>
        /// Accepts an invitation to join a group
        /// </summary>
        public static void AcceptGroupInvitation(AcceptGroupInvitationRequest request, Action <EmptyResponse> resultCallback, Action <PlayFabError> errorCallback, object customData = null, Dictionary <string, string> extraHeaders = null)
        {
            var context = (request == null ? null : request.AuthenticationContext) ?? PlayFabSettings.staticPlayer;


            PlayFabHttp.MakeApiCall("/Group/AcceptGroupInvitation", request, AuthType.EntityToken, resultCallback, errorCallback, customData, extraHeaders, context);
        }
Ejemplo n.º 2
0
        public void OnInvite(InviteToGroupResponse response)
        {
            var prevRequest = (InviteToGroupRequest)response.Request;

            // Presumably, this would be part of a separate process where the recipient reviews and accepts the request
            var request = new AcceptGroupInvitationRequest {
                Group = EntityKeyMaker(prevRequest.Group.Id), Entity = prevRequest.Entity
            };

            PlayFabGroupsAPI.AcceptGroupInvitation(request, OnAcceptInvite, OnSharedError);
        }
        /// <summary>
        /// Accepts an invitation to join a group
        /// </summary>
        public void AcceptGroupInvitation(AcceptGroupInvitationRequest request, Action <EmptyResponse> 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("/Group/AcceptGroupInvitation", request, AuthType.EntityToken, resultCallback, errorCallback, customData, extraHeaders, context, callSettings, this);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Accepts an invitation to join a group
        /// </summary>
        /// <param name="Entity">The entity to perform this action on. (Optional)</param>
        /// <param name="Group">The identifier of the group (Required)</param>
        public static Task <EmptyResponse> AcceptGroupInvitation(EntityKey Group, EntityKey Entity = default,
                                                                 PlayFabAuthenticationContext customAuthContext = null, object customData = null, Dictionary <string, string> extraHeaders = null)
        {
            AcceptGroupInvitationRequest request = new AcceptGroupInvitationRequest()
            {
                Group  = Group,
                Entity = Entity,
            };

            var context = GetContext(customAuthContext);

            return(PlayFabHttp.MakeApiCallAsync <EmptyResponse>("/Group/AcceptGroupInvitation", request,
                                                                AuthType.EntityToken,
                                                                customData, extraHeaders, context));
        }
Ejemplo n.º 5
0
    public void AcceptInvitationToGroup(string usernameToAccept, string password, string groupName)
    {
        var loginWithPlayFabRequest = new LoginWithPlayFabRequest {
            Username = usernameToAccept, Password = password
        };

        PlayFabClientAPI.LoginWithPlayFab(loginWithPlayFabRequest,
                                          delegate(LoginResult loginResult)
        {
            var getAccountInfoRequest = new GetAccountInfoRequest()
            {
                Username = usernameToAccept
            };

            PlayFabClientAPI.GetAccountInfo(getAccountInfoRequest,
                                            delegate(GetAccountInfoResult getAccountInfoResult)
            {
                var getGroupRequest = new GetGroupRequest()
                {
                    GroupName = groupName
                };

                PlayFabGroupsAPI.GetGroup(getGroupRequest,
                                          delegate(GetGroupResponse getGroupResponse)
                {
                    var acceptGroupInvitationRequest = new AcceptGroupInvitationRequest()
                    {
                        Entity = ConvertEntityKey(getAccountInfoResult.AccountInfo.TitleInfo.TitlePlayerAccount),
                        Group  = getGroupResponse.Group
                    };

                    PlayFabGroupsAPI.AcceptGroupInvitation(acceptGroupInvitationRequest,
                                                           delegate(EmptyResponse emptyResponse)
                    {
                        Debug.Log("Username: "******" has accepted an invitation to group: " + groupName);
                    },
                                                           SharedError.OnSharedError);
                },
                                          SharedError.OnSharedError);
            },
                                            SharedError.OnSharedError);
        },
                                          SharedError.OnSharedError);
    }
        /// <summary>
        /// Accepts an invitation to join a group
        /// </summary>
        public static async Task <PlayFabResult <EmptyResponse> > AcceptGroupInvitationAsync(AcceptGroupInvitationRequest request, object customData = null, Dictionary <string, string> extraHeaders = null)
        {
            if ((request?.AuthenticationContext?.EntityToken ?? PlayFabSettings.staticPlayer.EntityToken) == null)
            {
                throw new PlayFabException(PlayFabExceptionCode.EntityTokenNotSet, "Must call GetEntityToken before calling this method");
            }


            var httpResult = await PlayFabHttp.DoPost("/Group/AcceptGroupInvitation", request, "X-EntityToken", PlayFabSettings.staticPlayer.EntityToken, extraHeaders);

            if (httpResult is PlayFabError)
            {
                var error = (PlayFabError)httpResult;
                PlayFabSettings.GlobalErrorHandler?.Invoke(error);
                return(new PlayFabResult <EmptyResponse> {
                    Error = error, CustomData = customData
                });
            }

            var resultRawJson = (string)httpResult;
            var resultData    = PluginManager.GetPlugin <ISerializerPlugin>(PluginContract.PlayFab_Serializer).DeserializeObject <PlayFabJsonSuccess <EmptyResponse> >(resultRawJson);
            var result        = resultData.data;

            return(new PlayFabResult <EmptyResponse> {
                Result = result, CustomData = customData
            });
        }
Ejemplo n.º 7
0
 /// <summary>
 /// Accepts an invitation to join a group
 /// </summary>
 public static void AcceptGroupInvitation(AcceptGroupInvitationRequest request, Action <EmptyResponse> resultCallback, Action <PlayFabError> errorCallback, object customData = null, Dictionary <string, string> extraHeaders = null)
 {
     PlayFabHttp.MakeApiCall("/Group/AcceptGroupInvitation", request, AuthType.EntityToken, resultCallback, errorCallback, customData, extraHeaders);
 }