Додавання callback-кнопок у Telegram

Callback-кнопками в Telegram називають кнопки, натискання яких надсилає запит боту. Відповідь бота показується у спливному вікні.

Разом із запитом бот отримує інформацію про того, хто натиснув кнопку. Тому він може відповідати кожному користувачу по-різному, наприклад підставляти його ім’я в текст відповіді.

FLOWIN дає змогу автоматично додавати callback-кнопки до пересланих повідомлень, переносити в них частину тексту, копіювати наявні кнопки й збирати статистику натискань.

Натискання кнопки відкриває приховану записку з подробицями

Навіщо потрібні callback-кнопки

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

Щоб отримати повний сигнал, потрібно натиснути кнопку. FLOWIN запише натискання, і в статистиці буде видно, хто й коли відкривав подробиці. Це допомагає знаходити тих, хто автоматично збирає ваш контент. Саму відповідь теж можна скопіювати, тому кнопка ускладнює копіювання, але не унеможливлює його.

Обмеження для альбомів

До звичайного альбому з кількох фото або відео callback-кнопки не додаються.

Генерація callback-кнопки

У режимі «Генерація» FLOWIN додає до пересланого повідомлення нову кнопку. Ви задаєте її назву й вибираєте, що показати після натискання: заздалегідь написану відповідь або фрагмент самого повідомлення.

Для налаштування знадобиться увімкнене пересилання в режимі «Копія». Як відправника виберіть бота, підключеного за токеном, оскільки надсилати повідомлення з callback-кнопками можуть лише боти.

Для прикладу візьмемо сигнал щодо акції вигаданої компанії. Умови угоди з рядка «Подробиці» перенесемо в кнопку «Докладніше»:

Приклад інвестиційного сигналу

Акції компанії «Вектор». Ідея: купівля на пробої опору.
Подробиці: купівля 150 ₽; стоп-лос 145 ₽; тейк-профіт 165 ₽.

  1. Відкрийте @flow_in_bot, надішліть команду /start і натисніть «Панель керування».

    Вхід до панелі керування через @flow_in_bot.
    Вхід до панелі керування через @flow_in_bot.
  2. Відкрийте «Меню» → «Кнопки» → «CB-кнопки». Натисніть «Створити» й виберіть «Генерація».

    Розділ «CB-кнопки» в меню FLOWIN
    Розділ «CB-кнопки» в меню FLOWIN.
    Створення кнопки в режимі «Генерація»
    Створення кнопки в режимі «Генерація».
  3. У полі «Назва» введіть «Докладніше». У поле «Вміст» вставте <regexp>(?<=Подробиці: ).*$</regexp>. Цей шаблон вибирає текст після слів «Подробиці: ». Натисніть «Створити».

    Назва й шаблон вмісту кнопки
    Назва й шаблон вмісту кнопки.
  4. Біля створеної кнопки натисніть «Застосувати». У вікні «Вибір пересилань» позначте потрібне пересилання й натисніть «Зберегти».

    Застосування створеної кнопки до пересилання
    Застосування створеної кнопки до пересилання.
    Вибір пересилання з ботом-відправником
    Вибір пересилання з ботом-відправником.
  5. Надішліть приклад у чат-джерело. У чаті призначення замість умов угоди з’явиться трикрапка. Натисніть «Докладніше»: відкриються ціна купівлі, стоп-лос і тейк-профіт.

    Початковий сигнал із ціною купівлі, стоп-лосом і тейк-профітом
    Початковий сигнал із ціною купівлі, стоп-лосом і тейк-профітом.
    Умови угоди перенесено в кнопку «Докладніше»
    Умови угоди перенесено в кнопку «Докладніше».
    Натискання «Докладніше» показує перенесений текст
    Натискання «Докладніше» показує перенесений текст.

Копіювання початкових callback-кнопок

Режим «Копіювання» потрібен, якщо в початковому повідомленні вже є callback-кнопка. FLOWIN прочитає її відповідь і додасть до пересланого повідомлення кнопку з тією самою назвою й текстом.

Для копіювання також потрібне пересилання в режимі «Копія», де відправником вибрано бота, підключеного за токеном. Натискатиме початкову кнопку слухач, тобто акаунт, який читає повідомлення в чаті-джерелі. Переконайтеся, що кнопка відповідає йому текстом.

Яку відповідь побачать читачі

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

  1. Відкрийте «Меню» → «Пересилання» й натисніть «Налаштування» біля потрібного пересилання.

    Перехід до списку пересилань
    Перехід до списку пересилань.
    Відкриття налаштувань потрібного пересилання
    Відкриття налаштувань потрібного пересилання.
  2. У вікні налаштувань відкрийте вкладку «Кнопки». У блоці «Зчитування кнопок» увімкніть «CB-кнопки» й натисніть «Зберегти».

    Зчитування callback-кнопок у налаштуваннях пересилання
    Зчитування callback-кнопок у налаштуваннях пересилання.
  3. Відкрийте «Меню» → «Кнопки» → «CB-кнопки». Натисніть «Створити» й виберіть «Копіювання».

    Перехід до callback-кнопок для налаштування копіювання
    Перехід до callback-кнопок для налаштування копіювання.
    Створення налаштування в режимі «Копіювання»
    Створення налаштування в режимі «Копіювання».
  4. У вікні, що відкрилося, натисніть «Створити».

    Створення налаштування копіювання кнопок
    Створення налаштування копіювання кнопок.
  5. Біля створеного налаштування натисніть «Застосувати». У вікні «Вибір пересилань» позначте пересилання з увімкненим зчитуванням кнопок і натисніть «Зберегти».

    Застосування копіювання до пересилання
    Застосування копіювання до пересилання.
    Вибір пересилання з увімкненим зчитуванням кнопок
    Вибір пересилання з увімкненим зчитуванням кнопок.
  6. Надішліть у чат-джерело новий сигнал із кнопкою. У чаті призначення відкрийте скопійовану кнопку: назва й умови угоди мають збігтися з початковими.

    Початкова кнопка та її текстова відповідь
    Початкова кнопка та її текстова відповідь.
    Скопійована кнопка показує ту саму відповідь
    Скопійована кнопка показує ту саму відповідь.

Як змінити callback-кнопку

Щоб змінити вже створену кнопку, відкрийте список «CB-кнопки».

  1. Натисніть «Змінити» біля потрібної кнопки.

    Відкриття основних налаштувань кнопки
    Відкриття основних налаштувань кнопки.
  2. Змініть потрібні поля й натисніть «Зберегти». Перевірте нові дані в списку.

    Збереження зміненого опису
    Збереження зміненого опису.
    Новий опис у списку кнопок
    Новий опис у списку кнопок.

Налаштування callback-кнопок

У режимі «Генерація» доступні всі п’ять полів, описаних нижче. У режимі «Копіювання» можна змінити лише «Колір» і «Опис», оскільки назва й вміст беруться з початкової кнопки.

Назва

Укажіть текст, який буде видно на кнопці, наприклад «Докладніше». Це обов’язкове поле.

Можна використовувати метатеги, які підставляють дані повідомлення. Наприклад, <src-chat-name> підставляє назву чату-джерела.

Колір

Виберіть один із чотирьох варіантів: «За замовчуванням», «Синій», «Червоний», «Зелений». Якщо вибрати «За замовчуванням», нова кнопка отримає стандартний колір Telegram, а скопійована збереже початковий колір.

Доступні кольори callback-кнопки
Доступні кольори callback-кнопки.

Вміст

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

Щоб перенести частину повідомлення в кнопку, візьміть шаблон пошуку в <regexp>…</regexp>. За замовчуванням використовується <regexp>\s.{20,180}$</regexp>: він вибирає від 20 до 180 символів у кінці повідомлення після пробілу або перенесення рядка. Якщо відповідь виявиться порожньою, FLOWIN не додасть кнопку.

Якщо написати відповідь звичайним текстом, без <regexp>, вміст повідомлення залишиться без змін. У відповідь можна додати метатеги <clicker-name> і <clicker-id>. FLOWIN підставить замість них ім’я та Telegram ID того, хто натиснув кнопку. Наприклад, Вітаю, <clicker-name>! перетвориться на привітання з іменем читача.

Текст заміни

Цей текст з’явиться в повідомленні замість фрагмента, перенесеного в кнопку. За замовчуванням на його місці залишається трикрапка .... Якщо залишити поле порожнім, фрагмент буде видалено без заміни. Налаштування не змінює повідомлення, якщо у «Вмісті» задано готову відповідь без шаблону пошуку.

Опис

Тут можна залишити нотатку про те, для чого налаштовано кнопку. Поле можна залишити порожнім: на роботу кнопки воно не впливає.

Як вибирати повідомлення для кнопки

Щоб додавати кнопку лише до певних повідомлень, прив’яжіть до неї фільтр, наприклад за словом «акції». Повідомлення без цього слова пересилатимуться, але без кнопки. Якщо такий фільтр прив’язати до самого пересилання, повідомлення без слова «акції» не будуть надіслані. Налаштування описано в інструкції з фільтрів.

Інші дії з кнопками

Біля кожного налаштування в списку «CB-кнопки» є меню «Ще». У ньому доступні такі дії:

  • «Застосувати» відкриває вибір пересилань, у яких працюватиме кнопка.
  • «Дублювати» створює копію налаштування.
  • «Вибрати проєкт» додає кнопку до проєкту.
  • «Видалити» видаляє налаштування.
Додаткові дії з callback-кнопкою
Додаткові дії з callback-кнопкою.

Уже вибрані пересилання можна переглянути через «Пересилання [1]». Число в дужках показує їхню кількість. У цьому вікні можна додати пересилання або прибрати ті, де кнопка більше не потрібна.

Як переглянути статистику натискань

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

  1. Відкрийте «Пересилання» в меню панелі. Біля потрібного пересилання натисніть «CB-кнопки» з числом прив’язаних налаштувань.

    Перехід від пересилання до статистики натискань
    Перехід від пересилання до статистики натискань.
  2. У списку «Останні 10 кнопок» виберіть 10, 20 або 30. З’явиться статистика за користувачами: ім’я, Telegram ID і натискання.

    Натискання користувачів і час до першого натискання
    Натискання користувачів і час до першого натискання.

Як читати показники:

  • У стовпці «кліки» вказано, скільки різних кнопок натиснув користувач. Наприклад, 3/5 означає, що він натиснув 3 кнопки з 5. Повторні натискання не збільшують цього числа.
  • «середнє» й «медіана» показують, скільки часу зазвичай минає до першого натискання. Медіана менше залежить від окремих натискань із великою затримкою.
  • «мінімум» і «максимум» показують найкоротшу й найдовшу затримку до першого натискання.
  • На смужці кнопок кольором виділено ті, які користувач натиснув. Номер показує порядок першого натискання, а число в дужках указує, скільки разів він натиснув цю кнопку.

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

Поширені запитання

Чим інлайн-кнопка відрізняється від callback-кнопки?

Інлайн-кнопки розташовані під повідомленням у Telegram. Натискання може, наприклад, відкрити посилання або надіслати запит боту. Callback-кнопка належить до другого варіанта: у FLOWIN вона показує текстову відповідь. Якщо потрібен перехід на сайт або в канал, використовуйте кнопку з посиланням.

Чим готова відповідь відрізняється від перенесення частини допису в кнопку?

Готовий текст у полі «Вміст» задає відповідь кнопки й не змінює сам допис. Шаблон у тегах <regexp>…</regexp> бере фрагмент із повідомлення й переносить його у відповідь. На місці цього фрагмента з’являється значення поля «Текст заміни», за замовчуванням трикрапка. Обидва варіанти задаються в налаштуваннях вмісту.

Чи збереже скопійована кнопка персональні відповіді початкового бота?

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

Чому кнопка не додалася, якщо шаблон не знайшов потрібного фрагмента?

Якщо після обробки поля «Вміст» відповідь порожня або складається з пробілів, FLOWIN не створює кнопку. Так буває, коли поле містить лише шаблон, а відповідного фрагмента в повідомленні немає. Перевірте шаблон на тексті, який пересилаєте. Також зважайте на обмеження: до звичайних альбомів із кількох фото або відео callback-кнопки не додаються.

Чи збільшує повторне натискання показник «кліки»?

Ні. У стовпці «кліки» рахується кількість різних кнопок, які натиснув користувач. Наприклад, 3/5 означає три кнопки з п’яти, навіть якщо одну з них натиснули кілька разів. Повтори видно окремо: число в дужках біля кожної кнопки показує кількість її натискань. Докладніше про показники читайте в розділі статистики.

Чи можна за швидкими натисканнями довести автоматичне копіювання?

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