Configura o TcpHandler SOCKS de WTelegram antes de iniciar sesión
A biblioteca proxy escollida debe devolver un TcpClient coa negociación rematada; Task.FromResult mantén síncrona a chamada de conexión.
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();Usa o WTelegram.Client existente e importa a biblioteca SOCKS compatible que escolliches. proxyHost, o porto e a conta identifican o intermediario; address/port da lambda son os destinos que solicita WTelegram.
CreateConnection debe devolver un TcpClient conectado despois de negociar co proxy. Chegar só ao porto do proxy non permite esa entrega.
O exemplo usa un método síncrono da biblioteca. Envolver o resultado en Task.FromResult non fai que a conexión deixe de bloquear; usa un método asíncrono compatible cando o precises.
Conserva o handler para as conexións posteriores e para o inicio de sesión. A autenticación da conta de Telegram segue separada da conta SOCKS.