Задайте 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.