# Deep Linking / Внешнее связывание

### Введение

В контексте чат-ботов для мессенджеров и социальных сетей смысл диплинка заключается в создании унифицированного идентификатора ресурса (URI), который ссылается на определенный диалоговый сценарий в чат-боте, а не в простом запуске чат-бота сначала.

Самым большим преимуществом диплинков является возможность для маркетологов и разработчиков направлять пользователей непосредственно в определенное место в своем чат-боте с помощью выделенной ссылки.&#x20;

В цифровом пространстве deep link можно использовать, например, для размещения на рекламных баннерах в социальных сетях, на веб-сайте для отслеживания переходов с уникальных мест,  передача токена авторизации в бот прямо с  сайта, можно отправить в личном сообщении и многое другое.

Примеры внешнего связывания с вещами в физическом мире: deep link в виде QR на кассовом чеке, в котором содержится идентификатор транзакции, для приглашения пользователя в программу лояльности в чат-боте и начисления баллов за этот заказ; deep link на брошюре на столике в ресторане с вызовом официанта, содержащий номер столика; рекламные флаеры и буклеты; QR в секретном месте в квесте в парке развлечений; QR на объектах в музее или в спортзале и т.д.&#x20;

В каждом случае пользователь при открытии deep link попадет в чат-бот и активирует определенный сценарий, уникальный для этой конкретной ссылки. Через deep link в чат-бот можно передать параметры, например, токен заказа или идентификатор страницы, с которой совершен переход.

Поддержка deep link реализована для каналов:

* Прямая интеграция **VK**
* Прямая интеграция **Telegram**
* Интеграция через Umnico для **WhatsApp**
* **Metabot Widget**

### Создание диплинка

Первым шагом для настройки диплинков в новом боте является настройка **Каналов** бота. Настройка **Каналов** производится в разделе главного меню **Настройки бота** подраздел [**Каналы**](https://app.metabot24.com/bot-channel)**.**

Например, в рассматриваемом боте настроены два канала:

* Metabot Widget
* Telegram

Далее для настройки перейдем в раздел **Ссылки**, который  служит для создания диплинка.

Нужно создать **Ссылку** с типом ссылки *Ссылка на бот-скрипт (Deep Link)*, для этого перейти в раздел главного меню **Настройки бота** подраздел [**Ссылки**](https://app.metabot24.com/link).

![](/files/-Ma90wJo1Qt7D_plWRsL)

По имени, указанном в поле **Имя**, на диплинк можно ссылаться в макроподстановках. Формат ссылок, как имя диплинка - dpl1:

* {{ ^#dpl1 }} - макроссылка, поддерживается в Маршрутах

Текст из поля **Текст/приглашение** будет добавлен к сообщению пользователя в мессенджере при его переходе по диплинку. Используется только для мессенджера - WhatsApp.\
Поле **URL** остаётся не заполненным.

Нажать кнопку ***Создать***.

![](/files/-MaTeoFXCBZcXULuK6pQ)

### Настройка маршрутов

Для привязки диплинка к определённому скрипту бота следует создать маршрут со следующими настройками. Настроить маршруты можно в разделе главного меню **Настройки бота** подраздел [**Маршруты**](https://app.metabot24.com/route):&#x20;

* Опция ***Обработка Deep Link*** - установить активность;
* Опция ***Действует в диалоге*** - установить активность, не обязательно для заполнения;
* ***Название*** - текстовое наименование маршрута;
* ***Скрипт*** - выбрать скрипт, который должен запускаться в данном маршруте;
* ***Регулярное выражение*** - значение макроссылки {{ ^#имя\_диплинка }}, например,&#x20;
  * {{ ^#dpl1 }} - было определено при создании ссылки диплинка.&#x20;

Нажать кнопку ***Создать***.

![](/files/-MaTftBDm7nWomRBCq8Z)

Рекомендуется маршрут с диплинком разместить первым в списке всех маршрутов. Для этого можно воспользоваться кнопкой ***Перетащите для изменения порядка***, расположенной в блоке **Операции**.

![](/files/-MaTjn8jhcDt8HF85tyf)

### Использование диплинков

#### Внешние мессенджеры

После создания ссылки автоматически создаётся уникальный хеш диплинка и происходит генерация URL для каждого мессенджера.

![](/files/-MaTl9dn0p7om5Mrgu6b)

Перечень мессенджеров определяется из того, к каким Каналам подключен данный бот. Вместо **{текста в фигурных скобках}** в URL диплинка следует указать соответствующий ID бота в мессенджере.

**Пример для Telegram:**

![](/files/-MaTmG5zcqk8__lTuZ3o)

В ссылке для Telegram бота - <https://app.metabot24.com/deeplink/telegram/**{имя-бота-telegram}**/ZfxWPpKhehQCrVuE>

{имя-бота-telegram}  - заменить на **deeplink\_test\_bot**

![](/files/-MaTn0J0vTgHaDd63cUz)

После подстановки ссылку с данным URL можно размещать в интернете. При необходимости к ней можно добавить параметры, как это стандартно делается для http-ссылок.

![](/files/-MaTpFYL441Q5NWYBBx-)

При переходе по такой ссылке происходит редирект на API соответствующего мессенджера, в нашем примере на Telegram.

![](/files/-MaTppVXccNuDrwLwzzs)

Далее при нажатии *Send Message* тоже автоматически в мессенджер.&#x20;

После того, как пользователь отреагирует в мессенджере. В примере с Telegram, нажмёт кнопку ЗАПУСТИТЬ, все параметры, которые были указаны в диплинке будут сохранены в переменных соответствующего лида в разделе Лиды на платформе. Бот стартует со скрипта указанного в маршруте для диплинка.

![](/files/-MaTr9mdnUJb5O7fhVhG)

**Пример для WhatsApp:**

Аналогичным образом настраивается ссылка для WhatsApp бота подключенного через интеграцию Umnico:&#x20;

<https://app.metabot24.com/deeplink/whatsapp/**{телефон-whatsapp}**/f2cdWYPOADnluTTT>

{телефон-whatsapp} - заменить на номер телефона в формате 79ххххххххх

![](/files/-MaX3B5ubGwMYjvnece5)

После подстановки ссылку с данным URL можно размещать в интернете. При необходимости к ней можно добавить параметры, как это стандартно делается для http-ссылок.

![](/files/-MaX3sovx9KcRMxFCY-b)

При переходе по такой ссылке происходит редирект на API соответствующего мессенджера, в нашем примере на WhatsApp.

![](/files/-MaX5Xoyik304_Pikgfe)

Далее при нажатии *Перейти в чат* тоже автоматически в мессенджер.&#x20;

После того, как пользователь отреагирует в мессенджере. В примере с WhatsApp, нажмёт кнопку Отправки сообщения, произвойдет старт бота со скрипта указанного в маршруте для диплинка.

![](/files/-MaX4XherwAVGKXCeW5c)

#### Metabot Widget

Ключевым моментом здесь является задание атрибута *data-deeplink*.&#x20;

Шаблон ссылки-диплинка выводится в разделе **Ссылки**. При условии, что у бота подключен канал **Metabot Widget**.

![](/files/-MaTtVVokPKbDhw2aSS4)

В настройках канала **Metabot Widget** в поле ***Всплывающий HTML*** можно задать HTML-код.

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

![](/files/-MaTuOcU7kBXgNUMByDb)

Описанный блок будет всплывать при наведении мышки на кнопку виджета.

![](/files/-MaTui-J0Hm-P9uyqdQD)

Для передачи дополнительных параметров с последующим сохранением их в параметрах Лида используются атрибуты ***href*** и ***data-deeplink*** тега гиперссылки.

Например, после перехода по следующей гиперссылкеуказанной в настройках виджета:

```
 <a href="?utm-foo=bar" data-deeplink="ZfxWPpKhehQCrVuE" data-boom="bazz">
```

![](/files/-MaTz7zRz99QeB8oKEKy)

В разделе **Лиды** на платформе, по соответствующему лиду, будут переданы и сохранены в параметрах лида следующие параметры:

* boom = bazz
* utm-foo = bar&#x20;

![](/files/-MaTxzPS5Anbx8E5186l)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://metabot.gitbook.io/documentation/deep-linking-vneshnee-svyazyvanie.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
