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 հաշվից։

Առնչվող հոդվածներ