Files
autoreg-skills-max/skills/th-autoreg/references/tonline-claim-flow.md

2.9 KiB
Raw Blame History

t-online.de Claim Flow — детали реализации

IMAP: baseline-based поиск новых писем

Проблема: старый подход искал verification-письма по FROM "tokenharbor", но не находил их, если письмо уже прочитано или ушло в архив.

Решение: baseline-based — запоминаем текущие UID до клика «Verify email», затем ждём только новые UID.

# Get baseline UIDs
status, baseline = mail.search(None, 'ALL')
known_ids = set(baseline[0].split()) if baseline[0] else set()

# Wait for new emails
while time.time() - start < timeout:
    mail.select("INBOX")
    status, data = mail.search(None, 'ALL')
    new_ids = set(data[0].split()) - known_ids
    for mid in sorted(new_ids, reverse=True):
        # parse email, check for verify link

«Verify email» кнопка — отправка нового письма

На дашборде TokenHarbor, если аккаунт не верифицирован, есть текст «Verify your email» и кнопка. Клик по ней отправляет новое verification-письмо.

for(var b of document.querySelectorAll('button')) {
    if((b.textContent.includes('Verify') && b.textContent.includes('email')) && b.offsetParent !== null) {
        b.click(); break;
    }
}

$5 Gift Claim — двухшаговый

  1. Клик по кнопке в хедере дашборда: «1 gift ready to claim» → открывает модалку
  2. Клик по «Claim» внутри модалки
// Step 1: open modal
for(var b of document.querySelectorAll('button')) {
    if((b.textContent.includes('Claim') || b.textContent.includes('Gift')) && b.offsetParent !== null) {
        b.click(); break;
    }
}
// Step 2: claim in modal
for(var b of document.querySelectorAll('button')) {
    if(b.textContent.trim() === 'Claim' && b.offsetParent !== null) {
        b.click(); break;
    }
}

Статистика успешности

  • ~85% аккаунтов уже верифицированы (из предыдущего раунда регистрации)
  • ~15% требуют отправки нового verification-письма
  • ~7-8% фейлов на этапе создания API ключа (race condition Next.js)
  • Общая скорость: ~1 акк/мин (логин → verify → $5 → ключ → пуш)

Пароли

  • TokenHarbor сайт: TokenHarbor2026!X (единый для всех аккаунтов)
  • IMAP t-online.de: индивидуальные пароли из working_mails.txt (формат email:password)
  • Некоторые пароли в пуле устарели (~5-10%) — скрипт пропускает их с ошибкой «Invalid login»