Exemple #1
0
    // Use this for initialization

    #region AUTHORIZATION

    public void LoginWithFB(string accessToken, string titleId)
    {
        LoginWithFacebookRequest request = new LoginWithFacebookRequest()
        {
            TitleId       = titleId,
            CreateAccount = true,
            AccessToken   = accessToken
                            //  CustomId = SystemInfo.deviceUniqueIdentifier
        };

        PlayFabClientAPI.LoginWithFacebook(request, (result) => {
            PlayFabId = result.PlayFabId;
            Debug.Log("Got PlayFabID: " + PlayFabId);
            NetworkManager.UserID = PlayFabId;             //TODO: think about login lambda
            if (result.NewlyCreated)
            {
                Debug.Log("(new account)");
            }
            else
            {
                Debug.Log("(existing account)");
            }
            NetworkManager.THIS.IsLoggedIn = true;
        },
                                           (error) => {
            Debug.Log(error.ErrorMessage);
        });
    }
        /// <summary>
        ///
        /// </summary>
        public virtual void LogInWithFacebookID(string _token = null)
        {
            retryToLogIn = false;
            if (string.IsNullOrEmpty(_token) && PlayfabConstants.Instance != null)
            {
                _token = PlayfabConstants.Instance.FacebookToken;
            }

            if (!String.IsNullOrEmpty(_token))
            {
                var request = new LoginWithFacebookRequest
                {
                    CreateAccount = true,
                    AccessToken   = _token
                };

                PlayFabClientAPI.LoginWithFacebook(request, OnLogInWithFacebookSuccess, OnLogInWithFacebookFailed);
                if (LobbyUIManager.instance != null)
                {
                    Invoke(nameof(ProfileSyncStart), 1f);
                }
            }
            else
            {
                LogInWithCustomID();
            }
        }
Exemple #3
0
        public void LoginWithFacebookAccount(string accessToken, Action <LoginResult> callBack, Action <PlayFabError> loginFailure)
        {
            var request = new LoginWithFacebookRequest {
                AccessToken = accessToken
            };

            PlayFabClientAPI.LoginWithFacebook(request, callBack, loginFailure);
        }
Exemple #4
0
    public void RegisterFacebookUser(string accessToken, bool isAutoLogin = false)
    {
        print("FB Login request");
        var request = new LoginWithFacebookRequest {
            CreateAccount = !isAutoLogin, AccessToken = accessToken
        };

        PlayFabClientAPI.LoginWithFacebook(request, OnFBLoginSucess, OnLoginFailure);
    }
Exemple #5
0
    //account not found with this facebook, tries creating an account instead
    private void OnPlayfabFacebookAuthFailed(PlayFabError error)
    {
        Debug.Log("PlayFab Facebook Auth Failed: " + error.GenerateErrorReport());
        var LoginWithFacebook = new LoginWithFacebookRequest {
            CreateAccount = true, AccessToken = AccessToken.CurrentAccessToken.TokenString
        };

        PlayFabClientAPI.LoginWithFacebook(LoginWithFacebook, OnCreatePlayfabFacebookAccountSuccess, OnCreatePlayfabFacebookAccountFailure);
        isOnline = false;
    }
    private void AuthenticateLoginWithFacebook()
    {
#if UNITY_FACEBOOK
        LoginWithFacebookRequest request = new LoginWithFacebookRequest();
        request.AccessToken   = AuthTicket;
        request.TitleId       = PlayFabSettings.TitleId;
        request.CreateAccount = true;

        PlayFabClientAPI.LoginWithFacebook(request, LoginSuccess, StatusFail);
#endif
    }
Exemple #7
0
    public void LogIntoPlayfab()
    {
        Debug.Log("Logging Into PlayFab...");
        PlayFabSettings.TitleId = GameState.Constants.PLAYFAB_TITLE_ID;         //your title id goes here.
        LoginWithFacebookRequest request = new LoginWithFacebookRequest();

        request.AccessToken   = GameState.Instance.FBUserAccessToken;
        request.TitleId       = PlayFabSettings.TitleId;
        request.CreateAccount = true;
        PlayFabClientAPI.LoginWithFacebook(request, OnPlayFabLoginResult, OnPlayFabLoginError);
    }
    /// <summary>
    /// Login with Facebook token.
    /// </summary>
    /// <param name="token">Token obtained through the FB plugin. (works on mobile and FB canvas only)</param>
    private static void LoginWithFacebook(string token)
    {
        LoginMethodUsed = LoginPathways.facebook;
        LoginWithFacebookRequest request = new LoginWithFacebookRequest();

        request.AccessToken   = token;
        request.TitleId       = PlayFabSettings.TitleId;
        request.CreateAccount = false;

        PlayFabClientAPI.LoginWithFacebook(request, OnLoginResult, OnLoginError);
    }
Exemple #9
0
    void LoginPlayfabWithFBAccount(Facebook.Unity.AccessToken token)
    {
        Debug.Log("LoginPlayfabWithFBAccount " + token);
        var request = new LoginWithFacebookRequest {
            AccessToken = token.TokenString
        };

        request.TitleId       = PlayFabSettings.TitleId;
        request.CreateAccount = true;
        PlayFabClientAPI.LoginWithFacebook(request, RequestPhotonToken, OnPlayFabError);
    }
Exemple #10
0
        /// <summary>
        /// Login within an app on Facebook Canvas or Gameroom by using its current access token.
        /// </summary>
        public void LoginWithFacebook()
        {
            LoginWithFacebookRequest request = new LoginWithFacebookRequest()
            {
                TitleId               = PlayFabSettings.TitleId,
                CreateAccount         = true,
                AccessToken           = facebookAccess,
                InfoRequestParameters = instance.accountParams
            };

            PlayFabClientAPI.LoginWithFacebook(request, OnLoggedIn, OnPlayFabError);
        }
Exemple #11
0
    private void LogOnPlayFab()
    {
        if (IsLoggedOnPlayFab)
        {
            return;
        }

        var loginWithFacebookRequest = new LoginWithFacebookRequest {
            TitleId       = PlayFabSettings.TitleId,
            AccessToken   = AccessToken.CurrentAccessToken.TokenString,
            CreateAccount = true
        };

        PlayFabClientAPI.LoginWithFacebook(loginWithFacebookRequest, PlayFabLoginSuccessCallback, PlayFabErrorCallback);
    }
Exemple #12
0
 private void SetInit()
 {
     if (FB.IsLoggedIn)
     {
         Debug.Log("Facebook is logged in");
         Debug.Log("Facebook Access Token: " + AccessToken.CurrentAccessToken.TokenString);
         Debug.Log("Facebook Access Token Expiration: " + AccessToken.CurrentAccessToken.ExpirationTime);
         var LoginWithFacebook = new LoginWithFacebookRequest {
             CreateAccount = false, AccessToken = AccessToken.CurrentAccessToken.TokenString
         };
         PlayFabClientAPI.LoginWithFacebook(LoginWithFacebook, OnPlayfabFacebookAuthComplete, OnPlayfabFacebookAuthFailed);
     }
     else
     {
         Debug.Log("Facebook is not logged in");
     }
 }
Exemple #13
0
    /// <summary>
    /// Function to be called to link Facebook user with PlayFab user
    /// (creates a new one if not exists, logins existing user if exists).
    /// </summary>
    /// <param name="facebookAccessToken">Facebook's access token</param>
    /// <param name="OnLoginCompletedCallback">Function to call after process ends</param>
    public void LoginWithFacebook(string facebookAccessToken, string facebookName, string facebookPictureURL, ProjectDelegates.PlayFabLoginCallback OnLoginCompletedCallback)
    {
        this.OnLoginCompletedCallback = OnLoginCompletedCallback;

        this.playerDisplayName = facebookName;
        this.playerPictureURL  = facebookPictureURL;

        PlayFabSettings.TitleId = playFabGameID;

        LoginWithFacebookRequest facebookRequest = new LoginWithFacebookRequest();

        facebookRequest.CreateAccount = true;
        facebookRequest.TitleId       = playFabGameID;
        facebookRequest.AccessToken   = facebookAccessToken;

        PlayFabClientAPI.LoginWithFacebook(facebookRequest, OnLoginCompleted, OnLoginError);
    }
    public static Promise LoginWithFacebook()
    {
        var promise = new Promise();

        FB.LogInWithReadPermissions(new List <string> {
            "user_location"
        }, (loginResult) => {
            try {
                var request = new LoginWithFacebookRequest {
                    CreateAccount = true, AccessToken = AccessToken.CurrentAccessToken.TokenString
                };
                PlayFabClientAPI.LoginWithFacebook(request, (result) => { promise.Resolve(); }, ErrorCallback);
            } catch (Exception ex) {
                promise.Reject(ex);
            }
        });
        return(promise);
    }
    private void LoginFacebookCallBack(ILoginResult loginResult)
    {
        //Caso o resultado seja nulo, deu algum erro no login.
        if (loginResult == null)
        {
            Debug.Log("Não foi possível logar no facebook.");
            return;
        }

        //Verifica se o retorno não foi um erro, ou algum tipo de cancelamento caso não seja nenhum desses tipos indica
        //que foi possível realizar o login com o facebook com sucesso.
        if (string.IsNullOrEmpty(loginResult.Error) && !loginResult.Cancelled && !string.IsNullOrEmpty(loginResult.RawResult))
        {
            Debug.Log("Sucesso ao Logar no Facebook.");

            //Aqui verificamos se o usuário já está logado no PlayFab e caso não esteja tenta realizar o login.
            if (!FacebookAndPlayFabInfo.isLoggedOnPlayFab)
            {
                //O PlayFab possuí vários tipos de login, neste artigo vamos utilizar o Login com o facebook
                //então nessa parte configuramos uma chamada para o PlayFab se Logar através dos dados do usuário
                //no facebook.
                LoginWithFacebookRequest loginFacebookRequest = new LoginWithFacebookRequest()
                {
                    //Indica o TitleId do seu jogo no PlayFab.
                    TitleId = PlayFabSettings.TitleId,
                    //Indica o token de acesso do usuário no Facebook, esse token só é gerado se o usuário já estiver
                    //logado no facebook
                    AccessToken = Facebook.Unity.AccessToken.CurrentAccessToken.TokenString,
                    //Indica para criar uma conta automaticamente dentro do seu jogo no PlayFab para este usuário,
                    //caso ele já não possua uma
                    CreateAccount = true
                };

                //Utiliza o SDK do PlayFab para realizar o login, utilizando a chamada e indicando as funções de callback
                //de sucesso e de error.
                PlayFabClientAPI.LoginWithFacebook(loginFacebookRequest, PlayFabLoginSucessCallBack, PlayFabErrorCallBack);
            }
        }
        else
        {
            Debug.Log("Não foi possível logar no facebook.");
        }
    }
Exemple #16
0
        private IEnumerator <LoginResult> LoginWithFacebookCoroutine(bool createAccount, GetPlayerCombinedInfoRequestParams combinedInfoParams, List <string> facebookPermissions)
        {
            #if !USING_FACEBOOK_SDK
            throw new FacebookException("USING_FACEBOOK_SDK is not defined!  Check your AppSettings.");
            #else
            // Making sure all passed in facebook permissions are appended to the global list
            if (facebookPermissions != null)
            {
                foreach (var facebookPermission in facebookPermissions)
                {
                    this.FacebookPermissions.AddIfUnique(facebookPermission);
                }
            }

            var accessToken = this.GetFacebookAccessToken();

            while (accessToken.IsDone == false)
            {
                yield return(default(LoginResult));
            }

            var facebookLoginRequest = new LoginWithFacebookRequest
            {
                AccessToken           = accessToken.Value,
                CreateAccount         = createAccount,
                InfoRequestParameters = this.GetCombinedInfoRequest(combinedInfoParams),
            };

            var facebookLogin = PF.Do <LoginWithFacebookRequest, LoginResult>(facebookLoginRequest, PlayFabClientAPI.LoginWithFacebook);

            while (facebookLogin.IsDone == false)
            {
                yield return(default(LoginResult));
            }

            yield return(facebookLogin.Value);
            #endif
        }
Exemple #17
0
    public void LoginPlayFabWithFacebook(string fbAccessToken)
    {
        if (string.IsNullOrEmpty(fbAccessToken))
        {
            Debug.LogError("Facebook access token needed for login to PlayFab!");
            return;
        }

        savedID = PlayerPrefs.GetString("savedID");

        if (string.IsNullOrEmpty(savedID))
        {
            savedID = System.Guid.NewGuid().ToString();
        }

        LoginWithFacebookRequest request = new LoginWithFacebookRequest()
        {
            AccessToken   = fbAccessToken,
            CreateAccount = true
        };

        PlayFabClientAPI.LoginWithFacebook(request, LoginWithFbResult, LoginWithFBErrorCallback);
    }
Exemple #18
0
        public static IEnumerator <LoginResult> LoginWithFacebook(bool createAccount, GetPlayerCombinedInfoRequestParams infoRequest = null)
        {
            IEnumerator <string> getAccessTokenCoroutine = GetFacebookAccessToken();
            string accessToken = null;

            while (getAccessTokenCoroutine.MoveNext())
            {
                accessToken = getAccessTokenCoroutine.Current;
            }

            // making sure we get User Account Info at login
            infoRequest = infoRequest ?? new GetPlayerCombinedInfoRequestParams();
            infoRequest.GetUserAccountInfo = true;

            var facebookLoginRequest = new LoginWithFacebookRequest
            {
                AccessToken           = accessToken,
                CreateAccount         = createAccount,
                InfoRequestParameters = infoRequest,
            };

            return(Do <LoginWithFacebookRequest, LoginResult>(facebookLoginRequest, PlayFabClientAPI.LoginWithFacebook));
        }
    /// <summary>
    /// Login with Facebook token.
    /// </summary>
    /// <param name="token">Token obtained through the FB plugin. (works on mobile and FB canvas only)</param>
    public static void LoginWithFacebook(string token, bool createAccount = false, UnityAction errCallback = null)
    {
        //LoginMethodUsed = LoginPathways.facebook;
        LoginWithFacebookRequest request = new LoginWithFacebookRequest();

        request.AccessToken   = token;
        request.TitleId       = PlayFabSettings.TitleId;
        request.CreateAccount = createAccount;

        DialogCanvasController.RequestLoadingPrompt(PlayFabAPIMethods.GenericLogin);
        PlayFabClientAPI.LoginWithFacebook(request, OnLoginResult, (PlayFabError error) =>
        {
            if (errCallback != null && error.Error == PlayFabErrorCode.AccountNotFound)
            {
                errCallback();
                PF_Bridge.RaiseCallbackError("Account not found, please select a login method to continue.", PlayFabAPIMethods.GenericLogin, MessageDisplayStyle.error);
            }
            else
            {
                OnLoginError(error);
            }
        });
    }
Exemple #20
0
 private void FBAuthCallBack(ILoginResult result)
 {
     if (result.Error != null)
     {
         Debug.Log(result.Error); //check error
     }
     else
     {
         if (FB.IsLoggedIn)
         {
             Debug.Log("Facebook is logged in");
             Debug.Log("Facebook Auth Complete. Access Token: " + AccessToken.CurrentAccessToken.TokenString);
             Debug.Log("Facebook Access Token Expiration: " + AccessToken.CurrentAccessToken.ExpirationTime);
             var LoginWithFacebook = new LoginWithFacebookRequest {
                 CreateAccount = false, AccessToken = AccessToken.CurrentAccessToken.TokenString
             };
             PlayFabClientAPI.LoginWithFacebook(LoginWithFacebook, OnPlayfabFacebookAuthComplete, OnPlayfabFacebookAuthFailed);
         }
         else
         {
             Debug.Log("Facebook is not logged in");
         }
     }
 }
Exemple #21
0
    public void LoginWithFacebook()
    {
        aToken = FacebookConnect.FC.AToken; //Facebook.Unity.AccessToken.CurrentAccessToken;

        LoginWithFacebookRequest request = new LoginWithFacebookRequest();

        request.AccessToken   = aToken;//.TokenString;
        request.TitleId       = PlayFabSettings.TitleId;
        request.CreateAccount = true;

        PlayFabClientAPI.LoginWithFacebook(request, OnLoginCallback, OnApiCallError);
        ///
        #region Google

        /*  Login Google
         *  LoginWithGoogleAccountRequest request = new LoginWithGoogleAccountRequest();
         *  request.ServerAuthCode = googleSignInUser.AuthCode; // GoogleSignInUser is the result of a successful google login
         *  request.TitleId = PlayFabSettings.TitleId;
         *  request.CreateAccount = true;
         *
         *  PlayFabClientAPI.LoginWithGoogleAccount(request, OnLoginCallback, OnApiCallError); */
        #endregion Google
        ///
    }