# Для работы со ссылками

{% hint style="success" %}
Подробнее о работе с ссылками на практике рассказали в статье "[Временно доступный контент](https://docs.salebot.pro/chasto-zadavaemye-voprosy/kak-sdelat/vremenno-dostupnyi-kontent)".
{% endhint %}

## Ссылки с уведомлением о клике <a href="#dlya-raboty-s-ssylkami" id="dlya-raboty-s-ssylkami"></a>

&#x20;<mark style="color:red;">**ОБОЗНАЧЕНИЯ:**</mark>

<mark style="color:red;">**!**</mark> - Обязательные параметры

{% tabs %}
{% tab title="Параметры" %}
**proxy(lnk, one-shot)** - для получения ссылки с уведомлением о клике. На вход передаются параметры:\ <mark style="color:red;">!</mark> **link** - ссылка \
**one-shot** - признак того, что ссылка одноразовая. Достаточно передать 1.

**proxy\_date(lnk, date, time)** -  для получения ссылки с уведомлением о клике с заданным временем окончания доступа к ней. На вход передаются параметры: \ <mark style="color:red;">!</mark> **link** - ссылка\ <mark style="color:red;">!</mark> **date** - дата окончания действия ссылки \ <mark style="color:red;">!</mark> **time** - время окончания действия ссылки\
**one-shot** - признак того, что ссылка одноразовая. Достаточно передать 1.

**proxy\_timeout(lnk, minutes, one-shot)** - для получения ссылки с уведомлением о клике с заданным таймером доступа к ней. На вход подаются параметры: \ <mark style="color:red;">!</mark> **link** - ссылка\ <mark style="color:red;">!</mark> **minutes** - количество минут, которые действует ссылка. \
**one-shot** - признак того, что ссылка одноразовая. Достаточно передать 1.&#x20;

{% hint style="info" %}
В результате перехода клиента по прокси-ссылкам Вы получите колбек вида link\_was\_pressed <ссылка>

Таким образом можно настроить реакцию на переход по ссылке. Для этого в поле Условие введите получаемый колбек и укажите тип сопоставления Полное совпадение
{% endhint %}
{% endtab %}

{% tab title="Описание" %}
Разберем простой пример:

<figure><img src="https://4216716816-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LxKl4rC_EcwBAz40Qn_%2Fuploads%2FrL0CMsqnsWaL2izNrQCY%2Fimage.png?alt=media&#x26;token=4be556f1-fca3-4aa8-bd8c-4a91ccfbea38" alt=""><figcaption></figcaption></figure>

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

Так созданные нами ссылки выглядят в карточке клиента:

<figure><img src="https://4216716816-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LxKl4rC_EcwBAz40Qn_%2Fuploads%2FUUTu4ToeNV8lP3OeNpKH%2Fimage.png?alt=media&#x26;token=1745350c-5663-44c1-bd56-89a62bda37da" alt=""><figcaption></figcaption></figure>

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

<figure><img src="https://4216716816-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LxKl4rC_EcwBAz40Qn_%2Fuploads%2FvfNtXlsMTH1tXJK8SAKC%2Fimage.png?alt=media&#x26;token=2e51a507-6072-4699-804e-22e76d7d7116" alt="" width="180"><figcaption></figcaption></figure>

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

<figure><img src="https://4216716816-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LxKl4rC_EcwBAz40Qn_%2Fuploads%2Fx8vyOeE0cDM4kCc9fNqc%2Fimage.png?alt=media&#x26;token=2b42f488-8f8d-4d72-9009-14c8a5128fa7" alt="" width="428"><figcaption></figcaption></figure>

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

<figure><img src="https://4216716816-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LxKl4rC_EcwBAz40Qn_%2Fuploads%2Fsa6k59x2xLfSZg0JpEV6%2Fimage.png?alt=media&#x26;token=120dc341-ce27-4d58-aad4-894b076d133d" alt="" width="563"><figcaption></figcaption></figure>

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

<figure><img src="https://4216716816-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LxKl4rC_EcwBAz40Qn_%2Fuploads%2F0JvlfUvnGpObup5qaHp2%2Fimage.png?alt=media&#x26;token=5adb8118-1dee-41c5-b5b7-d1685d042448" alt=""><figcaption></figcaption></figure>

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

<figure><img src="https://4216716816-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LxKl4rC_EcwBAz40Qn_%2Fuploads%2FsdykbAiEt71KvdX9FtzI%2Fimage.png?alt=media&#x26;token=d70f9873-e052-4eb3-b10c-31a03bd7da05" alt=""><figcaption></figcaption></figure>

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

<figure><img src="https://4216716816-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LxKl4rC_EcwBAz40Qn_%2Fuploads%2FwQFGeJXnqOjuu1Pn9Tvj%2Fimage.png?alt=media&#x26;token=19a87f5e-9d00-4c81-96ff-0f04ccef1ad7" alt="" width="563"><figcaption></figcaption></figure>

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

<figure><img src="https://4216716816-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LxKl4rC_EcwBAz40Qn_%2Fuploads%2FzBWYzghI0pRuiqJ6I2UM%2Fimage.png?alt=media&#x26;token=7f1ec18b-82f4-49c2-8920-3511145f9e99" alt=""><figcaption></figcaption></figure>

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

<figure><img src="https://4216716816-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LxKl4rC_EcwBAz40Qn_%2Fuploads%2Fv4KcShNmuSHCiEkY6H9Y%2Fimage.png?alt=media&#x26;token=b66a7ab7-9349-492a-bd4b-adbce59c81a2" alt="" width="563"><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Пример кода для копирования" %}
Пример кода из поля Сообщение (не забудьте включить Markdown, если работаете с Telegram):

```
*Тестируем ссылки:*
[Клац](#{link3})
```

или тестируйте со следующим выводом данных:

<pre><code><strong>Тестируем ссылки:
</strong>#{link2}
</code></pre>

Пример кода из поля Калькулятор:

```
link1=proxy('https://ya.ru/', 1) 
link2=short_date('https://yandex.ru/images', '11.06.2025', '14:00') 
link3=tg_escape(link2)
```

{% endtab %}

{% tab title="Видеоразбор" %}

{% endtab %}
{% endtabs %}

## Укорачивание ссылок&#x20;

**short() | short\_date() | short\_timeout()**

&#x20;<mark style="color:red;">**ОБОЗНАЧЕНИЯ:**</mark>

<mark style="color:red;">**!**</mark> - Обязательные параметры

{% tabs %}
{% tab title="Описание" %}
**short(lnk, one-shot)** — для получения ссылки без уведомления о клике. На вход передаются параметры:\ <mark style="color:red;">!</mark> **link** - ссылка \
**one-shot —** признак того, что ссылка одноразовая. Достаточно передать 1.

**short\_date(lnk, date, time)** — для получения ссылки без  уведомления о клике с заданным временем окончания доступа к ней. На вход передаются параметры: \ <mark style="color:red;">!</mark> **link —** ссылка\ <mark style="color:red;">!</mark> **date —** дата окончания действия ссылки \ <mark style="color:red;">!</mark> **time —** время окончания действия ссылки\
**one-shot —** признак того, что ссылка одноразовая. Достаточно передать 1.

**short\_timeout(lnk, minutes, one-shot)** — для получения ссылки без уведомления о клике с заданным таймером доступа к ней. На вход подаются параметры: \ <mark style="color:red;">!</mark> **link —** ссылка\ <mark style="color:red;">!</mark> **minutes —** количество минут, которые действует ссылка. \
**one-shot —** признак того, что ссылка одноразовая. Достаточно передать 1.&#x20;
{% endtab %}
{% endtabs %}

## **Удаление ссылок**&#x20;

**remove\_links() | remove\_one\_time\_links()| remove\_timer\_links()**

<mark style="color:red;">**ОБОЗНАЧЕНИЯ:**</mark>

<mark style="color:red;">**!**</mark> - Обязательные параметры

{% tabs %}
{% tab title="Параметры" %}
**remove\_links()** - деактивация всех коротких ссылок, отправленных клиенту. Функция без параметров.

**remove\_one\_time\_links()** - деактивация всех одноразовых ссылок, отправленных клиенту, без параметров.

**remove\_timer\_links()** - деактивация всех временно доступных ссылок, отправленных клиенту, без параметров.
{% endtab %}
{% endtabs %}

## Ссылка на квиз для Telegram-бота&#x20;

**quiz\_link\_timeout() | quiz\_link\_date() |  quiz\_link()**

{% hint style="warning" %}
Обращаем внимание!

Существует ограничение на время действительности ссылки - 21 день, поэтому ссылку необходимо обновлять!&#x20;
{% endhint %}

Для подключения возможности отображения квиз-ссылки в Telegram необходимо:&#x20;

1\. Скопировать id сайта: для этого перейдите в раздел "Сайты", затем выберите нужный сайт. На карточке с информацией о сайте вы найдете его ID.

<figure><img src="https://4216716816-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LxKl4rC_EcwBAz40Qn_%2Fuploads%2FblLSQRmeLmSsvZnp8chG%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202025-08-18%20%D0%B2%2016.23.18.png?alt=media&#x26;token=2aeac9d3-f226-436e-9c0d-c3cd3e087394" alt=""><figcaption></figcaption></figure>

ID сайта передается в параметр **mini\_landing\_page\_id.**

2\. В поле калькулятор используется одна из функций:

<mark style="color:red;">**ОБОЗНАЧЕНИЯ:**</mark>

<mark style="color:red;">**!**</mark> - Обязательные параметры

{% tabs %}
{% tab title="Параметры" %}
**quiz\_link\_timeout(mini\_landing\_page\_id, minutes)  -** создает ссылку с ограничением  срока жизни ссылки в минутах

Параметры:

<mark style="color:red;">**!**</mark>**&#x20;mini\_landing\_page\_id** - идентификатор страницы сайта\
**minutes -** минуты жизни ссылки, тип число

**quiz\_link\_date(mini\_landing\_page\_id, date, time) -** создает ссылку с ограничением  срока жизни ссылки до конкретного дня и часа

Параметры:

<mark style="color:red;">**!**</mark>**&#x20;mini\_landing\_page\_id** - идентификатор страницы сайта\
**date** - дата действия ссылки, формат: дд.мм.гггг\
**time** - время действия ссылки, формат: чч:мм

&#x20;**quiz\_link(mini\_landing\_page\_id)** - создает ссылку без ограничения  срока жизни ссылки

Параметры:

<mark style="color:red;">**!**</mark>**&#x20;mini\_landing\_page\_id** - идентификатор страницы сайта
{% endtab %}
{% endtabs %}

Далее короткую срочную ссылку можно передать с помощью переменной в сообщении:

<figure><img src="https://4216716816-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LxKl4rC_EcwBAz40Qn_%2Fuploads%2FYgxxl4AXL4waKPmvLMgH%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202025-08-18%20%D0%B2%2016.34.37.png?alt=media&#x26;token=3295a25a-e81a-4144-9291-a76b5a10fd3a" alt=""><figcaption></figcaption></figure>

Если вы используете quiz\_link\_timeout для перехода клиента насайта, то вы можете пользоваться переменными клиента внутри описания и заголовка. Например, если у клиента есть переменная name со значением "Богдан" и в описании страницы сайта вы напишите "Привет #{name}, как твои дела ?", то вывод будет "Привет, Богдан, как твои дела ?". Однако, если такая переменная будет отсутствовать у клиента, то переменная будет взята из общих переменных проекта.

{% hint style="warning" %}
**Внимание!** Будьте внимательны с использованием ссылок без срока жизни: Если ссылка будет отправлена кому-то еще и этот кто-то пройдет опрос, то результаты будут записаны клиенту, для которого была создана данная ссылка.
{% endhint %}
