Configura el TcpHandler SOCKS de WTelegram antes del inicio de sesión
La biblioteca de proxy elegida debe devolver un TcpClient con la negociación completada; Task.FromResult mantiene síncrona la llamada 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 el WTelegram.Client existente e importa la biblioteca SOCKS compatible que hayas elegido. proxyHost, el puerto y la cuenta identifican al intermediario; address/port de la lambda son los destinos solicitados por WTelegram.
CreateConnection debe devolver un TcpClient conectado después de negociar con el proxy. Llegar solo al puerto del proxy no proporciona esa entrega.
El ejemplo usa un método síncrono de la biblioteca. Envolver su resultado en Task.FromResult no convierte la conexión en no bloqueante; usa un método asíncrono compatible cuando lo necesites.
Conserva el handler tanto para conexiones posteriores como para el inicio de sesión. La autenticación de la cuenta de Telegram sigue separada de la cuenta SOCKS.