# Как получать изображения и файлы от пользователя

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

Чтобы определить, когда пользователь отправил вложение (например, изображение, файл, видео или аудио), необходимо использовать условие триггера:

`attachment_message`

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

После того как пользователь отправляет файл, формируются следующие системные переменные:

* `#{attachments}`: Содержит URL-адреса всех вложений из сообщения пользователя, оформленные в виде JSON-массива. Используйте это, когда нужно обработать несколько файлов или работать со структурой данных программно.
* `#{attachment_url}`: Содержит прямой URL-адрес в виде обычного текста для первого (или единственного) вложения. Это самая удобная переменная для немедленного использования, например для отображения ссылки в сообщении или передачи её другой функции.

Чтобы понять практическую разницу, вы можете показать обе переменные в сообщении бота.  `#{attachments}` переменная будет показывать структурированный JSON-массив, а  `#{attachment_url}` будет показывать простую кликабельную URL-ссылку.

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

Если ваш проект обрабатывает несколько вложений пользователя, эффективно назначать URL каждого вложения отдельной переменной.

Для этого объявите новую переменную в  **Калькуляторе** редакторе блоков и присвойте ей значение `#{attachment_url}` .

**Пример:**\
`user_file = #{attachment_url}`&#x20;

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

Присвойте значение `attachment_url` переменной `url_image1`.


---

# 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/builder/attachments/images.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.
