Skip to content

fix(#129): manual captcha solving#130

Merged
cacggghp merged 2 commits intocacggghp:mainfrom
samosvalishe:main
Apr 9, 2026
Merged

fix(#129): manual captcha solving#130
cacggghp merged 2 commits intocacggghp:mainfrom
samosvalishe:main

Conversation

@samosvalishe
Copy link
Copy Markdown
Contributor

проблема с ручным прохождением капчи: #129

==============================================
ACTION REQUIRED: MANUAL CAPTCHA SOLVING NEEDED
Open this URL in your browser: http://localhost:8765
==============================================

2026/04/09 08:15:50 [STREAM 1] [VK Auth] Failed with client_id=6287487: missing turn_server in response: map[error_code:457 error_data:<nil> error_msg:UNAUTHORIZED_RESTRICTION : Authorized session or anonymToken required]
2026/04/09 08:15:50 [STREAM 1] [VK Auth] Trying credentials: client_id=7879029
2026/04/09 08:15:50 [STREAM 1] [VK Auth] Connecting Identity - Name: Ирина Захарова | User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/[146.0.0.0](https://146.0.0.0/) Safari/537.36
2026/04/09 08:15:52 [STREAM 1] [Captcha] Triggering manual captcha fallback...

==============================================
ACTION REQUIRED: MANUAL CAPTCHA SOLVING NEEDED
Open this URL in your browser: http://localhost:8765
==============================================

Что сделано:
убрал преждевременную проверку hasSolveMode в начале каждой итерации цикла token2. Теперь:

  1. doRequest всегда выполняется первым на каждой итерации (включая повтор после успешно решённой капчи).
  2. Проверка hasSolveMode перенесена внутрь ветки обработки captcha-ошибки — она блокирует только новые попытки решения, а не повтор запроса с уже полученным success_token.
  3. Когда режимы решения исчерпаны, корректно срабатывает global lockout + CAPTCHA_WAIT_REQUIRED (тот же путь, что и при solveErr != nil ниже).

UNAUTHORIZED_RESTRICTION
@samosvalishe samosvalishe changed the title fix(129): manual captcha solving fix(#129): manual captcha solving Apr 9, 2026
@samosvalishe samosvalishe marked this pull request as draft April 9, 2026 16:04
@samosvalishe samosvalishe marked this pull request as ready for review April 9, 2026 16:04
@cacggghp
Copy link
Copy Markdown
Owner

cacggghp commented Apr 9, 2026

Точно нужно блокироваться на 60 секунд после одной неудачной ручной попытки?

@samosvalishe
Copy link
Copy Markdown
Contributor Author

samosvalishe commented Apr 9, 2026

Точно нужно блокироваться на 60 секунд после одной неудачной ручной попытки?

для консистентности думаю стоит оставить, чуть ниже похожая конструкция с локаутом на 60 сек. возможно @AlexMCP подскажет чем обусловлены такие тайминги

@samosvalishe
Copy link
Copy Markdown
Contributor Author

я еще один фикс в этот pr сделаю. vless-режим падает на Android из-за netlinkrib permission denied samosvalishe/turn-proxy-android#14

@cacggghp
Copy link
Copy Markdown
Owner

cacggghp commented Apr 9, 2026

Ладно, тогда ок

@cacggghp cacggghp merged commit 4be1958 into cacggghp:main Apr 9, 2026
5 checks passed
@alxmcp
Copy link
Copy Markdown
Contributor

alxmcp commented Apr 10, 2026

60 сек ранее использовалось в случае, если те, кто не могут проходить капчу вручную могли попасть на повтор автоматической (если хотя бы один поток открыт уже), но для этого нужно было подождать, чтобы не получить rate limit. Можно и оставить, чтобы не попасть на rate limit и сейчас, но оно чуть менее актуально теперь.

Не того alexmcp тегнули :D

@artking4815162342
Copy link
Copy Markdown

@antongospod спасибо за оперативные фиксы!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants