client.TcpHandler = (address, port) =>
{
    var proxy = new Socks5ProxyClient(
        proxyHost, proxyPort, proxyUsername, proxyPassword);
    return System.Threading.Tasks.Task.FromResult(
        proxy.CreateConnection(address, port));
};
await client.LoginUserIfNeeded();

از WTelegram.Client موجود استفاده کنید و کتابخانهٔ SOCKS سازگار انتخاب‌شده را وارد کنید. proxyHost، درگاه و حساب به واسطه اشاره دارند؛ address/port در lambda مقصدهای درخواستی WTelegram هستند.

پس از مذاکره با پراکسی، CreateConnection باید یک TcpClient متصل برگرداند. صرفاً رسیدن به درگاه پراکسی این تحویل را فراهم نمی‌کند.

مثال از متد همگام کتابخانه استفاده می‌کند. فراخوانی اتصال حتی با قراردادن نتیجه در Task.FromResult همچنان مسدودکننده است؛ در صورت نیاز از متد ناهمگام پشتیبانی‌شده استفاده کنید.

handler را هم برای ورود و هم برای اتصال‌های بعدی نگه دارید. احراز هویت حساب Telegram همچنان از حساب SOCKS جداست.

مقالات مرتبط