PHONE_MIGRATE_X使用TLsharp进行电报编程的错误

本文关键字:编程 错误 MIGRATE 使用 TLsharp PHONE | 更新日期: 2023-09-27 18:29:37

我开始在C#中使用TLSharp进行Telegram。当我使用此函数对用户进行身份验证时:

public async Task AuthUser()
{
   var store = new FileSessionStore();
   var client = new TelegramClient(store, "session");
   await client.Connect();
   var hash = await client.SendCodeRequest(NumberToAuthenticate);
   var code = "123"; // you can change code in debugger
   var user = await client.MakeAuth(NumberToAuthenticate, hash, code);
   Assert.IsNotNull(user);
}

SendCodeRequest我的电话号码时,我收到PHONE_MIGRATE_4错误。我该如何解决这个问题?

此错误的电报网站说我需要切换我的数据中心。如何在夏普中执行此操作?

PHONE_MIGRATE_X使用TLsharp进行电报编程的错误

我没有使用过TLSharp,但根据其文档,您需要在TLSharp库提供的文件中更新TLSharp.Core.Network.TcpTransport.cs中的数据中心地址。

根据其[文件][1]:

I get an error MIGRATE_X?
You should change the telegram server address to X. X server address you can get from InitResponse or from Server addresses list. Address should be changed in `TLSharp.Core.Network.TcpTransport.cs`
Server addresses:
    Server 1: 149.154.175.50:443
    Server 2: 149.154.167.51:443
    Server 3: 149.154.175.100:443
    Server 4: 149.154.167.91:443
    Server 5: 91.108.56.165:443

TLSharp.Core.Network.TcpTransport.cs中使用的默认服务器地址是91.108.56.165server 5。[1]: https://github.com/sochix/TLSharp#i-get-an-error-migrate_x

当你发送help.getNearestDC时,你应该得到正确的DC来使用。

如果您尝试进行身份验证的号码与您当前使用的数据中心位于不同的数据中心,您将获得MIGRATE_X。