Работа со ссылками
Ссылки с уведомлением о клике
proxy() | proxy_date() | proxy_timeout()
ЛЕГЕНДА:
! - Обязательные параметры
proxy(lnk, one-shot) - генерирует ссылку с уведомлением о клике. Функция принимает следующие параметры: ! ссылка -ссылка one-shot -индикатор одноразового использования ссылки. Просто передайте значение 1.
proxy_date(lnk, date, time) - генерирует ссылку с уведомлением о клике и указанным временем истечения. Функция принимает следующие параметры: ! ссылка - ссылка ! date - дата истечения ссылки ! time - время истечения ссылки one-shot - индикатор одноразового использования ссылки. Просто передайте 1.
proxy_timeout(lnk, minutes, one-shot) - генерирует ссылку с уведомлением о клике и заданным таймером доступа. Функция принимает следующие параметры: ! ссылка - ссылка ! minutes - количество минут, в течение которых ссылка остается активной. one-shot - индикатор одноразового использования ссылки. Просто передайте 1.
Пример
Давайте разберем простой пример:

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

Когда клиент нажимает на ссылку, мы получаем callback:

Давайте настроим ответ на это событие:

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

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

После выполнения функции в карточке клиента не остается proxy-ссылок, и любая попытка перейти по ссылке возвращает ту же ошибку.
Пример кода для копирования
Пример кода для поля «Сообщение» (не забудьте включить Markdown если вы работаете с Telegram):
*Тестирование ссылок:*
[Нажмите](#{link3})или протестируйте, используя следующий формат вывода:
Тестирование ссылок:
#{link2}Пример кода в поле «Калькулятор»:
link1=proxy('https://mavibot.ai/', 1)
link2=short_date('https://mavibot.ai/#tariff', '11.06.2025', '2pm')
link3=tg_escape(link2)Когда клиент нажимает на proxy-ссылку, вы получите callback в виде link_was_pressed . Это позволяет настроить реакцию на нажатие по ссылке.
Для этого введите полученный callback в поле «Условие» и установите тип совпадения Exact Match.
Сокращение ссылок
short() | short_date() | short_timeout()
ЛЕГЕНДА:
! - Обязательные параметры
short(lnk, one-shot) - генерирует ссылку без уведомления о клике. Функция принимает следующие параметры: ! ссылка -ссылка one-shot -индикатор одноразового использования ссылки. Просто передайте значение 1.
short_date(lnk, date, time) - генерирует ссылку без уведомления о клике и с указанным временем истечения. Функция принимает следующие параметры: ! ссылка - ссылка ! date - дата истечения ссылки ! time - время истечения ссылки one-shot - индикатор одноразового использования ссылки. Просто передайте 1.
short_timeout(lnk, minutes, one-shot) - генерирует ссылку без уведомления о клике и с заданным таймером доступа. Функция принимает следующие параметры: ! ссылка - ссылка ! 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 днем, поэтому ее нужно обновлять!
Чтобы включить отображение квиза в Telegram, необходимо:
1. Скопировать ID страницы сайта. Для этого перейдите в раздел «Сайты» и выберите нужный сайт:

Далее в тексте мы будем использовать mini_landing_page_id в качестве имени переменной.
2. В поле «Калькулятор» используйте одну из следующих функций:
ЛЕГЕНДА:
! - Обязательные параметры
quiz_link_timeout(mini_landing_page_id, minutes) - генерирует ссылку с ограничением срока действия, заданным в минутах
Параметры:
! mini_landing_page_id - ID страницы сайта minutes - время жизни ссылки в минутах (тип: число)
quiz_link_date(mini_landing_page_id, date, time) - генерирует ссылку с истечением срока действия в определенную дату и время
Параметры:
! mini_landing_page_id - ID страницы сайта date - дата активации ссылки (формат: dd.mm.yyyy) time - время активации ссылки (формат: hh:mm)
quiz_link(mini_landing_page_id) - генерирует ссылку без ограничения по времени
Параметры:
! mini_landing_page_id - ID страницы сайта
Пример

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

Важно! Убедитесь, что значение переменной правильно сохранено в расширенных настройках.

Если вы используете quiz_link_timeout для перенаправления клиента на страницу сайта, вы можете использовать переменные клиента в заголовке и описании страницы. Например, если у клиента есть переменная name со значением «John», а в описании страницы указано "Hi #{name}, how are you?", на выходе будет "Hi John, how are you?". Однако если у клиента нет этой переменной, значение будет взято из глобальных переменных проекта.
Примечание! Будьте осторожны при использовании ссылок без ограничения по времени. Если ссылкой поделятся с кем-то еще и этот человек пройдет квиз, результаты будут записаны за клиентом, для которого ссылка изначально была сгенерирована.
Последнее обновление