# Як налаштувати параметри файлів?

Налаштування файлів дозволяє встановити обмеження для завантаження файлів у систему, такі як максимальний розмір файлу та дозволені типи файлів.

## Коли знадобиться

- Потрібно встановити максимальний розмір файлу (у мегабайтах).
- Треба обмежити типи файлів за розширеннями (наприклад, тільки зображення або документи).
- Клієнти надсилають **стікери Telegram** (статичні `.webp` або анімовані `.tgs`), і оператори мають бачити їх у стрічці — потрібно дозволити відповідні **розширення** та **MIME-типи**.

## Що важливо знати

- **Максимальний розмір файлу (МБ)** — задається окремим полем у верхній частині сторінки (наприклад, `25`).
- **Таблиця типів файлів** — основний спосіб керування: для кожного рядка вказуються **Дозволено**, **Розширення**, **Назва** та **MIME**-типи. Додавання й редагування — через діалог **«Додати тип файлу»** / редагування рядка.
- **JSON (додатково)** — у згорнутому блоці **JSON** можна переглянути або змінити ту саму конфігурацію текстом; зміни в редакторі одразу відображаються в таблиці вище.
- **Кожен тип у списку** — розширення без крапки (наприклад, `pdf`), назва для довідки, один або кілька MIME-типів, прапорець дозволу.
- **Стікери Telegram в Операторській панелі** — статичні стикери часто приходять як **`.webp`** (звичайне зображення); анімовані — як **`.tgs`**. У стрічці діалогу **анімовані `.tgs` відображаються як стікер** (не лише посиланням на файл), якщо файл успішно завантажено та доступний за посиланням. Щоб вхідні файли з Telegram не відхилялись політикою типів, потрібно додати відповідні **розширення** та **MIME** у список дозволених (див. приклад нижче).

## Перед початком

- [x] Ви увійшли в систему з правами адміністратора або супервайзера.
- [x] У вас є права на збереження налаштувань операторської панелі.

## Покрокова інструкція

### 1. Відкрити налаштування файлів

1. Перейдіть до модуля **Налаштування** через меню або безпосередньо за адресою `/settings-page`.
2. У бічному меню знайдіть розділ **«Налаштування»** (підрозділ операторської панелі) та розгорніть його.
3. Натисніть на пункт **«Робота з файлами»** (`/settings-page/op-settings/files`).

### 2. Задати максимальний розмір

1. У полі **«Максимальний розмір файлу (МБ)»** введіть ліміт у мегабайтах (ціле число, мінімум 1).

### 3. Керувати дозволеними типами файлів

1. У таблиці типів файлів перегляньте поточні рядки (колонки **Дозволено**, **Розширення**, **Назва**, **MIME**).
2. Щоб додати тип, натисніть **«Додати тип файлу»**, заповніть у діалозі:
   - **Дозволено** — чи приймається цей тип;
   - **Розширення** — без крапки (наприклад, `pdf`);
   - **Назва** — підпис для адміністратора;
   - **MIME-типи** — через кому (підказка на формі, наприклад `application/pdf, image/jpeg`).
3. Натисніть **«Зберегти»** у діалозі. Якщо розширення вже є в таблиці, з’явиться повідомлення **«Тип файлу з таким розширенням уже існує»** — змініть розширення або відредагуйте існуючий рядок.
4. Щоб змінити або прибрати тип, використайте кнопки редагування або видалення в рядку таблиці.
5. (Опційно) Розгорніть блок **JSON**, якщо зручніше правити конфігурацію текстом — зміни синхронізуються з таблицею.

### 4. Телеграм-стікери (якщо цих типів ще немає)

Додайте відповідні рядки в таблиці (або записи в JSON). Зверніть увагу: анімовані стикери `.tgs` мають обмеження розміру з боку Telegram (типово до кількох десятків кілобайт), але загальна політика розміру в системі все одно застосовується.

**Що додати:**

   | Призначення | `extension` | Приклад `mime_types` (вкажіть ті, що реально віддає ваше сховище / браузер) |
   |-------------|-------------|-----------------------------------------------------------------------------|
   | Статичний стикер (зображення WebP) | `webp` | `["image/webp"]` |
   | Анімований стикер (Telegram TGS) | `tgs` | `["application/octet-stream"]` — найчастіше для бінарних `.tgs`; за потреби додайте інші типи, якщо завантаження або сховище віддає інший `Content-Type` |

5. Приклад **фрагмента** з дозволом WebP та TGS (решту записів залиште як у вашій поточній конфігурації):
   ```json
   {
     "files": [
       {
         "title": "Зображення WebP",
         "extension": "webp",
         "mime_types": ["image/webp"],
         "allow": true
       },
       {
         "title": "Анімований стикер Telegram (TGS)",
         "extension": "tgs",
         "mime_types": ["application/octet-stream"],
         "allow": true
       }
     ],
     "max_file_size_mb": 25
   }
   ```

### 5. Зберегти налаштування

1. Перевірте всі внесені зміни.
2. Натисніть кнопку **"Зберегти"** у верхній частині сторінки.
3. Дочекайтеся повідомлення про успішне збереження.

## Що відбувається після

Обмеження застосовуються до всіх операторів у системі:
- При спробі завантажити файл, що перевищує максимальний розмір, система показує помилку.
- При спробі завантажити файл недозволеного типу, система показує помилку.
- Вхідні файли з каналів (зокрема Telegram) перевіряються на відповідність дозволеним **розширенням** (а для завантажень оператора — також MIME-типам з налаштувань).
- Оператори бачать обмеження при завантаженні власних файлів.

## Як переконатися, що все вдалось

- Спробуйте завантажити файл, що перевищує максимальний розмір — система повинна показати помилку.
- Спробуйте завантажити файл недозволеного типу — система повинна показати помилку.
- Спробуйте завантажити файл, що відповідає обмеженням — завантаження повинно пройти успішно.
- Надішліть у діалог з Telegram **анімований стикер** при дозволеному розширенні **`tgs`** — у стрічці Операторської панелі має відображатися анімація стикера.

## Пов'язані матеріали

- [Налаштувати операторів](/uk/settings/how-to/configure-operators.md)
- [Налаштувати стилі та скрипти](/uk/settings/how-to/configure-styles-scripts.md)

