Merge pull request #317 from unn4m3d/patch-1

Catch PhoneMigrationException in IsPhoneRegisteredAsync
This commit is contained in:
Ilya Pirozhenko 2016-11-28 09:56:40 +03:00 committed by GitHub
commit c22ee8dea6

View file

@ -108,9 +108,20 @@ namespace TLSharp.Core
throw new InvalidOperationException("Not connected!");
var authCheckPhoneRequest = new TLRequestCheckPhone() { phone_number = phoneNumber };
await _sender.Send(authCheckPhoneRequest);
await _sender.Receive(authCheckPhoneRequest);
var completed = false;
while(!completed)
{
try
{
await _sender.Send(authCheckPhoneRequest);
await _sender.Receive(authCheckPhoneRequest);
completed = true;
}
catch(PhoneMigrationException e)
{
await ReconnectToDcAsync(e.DC);
}
}
return authCheckPhoneRequest.Response.phone_registered;
}