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, पोर्ट और खाता मध्यस्थ को बताते हैं; lambda के address/port WTelegram के माँगे हुए गंतव्य हैं।

प्रॉक्सी नेगोशिएशन के बाद CreateConnection को जुड़ा हुआ TcpClient लौटाना चाहिए। सिर्फ प्रॉक्सी पोर्ट तक पहुँचने से यह हैंडऑफ़ पूरा नहीं होता।

उदाहरण लाइब्रेरी का सिंक्रोनस मेथड इस्तेमाल करता है। परिणाम को Task.FromResult में रखने पर भी कनेक्शन कॉल ब्लॉक करती है; ज़रूरत पर समर्थित असिंक्रोनस मेथड इस्तेमाल करें।

लॉगिन के साथ बाद के कनेक्शन के लिए भी हैंडलर बनाए रखें। Telegram खाते का प्रमाणीकरण SOCKS खाते से अलग रहता है।

संबंधित लेख