Для работы со ссылками
(с уведомлением о клике, укорачивание ссылок, удаление ссылок)
Ссылки с уведомлением о клике
proxy() | proxy_date() | proxy_timeout()
ОБОЗНАЧЕНИЯ:
! - Обязательные параметры
Разберем простой пример:

Мы создали две прокси-ссылки и вывели их в кнопках и в тексте сообщения. Поскольку мы тестируемся в Telegram, то грех не напомнить как следует работать с ссылками в тексте с использованием Markdown. Поэтому понадобилось использовать функцию экранирования tg_escape()
Так созданные нами ссылки выглядят в карточке клиента:

Так клиент их видит, например, в Telegram:

При переходе клиента по ссылке мы получаем колбек:

Давайте настроим реакцию на данное событие:

Теперь проверим функции удаления ссылок:

После выполнения функции удаления всех одноразовых ссылок, отправленных клиенту, видим:

Таким образом, при попытке клиента перейти после удаления по одноразовой ссылке он получит ошибку, так как такой ссылки уже не существует:

Удалим ссылку, ограниченную временем:

По итогу исполнения функции в карточке клиента не осталось прокси-ссылок и попытка перехода по ссылке возвращает всё ту же ошибку:

Укорачивание ссылок
short() | short_date() | short_timeout()
ОБОЗНАЧЕНИЯ:
! - Обязательные параметры
short(lnk, one-shot) - для получения ссылки без уведомления о клике. На вход передаются параметры: ! lnk - ссылка one-shot - признак того, что ссылка одноразовая. Достаточно передать 1.
short_date(lnk, date, time) - для получения ссылки без уведомления о клике с заданным временем окончания доступа к ней. На вход передаются параметры: ! lnk - ссылка ! date - дата окончания действия ссылки ! time - время окончания действия ссылки one-shot - признак того, что ссылка одноразовая. Достаточно передать 1.
short_timeout(lnk, minutes, one-shot) - для получения ссылки без уведомления о клике с заданным таймером доступа к ней. На вход подаются параметры: ! lnk - ссылка ! minutes - количество минут, которые действует ссылка. one-shot - признак того, что ссылка одноразовая. Достаточно передать 1.
Удаление ссылок
remove_links() | remove_one_time_links()| remove_timer_links()
ОБОЗНАЧЕНИЯ:
! - Обязательные параметры
remove_links() - деактивация всех коротких ссылок, отправленных клиенту
remove_one_time_links() - деактивация всех одноразовых ссылок, отправленных клиенту
remove_timer_links() - деактивация всех временно доступных ссылок, отправленных клиенту
Ссылка на квиз для Telegram-бота
quiz_link_timeout() | quiz_link_date() | quiz_link()
Обращаем внимание!
Существует ограничение на время действительности ссылки - 21 день.
Поэтому ссылку необходимо обновлять!
Для того, чтобы подключить возможность отображения квиза в телеграмме, необходимо:
1. Скопировать id минилендинга (только цифры, без #). Далее по тексту mini_landing_page_id:

2. В поле калькулятор используем одну из функций:
ОБОЗНАЧЕНИЯ:
! - Обязательные параметры
Для использования параметра display_my_domain необходимо подключить домен в минилендинге с идентификатором mini_landing_page_id
quiz_link_timeout(mini_landing_page_id, minutes,display_my_domain) - создает ссылку с ограничением срока жизни ссылки в минутах
Параметры:
! mini_landing_page_id - идентификатор минилендинга minutes - минуты жизни ссылки, тип число display_my_domain - признак вывода своего домена в ссылке, значение - '1'
quiz_link_date(mini_landing_page_id, date, time,display_my_domain) - создает ссылку с ограничением срока жизни ссылки до конкретного дня и часа
Параметры:
! mini_landing_page_id - идентификатор минилендинга date - дата действия ссылки, формат: дд.мм.гггг time - время действия ссылки, формат: чч:мм display_my_domain - признак вывода своего домена в ссылке, значение - '1'
quiz_link(mini_landing_page_id,display_my_domain) - создает ссылку без ограничения срока жизни ссылки
Параметры:
! mini_landing_page_id - идентификатор минилендинга display_my_domain - признак вывода своего домена в ссылке, значение - '1'

3. Создать кнопку Telegram Web Application и указать в фигурных скобках с решеткой название переменной

Если вы используете quiz_link_timeout для перехода клиента на минилендинг, то вы можете пользоваться переменными клиента внутри описания и заголовка. Например, если у клиента есть переменная name со значением "Богдан" и в описании минилендинга вы напишите "Привет #{name}, как твои дела ?", то вывод будет "Привет, Богдан, как твои дела ?". Однако, если такая переменная будет отсутствовать у клиента, то переменная будет взята из общих переменных проекта.
Внимание! Будьте внимательны с использованием ссылок без срока жизни: Если ссылка будет отправлена кому-то еще и этот кто-то пройдет опрос, то результаты будут записаны клиенту, для которого была создана данная ссылка.
Last updated
Was this helpful?