Вимоги та обмеження Telegram
1. Обмеження на повідомлення
- Текстове повідомлення: Максимум 4 096 символів.
- Повідомлення із зображенням: Максимум 1 024 символи (для зображення 1080x1080 px).
2. Вимоги до зображень
- Формат: Перевага надається квадратним зображенням.
- Оптимальний розмір: 900x900 пікселів, максимум 5 МБ.
3. Вимоги до файлів
API Telegram має певні вимоги до завантажених файлів:
- Боти можуть надсилати файли розміром до 2 ГБ.
- Ви можете використовувати file_id для роботи з раніше завантаженими файлами. У цьому випадку обмеження на файли відповідають документації Telegram.
- Файли можна надсилати за допомогою URL (бот завантажує та надсилає його):
- Фотографії: ≤ 5 МБ
- Інші файли: ≤ 20 МБ
- Для публікації діють інші обмеження:
- Фотографії: 10 МБ
- Інші файли: 2 ГБ
Створення Telegram-бота
Telegram-бот створюється через BotFather — офіційну систему керування ботами Telegram. Цей перевірений інструмент (позначений синьою галочкою) дозволяє створити бота без знань програмування та захищає вас від шахрайських імітаторів.
Кроки створення:
- Почніть чат з BotFather.
- Надішліть команду:
/newbot - Виберіть назву для вашого бота (це відображуване ім'я для користувачів).
-
Виберіть ім'я користувача для вашого бота. Воно обов'язково має закінчуватися на
botабо_bot(наприклад,my_test_bot).
Якщо ім'я користувача вільне, BotFather надішле вам підтвердження, яке міститиме "токен" — унікальний ключ для доступу до API.
Важливо: Цей токен є паролем для вашого бота. Зберігайте його в безпеці та ніколи не передавайте нікому.

Перейдіть до розділу Messengers, виберіть Telegram і вставте токен вашого бота у відповідне поле.

Натисніть кнопку Done, щоб завершити налаштування бота та активувати підключення до вашого проекту.
Робота з групами/каналами Telegram
Корисна інформація
Група Telegram — це канал зв'язку між учасниками: всі учасники можуть писати в ньому.
Канал Telegram — це односторонній засіб зв'язку. Тільки власник або адміністратори можуть надсилати повідомлення, тоді як решта учасників можуть лише переглядати їх і залишати коментарі.
Як додати бота до групи/каналу Telegram
Ця функція для бота вмикається в BotFather:
Крок 1. Перейдіть до налаштувань бота:

Крок 2. Натисніть "Allow Groups?'

Крок 3. Має відображатися статус "Увімкнено".

Додавання бота як адміністратора в групу/канал
Щоб автоматизувати роботу в чатах і каналах, потрібно додати власного бота як Адміністратора.
Як це зробити?
Крок 1. Перейдіть до керування групою/каналом і виберіть вкладку Адміністратори

Крок 2. Натисніть кнопку "Додати адміністратора".

Крок 3. Введіть ім'я користувача вашого бота в поле пошуку.

Крок 4. Для повної функціональності переконайтеся, що бот має права на читання та видалення повідомлень.

Змінні для роботи в чатах
Зверніть увагу!
Збереження змінних у групових чатах для таких подій, як приєднання до чату, вихід із чату, новий лайк тощо, недоступне.
Змінні будуть доступні лише всередині блоку, який спрацював. Ви можете вивести ці змінні в блоці, щоб відстежити роботу.
Це НЕ вплине на роботу чат-ботів, відстежити, хто увійшов/вийшов у розділі клієнтів, буде неможливо.
- Змінні з інформацією про автора повідомлення
message_from - ID автора повідомлення
message_from_name - ім'я автора повідомлення
message_from_username - нікнейм автора повідомлення в Telegram

- Змінні з інформацією про переслане повідомлення
reply_message_id - номер повідомлення, яке пересилається
reply_from - хто є автором пересланого повідомлення
reply_from_name - ім'я особи, чиє повідомлення пересилається
reply_from_username - нікнейм особи, чиє повідомлення пересилається
reply_from_chat_id - номер діалогу, з якого було переслано повідомлення
- Додавання та видалення з групи
У цьому випадку спрацьовують зворотні виклики new_chat_member та left_chat_member (змінні не зберігаються в картці клієнта):
chat_member_name - ім'я користувача
chat_member_username - нікнейм користувача
chat_member_id - номер користувача
Зворотні виклики в Telegram
client_unsubscribed - клієнт відписався, заблокував бота
client_returned - клієнт розблокував бота

Зворотні виклики в групах/каналах
new_chat_member - додано нового користувача
left_chat_member - користувач покинув канал
kicked_chat_member - користувача видалено адміністратором
chat_join_request - отримано запит на додавання до каналу
edited_channel_post - пост у каналі відредаговано (edited_channel_post + дата та час редагування)



Зворотні виклики відображаються в розділі Клієнти
bot_added_to_group - бота додано до чату (неважливо, якого саме, він реагуватиме на будь-якого, навіть якщо підключеного бота додали до самої групи);
bot_left_group - аналогічний зворотний виклик для видалення бота з каналу;
new_like - вподобали пост
like_deleted - видалили лайк з поста


Число в зворотному виклику (new_like; like_deleted) — це ID повідомлення, на яке відреагували або з якого видалили реакцію.
Зверніть увагу!
- Зворотні виклики для реакцій не відображаються в каналах Telegram! Зворотні виклики для реакцій надходять лише в групах.
- Якщо одна людина поставила кілька лайків, а потім видалила 1 з них, не показується, який саме було видалено.
Коли в групах з'являються зворотні виклики з реакціями, у блоці доступні змінні:
reaction_on_message_id - містить ID повідомлення, на яке відреагували
reaction_from - id того, від кого була реакція
message_from_username - ім'я користувача, від кого була реакція (якщо є)
reaction_from_name - ім'я того, від кого була реакція

Також, якщо Telegram відповідає на повідомлення, змінна reply_text у картці міститиме повний текст повідомлення, на яке було дано відповідь.

Якщо повідомлення було надіслано як відповідь (з цитуванням попереднього повідомлення), система також згенерує змінну tg_quote, яка містить цитований текст.


Зворотні виклики з бустом
- chat_boost_from user #{id_user} - надав буст чату (або каналу):

Коли спрацьовує цей зворотний виклик, генеруються змінні:

- remove_boost_from user #{id_user} - забрали буст у чату (або каналу):

Коли спрацьовує цей зворотний виклик, генеруються змінні:

- chat_boost from giveaway - видано під час розіграшу зірок у каналі
- remove_chat_boost from giveaway - період бусту для розіграшу зірок у каналі закінчився
Як автоматизувати видалення системних сповіщень у групах
Щоб автоматично видаляти всі системні повідомлення, достатньо присвоїти будь-яке значення змінній del_tg_system_messages (змінна може бути як константою проекту, так і змінною транзакції) та надати боту дозвіл на видалення повідомлень.
Змінна del_tg_system_messages може використовуватися лише в групах. У каналах присвоєння будь-якого значення цій змінній не призведе до жодного результату.


Права адміністратора в налаштуваннях групи Telegram
Видаляються такі типи системних сповіщень:
- Назву групи змінено
- Фото групи змінено
- Фото групи видалено
- Повідомлення закріплено
- Користувач приєднався до групи
- Користувач покинув групу
Якщо ви хочете видаляти лише окремі типи системних сповіщень, то замість змінної del_tg_system_messages створіть змінну del_tg_chosen_messages і помістіть у неї масив з типами сповіщень для видалення, розділеними комами.
Зверніть увагу!
Ці змінні працюватимуть лише для груп Telegram, але не для каналів.
Варіанти системних сповіщень:
- 'new_chat_member' – користувач приєднався до групи,
- 'left_chat_member' – користувач покинув групу,
- 'pinned_message' – повідомлення закріплено,
- 'delete_chat_photo' – фото групи видалено,
- 'new_chat_photo' – фото групи змінено,
- 'new_chat_title' – назву групи змінено
Наприклад, вам потрібно видалити всі види системних повідомлень, крім приєднання до групи; тоді потрібно додати всі види зворотних викликів до змінної проекту (константи), крім "new_chat_member".

Зверніть увагу!
Видалення системних сповіщень не вплине на зворотні виклики. Буде видалено лише системне повідомлення з діалогу Telegram.
Форум у Telegram
Форум — це група, де можна створювати окремі теми для обговорення. Ви можете використовувати стандартні функції у форумі: прикріплювати медіафайли, публікувати опитування та налаштовувати сповіщення. Також можна закріплювати повідомлення та додавати окремих ботів до кожного чату.

Основна мета форуму — структурувати спілкування у великій спільноті.
У стандартному груповому чаті з великою кількістю учасників стає важко стежити за розмовами та знаходити релевантні повідомлення. Форуми вирішують цю проблему, організовуючи обговорення в окремі тематичні гілки. Це автоматично сегментує спільноту за темами та інтересами, роблячи спілкування більш цілеспрямованим і керованим.
Лише власник групи може створити тему, якщо в групі більше 100 учасників. Якщо група прив'язана до каналу, ви не зможете створити тему. Теми вмикаються в Налаштуваннях групи:

Як адміністратор, ви можете створити тему в налаштуваннях групи-форуму:

Після підключення Тем аватар зміниться з круглого на квадратний, що дозволяє відрізнити форум від інших чатів Telegram:

Як налаштувати зв'язку Telegram-клієнта з веб-сайтом?
Детальніше про те, як пов'язати клієнта Telegram і клієнта з веб-сайту після успішної оплати тут.


