//auth.checkPhone#6fe51dfb phone_number:string = auth.CheckedPhone; public async Task <AuthCheckedPhoneConstructor> CheckPhone(string phoneNumber) { var authCheckPhoneRequest = new AuthCheckPhoneRequest(phoneNumber); await SendRpcRequest(authCheckPhoneRequest); // only single implementation available return((AuthCheckedPhoneConstructor)authCheckPhoneRequest.checkedPhone); }
public async Task <bool> IsPhoneRegistered(string phoneNumber) { if (_sender == null) { throw new InvalidOperationException("Not connected!"); } var authCheckPhoneRequest = new AuthCheckPhoneRequest(phoneNumber); await _sender.Send(authCheckPhoneRequest); await _sender.Recieve(authCheckPhoneRequest); return(authCheckPhoneRequest._phoneRegistered); }
public async Task <bool> IsPhoneRegistered(string phoneNumber) { if (_sender == null) { throw new InvalidOperationException("Not connected!"); } bool completed = false; AuthCheckPhoneRequest authCheckPhoneRequest = null; while (!completed) { authCheckPhoneRequest = new AuthCheckPhoneRequest(phoneNumber); try { await _sender.Send(authCheckPhoneRequest); await _sender.Recieve(authCheckPhoneRequest); completed = true; } catch (InvalidOperationException e) { if (e.Message.StartsWith("Your phone number registered to") && e.Data["dcId"] != null) { await ReconnectToDc((int)e.Data["dcId"]); } else { throw; } } } return(authCheckPhoneRequest._phoneRegistered); }