Розсилка
Розсилка — це інструмент масового надсилання повідомлень батькам та учням тренера. Повідомлення доставляються одночасно через Telegram бот, кабінет батьків та мобільний додаток. Можна надіслати повідомлення про турнір чи іспит із готовим шаблоном і підстановкою персональних змінних — або написати вільне повідомлення. Доступна у кабінеті тренера: Тренерська → Розсилка.
Типи повідомлень
На першому кроці оберіть один з трьох типів — від цього залежить шаблон тексту і доступні змінні:
✏️ Довільне
Вільний текст без прив'язки до події. Шаблон містить лише базові змінні отримувача. Підходить для загальних оголошень, вітань або нагадувань.
🏆 Турнір
Виберіть турнір зі списку — шаблон автоматично підставить назву, дату і місце.
Доступні змінні {event_name}, {event_date},
{event_place}.
🥋 Іспит
Виберіть іспит — шаблон підставить дати, місце, розклад, а для кожного учня окремо — пояс на який він складає, вартість та персональний час. Список отримувачів автоматично звужується до зареєстрованих на цей іспит.
Отримувачі
Список показує всіх батьків та учнів тренера, у яких є прив'язаний Telegram. Отримувачі без Telegram відображаються зі статусом no TG і не можуть бути обрані для відправки.
- Пошук — фільтрує список за іменем у реальному часі.
- Вибрати всіх / Зняти всіх — масове виділення видимих у списку.
- Учні / Батьки — швидко обрати лише один тип отримувачів.
- Без TG — лічильник тих, кому доставка неможлива (не мають Telegram).
При виборі типу Іспит список автоматично звужується лише до учнів, зареєстрованих на цей іспит. Для кожного відображається пояс і вартість іспиту. Решта учнів приховується до зняття вибору іспиту.
Текст повідомлення та змінні
Після вибору типу поле тексту автоматично заповнюється готовим шаблоном. Його можна редагувати — шаблон лише відправна точка. Назва задачі зберігається в архіві для зручного пошуку серед попередніх розсилок.
Змінні підстановки
У тексті можна використовувати змінні в фігурних дужках. Перед відправкою система замінює їх персональними даними кожного отримувача:
Загальні
{first_name}— ім'я отримувача{full_name}— повне ім'я отримувача{child_name}— ім'я учня{candidate}— ПІБ учня (для документів){coach_name}— ім'я тренера{today}— сьогоднішня дата
Турнір
{event_name}— назва турніру{event_date}— дата проведення{event_place}— місто та майданчик
Іспит (загальні)
{exam_name}— назва іспиту{exam_date_start}/{exam_date_end}— дати{exam_place}— місце проведення{schedule}— розклад семінарів і іспиту{seminar_date}— тільки дати семінарів{exam_date_schedule}— дата іспиту з розкладом
Іспит (персональні)
{exam_belt}— пояс, на який складає учень{belt_emoji}— емодзі кольору поясу{exam_fee}— вартість іспиту для учня{my_exam_time}— персональний час іспиту{my_seminar_time}— персональний час семінарів
Форматування тексту (HTML для Telegram)
Повідомлення підтримують HTML-форматування Telegram. Основні теги:
<b>жирний</b>— жирний<i>курсив</i>— курсив<u>підкреслений</u><s>закреслений</s><code>моноширинний</code><a href="...">посилання</a>
Праворуч від форми відображається попередній перегляд повідомлення — як воно виглядатиме для першого обраного отримувача. Оновлюється в реальному часі при редагуванні тексту або зміні отримувачів. При фокусуванні на полі тексту preview підіймається поруч з курсором для зручного порівняння.
Задачі розсилки
Після натискання «Надіслати розсилку» система створює задачу (job) і ставить повідомлення в чергу. Доставка відбувається в фоні через Telegram-бота з урахуванням ліміту швидкості (~25 повідомлень/сек). Список останніх задач відображається праворуч на тій самій сторінці.
Кожна картка задачі показує:
- Іконка типу — звичайна розсилка або розсилка боргів
- #ID та дата створення
- Назва задачі
- Статус — виконано / в процесі / помилка
- Прогрес — надіслано / всього (наприклад
10/10) - Лічильники — кількість помилок і пропущених, якщо є
- Кнопка «Деталі» — перехід на окрему сторінку задачі зі статусом кожного отримувача
На сторінці деталей задачі видно повний список отримувачів і статус кожного: надіслано, підтверджено, в черзі, заблоковано або помилка. Зручно для контролю доставки та повторної відправки при помилках.