> For the complete documentation index, see [llms.txt](https://docs.mikopbx.com/mikopbx/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.mikopbx.com/mikopbx/modules/miko/softfon-mikotalk.md).

# Софтфон MikoTalk

Модуль предоставляет необходимый API для подключения софтфона MikoTalk к MikoPBX: push-уведомления, история звонков, контакты и инструменты супервизора.

Модуль **Softphone Backend** превращает iPhone сотрудника в полноценный софтфон АТС: звонки по Wi-Fi и мобильному интернету, входящие вызовы через push-уведомление — как обычный звонок, даже если приложение закрыто.

Для настройки софтфона достаточно отсканировать QR-код или перейти по ссылке автонастройки.

## Возможности <a href="#features" id="features"></a>

| Возможность             | Описание                                                                                                                                                                                                                       |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Push-звонки             | Оповещения о входящих звонках поступят, даже если приложение закрыто или устройство «спит»                                                                                                                                     |
| История звонков         | Пользователь приложения MikoTalk видит всю историю звонков с учётом ограничений прав доступа ([инструкции по настройке прав](#access)). Запись разговора можно прослушать прямо из истории звонков                             |
| Контакты                | Имя клиента может быть определено по данным оператора связи, если он передаёт эту информацию, или по данным 1С — для этого можно подключить модуль [«Панели телефонии 4.0»](https://docs.telefon1c.ru/v4/get-started/mikopbx/) |
| Статусы сотрудников     | Кто свободен, кто разговаривает. Очереди вызовов видны всем                                                                                                                                                                    |
| Перевод и перехват      | Слепой и сопровождаемый перевод звонка, перехват входящего звонка коллеги                                                                                                                                                      |
| Инструменты супервизора | Подслушивание, подсказка сотруднику, подключение к разговору, наблюдение за группами                                                                                                                                           |
| Пропущенные вызовы      | Непринятые звонки отмечаются в приложении отдельным счётчиком                                                                                                                                                                  |

## Установка <a href="#install" id="install"></a>

Установите модуль **WebRTC Softphone Backend** из [маркетплейса модулей](/mikopbx/manual/modules/pbx-extension-modules.md#marketpleis-modulei) MikoPBX.

После установки откройте настройки модуля: **«Модули» → «WebRTC Softphone Backend»**. Для работы требуется лицензия — см. [Требования и лицензирование](#requirements).

## Требования и лицензирование <a href="#requirements" id="requirements"></a>

* MikoPBX не ниже версии **2026.1.223**.
* Лицензия выдаётся **на сотрудника**: все устройства одного сотрудника занимают одну лицензию.

{% hint style="info" %}
Модуль устанавливается из маркетплейса. При первой установке автоматически активируется **пробная лицензия** — можно проверить работу софтфона до покупки. О регистрации и продлении лицензий читайте в разделе [Регистрация в маркетплейсе модулей](/mikopbx/manual/modules/licensing.md).
{% endhint %}

### Системные требования <a href="#system-requirements" id="system-requirements"></a>

Для звонков из мобильного интернета АТС должна быть доступна извне: **публичный статический IP-адрес** либо проброс портов с внешнего IP/домена на АТС (1:1 NAT). Должны быть открыты и проброшены:

| Порт                                                   | Протокол  | Назначение                                                                                                                                                          |
| ------------------------------------------------------ | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Внешний порт API (по умолчанию **8988**)               | TCP       | Подключение приложения: авторизация, ссылка автонастройки, история, статусы. Порт задаётся в настройках модуля — см. [Настройка внешнего сервера](#external-server) |
| **3478** (STUN/TURN, встроенный coturn)                | UDP и TCP | Обход NAT: помогает приложению определить свой внешний адрес и построить маршрут медиа-трафика до АТС                                                               |
| Диапазон RTP-портов АТС (по умолчанию **10000–12000**) | UDP       | Голосовой трафик звонков. Диапазон настраивается в общих настройках сети MikoPBX                                                                                    |

Кроме того, в настройках сетевого экрана самой АТС (**«Система» → «Сеть и Firewall» → «Firewall»**) включите службу **Softphone RTP** для профиля **«Интернет»** — или, как минимум, для **«Доверенных сетей»**, если сотрудники звонят только из офисной сети. Без этого голосовой трафик будет блокироваться встроенным firewall АТС.

<figure><img src="https://3704471835-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MPK4TuzRBnP7rt8htho-887967055%2Fuploads%2FMsLtev1dtFvBSQsWFV0G%2Fsoftphone-firewall.png?alt=media" alt=""><figcaption><p>Служба Softphone RTP в настройках сетевого экрана АТС</p></figcaption></figure>

Для защищённого соединения (HTTPS/WSS) используйте модуль [Let's Encrypt](/mikopbx/modules/miko/module-get-ssl-lets-encrypt.md) — он выпустит доверенный SSL-сертификат. Сертификат можно получить и на IP-адрес, доменное имя не обязательно.

## Подключение клиентов <a href="#clients" id="clients"></a>

### Ссылка автонастройки <a href="#provision" id="provision"></a>

Приложение подключается по ссылке автонастройки. Откройте настройки модуля, вкладку **«Настройка устройств»**:

1. Выберите внутренний номер сотрудника.
2. Укажите срок действия ссылки: 10 минут, 1 час, 5 часов или 1 день.
3. При необходимости включите **«Одноразовая ссылка»** — ссылка перестанет работать после первого использования.
4. Нажмите **«Создать»** — модуль покажет QR-код и саму ссылку.

Ссылку можно передать любым удобным способом, QR-код — отсканировать камерой iPhone. Приложение скачает настройки и попросит подтвердить вход.

<figure><img src="https://3704471835-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MPK4TuzRBnP7rt8htho-887967055%2Fuploads%2FfC5Ih3xrYOkRFn786EY2%2Fsoftphone-provision.png?alt=media" alt=""><figcaption><p>Вкладка «Настройка устройств»</p></figcaption></figure>

На этой же вкладке расположена таблица сотрудников: поиск по имени или номеру, отправка письма с QR-кодом одному сотруднику или выбранным (**«Отправить выбранным»**, до 100 за раз). Письмо уходит на адрес электронной почты, указанный в карточке сотрудника.

{% hint style="info" %}
Для отправки параметров подключения по email предварительно настройте почтовый сервер АТС: **«Система» → «Почта и уведомления»**. Инструкция — в разделе [Почта и уведомления](/mikopbx/manual/system/mail-settings.md).
{% endhint %}

### Установка MikoTalk <a href="#ios" id="ios"></a>

1. Установите приложение [MikoTalk из App Store](https://apps.apple.com/si/app/mikotalk/id6759347414).
2. Откройте письмо со ссылкой автонастройки на iPhone или отсканируйте QR-код со страницы модуля.
3. Разрешите уведомления — без них не будут приходить входящие звонки.

### Сессии сотрудника <a href="#sessions" id="sessions"></a>

В настройках модуля для каждого сотрудника показаны его активные сессии и время последней активности. Кнопка **«Завершить все сессии сотрудника»** принудительно разлогинивает все его устройства и освобождает лицензию — используется, например, при утере телефона.

## Настройка модуля <a href="#settings" id="settings"></a>

<figure><img src="https://3704471835-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MPK4TuzRBnP7rt8htho-887967055%2Fuploads%2FrznytlEmmuKWAk50XhoG%2Fsoftphone-settings.png?alt=media" alt=""><figcaption><p>Вкладка «Настройки»</p></figcaption></figure>

### Внешний сервер <a href="#external-server" id="external-server"></a>

Параметры, по которым приложение обращается к АТС из интернета:

| Поле           | Назначение                                                                                                                                      |
| -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| **Хост**       | Доменное имя или внешний IP-адрес АТС. По умолчанию определяется автоматически                                                                  |
| **Порт**       | Внешний порт web-интерфейса, если АТС публикуется не на стандартном порту                                                                       |
| **Соединение** | Обычное или защищённое (HTTPS). Значения используются при генерации QR-кодов сразу, ещё до сохранения                                           |
| **URI**        | Адрес API с секретным URL-префиксом. Кнопка обновления генерирует новый префикс — все ранее выданные ссылки автонастройки перестают действовать |

{% hint style="warning" %}
После смены URL-префикса или реквизитов внешнего сервера сотрудникам нужно подключиться заново по новой ссылке автонастройки.
{% endhint %}

### Источники данных <a href="#data-sources" id="data-sources"></a>

История звонков и список пользователей всегда берутся из этой АТС. Единственный внешний источник — контакты:

| Источник     | Варианты                                                                                              |
| ------------ | ----------------------------------------------------------------------------------------------------- |
| **Контакты** | Модуль [«Панель телефонии 4.0 для 1С»](https://docs.telefon1c.ru/v4/get-started/mikopbx/) или эта АТС |

Источник контактов доступен, только если «Панель телефонии 4.0» установлена и включена. Рядом с ним отображается индикатор доступности; при недоступности модуля данные о контактах берутся из этой АТС.

### Сети WebRTC (ICE-кандидаты) <a href="#ice" id="ice"></a>

Раздел определяет, по какому сетевому маршруту пойдёт звук разговора. При установке звонка АТС сообщает приложению список своих адресов (ICE-кандидатов) — по одному на каждый сетевой интерфейс, — и клиент выбирает из них достижимый. Если в списке окажется недостижимый адрес (например, адрес VPN-туннеля), клиент может выбрать именно его: звонок «соединится», но звука не будет.

Таблица показывает интерфейсы АТС: имя, сеть и тип — **LAN** (локальная сеть), **Публичный** (внешний адрес) или **VPN**. Отмеченная галочка разрешает предлагать сеть клиентам, снятая — скрывает её из списка.

{% hint style="info" %}
VPN-туннели по умолчанию отключайте: их адреса недостижимы для сотрудников из интернета и мешают выбору правильного маршрута. Если звук пропал после подключения VPN-модуля — первым делом снимите галочку с VPN-интерфейса здесь.
{% endhint %}

### Панель состояния <a href="#health" id="health"></a>

Вверху страницы настроек — индикаторы компонентов: **nginx**, **push-server** (доставка push-уведомлений), **STUN** (локальный coturn и внешний STUN из настроек АТС), **встроенный сервис статусов**, SSL-сертификат. Если звонки не проходят или push не приходит — начните диагностику с этой панели: она показывает, какой компонент недоступен и почему.

## Права доступа и супервизоры <a href="#access" id="access"></a>

<figure><img src="https://3704471835-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MPK4TuzRBnP7rt8htho-887967055%2Fuploads%2FXCn1QKrbeTUdRrFF2MHh%2Fsoftphone-access.png?alt=media" alt=""><figcaption><p>Вкладка «Права доступа»</p></figcaption></figure>

### Базовые права <a href="#access-basic" id="access-basic"></a>

Без настройки групп каждый сотрудник видит собственную историю звонков и свой статус. Остальные сотрудники в списке не отображаются; очереди вызовов видны всем.

### Группы доступа <a href="#access-groups" id="access-groups"></a>

Группа доступа объединяет сотрудников и задаёт их права внутри группы:

| Право                                      | Описание                                                            |
| ------------------------------------------ | ------------------------------------------------------------------- |
| Просмотр статусов сотрудников своей группы | Участники видят друг друга в списке и текущие статусы               |
| Просмотр истории звонков своей группы      | Доступны звонки, в которых участвовал хотя бы один сотрудник группы |
| Перехват звонков внутри своей группы       | Можно принять входящий звонок, поступивший коллеге                  |
| Просмотр активных разговоров своей группы  | Видны активные звонки участников и стороны разговора                |

<figure><img src="https://3704471835-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MPK4TuzRBnP7rt8htho-887967055%2Fuploads%2FrIyiuR6qj3sNjToOKwrR%2Fsoftphone-access-edit.png?alt=media" alt=""><figcaption><p>Редактирование группы доступа</p></figcaption></figure>

Выбранные права автоматически получают все участники группы.

### Супервизоры <a href="#supervisors" id="supervisors"></a>

Супервизор — сотрудник с расширенными правами над своей и **контролируемыми группами** (перечень задаётся при настройке). Помимо наблюдения супервизору доступны действия над звонками:

<figure><img src="https://3704471835-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MPK4TuzRBnP7rt8htho-887967055%2Fuploads%2FFEmAiSHe4L36WQkvKUr4%2Fsoftphone-supervisor.png?alt=media" alt=""><figcaption><p>Вкладка «Супервизор» — расширенные права на подчинённые группы</p></figcaption></figure>

| Право                                | Описание                                                                        |
| ------------------------------------ | ------------------------------------------------------------------------------- |
| Перехват звонка                      | Принять входящий звонок сотрудника группы                                       |
| Подслушивание разговора              | Слушать разговор незаметно для участников                                       |
| Подсказка сотруднику                 | Говорить с сотрудником во время разговора; его собеседник супервизора не слышит |
| Подключение к разговору              | Присоединиться к разговору, супервизора слышат обе стороны                      |
| Прослушивание записей разговоров     | Доступ к записям сотрудников групп                                              |
| Просмотр участников активного звонка | Кто с кем разговаривает в группах                                               |

Права супервизора настраиваются на вкладке **«Права доступа»**: назначьте супервизора, выберите контролируемые группы и нужные разрешения.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

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

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.mikopbx.com/mikopbx/modules/miko/softfon-mikotalk.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
