Skip to content

Усунення несправностей X Bot: звіти, фільтри, розклади, рахунки

Зведений покажчик усіх шляхів "щось виглядає неправильно, що робити". Матриці зі сторінок installation / setup-menu / support також продубльовані тут, щоб можна було шукати на одній сторінці замість трьох.

Почніть тут: відкрийте /setup → ℹ️ About у своїй групі. Чотири рядки на цьому екрані (ID чату, тариф, розклад, назва проєкту) — це те, що потрібно підтримці для розбору. Скопіюйте їх перед тим, як робити щось інше.

Потік самодіагностики

Пройдіть ці питання по порядку. Більшість проблем вирішуються на одній з перших двох перевірок.

1.  Does the bot reply to /setup at all?
    ├─ No  → bot was kicked or demoted from admin → re-promote and retry
    └─ Yes → continue.

2.  Does /setup → 📊 Reports → ⚡ Generate report now produce a post
    within 3 minutes?
    ├─ No DM, no post                  → check matrix in §"Reports not arriving"
    ├─ DM "no posts found"              → see §"Filter / no posts"
    ├─ DM "credit exhausted"            → see §"Billing & credits"
    ├─ Post landed but renders wrong    → see §"Render quality"
    └─ Post landed correctly            → you're fine.

3.  Are scheduled reports arriving on time?
    ├─ No  → see §"Schedule not firing"
    └─ Yes → all good.

4.  X Posts Auto-relay issues?
    └─ See §"X Posts Auto-relay"

Якщо жодна з матриць нижче не вирішує проблему, перейдіть до Ескалації.

Звіти не приходять

СимптомЙмовірна причинаВиправлення
Бот був активний раніше, раптово замовкБота розжалувано з адмінів / вигнано мовчкиTelegram → адміни групи → повторно призначте. Якщо все ще мовчить, зверніться до підтримки — можливо, спрацювало самовимкнення при chat-gone.
Ручний generate-now нічого не даєБот адмін, але має нуль кредитів/setup → 💳 Buy Credits. Якщо FREE "100/100 used" — зачекайте щомісячного скидання (1-го числа UTC). Якщо PRO·credits з REMAINING=0 — чат вже автоматично перейшов на FREE; /setup → 💳 → 💰 Buy, щоб поповнити.
Ручний generate-now: DM "no posts found"Фільтр занадто вузький АБО немає постів у вікні/setup → 🎯 Filters. Перевірте буквальний запит X API на помилки. Спробуйте розширити або прибрати період.
Зображення рендериться, але текст порожнійAI-коментар не встиг вчасноПерезапустіть; тимчасова проблема. Якщо повторюється — зверніться до підтримки.
Зображення взагалі не рендеритьсяТимчасовий збій рендеруПерезапустіть. Якщо повторюється для одного чату — зверніться до підтримки з ID чату.
Помилка "Unauthorized" / "Forbidden" у DM адмінуПроблема з токеном X API (з боку оператора)Зверніться до підтримки; користувач це виправити не може.

Фільтр / немає постів

СимптомЙмовірна причинаВиправлення
У звіті скрізь "0 постів"Фільтр нічому не відповідає в налаштованому періодіКрок 1: /setup → 🎯 Filters — перевірте запит. Крок 2: /setup → 📊 Reports → 🗑 Clear period (плаваючі 24 год толерантніші). Крок 3: розширте фільтри (додайте резервний кештег, приберіть суворі групи ключових слів).
У лідерборді користувачі, яких я не додавав у фільтрФільтри адитивні — рахується кожен, хто твітить відстежуваний кештег/ключове словоЩоб вимагати і акаунт, і кештег одночасно, скористайтеся /set_x_filtering name from:@x cashtags:$Y (іменований фільтр, семантика "І" між категоріями).
Той самий користувач заспамив лідербордБот законно оцінив кожен пост/setup → 🎯 Filters → 🙈 Ignore → ➕ Add @spammer — вони відкидаються з результатів після отримання.
Кештег з дивними символами не збігаєтьсяX API нормалізує регістр; пробіли на початку/в кінці мають значення при вводі фільтраДодайте повторно через /setup → 🎯 Filters → 💵 Cashtags → ➕ Add → без $, без пробілів.
Кештег, що починається з цифри (напр., $1INCH), не відстежуєтьсяПоведінка пошуку X API з початковими цифрами може бути непослідовноюВикористайте як ключове слово замість кештегу: "$1INCH" у 🔍 Keywords з лапками.
Вибір "Best Tweet" здається неправильнимДедуплікація AI нещодавно обрала схожий твітЗачекайте один цикл. Якщо постійно виглядає неправильно — повідомте, промпт можна налаштувати.

Розклад не спрацьовує

СимптомЙмовірна причинаВиправлення
Розклад "відхилено" з FREQUENCY_ERRORCron намагається спрацьовувати частіше, ніж раз на 12 годПеревірка проміжку вимагає проміжок ≥ 12 год. Повідомлення про помилку називає пару годин-конфлікт. Оберіть ширший проміжок.
Розклад встановлено, але звіт не прийшов вчасноЗапланований cron спрацьовує в межах ~1–2 хв від тикуЗачекайте 5 хв після налаштованого часу, перш ніж вважати це пропуском. Рідкісні затримки трапляються, але вирішуються самі.
Cron з кількома запусками спрацьовує лише разСписок годин не за порядком або дублікатcron(0 14,22 ? * * *) — по зростанню годин. cron(0 22,14 ? * * *) відхиляється.
На staging розклад спрацьовує кожні 5 хв, на prod — ніРізні простори імен RULE_NAMEПереконайтеся, що перевіряєте правильне середовище. /setup → ℹ️ About показує середовище.
Часовий пояс здається неправильнимРозклад за замовчуванням у UTCПереведіть свій локальний час у UTC. Поле встановлення розкладу в окремих випадках приймає й іменовані часові пояси — перевірте docstring поля.
X Posts Auto-relay спрацьовує, а звіти — ніРізні cron-розкладиX Posts Auto-relay опитує кожні 5 хв на кожен relay; звіти використовують основний cron чату (зазвичай щоденний). Вони незалежні.

Якість рендеру

СимптомЙмовірна причинаВиправлення
Власний заголовок / колір відкотився за нічКеш інвалідовано, наступний запит покаже нове значенняЗачекайте один цикл звіту (~1 день). Кеш рендеру перебудовується на наступному запиті.
Логотип розмитий / обрізанийВихідне зображення закамале або не квадратнеЗавантажте повторно ≥ 512×512 PNG, квадратне співвідношення. /setup → 🎨 Customization → 🖼 Logo.
Ім'я користувача виходить за межі в зображенні лідербордуДовге відображуване ім'яБот обрізає з трьома крапками; виправлення не потрібне, якщо не постійно.
Текст Best-tweet показує сирий <a href> HTMLНевідповідність режиму парсингу TelegramБаг — будь ласка, повідомте з URL твіта.
Зображення звіту відрізняється від превью в TelegramTelegram кешує перші байти зображення за URL; підписані URL містять мітку часу, тож кожен запит унікальнийНе повинно траплятися; якщо трапляється — оновіть через /recreate.

X Posts Auto-relay

СимптомЙмовірна причинаВиправлення
Relay пересилає тред з 6 твітів одразуСамовідповіді обходять exclude=replies X API/setup → 📡 X Posts Auto-relay → @account → вимкніть ☐ Thread continuations. Тоді бот залишає лише голову.
Relay зупинився в середині дняДосягнуто денний лімітЕкран relay показує Today: N/N forwarded. Торкніться ✏️ Cap і підвищіть. Скидається опівночі UTC.
Relay показує ⏸ Paused, хоча я не ставив на паузуАвтопауза при помилці Telegram chat-gone (вигнали / заблокували / оновили чат)Бот також зупинив розклад опитування. Щоб відновити: /setup → 📡 X Posts Auto-relay → @account → ▶️ Resume. Якщо все ще не працює, можливо, у чату змінився ID (оновлення до супергрупи) — повторно додайте бота в новому чаті.
Перше опитування relay переслало 50 постівBootstrap не повинен так робити — має лише встановити LAST_POST_ID без пересиланняЯкщо бачите таке, будь ласка, повідомте. Виправлення, додане у 2026-04, мало це запобігти.
Цитати продовжують з'являтися попри перемикачУ X API немає серверного exclude=quotes — бот фільтрує на своєму боці після отриманняПеремикач працює, але ви все одно платите за цитати, повернуті API. Заощадження лише косметичне.
Relay опитує вічно, попри видалений чатСтара версія relay — auto-cleanup додано у 2026-05Попросіть підтримку примусово зупинити relay. Нові розгортання самоочищаються.

Рахунки та кредити

СимптомЙмовірна причинаВиправлення
Купив кредити, баланс не змінивсяWebhook Stripe затримавсяЗачекайте 5 хв. Якщо все ще неправильно, зверніться до підтримки з квитанцією Stripe + ID чату.
Кількість кредитів вища, ніж очікувалосяRelay опитував кілька разів у період, коли відстежуваний акаунт був активнийX Posts Auto-relay тарифікує за пост. Торкніться relay → перевірте лічильник Today.
Тарифікований перевитрат на PRO·sub, хоча постив малоІнше використання чату (relay, звіти, повторні спроби запитів)/setup → 💳 Buy Credits → Usage this month. Порівняйте з тарифікованим стягненням.
Стягнення з чату FREEНе повинно траплятися — FREE не має клієнта StripeПовідомте негайно; це баг тарифікації.
Підписка показує "canceled", хоча я не скасовувавСкасування Stripe може бути викликане невдалим автопродовженням карткиПеревірте пошту на квитанції Stripe, оновіть картку через /setup → 💳 → 🛠 Manage subscription (Клієнтський портал Stripe).
Скасував підписку, все ще PROСкасування наприкінці періоду: PRO до кінця оплаченого періодуОчікувано. Повертається до FREE в кінці наступного платіжного циклу.

Публічний дашборд

СимптомЙмовірна причинаВиправлення
Проєкту немає на xbot.ninjaНе відповідає порогам (≥ 300 top score, ≥ 5 постів, ≥ 2 активних користувачі цього місяця)Прямий URL все ще працює. Зачекайте, поки метрика досягне порога. Налаштування соло-KOL навмисно приховані з вітрини.
Проєкт на xbot.ninja, але логотип відсутнійЛоготип ніколи не завантажувався, або завантаження не вдалося/setup → 🎨 Customization → 🖼 Logo. Надішліть квадратний PNG.
Публічний URL показує стару назву проєктуОновлення на наступному циклі звітуПерейменуйте через /setup → 🎨 Customization → 🏷 Name. Слаг URL + картка оновляться при наступному запуску звіту.
URL видає 404Чат жорстко видалено, АБО пороги ще не досягнуто, тому вітрина приховує йогоПеревірте ID чату через /setup → ℹ️ About. Перевірте прямий URL https://xbot.ninja/?chatId=<id>.

Ескалація

Коли матриці вище не вирішують проблему, зверніться до підтримки за шаблоном нижче.

Project:        <your project name>
Chat ID:        <from /setup → ℹ️ About>
Plan:           FREE / PRO·credits / PRO·sub
What's wrong:   <1–2 sentences>
What you tried: </setup → … → … steps you ran>
When it broke:  <approx UTC time>
Recent change:  <any new filter / schedule / payment in the last 24 h>

Сам по собі ID чату дає підтримці 80% інформації для розбору — будь ласка, завжди його вказуйте.

Куди звертатися:

Час відповіді за критичністю:

  • Критично (бот офлайн на всій платформі, збої з рахунками): 1 робоча година протягом перетину бізнес-годин ЄС+США
  • Високо (звіт одного чату не доставляється): того ж робочого дня
  • Звичайно (питання щодо функцій, допомога з налаштуванням): 1–2 робочих дні

Корисні діагностичні команди

КомандаЩо показує
/setup → ℹ️ AboutID чату, тариф, розклад, проєкт — скопіюйте це дослівно в запит підтримки
/setup → 🎯 FiltersБуквальний рядок запиту X API
/setup → 💳 Buy Credits → 📊 Usage this monthДенні + місячні лічильники fetched_posts — виявляють тихі збої (багато спроб, нуль постів → ймовірно 402)
/setup → 📡 X Posts Auto-relay → @accountСтан окремого relay (активний / на паузі, сьогоднішні пересилки, денний ліміт)
/get_chatidПросто ID чату (однорядково, якщо About — це забагато)

Що далі

X Bot Documentation