Een proxy kan op IPv6 luisteren terwijl hij een verbinding naar een Telegram-server in een andere adresfamilie draagt. Behandel het proxy-eindpunt en het uiteindelijke Telegram-eindpunt afzonderlijk.

Voor Telethon 1.45, wanneer de gedocumenteerde afhankelijkheid python-socks[asyncio] beschikbaar is in de omgeving van de applicatie:

from telethon import TelegramClient

client = TelegramClient(
    'existing-session', api_id, api_hash,
    proxy={
        'proxy_type': 'socks5',
        'addr': '2001:db8::10',
        'port': 1080,
        'rdns': True,
    },
)

Vervang het IPv6-adres en de poort uit de documentatie door de werkelijke listener. Het adresveld is een literal zonder haakjes, omdat de poort al een aparte waarde is. Haakjes zijn nodig wanneer een IPv6-adres in een URL-authority wordt ingebed.

Voeg de velden username en password toe voor een SOCKS-account wanneer dat nodig is. Een SOCKS5-account staat los van Telegrams API ID, API hash en session.

use_ipv6=True bepaalt welke Telegram-serveradres Telethon kiest. Het is niet de schakelaar die een IPv6-proxy-hostnaam in een geldig luisteradres verandert.

Controleer de backend die de werkelijke Python-interpreter ter beschikking heeft wanneer een oudere omgeving op IPv6 mislukt. Een import in een andere virtuele omgeving verandert dit proces niet. De verbindingsmodi van de MTProto-proxy gebruiken een andere tuple met een geheim; dat is een andere configuratie.

Gerelateerde artikelen