> ## Documentation Index
> Fetch the complete documentation index at: https://www.sip.tg/llms.txt
> Use this file to discover all available pages before exploring further.

# Модулі Worker і Storage

export const bot = {
  ACTIVATE_TARIFF_PLAN: "Активувати підписку",
  ADDRESS: "Адреса",
  ADDRESS_PORT: "Сервер:порт",
  ADMIN_ASSIGN: "Призначити адміністратора",
  APPLY: "Зберегти",
  ARBITRARY_CHECK: "Обробка повідомлень",
  AUTORENEW: "Автопролонгація",
  AUTOREPLY: "Автовідповідь",
  BACK: "Назад",
  BACK_TO_PAYMENT: "Повернутися до оплати",
  BALANCE_TRANSFER: "Переказати",
  BILLING: "Платіжні реквізити",
  BTN_CHARGE_REDIRECT: "Підтвердити списання",
  BTN_EMPTY_BOT: "Inline-бот",
  BTN_TARIFF_NEW: "Підключити",
  CALLBACK_CHECK: "Callback",
  CALLBACK_SWITCH_OFF: "Вимкнути режим Callback",
  CALLBACK_SWITCH_ON: "Ввімкнути режим Callback",
  CALLER_NAME: "Імʼя телефонуючого",
  CALLER_PHONE: "Номер телефонуючого",
  CANCEL: "Відмінити",
  COMMENT: "Коментар",
  CONFIGURE_ACCOUNT_ALLOW_EVERYBODY: "Дозволити дзвінки від всіх користувачів",
  CONFIGURE_ACCOUNT_ALLOW_P2P: "Дозволити P2P дзвінки від усіх",
  CONFIGURE_ACCOUNT_DISALLOW_GROUPS: "Заборонити додавання в групи",
  CONFIGURE_ACCOUNT_OFF_OTHER_SESSIONS_CALLS: "Відімкнути дзвінки на всіх інших пристроях",
  COUNTRY: "Країна",
  DELETE: "Видалити",
  DESCRIPTION: "Опис",
  DIAL_RULES: "Правила набору",
  DOC_BTN_PROVIDE: "Надати документацію",
  DOMAIN: "Домен",
  DTMF_METHODS: "DTMF методи",
  FIELD_VALUE: "Поле:Значення",
  FORMATS: "Аудіо кодеки",
  FW_ADD: "Додати номер телефону",
  FW_ADD_OTHER: "Інший номер",
  FW_ADD_SELF: "Telegram номер",
  FW_ANTISPAM: "Анти-спам",
  FW_BACK: "Назад",
  FW_BONUS_PROGRAM: "Реферальна програма",
  FW_CANCEL: "Відмінити",
  FW_DELETE: "Видалити",
  FW_NAME: "Ім'я",
  FW_NO: "Ні",
  FW_PHONE_FORWARDING: "Номер нагадування",
  FW_RECORDER_CHAT: "Чат для записів",
  FW_RECORDER_CHECKBOX: "Запис розмови",
  FW_SELECT_COUNTRY: "Виберіть країну (регіон)",
  FW_SHARE_PHONE: "Надіслати номер телефону",
  FW_TELL_FRIENDS: "Розказати друзям",
  FW_YES: "Так",
  GATEWAY_IN_RESET: "Скинути пароль",
  GATEWAY_IN_SHOW: "Показати акаунт",
  GATEWAY_OUT_NUMBER: "Номер на АТС",
  GENERATE_NEW: "Згенерувати новий",
  GIVE_ACCESS: "Надати доступ",
  GIVE_PHONE_NUMBER: "Надати номер телефону",
  HELP: "Допомога",
  INLINE_QUERY: "Inline-запит",
  INVOICE_BANK_IGNORE_CURRENT_RATE: "Ігнорувати обмінний курс",
  KEYPAD_IN: "DTMF Вхід",
  KEYPAD_OUT: "DTMF Вихід",
  KEYS_GET: "Отримати ключі",
  KEYS_RESET: "Скинути ключі",
  LEARN_ABOUT: "Дізнатися більше про SIP.TG",
  LINES: "Лінії",
  LINES_CHECK: "Лінії",
  LOGIN: "Логін",
  MANUAL: "Посібник",
  MODE_GATEWAY: "Режим шлюзу",
  MODE_SOFTPHONE: "Режим софтфона",
  NAME: "Ім'я",
  NEW: "Новий",
  NEW_IN: "🆕 АТС→SIP․TG",
  NEW_IP: "🆕 IP⇿IP",
  NEW_OUT: "🆕 SIP․TG→АТС",
  NO: "Ні",
  PARALLEL_DECLINE: "Відхилити",
  PARALLEL_END: "Кінець",
  PARALLEL_SWITCH: "Змінити",
  PARALLEL_TRANSFER: "Переказ",
  PASSWORD: "Пароль",
  PAYER: "Платник",
  PAYSYSTEM_BTN_VERIFY: "Вкажіть країну проживання",
  PAYSYSTEM_DOCS_PROVIDE: "Надати документи",
  PAYSYSTEM_METHOD: "Спосіб оплати",
  PAY_TARIFF: "Заплатити",
  PROLONG: "Поновити",
  PROMO_BUTTON_EMPTY: "Код на знижку",
  RECONNECT: "🔄 Перепідключити",
  RECORDER_ACTIVATE: "🔴 Почати запис",
  RECORDER_ACTIVATE_FAILED: "⚠️ Почати запис",
  RECORDER_CHAT: "Чат для записів",
  RECORDER_CHECKBOX: "Запис розмови",
  RECORDER_DEACTIVATE: "🟥 Зупинити запис",
  RECORDER_DEACTIVATE_RECONNECTING: "⌛ Зупинити запис",
  RECORDER_LOCKED: "🔒 Запис заблоковано",
  REDIAL: "Передзвонити",
  REDIAL_CHECK: "Передзвонити",
  REGISTRAR: "Проксі",
  REPEAT: "Повторити",
  SELECT_BOT: "Обрати бота",
  SELECT_CHANNEL: "Виберіть канал",
  SELECT_CHAT: "Виберіть чат",
  SELECT_USER: "Виберіть користувача",
  SERVER_FROM_TEMPLATE: "Шаблони серверів",
  SESSION_BILLER_CHECK: "Поділитися підпискою",
  SESSION_CONFIGURE_ACCOUNT: "Налаштування Telegram-акаунта",
  SESSION_LOGIN: "Підключіться",
  SESSION_LOGOUT: "Від'єднати",
  SETTINGS: "Налаштування",
  START_CALLING: "Перейдіть до дзвінків",
  SUPPORT: "Підтримка",
  SWITCH_OFF: "Вимкнути",
  SWITCH_ON: "Увімкнути",
  TAKE: "Взяти",
  TARIFF_ACTIVATE_CHANGE_USER: "Змінити користувача",
  TARIFF_ACTIVATE_USER: "Активувати для іншого користувача",
  TARIFF_ACTIVATE_YOURSELF: "Активуйте себе",
  TAX_ADDRESS: "Адреса",
  TAX_BUSINESS: "Бізнес",
  TAX_NAME: "Покупець",
  TAX_NUMBER: "Податковий номер",
  TERMINATE_SESSION: "Завершити сеанс",
  TERMS_AGREE: "Погоджуюсь з Правилами і Умовами",
  TG_STORAGE_OFFICIAL: "✅ Зберігання сесій SIP․TG",
  TRANSFER: "Переказ",
  TRANSFER_BACK: "Переведіть назад",
  TRUSTED_IPS: "Довірені IP",
  UNLINK: "Відв'язати",
  USER: "Користувач",
  VERIFY_ROUTE_BAD: "👎 Ні, це спам",
  VERIFY_ROUTE_GOOD: "👍 Так, все добре",
  VERIFY_ROUTE_RECOVER: "Відновити вхідні дзвінки",
  WORKER_AUTO: "Авто",
  YES: "Так"
};

На платформі SIP.TG передбачена можливість запускати **власні** серверні модулі:

* **Worker** — відповідає за обробку/перетворення голосових даних (SIP ↔ Telegram).
* **Сховище сесій** (Storage) — зберігає ключі та дані доступу до акаунтів Telegram.

Ці модулі можна розмістити на власному сервері в Docker-контейнері з виділеним IP-адресом і гарантованою доступністю. Нижче описано, як це влаштовано та які кроки потрібні для налаштування.

<a id="worker" />

## Worker-сервери

<Info>
  Worker обробляє та конвертує аудіопотоки з SIP у формат Telegram і назад у реальному часі.
</Info>

<a id="worker-what-for" />

### Для чого потрібні Worker-сервери

* **Гарантія продуктивності**: ви самі обираєте обладнання, масштабуєте під потрібне навантаження.
* **Мінімальна затримка**: Worker можна розмістити якомога ближче до вашої АТС, щоб зменшити RTT.
* **Конфіденційність**: голосові потоки не передаються на публічні сервери SIP.TG — ви самостійно обробляєте аудіодані.
* **Доступ до приватних мереж**: за бажанням Worker може працювати в локальній (обмеженій) мережі та отримувати SIP-трафік напряму від АТС.

<a id="worker-requirements" />

### Системні вимоги (Worker)

* **Docker CE** і **Docker Compose** на Linux-сервері (наприклад, Ubuntu 22.04).
* Виділений IP-адрес (або проброс TCP-порту) для з’єднання від SIP.TG.
* Орієнтовна продуктивність: 1 дзвінок ≈ 2.5% CPU на одному ядрі AMD Ryzen 5 1400, \~1 МБ ОЗУ при використанні G.711 (A-law).

<a id="worker-setup" />

### Налаштування власного Worker

<Steps>
  <Step title="Отримання сертифікатів">
    1. У боті [@siptg\_bot](https://t.me/siptg_bot?start=utm_docs) виконайте команду `/workers` і натисніть **{bot.NEW}**.
    2. Вам буде надіслано 2 файли: приватний ключ і сертифікат для безпечного з’єднання з платформою SIP.TG.
    3. Збережіть їх і не передавайте третім особам.
  </Step>

  <Step title="Підготовка сервера">
    1. Встановіть оновлення ОС (за потреби).
    2. Встановіть Docker і Docker Compose.
    3. Склонуйте або завантажте шаблон конфігурації Worker (див. [GitHub](https://github.com/siptg/worker)).
    4. Скопіюйте отримані від бота сертифікати на сервер і вкажіть шляхи до них у налаштуваннях Docker/Worker.
    5. За потреби відредагуйте параметри в `docker-compose.yml` або відповідних конфігураціях (порт SIP, діапазон RTP тощо).
  </Step>

  <Step title="Запуск Worker">
    1. Запустіть сервіс Docker:

       ```bash theme={null}
       docker-compose up -d
       ```
    2. Переконайтеся, що контейнер Worker успішно запустився та слухає вказані порти.
    3. Перевірте логи контейнера (команда `docker-compose logs`) у разі виникнення помилок.
  </Step>

  <Step title="Підключення до Worker">
    1. У боті [@siptg\_bot](https://t.me/siptg_bot?start=utm_docs) поверніться до `/workers`, оберіть створений Worker і натисніть **{bot.ADDRESS}**.
    2. Введіть зовнішню адресу та порт, за якими доступний ваш сервер.
    3. Натисніть **{bot.SWITCH_ON}**, щоб SIP.TG перевірив з’єднання. Якщо все гаразд, Worker перейде в статус “Онлайн”.
  </Step>
</Steps>

<a id="worker-mode" />

### Публічний або особистий режим

Після ввімкнення Worker можна вказати:

* **Особистий** (іконка 🔑) — тільки власник і адміністровані сесії Шлюзу можуть використовувати Worker.
* **Публічний** (іконка 🌐) — Worker буде доступний усім користувачам SIP.TG.

<a id="worker-limitations" />

### Обмеження для користувацьких Worker

* З’єднання типу **АТС→SIP.TG** на користувацькому Worker за замовчуванням заборонені.
* У разі відмови/недоступності Worker більше 30 хвилин платформа може відключити пов’язані SIP-акаунти.

<a id="storage" />

## Сховище сесій Telegram

<Info>
  Сховище (Storage) — сервер, на якому зберігаються ключі та дані для входу в Telegram-акаунти. Без нього сесії Telegram зберігаються в “хмарі” SIP.TG, але за бажанням ви можете зберігати все у себе.
</Info>

<a id="storage-what-for" />

### Що дає власне Сховище

* **Повний контроль**: конфіденційність доступу до акаунтів Telegram, усі ключі зберігаються на вашому сервері.
* **Необмежена кількість акаунтів** (з урахуванням вашої підписки) в одному сховищі.
* **Гнучке налаштування**: обмеження на команди та події.

<a id="storage-requirements" />

### Системні вимоги

* Docker CE / Docker Compose (Linux).
* Виділений IP-адрес (або проброс TCP-порту) для з’єднання від SIP.TG.
* Модуль використовує бібліотеку TDLib, тому достатньо 1–2 ГБ RAM (але залежить від кількості акаунтів Telegram).

<a id="storage-setup" />

### Налаштування власного Сховища

<Steps>
  <Step title="Отримання сертифікатів">
    1. У боті [@siptg\_bot](https://t.me/siptg_bot?start=utm_docs) виконайте команду `/storage` і натисніть **{bot.NEW}**.
    2. Бот надішле приватний ключ і сертифікат. Збережіть їх на сервер.
  </Step>

  <Step title="Підготовка сервера">
    1. Встановіть і налаштуйте Docker / Docker Compose.
    2. Склонуйте шаблон конфігурації сховища (див. [GitHub](https://github.com/siptg/storage)).
    3. Помістіть сертифікати в відповідні директорії (як вказано в `docker-compose.yml`).
    4. За потреби відредагуйте конфігураційні файли (порт для TCP, база даних тощо).
  </Step>

  <Step title="Запуск Сховища">
    1. Виконайте в папці з конфігурацією:

       ```bash theme={null}
       docker-compose up -d
       ```
    2. Перевірте логи контейнера (`docker-compose logs`) на наявність помилок.
    3. Переконайтеся, що вказаний TCP-порт доступний ззовні.
  </Step>

  <Step title="Підключення до Сховища">
    1. Поверніться в боті [@siptg\_bot](https://t.me/siptg_bot?start=utm_docs) до `/storage`, оберіть своє сховище і натисніть **{bot.ADDRESS}**.
    2. Вкажіть зовнішню адресу та порт, за якими платформа SIP.TG зможе підключитися.
    3. Натисніть **{bot.SWITCH_ON}**, щоб перевірити доступність. Якщо все гаразд, сховище буде Online.
  </Step>
</Steps>

<a id="storage-usage" />

### Використання сховища

* Створюючи нову сесію Telegram (у розділі бота `/gateway`), обирайте ваше Сховище.
* Перенести вже створену сесію в інше сховище **неможливо**, але можна перестворити сесію без видалення SIP-підключень.

<a id="faq" />

## Поширені запитання (FAQ)

<AccordionGroup>
  <Accordion title="Що буде, якщо мій Worker (або Сховище) раптом стане недоступним?">
    Платформа SIP.TG періодично перевіряє з’єднання. Якщо сервер не відповідає більше 30 хвилин, Worker/Сховище перейде в статус “Відключено”. Усі SIP-акаунти, що працюють через цей Worker, стануть неактивними. Сховище — припинить обробляти запити. Відновити роботу можна, відновивши доступність сервера та повторно ввімкнувши модуль у боті.
  </Accordion>

  <Accordion title="Чи можна використовувати лише Worker без власного Сховища (або навпаки)?">
    Так. Ці модулі незалежні. Ви можете зберігати сесії Telegram у хмарі SIP.TG, але обробляти SIP-потоки на своєму Worker. Або навпаки: використовувати публічні Worker-сервери, але зберігати сесії у себе.
  </Accordion>

  <Accordion title="Наскільки трудомістко обслуговувати ці модулі?">
    Основне завдання — підтримувати Docker-контейнери в робочому стані, оновлювати ПЗ (образ Worker/Сховища) у міру виходу нових версій, стежити за доступністю мережі. Якщо у вас немає власного DevOps-фахівця, простіше використовувати публічні ресурси SIP.TG.
  </Accordion>

  <Accordion title="Як щодо безпеки та ліцензування?">
    * Усі з’єднання між платформою SIP.TG і вашими модулями шифруються за допомогою сертифікатів.
    * За замовчуванням використовуються образи Docker на базі Ubuntu. Усі додаткові залежності попередньо встановлені.
    * Ліцензію та умови використання дивіться в репозиторіях GitHub.
  </Accordion>

  <Accordion title="Як надати іншим користувачам доступ до мого Worker?">
    Змініть режим Worker на “Публічний”. Тоді будь-який користувач SIP.TG зможе призначити собі ваш Worker. Ви також можете залишити Worker “Особистий”, але використовувати його лише деякими зі своїх SIP-акаунтів у боті [@siptg\_bot](https://t.me/siptg_bot?start=utm_docs).
  </Accordion>
</AccordionGroup>

<Warning>
  Для повноцінної роботи Worker і Сховища потрібне стабільне з’єднання з платформою SIP.TG (менеджером). Переконайтеся, що ваш сервер може звертатися до інтернету без блокувань і що порти не фільтруються брандмауером.
</Warning>
