ตั้งค่า SOCKS TcpHandler ของ WTelegram ก่อนล็อกอิน
ให้ไลบรารีพร็อกซีที่เลือกคืน TcpClient หลังเจรจาเสร็จสมบูรณ์ การใช้ Task.FromResult ยังคงให้การเรียกเชื่อมต่อเป็นแบบซิงโครนัส
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