Search in sources :

Example 1 with AuthState

use of im.actor.core.AuthState in project actor-platform by actorapp.

the class AuthActivity method startAuth.

public void startAuth(String name) {
    currentName = name;
    currentSex = Sex.UNKNOWN;
    availableAuthType = ActorSDK.sharedActor().getAuthType();
    AuthState authState;
    if (!codeValidated) {
        if ((availableAuthType & AUTH_TYPE_PHONE) == AUTH_TYPE_PHONE) {
            authState = AuthState.AUTH_PHONE;
        } else if ((availableAuthType & AUTH_TYPE_EMAIL) == AUTH_TYPE_EMAIL) {
            authState = AuthState.AUTH_EMAIL;
        } else {
            // none of valid auth types selected - force crash?
            return;
        }
        updateState(authState);
    } else {
        signUp(messenger().doSignup(currentName, currentSex != null ? currentSex : Sex.UNKNOWN, transactionHash), currentName, currentSex);
    }
}
Also used : AuthState(im.actor.core.AuthState)

Example 2 with AuthState

use of im.actor.core.AuthState in project actor-platform by actorapp.

the class Authentication method requestStartEmailAuth.

@Deprecated
public Command<AuthState> requestStartEmailAuth(final String email) {
    return callback -> {
        ArrayList<String> langs1 = new ArrayList<>();
        for (String s : modules.getConfiguration().getPreferredLanguages()) {
            langs1.add(s);
        }
        request(new RequestStartEmailAuth(email, apiConfiguration.getAppId(), apiConfiguration.getAppKey(), deviceHash, apiConfiguration.getDeviceTitle(), modules.getConfiguration().getTimeZone(), langs1), new RpcCallback<ResponseStartEmailAuth>() {

            @Override
            public void onResult(ResponseStartEmailAuth response) {
                modules.getPreferences().putString(KEY_EMAIL, email);
                modules.getPreferences().putString(KEY_TRANSACTION_HASH, response.getTransactionHash());
                ApiEmailActivationType emailActivationType = response.getActivationType();
                if (emailActivationType.equals(ApiEmailActivationType.OAUTH2)) {
                    state = AuthState.GET_OAUTH_PARAMS;
                } else if (emailActivationType.equals(ApiEmailActivationType.CODE)) {
                    state = AuthState.CODE_VALIDATION_EMAIL;
                } else if (emailActivationType.equals(ApiEmailActivationType.PASSWORD)) {
                    state = AuthState.PASSWORD_VALIDATION;
                } else {
                    state = AuthState.CODE_VALIDATION_EMAIL;
                }
                Runtime.postToMainThread(() -> callback.onResult(state));
            }

            @Override
            public void onError(final RpcException e) {
                Runtime.postToMainThread(() -> {
                    Log.e(TAG, e);
                    callback.onError(e);
                });
            }
        });
    };
}
Also used : ApiPhoneActivationType(im.actor.core.api.ApiPhoneActivationType) ResponseStartEmailAuth(im.actor.core.api.rpc.ResponseStartEmailAuth) RequestSendCodeByPhoneCall(im.actor.core.api.rpc.RequestSendCodeByPhoneCall) RequestSignUp(im.actor.core.api.rpc.RequestSignUp) Promise(im.actor.runtime.promise.Promise) Request(im.actor.core.network.parser.Request) PromiseFunc(im.actor.runtime.promise.PromiseFunc) ResponseStartPhoneAuth(im.actor.core.api.rpc.ResponseStartPhoneAuth) ArrayList(java.util.ArrayList) AbsModule(im.actor.core.modules.AbsModule) AuthCodeRes(im.actor.core.entity.AuthCodeRes) User(im.actor.core.entity.User) RequestGetOAuth2Params(im.actor.core.api.rpc.RequestGetOAuth2Params) Response(im.actor.core.network.parser.Response) Modules(im.actor.core.modules.Modules) im.actor.runtime(im.actor.runtime) RequestValidateCode(im.actor.core.api.rpc.RequestValidateCode) RpcCallback(im.actor.core.network.RpcCallback) ApiEmailActivationType(im.actor.core.api.ApiEmailActivationType) CommandCallback(im.actor.core.viewmodel.CommandCallback) Sex(im.actor.core.entity.Sex) RequestStartEmailAuth(im.actor.core.api.rpc.RequestStartEmailAuth) Command(im.actor.core.viewmodel.Command) AuthRes(im.actor.core.entity.AuthRes) ResponseStartUsernameAuth(im.actor.core.api.rpc.ResponseStartUsernameAuth) ApiConfiguration(im.actor.core.ApiConfiguration) ResponseGetOAuth2Params(im.actor.core.api.rpc.ResponseGetOAuth2Params) AuthStartRes(im.actor.core.entity.AuthStartRes) ResponseAuth(im.actor.core.api.rpc.ResponseAuth) IOException(java.io.IOException) AuthState(im.actor.core.AuthState) Runtime(im.actor.runtime.Runtime) RequestStartUsernameAuth(im.actor.core.api.rpc.RequestStartUsernameAuth) RpcException(im.actor.core.network.RpcException) ConnectionEndpoint(im.actor.runtime.mtproto.ConnectionEndpoint) TrustedKey(im.actor.core.network.TrustedKey) RequestStartPhoneAuth(im.actor.core.api.rpc.RequestStartPhoneAuth) ApiSex(im.actor.core.api.ApiSex) Endpoints(im.actor.core.network.Endpoints) ConnectionEndpointArray(im.actor.runtime.mtproto.ConnectionEndpointArray) ResponseVoid(im.actor.core.api.rpc.ResponseVoid) RequestCompleteOAuth2(im.actor.core.api.rpc.RequestCompleteOAuth2) RequestValidatePassword(im.actor.core.api.rpc.RequestValidatePassword) RequestStartAnonymousAuth(im.actor.core.api.rpc.RequestStartAnonymousAuth) AuthMode(im.actor.core.entity.AuthMode) ApiEmailActivationType(im.actor.core.api.ApiEmailActivationType) RequestStartEmailAuth(im.actor.core.api.rpc.RequestStartEmailAuth) ResponseStartEmailAuth(im.actor.core.api.rpc.ResponseStartEmailAuth) RpcException(im.actor.core.network.RpcException) ArrayList(java.util.ArrayList) RpcCallback(im.actor.core.network.RpcCallback)

Example 3 with AuthState

use of im.actor.core.AuthState in project actor-platform by actorapp.

the class Authentication method requestCompleteOauth.

@Deprecated
public Command<AuthState> requestCompleteOauth(final String code) {
    return callback -> request(new RequestCompleteOAuth2(modules.getPreferences().getString(KEY_TRANSACTION_HASH), code), new RpcCallback<ResponseAuth>() {

        @Override
        public void onResult(ResponseAuth response) {
            onLoggedIn(callback, response);
        }

        @Override
        public void onError(final RpcException e) {
            if ("EMAIL_EXPIRED".equals(e.getTag())) {
                resetAuth();
            } else if ("EMAIL_UNOCCUPIED".equals(e.getTag())) {
                // modules.getPreferences().putString(KEY_CODE, code);
                state = AuthState.SIGN_UP;
                callback.onResult(AuthState.SIGN_UP);
                return;
            }
            Runtime.postToMainThread(() -> {
                Log.e(TAG, e);
                callback.onError(e);
            });
        }
    });
}
Also used : ApiPhoneActivationType(im.actor.core.api.ApiPhoneActivationType) ResponseStartEmailAuth(im.actor.core.api.rpc.ResponseStartEmailAuth) RequestSendCodeByPhoneCall(im.actor.core.api.rpc.RequestSendCodeByPhoneCall) RequestSignUp(im.actor.core.api.rpc.RequestSignUp) Promise(im.actor.runtime.promise.Promise) Request(im.actor.core.network.parser.Request) PromiseFunc(im.actor.runtime.promise.PromiseFunc) ResponseStartPhoneAuth(im.actor.core.api.rpc.ResponseStartPhoneAuth) ArrayList(java.util.ArrayList) AbsModule(im.actor.core.modules.AbsModule) AuthCodeRes(im.actor.core.entity.AuthCodeRes) User(im.actor.core.entity.User) RequestGetOAuth2Params(im.actor.core.api.rpc.RequestGetOAuth2Params) Response(im.actor.core.network.parser.Response) Modules(im.actor.core.modules.Modules) im.actor.runtime(im.actor.runtime) RequestValidateCode(im.actor.core.api.rpc.RequestValidateCode) RpcCallback(im.actor.core.network.RpcCallback) ApiEmailActivationType(im.actor.core.api.ApiEmailActivationType) CommandCallback(im.actor.core.viewmodel.CommandCallback) Sex(im.actor.core.entity.Sex) RequestStartEmailAuth(im.actor.core.api.rpc.RequestStartEmailAuth) Command(im.actor.core.viewmodel.Command) AuthRes(im.actor.core.entity.AuthRes) ResponseStartUsernameAuth(im.actor.core.api.rpc.ResponseStartUsernameAuth) ApiConfiguration(im.actor.core.ApiConfiguration) ResponseGetOAuth2Params(im.actor.core.api.rpc.ResponseGetOAuth2Params) AuthStartRes(im.actor.core.entity.AuthStartRes) ResponseAuth(im.actor.core.api.rpc.ResponseAuth) IOException(java.io.IOException) AuthState(im.actor.core.AuthState) Runtime(im.actor.runtime.Runtime) RequestStartUsernameAuth(im.actor.core.api.rpc.RequestStartUsernameAuth) RpcException(im.actor.core.network.RpcException) ConnectionEndpoint(im.actor.runtime.mtproto.ConnectionEndpoint) TrustedKey(im.actor.core.network.TrustedKey) RequestStartPhoneAuth(im.actor.core.api.rpc.RequestStartPhoneAuth) ApiSex(im.actor.core.api.ApiSex) Endpoints(im.actor.core.network.Endpoints) ConnectionEndpointArray(im.actor.runtime.mtproto.ConnectionEndpointArray) ResponseVoid(im.actor.core.api.rpc.ResponseVoid) RequestCompleteOAuth2(im.actor.core.api.rpc.RequestCompleteOAuth2) RequestValidatePassword(im.actor.core.api.rpc.RequestValidatePassword) RequestStartAnonymousAuth(im.actor.core.api.rpc.RequestStartAnonymousAuth) AuthMode(im.actor.core.entity.AuthMode) RequestCompleteOAuth2(im.actor.core.api.rpc.RequestCompleteOAuth2) ResponseAuth(im.actor.core.api.rpc.ResponseAuth) RpcException(im.actor.core.network.RpcException)

Aggregations

AuthState (im.actor.core.AuthState)3 ApiConfiguration (im.actor.core.ApiConfiguration)2 ApiEmailActivationType (im.actor.core.api.ApiEmailActivationType)2 ApiPhoneActivationType (im.actor.core.api.ApiPhoneActivationType)2 ApiSex (im.actor.core.api.ApiSex)2 RequestCompleteOAuth2 (im.actor.core.api.rpc.RequestCompleteOAuth2)2 RequestGetOAuth2Params (im.actor.core.api.rpc.RequestGetOAuth2Params)2 RequestSendCodeByPhoneCall (im.actor.core.api.rpc.RequestSendCodeByPhoneCall)2 RequestSignUp (im.actor.core.api.rpc.RequestSignUp)2 RequestStartAnonymousAuth (im.actor.core.api.rpc.RequestStartAnonymousAuth)2 RequestStartEmailAuth (im.actor.core.api.rpc.RequestStartEmailAuth)2 RequestStartPhoneAuth (im.actor.core.api.rpc.RequestStartPhoneAuth)2 RequestStartUsernameAuth (im.actor.core.api.rpc.RequestStartUsernameAuth)2 RequestValidateCode (im.actor.core.api.rpc.RequestValidateCode)2 RequestValidatePassword (im.actor.core.api.rpc.RequestValidatePassword)2 ResponseAuth (im.actor.core.api.rpc.ResponseAuth)2 ResponseGetOAuth2Params (im.actor.core.api.rpc.ResponseGetOAuth2Params)2 ResponseStartEmailAuth (im.actor.core.api.rpc.ResponseStartEmailAuth)2 ResponseStartPhoneAuth (im.actor.core.api.rpc.ResponseStartPhoneAuth)2 ResponseStartUsernameAuth (im.actor.core.api.rpc.ResponseStartUsernameAuth)2