mirror of
https://github.com/dartdavros/chatballs.git
synced 2026-10-10 11:25:00 +03:00
Раньше ProxyHandler-логика дублировалась в openrouter/checks/transports и поддерживала только http/https. Telegram/SOCKS-сервисы требуют SOCKS5 — теперь единый build_opener поддерживает http/https/socks5/socks5h во всех интеграциях. - integrations/proxy.py (новый): build_opener(proxy_url) — http/https через stdlib ProxyHandler; socks5/socks5h через кастомный _SocksProxyHandler (PySocks, изолированный от остального процесса: переопределённый .connect, не глобальный monkeypatch socket). socks5h → DNS через прокси (rdns=True). Без PySocks при SOCKS-схеме — ValueError с явным сообщением. - openrouter.py / checks.py / transports/base.py: убрано дублирование ProxyHandler, все используют build_opener (chat, embeddings, check_*, MAX/Telegram transport). - requirements.txt: PySocks>=1.7. - IntegrationForm.tsx: placeholder упоминает socks5://. - tests.py: build_opener socks-схема строит handler; http → ProxyHandler; без PySocks → ValueError; check_*/OpenRouter прокидывают proxy_url (вкл socks5).