# Webhook из Telegram

{% hint style="success" %}
**Что такое вебхук?**&#x20;

Это уведомление о событии, которое произошло. Это уведомление содержит значения изменённых переменных.
{% endhint %}

## Как получить вебхук?

Чтобы получить полный вебхук из Telegram, достаточно присвоить <mark style="color:красный;">**любое значение**</mark>**&#x20;save\_webhook** <mark style="color:красный;">**переменной:**</mark>

Пример `save_webhook = 'текстовое значение'`

<div data-with-frame="true"><figure><img src="/files/73344efe9edb212111772426e6dad9a36736c2cc" alt="" width="563"><figcaption></figcaption></figure></div>

Пример: числовое значение переменной

<div data-with-frame="true"><figure><img src="/files/f4788f3193358cc28491de0f003a68ce6a338ef9" alt="" width="563"><figcaption></figcaption></figure></div>

Переменная save\_webhook может быть либо константой проекта, либо переменной в калькуляторе (примеры выше):

<div data-with-frame="true"><figure><img src="/files/92de07980670c304f6d7eaf1822d49df5771b46f" alt="" width="563"><figcaption></figcaption></figure></div>

В этом случае ответ клиента на сообщение бота, которое содержит такую переменную, будет записан в Telegram-переменную **tg\_request,** которую вы можете найти в карточке клиента среди переменных транзакции.

<div data-with-frame="true"><figure><img src="/files/579835c18dc548153914e2c65dee98dbcd4fd5dd" alt="" width="375"><figcaption></figcaption></figure></div>

Клиент ответил на сообщение бота из блока, в котором задана переменная save\_webhook.

tg\_request и save\_webhook в переменной клиента

<div data-with-frame="true"><figure><img src="/files/88b38b2c52a7a91a6818216de154e358984e1c69" alt="" width="563"><figcaption></figcaption></figure></div>

## Как получить ссылку на медиа с помощью переменной?

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

**Шаги реализации:**

1. **Настройте переменную webhook:**\
   Сначала присвойте любое значение переменной с именем `save_webhook`. Вы можете определить её как **константу проекта** или **переменную внутри блока Calculator**.
2. **Создайте блок Trigger:**\
   Далее создайте **Блок-триггер**. Этот блок будет отслеживать входящие медиа и использовать `tg_request` функцию с вашей `save_webhook` переменной, чтобы получить ссылку на файл.

<div data-with-frame="true"><figure><img src="/files/c40d51d735fde6cc94c825ddb8183c663094a2fb" alt="" width="563"><figcaption></figcaption></figure></div>

* Далее создайте блок для вывода результата.

<div data-with-frame="true"><figure><img src="/files/c1452696426f12315390ff59f8c2f1c0fdf19a9b" alt="" width="563"><figcaption></figcaption></figure></div>

Выполните эти шаги, чтобы получить прямую ссылку на файл из вашего бота:

1. **Перейдите в вашего подключённого Telegram-бота** и начните чат.
2. **Введите ваше заданное ключевое слово** чтобы активировать функцию запроса файла.
3. **Отправьте файл** (изображение, видео и т. д.), для которого вы хотите получить ссылку на скачивание.

<div data-with-frame="true"><figure><img src="/files/2b99618e9e0b58cd32ab177c5b74525b8559acaa" alt="" width="563"><figcaption></figcaption></figure></div>

Обратите внимание на последний file\_id в полученном ответе Telegram:

<div data-with-frame="true"><figure><img src="/files/9881a298cdfe1b848a0728b2f41326094fd268b6" alt=""><figcaption></figcaption></figure></div>

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


---

# 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://docs.mavibot.ai/doc/ru/chatbot/messendzhery/telegram/webhook.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.
