הגדירו את 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 של הלמבדה הם היעדים ש־WTelegram מבקש.
CreateConnection חייב להחזיר TcpClient מחובר לאחר המשא ומתן עם הפרוקסי. הגעה לפורט של הפרוקסי בלבד אינה מספקת את ההעברה הזאת.
הדוגמה משתמשת במתודה סינכרונית של הספרייה. עטיפת התוצאה ב־Task.FromResult אינה הופכת את החיבור ללא חוסם; השתמשו במתודה אסינכרונית נתמכת בעת הצורך.
השאירו את המטפל גם לחיבורים מאוחרים יותר וגם להתחברות. אימות חשבון Telegram נשאר נפרד מחשבון SOCKS.