feat(proxy): add proxy support to Telegram client
This commit is contained in:
+38
-5
@@ -429,11 +429,44 @@ class TelegramStarsBot:
|
||||
else:
|
||||
self.start_page = self.config.start_page
|
||||
|
||||
self.client = Client(
|
||||
name=self.SESSION_NAME,
|
||||
api_id=self.config.api_id,
|
||||
api_hash=self.config.api_hash,
|
||||
)
|
||||
if self.config.proxy_telegram:
|
||||
proxy = {
|
||||
"scheme": self.config.proxy_protocol,
|
||||
"hostname": self.config.proxy_host,
|
||||
"port": self.config.proxy_port,
|
||||
}
|
||||
|
||||
if self.config.proxy_username and self.config.proxy_password:
|
||||
logger.info(
|
||||
"Инициализация Pyrogram с прокси: %s://%s:%s (с авторизацией)",
|
||||
self.config.proxy_protocol,
|
||||
self.config.proxy_host,
|
||||
self.config.proxy_port,
|
||||
)
|
||||
|
||||
proxy["username"] = self.config.proxy_username
|
||||
proxy["password"] = self.config.proxy_password
|
||||
else:
|
||||
logger.info(
|
||||
"Инициализация Pyrogram с прокси: %s://%s:%s (без авторизации)",
|
||||
self.config.proxy_protocol,
|
||||
self.config.proxy_host,
|
||||
self.config.proxy_port,
|
||||
)
|
||||
|
||||
self.client = Client(
|
||||
name=self.SESSION_NAME,
|
||||
api_id=self.config.api_id,
|
||||
api_hash=self.config.api_hash,
|
||||
proxy=proxy,
|
||||
)
|
||||
|
||||
else:
|
||||
self.client = Client(
|
||||
name=self.SESSION_NAME,
|
||||
api_id=self.config.api_id,
|
||||
api_hash=self.config.api_hash,
|
||||
)
|
||||
|
||||
try:
|
||||
await self.client.start()
|
||||
|
||||
Reference in New Issue
Block a user