Передісторія

Багато Telegram-груп і каналів стикаються з проблемою неконтрольованої публікації оголошень: користувачі публікують повідомлення напряму, що часто призводить до спаму, хаотичного формату постів і складнощів із модерацією.

Замовнику було важливо впорядкувати процес розміщення оголошень, зберегти контроль над контентом і при цьому не ускладнювати процес для користувачів. Тому було прийнято рішення створити систему публікації оголошень через Telegram-бота з премодерацією, де користувач подає оголошення через бота, а адміністратор перевіряє його перед публікацією.

Це дозволило автоматизувати процес збору оголошень, стандартизувати їх формат та забезпечити контроль якості контенту перед появою в групі або каналі.

Основні цілі проєкту

  • Створити контрольовану систему публікації оголошень

    1

    Забезпечити можливість створення оголошень лише через Telegram-бота з обов’язковою премодерацією перед публікацією в групі або каналі.

  • Організувати структурований процес створення оголошень

    2

    Реалізувати покроковий сценарій створення оголошення з вибором категорії, додаванням фотографій, введенням тексту та контактних даних.

  • Автоматизувати процес модерації контенту

    3

    Надати адміністраторам інструмент для швидкого перегляду, редагування, підтвердження або відхилення оголошень через адміністративного бота.

  • Автоматизувати процес модерації контенту

    4

    Автоматично формувати публікації з фотографіями, текстом оголошення, контактами та хештегом категорії після підтвердження модератором.

Етапи роботи

  • Етап 1

    Аналіз задачі та сценаріїв використання

    Визначено логіку роботи системи публікації оголошень, сценарії створення оголошень користувачами та процес модерації перед публікацією.

  • Етап 2

    Проєктування архітектури ботів

    Спроєктовано взаємодію між Client Bot, Admin Bot та Telegram-групою або каналом, а також структуру бази даних для збереження оголошень і статусів модерації.

  • Етап 3

    Розробка Client Bot

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

  • Етап 4

    Розробка системи модерації

    Створено Admin Bot, який отримує заявки на публікацію, відображає прев’ю оголошення та дозволяє адміністратору підтвердити, відхилити або відредагувати його.

  • Етап 5

    Інтеграція з Telegram-групою або каналом

    Налаштовано автоматичну публікацію оголошень після підтвердження модератором із додаванням фотографій, тексту, контактів та хештегів категорії.

  • Етап 6

    Тестування та запуск системи

    Проведено перевірку всіх сценаріїв роботи: створення оголошення, модерація, публікація та інформування користувача про результат.

Кабінет користувача (Client Bot)

Клієнтський бот дозволяє користувачам створювати оголошення через Telegram у структурованому форматі. Бот покроково збирає всі необхідні дані, перевіряє їх коректність та відправляє оголошення на модерацію перед публікацією.

  • Створення оголошення
  • Введення тексту оголошення
  • Завантаження фотографій
  • Вибір категорії
  • Оплата розміщення або просування оголошення
  • Статус оголошення
  • Користувач запускає бота та обирає дію створення нового оголошення. Бот запускає покроковий сценарій створення заявки та послідовно збирає всі необхідні дані.

  • Користувач вводить текст оголошення. Бот контролює максимальну кількість слів відповідно до налаштувань системи та не дозволяє перевищити встановлений ліміт.

  • Користувач може додати від однієї до п’яти фотографій. Після кожного завантаження бот пропонує додати ще фото або перейти до наступного етапу.

  • На першому етапі користувач обирає категорію оголошення з доступного списку. Кожна категорія має прив’язаний хештег, який автоматично додається до фінального тексту публікації.

  • Система може передбачати можливість платного розміщення або додаткового просування оголошення. Після створення оголошення користувачу може бути запропоновано оплатити публікацію через зовнішній платіжний сервіс. Після успішної оплати оголошення отримує відповідний статус та переходить до етапу модерації або публікації залежно від налаштувань системи.

  • Після відправки оголошення отримує статус очікування модерації. Користувач отримує повідомлення про те, що оголошення відправлено на перевірку.

Banner Background

Адміністративний бот (Admin Bot)

Адміністративний бот використовується модераторами та адміністраторами для управління оголошеннями, які надходять від користувачів через клієнтського бота. Бот отримує всі заявки на публікацію, показує попередній перегляд оголошення та дозволяє адміністратору прийняти рішення щодо публікації, редагування або відхилення. Також система дозволяє перевіряти статус оплати оголошення перед його публікацією.

  • Отримання заявок на модерацію
  • Попередній перегляд оголошення
  • Перевірка статусу оплати
  • Підтвердження публікації
  • Відхилення оголошення
  • Публікація оголошення
  • Після створення оголошення користувачем та відправки його на перевірку система автоматично надсилає повідомлення адміністративному боту. Адміністратор отримує сповіщення про нову заявку на публікацію оголошення.

  • Адміністратор бачить повний попередній перегляд оголошення, який включає фотографії, текст оголошення, контактний номер телефону, категорію та хештег. Це дозволяє швидко оцінити коректність та якість оголошення перед прийняттям рішення.

  • Якщо оголошення передбачає платне розміщення або просування, адміністративний бот також відображає статус оплати. Адміністратор може перевірити, чи була успішно здійснена оплата перед публікацією оголошення.

  • Після перевірки оголошення адміністратор може підтвердити публікацію. У цьому випадку система змінює статус оголошення та автоматично публікує його в Telegram-групі або каналі разом із фотографіями, текстом, контактами та хештегом категорії.

  • Адміністратор може відхилити оголошення,непідтверджуючи його, якщо воно не відповідає правилам або містить некоректну інформацію.

  • Після підтвердження адміністративним ботом система автоматично публікує оголошення в Telegram-групі або каналі. Публікація включає фотографії оголошення, текст повідомлення, контактний номер телефону та хештег категорії.

Banner Background

Адміністративна панель (Web Admin)

Адміністративна панель використовується для повного управління системою публікації оголошень. Через веб-інтерфейс адміністратор може керувати клієнтами, модерацією оголошень, категоріями та налаштуваннями системи. Адмінка дозволяє контролювати весь процес публікації, редагувати оголошення, перевіряти інформацію користувачів та керувати структурою хештегів для категоризації оголошень.

  • Отримання заявок на модерацію
  • Управління оголошеннями
  • Модерація оголошень
  • Управління категоріями та хештегами
  • Управління адміністраторами
  • В адміністративній панелі доступний список усіх користувачів, які взаємодіють із Telegram-ботом. Для кожного клієнта зберігається Telegram ID, ім’я та інша базова інформація. Адміністратор може переглядати профіль клієнта, редагувати дані користувача або контролювати його активність у системі.

  • Адміністратор має доступ до повного списку оголошень, створених користувачами через Telegram-бот. У списку відображається клієнт, заголовок оголошення, текст, номер телефону та статус дозволу на публікацію. Через адмінку можна переглядати оголошення, редагувати текст, коригувати інформацію або змінювати статус публікації.

  • Система дозволяє адміністраторам контролювати публікацію оголошень. Адміністратор може дозволити або заборонити публікацію оголошення, перевірити коректність тексту та контактної інформації або відредагувати оголошення перед публікацією. Це дозволяє забезпечити контроль якості контенту та зменшити кількість спаму.

  • В адміністративній панелі передбачено розділ налаштувань, де адміністратор може створювати, редагувати або видаляти хештеги, які використовуються для категоризації оголошень. Хештеги автоматично додаються до публікацій у Telegram-каналі або групі, що дозволяє структурувати оголошення та спрощує навігацію для користувачів.

  • Адмінка дозволяє створювати та керувати обліковими записами адміністраторів системи. Для кожного адміністратора зберігається логін, email, Telegram ID, статус активності та дата створення. Це дозволяє контролювати доступ до системи та розподіляти права між членами команди.

Banner Background

Результати

Було створено автоматизовану систему публікації оголошень у Telegram з премодерацією. Користувачі отримали зручний інструмент для створення оголошень через бота, а адміністратори — просту систему контролю та модерації контенту. Система дозволила повністю виключити ручну публікацію оголошень, стандартизувати формат постів та значно зменшити кількість спаму в групі або каналі.

  • 100 %

    Усі оголошення проходять контроль перед публікацією.

  • 95 %

    Стандартизований формат оголошень.

  • 100 %

    Стандартизований формат оголошень.

  • 100 %

    Зменшено кількість спаму та некоректних публікацій.

Використані технології

Для реалізації проєкту ми використали сучасний стек технологій, орієнтований на стабільність та масштабованість:

  • Backend

    PHP 8.3, фреймворк Symfony 6.4 (LTS)

  • База даних

    MySQL 8

  • Серверна інфраструктура

    Linux Ubuntu 22.04

  • Веб-сервер

    Nginx

Підтримка

Компанія SKylex є офіційним технічним партнером проєкту та відповідає за повний цикл розробки, технічну підтримку та подальше масштабування платформи. Ми забезпечуємо стабільну роботу сервісу, впровадження нового функціоналу та оперативне реагування на потреби бізнесу.

Заповніть форму для отримання безкоштовної консультації

Введіть ім’я кирилицею або англійською
Введіть номер телефону
Натискаючи на кнопку, ви даєте згоду на обробку персональних даних