【问题标题】:TLsharp CHANNELS_TOO_MUCH ExceptionTLsharp CHANNELS_TOO_MUCH 异常
【发布时间】:2016-09-21 15:40:22
【问题描述】:

我已经使用TLSharp 库一周了,但最近我遇到了异常:

CHANNELS_TOO_MUCH

我的代码甚至无法通过await client.connect() 函数。我没有在库的 GitHub 存储库上找到任何描述此异常发生原因的文档。我似乎不是因为电报限制而发生的异常,因为它在connect 函数处给了我这个异常。

这是我的代码:

public static async Task<TelegramClient> connectTelegram()
{
    store = new FileSessionStore();
    client = new TelegramClient(store, numberToAuthenticate, apiId, apiHash);
    try
    {
        await client.Connect();
    }
    catch (InvalidOperationException e)
    {
        Debug.WriteLine("Invalid Operation Exception");
        if (e.Message.Contains("Couldn't read the packet length"))
        {
            Debug.WriteLine("Couldn't read the packet length");
            Debug.WriteLine("Retying to Connect ...");
        }
        await connectTelegram();
    }
    catch (System.IO.IOException)
    {
        Debug.WriteLine("IO Exception while Connecting");
        Debug.WriteLine("Retrying to Connect ...");
        await connectTelegram();
    }
    catch(Exception e)
    {
        Debug.WriteLine(e.Message):
    }
    return client;
}

【问题讨论】:

    标签: c# api telegram


    【解决方案1】:

    尚未记录此异常。当我尝试使用相同的会话文件连接到电报和调用请求时,我遇到了这个异常。似乎当会话文件被不同的多个客户端使用时,会话文件会损坏。您所要做的就是删除会话文件并像之前创建的那样重新创建它。

    这是一个这样做的例子:

    FileSessionStore store;
    TelegramClient client;
    store = new FileSessionStore();
    client = new TelegramClient(store, numberToAuthenticate, apiId, apiHash);
    await client.Connect();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-11
      • 2023-04-06
      相关资源
      最近更新 更多