Esempio n. 1
0
        public async Task <ICheckedPhone> IsPhoneRegisteredAsync(string phoneNumber)
        {
            Guard.That(phoneNumber, nameof(phoneNumber)).IsNotNullOrWhiteSpace();

            var authCheckPhoneRequest = new RequestCheckPhone
            {
                PhoneNumber = phoneNumber
            };

            return(await SenderService.SendRequestAsync(authCheckPhoneRequest).ConfigureAwait(false));
        }
Esempio n. 2
0
        /// <inheritdoc />
        public async Task <ICheckedPhone> CheckPhoneAsync(string phoneNumber, CancellationToken cancellationToken = default(CancellationToken))
        {
            Guard.That(phoneNumber, nameof(phoneNumber)).IsNotNullOrWhiteSpace();

            var authCheckPhoneRequest = new RequestCheckPhone
            {
                PhoneNumber = phoneNumber
            };

            return(await RequestSender.SendRequestAsync(authCheckPhoneRequest, cancellationToken).ConfigureAwait(false));
        }
Esempio n. 3
0
        /// <inheritdoc />
        public async Task <bool> IsPhoneRegisteredAsync(string phoneNumber, CancellationToken cancellationToken = default(CancellationToken))
        {
            Guard.That(phoneNumber, nameof(phoneNumber)).IsNotNullOrWhiteSpace();

            var authCheckPhoneRequest = new RequestCheckPhone
            {
                PhoneNumber = phoneNumber
            };
            var response = await RequestSender.SendRequestAsync(authCheckPhoneRequest, cancellationToken).ConfigureAwait(false);

            return(response.PhoneRegistered);
        }
Esempio n. 4
0
        public async Task <ICheckedPhone> IsPhoneRegisteredAsync(string phoneNumber)
        {
            Guard.That(phoneNumber, nameof(phoneNumber)).IsNotNullOrWhiteSpace();

            var authCheckPhoneRequest = new RequestCheckPhone
            {
                PhoneNumber = phoneNumber
            };

            while (true)
            {
                try
                {
                    return(await SenderService.SendRequestAsync(authCheckPhoneRequest).ConfigureAwait(false));
                }
                catch (PhoneMigrationException e)
                {
                    await ConnectApiService.ReconnectToDcAsync(e.Dc).ConfigureAwait(false);
                }
            }
        }