Для работы со ссылками
(с уведомлением о клике, укорачивание ссылок, удаление ссылок)
Last updated
(с уведомлением о клике, укорачивание ссылок, удаление ссылок)
Last updated
ОБОЗНАЧЕНИЯ:
! - Обязательные параметры
Разберем простой пример:
Мы создали две прокси-ссылки и вывели их в кнопках и в тексте сообщения. Поскольку мы тестируемся в Telegram, то грех не напомнить как следует работать с ссылками в тексте с использованием Markdown. Поэтому понадобилось использовать функцию экранирования tg_escape()
Так созданные нами ссылки выглядят в карточке клиента:
Так клиент их видит, например, в Telegram:
При переходе клиента по ссылке мы получаем колбек:
Давайте настроим реакцию на данное событие:
Теперь проверим функции удаления ссылок:
После выполнения функции удаления всех одноразовых ссылок, отправленных клиенту, видим:
Таким образом, при попытке клиента перейти после удаления по одноразовой ссылке он получит ошибку, так как такой ссылки уже не существует:
Удалим ссылку, ограниченную временем:
По итогу исполнения функции в карточке клиента не осталось прокси-ссылок и попытка перехода по ссылке возвращает всё ту же ошибку:
ОБОЗНАЧЕНИЯ:
! - Обязательные параметры
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() - деактивация всех временно доступных ссылок, отправленных клиенту
Обращаем внимание!
Существует ограничение на время действительности ссылки - 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}, как твои дела ?", то вывод будет "Привет, Богдан, как твои дела ?". Однако, если такая переменная будет отсутствовать у клиента, то переменная будет взята из общих переменных проекта.
Внимание! Будьте внимательны с использованием ссылок без срока жизни: Если ссылка будет отправлена кому-то еще и этот кто-то пройдет опрос, то результаты будут записаны клиенту, для которого была создана данная ссылка.