Міграція

Міграція Telegram-бота на Epsenta

Як перенести бота й аудиторію з іншої платформи: паралельна робота, API-ключі, Ingest URL і завершення міграції.

Що важливо знати

У Telegram на один токен бота може бути лише один активний webhook. Тому «паралельна міграція» в Epsenta означає: бот підключений до Epsenta як звичайно (flows, діалоги, розсилки), а додатково можна синхронізувати аудиторію з попередньої платформи.

Контакти в Epsenta створюються за числовим Telegram ID. Без нього неможливо зробити розсилку або продовжити діалог. Якщо в експорті попередньої платформи немає Telegram ID — потрібні Ingest (вебхук з тієї платформи) або імпорт через її API.

  • Спочатку підключіть бота в Налаштування → Канали → Telegram (токен BotFather)
  • Потім увімкніть галочку «Паралельна міграція» і оберіть тип попередньої платформи
  • Скопіюйте Ingest URL у кабінет попередньої платформи (блок зовнішнього запиту / webhooks)
  • За потреби натисніть «Імпортувати зараз» для підтягування бази через API
  • Коли сценарії готові на Epsenta — «Завершити міграцію»

Де в панелі

Проєкт → Налаштування → вкладка Канали → розкрийте Telegram → блок Паралельна міграція з іншої платформи.

Галочка за замовчуванням вимкнена: без неї бот працює лише на Epsenta, як звичайне підключення.

Звідки взяти API-ключі

Поля залежать від обраного типу платформи в списку. Підказки також показано в самій формі налаштувань.

  • **API token** — у кабінеті попередньої платформи розділ «Інтеграції» / «API» / «Ключі доступу» проєкту. Скопіюйте токен і вставте в Epsenta.
  • **Client ID + Client Secret** — у акаунті платформи розділ Account / API (OAuth для доступу до API). Окремо вкажіть **Bot ID** підключеного Telegram-бота (часто видно в URL кабінету бота або в налаштуваннях каналу).
  • **Group ID / нік бота** — username бота без @ (закінчується на bot), якщо платформа вимагає ідентифікатор бота в API.
  • **Custom forward URL** — якщо використовуєте власний проксі або дзеркалювання Telegram Update: вкажіть HTTPS URL, куди Epsenta буде надсилати копії подій.
  • **Legacy webhook URL** — часто підставляється автоматично при підключенні токена (якщо попередня платформа ще тримала webhook). Можна вставити вручну.

Режими синхронізації

  • **Forward** — Epsenta отримує повідомлення від Telegram і може надсилати копію на URL попередньої платформи (щоб тимчасово лишалися старі автоматизації). Увага: якщо обидві системи відповідають користувачу — можливі подвійні відповіді; на час міграції краще вимкнути авто-відповіді в старому кабінеті або завершити cutover.
  • **Ingest** — попередня платформа шле події (новий підписник, вхідне повідомлення) на Ingest URL Epsenta. Контакти з’являються в базі Epsenta навіть якщо ви ще не «відірвали» webhook.
  • **Імпорт через API (Pull)** — кнопка «Імпортувати зараз» і опційний періодичний імпорт. Працює, якщо в API попередньої платформи є Telegram ID контактів. Не всі платформи віддають повний список через API — тоді покладайтесь на Ingest або CSV.

Як налаштувати Ingest URL

У блоці міграції скопіюйте Ingest URL (кнопка копіювання).

У кабінеті попередньої платформи додайте зовнішній HTTP-запит (webhook / external request) на подію «нове повідомлення» або «новий підписник» і в тіло передайте Telegram ID користувача (часто змінні на кшталт userId, telegram_id, platform_id).

Epsenta приймає JSON з полями `telegram_id` / `user_id` / `platform_id`, опційно ім’я, username, теги, змінні.

  • Метод: POST, Content-Type: application/json
  • Обов’язково: числовий Telegram ID
  • Після успішного ingest контакт з’явиться в розділі «Користувачі»

Завершення міграції

Коли flows на Epsenta готові й база наповнена:

1) Вимкніть або видаліть бота в кабінеті попередньої платформи (щоб вона не перезаписувала webhook).

2) У Epsenta натисніть Завершити міграцію — вимкнуться forward / ingest / pull.

3) Перевірте /start у боті та тестову розсилку на невеликий сегмент.

Якщо в експорті немає Telegram ID

Без числового ID неможливо імпортувати аудиторію для розсилок. Варіанти:

Ingest + активність — налаштуйте Ingest і попросіть користувачів написати боту (або зробіть останню розсилку зі старої платформи з проханням натиснути /start).

Новий бот — створіть нового бота в BotFather, підключіть до Epsenta, а зі старої платформи розішліть посилання `t.me/НовийБот?start=...`. Хто перейде — потрапить у базу Epsenta з правильним ID.

Чеклист

  • Токен бота підключено в Epsenta, /start працює
  • Увімкнено «Паралельна міграція», обрано тип платформи
  • Вставлені API-ключі (якщо плануєте Pull)
  • Ingest URL скопійовано в попередню платформу
  • Тестовий контакт з’явився в «Користувачі»
  • Імпорт бази (за потреби) і перевірка кількості
  • Сценарії на Epsenta опубліковані
  • Завершити міграцію + вимкнути бота на старій платформі
Міграція Telegram-бота на Epsenta — Wiki Epsenta