Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
При звонке отображается карточка телефонного звонка, в которой:
Выводится информация по клиенту, по активным сделкам.
Есть возможность добавить комментарий к телефонному звонку.
Есть возможность выставить новый счет или зарегистрировать новую сделку.
Модуль автоматически регистрирует звонок в Bitrix24, для чего ищет в CRM соответствующий номеру контакт. Если контакт найден, то звонок будет привязан к найденному объекту.
При работе с телефонией, интеграция может создавать следующие сущности:
Контакт - по умолчанию создается с именем «Без имени».
Сделка - использует созданный контакт, в заголовке указывается номер телефона.
Лид - использует созданный контакт.
Если в настройках модуля включена опция «Создавать в CRM сущности, связанные со звонком (Лид / сделка / контакт)» и контакт не был найден по номеру телефона, то модуль создаст в CRM необходимые сущности.
Тип создаваемой сущности определяется режимом в настройках CRM. Существует:
Простой режим - при котором будет создаваться сделка, а не лид.
Режим повторных продаж - будет создана Сделка или Лид даже если сущность в CRM найдена. (Но не будет создаваться если есть активная сделка/лид или номер внесен в черный список crm).
«Пропущенный» - ответственным за сущность будет назначен «Ответственный за пропущенные звонки» (настройка выполняет в модуле, на стороне MikoPBX). Если настройка не заполнена, то ответственным будет назначен один из участников звонка (первый, у кого зазвонил телефон).
«Вызов отвечен» - ответственным будет назначен тот, кто ответил на вызов.
Если вызов поступает на очередь (группу сотрудников), то ответственный в сущности по умолчанию будет установлен тот, на кого вызов был направлен первее. После поднятия трубки или завершения звонка ответственный будет скорректирован. Это поведение связано с особенности работы API Bitrix 24
История звонков доступна в разделе «Телефония» - «Детализация звонков»
История отображается в карте сделки:
Также, она отображается в карточке клиента и в списке "Мои дела":
Запись разговоров - это в первую очередь функция телефонной станции.
Если есть необходимость загружать телефонные разговоры на портал Bitrix24, то необходимо в настройках модуля MikoPBX включить соответствующий флаг:
Портал Bitrix24 позволяет прослушать телефонный разговор непосредственно в браузере или скачать файл записи разговора на ПК сотрудника.
После настройки портала появится возможность совершать звонки из карточки клиента:
Всюду, где имеется гиперссылка-телефон или «кнопка с трубкой» будет возможность совершить исходящий звонок средствами АТС MikoPBX.
Для настройки функции необходимо в интерфейсе модуля активировать опцию «Использовать перехват на ответственного», а так же настроить параметр «Длительность попытки звонка на ответственного».
Обязательно опишите входящий маршрут. При поступлении входящего звонка система проверит наличие ответственного в Bitrix24:
Если ответственный определен, то вызов будет направлен на него.
Если ответственный не определен, или дозвониться до него не вышло, то вызов будет направлен по описанному входящему маршруту.
Подробную информацию по отчетам вы можете найти здесь. Это официальный блог Bitrix24.
В разделе CRM доступен ряд стандартных отчетов.
«Отчет по делам» - «Выполнено менеджерами»:
Есть возможность добавить свой произвольный отчет по делам. Звонки сотрудника «CRM» - «Еще» - «Мои дела»:
Есть возможность прослушать и скачать запись разговора из карточки «Дела»:
«CRM» - «Еще» - «Мои дела» - «Сводный отчет по делам»:
In develop stage
Модуль «Телефонная книга» в MikoPBX — удобный инструмент для организации и управления контактами внутри системы. Он позволяет хранить контактные данные всех необходимых абонентов в одном месте, обеспечивая легкий доступ к информации для пользователей и сотрудников.
Перейдите в раздел "Модули" -> "Маркетплейс модулей"
Вкладка "Маркетплейс". Используя строку поиска или вручную найдите модуль "Телефонная книга"
Произведите установку модуля:
Для работы с модулем, перейдите в его настройки во вкладке "Установленные модули" :
В интерфейсе модуля вы можете добавить новый контакт, используя кнопку "Добавить новую запись"
Далее вы можете ввести имя абонента, а так же телефон, привязанный к нему.
Существует опция импорта (загрузки) записей из Excel. Для этого вам необходимо соблюдать формат по следующим пунктам:
Файл должен быть в формате .xls или .xlsx.
В файле должны присутствовать два столбца:
CallerID — имя абонента (например: Иван Иванов).
Номер телефона — в формате +7(926)123-45-67.
Каждая строка представляет собой запись телефонной книги.
Убедитесь, что данные в файле корректны, перед тем как его загрузить.
Далее, в интерфейсе модуля, перейдите в раздел "Импорт из Excel":
Выберите Excel файл для загрузки данных.
Нажмите "Импортировать".
Модуль предназначен для учета телефонных звонков в CRM Bitrix.
При поступлении вызова будет отображена карточка звонка. Если клиент учтен в CRM Bitrix24, будет отображено имя клиента или сделки.
Наше приложение в маркетплейс Bitrix 24.
Отображение карточки клиента при звонке
Загрузка истории звонков в Bitrix24
Загрузка записей разговоров
Возможность позвонить из Bitrix24
Перехват на ответственного
При входе на портал в правом нижнем углу отобразиться панель:
Есть возможность скрыть панель целиком.
Есть возможность скрыть только список сотрудников.
При поступлении входящего звонка, если панель управления скрыта, то она автоматически будет отображена.
Чтобы открыть спрятанную панель, необходимо отвести мышь к правой границе окна браузера.
Если панель не отображается, то вероятно есть проблемы с доступом к MikoPBX.
В поле ввода можно ввести произвольный номер телефона, после нажатия ENTER будет произведен набор номера. Если вводится произвольный текст, то список сотрудников будет отфильтрован.
Обратите внимание: Когда после фильтрации остается только один элемент, нажатие ENTER повлечет набор номера оставшегося в списке сотрудника, даже если набранный номер введен не полностью.
Совершить вызов возможно из списка контактов:
Из карточки контакта / компании:
Из карточки сделки:
Порядок совершения звонка:
Набор номера в панели управления.
Сотруднику поступает вызов от АТС.
На телефоне / софтфоне отображается набранный номер.
Сотрудник отвечает на звонок.
Вызов направляется клиенту.
Пример исходящего звонка неизвестному клиенту:
Кнопка «Открыть карточку клиента» - при нажатии будет произведен поиск клиента по номеру телефона, если клиент найден, будет открыта его карточка, если клиент не найден, будет создан новый «контакт»
Кнопка «Завершить вызов» - телефонный звонок будет завершен. Завершается именно канал текущего сотрудника. В случае исходящего звонка канал клиента тоже будет завершен.
Как только клиент поднимет трубку, начнется отсчет длительности разговора.
Пример входящего звонка от известного клиента:
Кнопка «Открыть карточку клиента» - будет открыта карточка контакта
Кнопка «Завершить вызов» - телефонный звонок будет завершен. Завершается именно канал текущего сотрудника. Клиент будет направлен далее согласно маршрутизации АТС (если маршрут предусмотрен).
Как только клиент поднимет трубку, начнется отсчет длительности разговора.
Пример отображения входящего звонка в карточке, после завершения вызова:
В данном примере отображается «кому: MikoPBX» так как внутренний номер «205» никому не назначен в настройка модуля amoCRM.
В случае «неразобранного» нет технической возможности отображать расширенную информацию по звонку «| dst: 205 | Основная воронка | did: 3345 |». Это ограничение API amoCRM пока нет возможности обойти.
Порядок работы:
Поступает входящий звонок
В панели управления отображается активная линия
Двойным кликом по сотруднику в списке запускаем перенаправление вызова
Вызов на наш телефон завершается
Звонок поступает другому сотруднику
Порядок работы:
Поступает входящий звонок
В панели управления отображается активная линия
Отвечаем звонящему на телефонном аппарате
Двойным кликом по сотруднику в списке запускаем перенаправление вызова
Звонок поступает другому сотруднику
Объясняем ситуацию сотруднику, клиент ожидает на линии
Завершаем вызов
Клиент будет соединен с сотрудником
Помимо этого, возможен другой вариант:
Поступает входящий звонок
В панели управления отображается активная линия
Отвечаем звонящему на телефонном аппарате
Двойным кликом по сотруднику в списке запускаем перенаправление вызова
Звонок поступает другому сотруднику
Объясняем ситуацию сотруднику, клиент ожидает на линии
Сотрудник отказывается и завершает вызов
Клиент будет соединен с нами снова
Записи разговоров могут быть прикреплены к:
Сделке
Карточка контакта
Карточка компании
Перехват звонка возможен только в том случае, если на вызов не ответил другой сотрудник.
В карточке контакта или компании есть возможность указать ответственного:
При поступлении входящего звонка есть возможность ответственному перехватить вызов. Порядок действий:
Поступает входящий вызов в компанию.
Вызов направляется в соответствии с правилами, описанными в разделе «».
Параллельно сотруднику поступает входящий звонок, отображается номер клиента.
Если сотрудник ответил, произойдет попытка перехвата.
Все входящие вызовы с неизвестных номеров, пропущенные и на которые ответил сотрудник попадут в «Неразобранное». Автоматически будет создан контакт.
В разделе «Аналитика» - «Звонки» отображается информация по телефонным звонкам, есть возможность проанализировать выборку и сформировать отчет:
Есть возможность скачать и прослушать записи разговоров:
Разработан, чтобы упростить прочее получения SSL сертификата для HTTPS и SIP TLS.
Системные требования:
Для АТС должен быть выделен домен, к примеру sip.test.ru
Web интерфейс АТС HTTP
должен быть доступен из интернет на порту80
В общих настройках отключите использование опции «Редирект на HTTPS
», Сервер Lets encrypt для проверки ресурса обращается по http
к вашей АТС.
Для получения сертификата необходимо:
Перейдите во вкладку "Модули
" -> "Управление модулями
"
Установите и включите модуль "Lets Encrypt Get ssl
"
Перейдите в интерфейс модуля
Заполните поле "Имя домена
"
Установите флаг "Обновлять сертификат автоматически
"
Выполните действие «Получить / Обновить SSL сертификат
»:
Интеграция портала Bitrix24 с телефонией возможна толко при наличии активной подписки Bitrix24.
Наше приложение в маркетплейс Bitrix 24.
Выполните установку модуля «MikoPBX»:
Перейдите в раздел «Телефония» - «Настройки телефонии» - «Пользователи телефонии»:
Назначьте сотрудникам внутренние номера:
Назначенные внутренние номера должны существовать в MikoPBX!
Перейдите в раздел «Телефония» - «Настройки телефонии» - «Общие настройки»:
В поле «Номер для исходящего звонка по умолчанию» - укажите приложение «Интеграция с MIKOPBX» (следует выполнить после аутентификации модуля со стороны MikoPBX)
С АТС MikoPBX обязательно должны быть доступны:
Ваш портал Bitrix24 по порту 443
Сайт oauth.bitrix.info по порту 443
Пример проверки подключения из консоли:
openssl s_client -connect oauth.bitrix.info:443
Перейдите в меню «Модули» → «Управление модулями»
Установите модуль «Интеграция с CRM Bitrix24», перейдите в интерфейс модуля.
Заполните поле «Адрес портала Bitrix24», без указания протокола https, используя пример:
miko.bitrix24.ru
Сохраните настройки и включите модуль.
Выполните подключение к порталу:
Если на портал была установлена «Бесплатная» версия модуля и портал находится в РФ, то модуль будет работать только если выбран регион «Весь остальной мир» Для сотрудников следует указать телефонные номера. Именно по ним происходит сопоставление сотрудника из интерфейса MikoPBX с сотрудником из Битрикс 24.
На вкладке «Основные настройки»:
«Создавать в CRM сущности, связанные со звонком (Лид / сделка / контакт)» - если отключить эту опцию, то карточка звонка будет открываться, а Лид / Сделка созданы не будут.
«Для каких звонков создавать лид» - можно ограничить создание лида, к примеру только для входящих.
«Использовать перехват на ответственного» - при поступлении входящего звонка будет выполнен запрос в bitrix, если найден ответственный, то вызов сразу будет направлен на него.
«Длительность попытки звонка на ответственного» - как долго пытаться дозвониться до ответственного сотрудника.
На вкладке «Прочее» следует настроить:
«Очередь для обработки входящего звонка» - при запросе обратного звонка с сайта вызов сперва поступит на эту очередь. Как только сотрудник ответит, вызов будет направлен клиенту.
«Ответственный за пропущенные звонки» - если на вызов никто не ответил, то для всех созданных сущностей будет назначен указанный ответственный.
«Загружать на портал историю звонков» - если опцию отключить, то будет работать только функция click2call и обратный звонок с сайта.
«Загружать файлы записей разговоров на портал в фоновом процессе» - Раньше загрузка файлов работала одним запросом. В теле запроса отправлялись закодированные данные. Теперь, если включить опцию, сперва от портала получаем ссылку, куда следует загрузить файл. Загрузка файла производится в отдельном процессе. Этот вариант архитектурно более правильный. Из минусов - есть не решенная проблема с прослушиванием такого файла в браузере Safari, в Google Chrome работает исправно.
Модуль позволяет отключить интеграцию и настроить открытие карточки звонка для конкретных сотрудников:
Варианты открытия карточки клиента:
Не открывать.
Открывать при звонке - будет открыта сразу, при поступлении звонка от клиента.
Открывать при ответе - карточка будет открыта при ответе на вызов от клиента.
Сквозная аналитика Bitrix24 доступна только на тарифах Команда и Компания. Подробнее можно почитать в статье. Функционал Внешних линий будет доступен в версии модуля 1.51+.
Сквозная аналитика помогает определить, какие рекламные каналы приносят результат и стоят потраченных денег.
Для начала на АТС необходимо описать все номера телефонов компании на вкладке «Внешние линии».
Вкл/Выкл
- позволяет отключить интеграцию для входящих звонков на линию
Название линии
- короткое наименование линии, используется только внутри MikoPBX
Номер телефона
- указываем номер, Как он будет отображаться в Bitrix
Псевдонимы номера (DID)
- логин или номер телефона без кодов города и страны. Допускается описание нескольких DID для одной линии. Подсмотреть значение DID можно в истории звонков (водящие):
Синхронизация внешних линий с порталом произойдет после перезапуска модуля.
В детализации входящего звонка b24 будет видно, на какой номер позвонил клиент:
Если необходимо отключить интеграцию для конкретных номеров компании, то их следует описать как "Внешние линии" и снять "Вкл/Выкл
".
На сайт Bitrix24 возможно добавить форму заказа обратного звонка.
В MikoPBX, в настройках модуля на вкладке Прочее
заполните поле Очередь для обработки обратного звонка
:
В Bitrix24 перейдите в раздел Телефония
- CRM-Форма на сайт
:
Создайте новую форму.
В поле Номер телефона
укажите Приложение: Интеграция с бесплатной АТС MikoPBX
.
Поле «Текст, который будет произнесен ответственному перед началом звонка
» можно оставить пустым, оно не используется.
Используйте кнопку «Открыть сайт
» для теста формы обратного звонка.
В ряде случаев может возникнуть необходимость отключить «Перехват на ответственного» для конкретного провайдера.
В карточке провайдера «Расширенные настройки» — «Дополнительные параметры» следует прописать следующий код:
[endpoint]
set_var=B24_DISABLE_INTERCEPTION=1
Если при попытке подключения модуля внутри MikoPBX - АТС пишет Отключен от Bitrix24 проверьте:
Адрес портала указан без указания протокола и ресурса, например mikopbxb24.ru
Проверьте из консоли АТС ping до вашего портала(в примере ping mikopbxb24.ru). Инструкция по доступу к консоли.
На текущий момент не во всех регионах интеграция «Bitrix 24 и MikoPBX» доступна в маркетплэйс. В этом случае есть возможность ручной настройки.
Создадим на АТС «Локальное приложение»:
Перейдите в раздел «Разработчикам», на вкладку «Готовые сценарии» -> «Другое»:
Выберите пункт «Локальное приложение»:
Скачайте файл и упакуйте его в zip в архив.
Заполните настройки локального приложения:
Выполните действие «Сохранить»
Теперь приложение будет доступно в разделе «Маркет» - «Разработчикам» - «Интеграции»
Открыв настройки локального приложения вы сможете скопировать значения «client_id» и «client_secret». Они потребуются при настройке MikoPBX
В разделе «Маркет», станет доступен пункт «MikoPBX интеграция», в этом разделе можно получить новый «Refresh token»
В настройка модуля, на стороне АТС, в поле «Регион» выберите вариант «REST API»
Станут доступны два дополнительных поля «client_id» и «client_secret»
Заполните поля согласно настройкам «Локального приложения» на вашем портале Bitrix24
Инструкция по настройке модуля монитринга Zabbix для MikoPBX
Zabbix агент предназначен для мониторинга производительности и наличия сетевых устройств, серверов, виртуальных машин и приложений. Агент собирает различные метрики, включая использование CPU, объем занятой оперативной памяти, состояние жестких дисков, сетевую активность и множество других параметров. Эти данные отправляются на сервер Zabbix, который анализирует полученную информацию, позволяя администраторам своевременно обнаруживать возможные проблемы и отклонения в работе мониторинга систем. Установка агента Zabbix предусматривает гибкую настройку и поддерживает работу на множестве операционных систем, обеспечивая широкие возможности для комплексного мониторинга в разнообразных IT.
В MikoPBX реализован модуль, который позволяет установить и настроить работу Zabbix агента, а также получить доступ к специализированным метрикам телефонии.
После установки модуля необходимо внести необходимые правки в конфигурационный модуль агента, который доступен в форме модуля. Обычно достаточно указать адрес сервера Zabbix и порт, на котором агент будет принимать входящие запросы от сервера.
После этого необходимо в настройках Firewall указать подсеть в которой находится Zabbix сервер, или лучше создать отдельную подсеть с адресом Zabbix сервера и разрешить для этой подсети подключения к агенту.
Помимо разрешения основного порта для мониторинга системы, необходимо добавить доступ к AMI и AJAM интерфейсу, а также доступ к ICMP протоколу.
После этих настроек небходимо создать служебного AMI пользователя с правами system и command и разрешить доступ только для подсети Zabbix агента.
После этого можно переходить к настройке хоста на сервере Zabbix.
Скачиваем и импортируем стандартный шаблон мониторинга Asterisk - ссылка.
Дополнительно скачиваем и импортируем шаблон MikoPBX - ссылка.
На стороне Zabbix сервера создаем хост и привязываем его у имортированным ранее шаблонам.
Прописываем IP адрес MikoPBX, логин и проль AMI пользователя и адрес подключения к AJAM интерфейсу.
Через некоторое время после сохранения параметров, проверяем соединение и набор данных которые можно получать с сервера.
Отображение истории звонков
Отбор истории звонков по группам / по сотрудникам
Выгрузка истории звонков за период в Excel
Отображение линии, через которую прошел вызов
Выполните установку модуля в разделе .
Включите модуль и перейдите к его странице
Для работы с модулем потребуется лицензия на хост, где модуль будет использоваться.
Приобрести лицензию можно в .
Купон имеет вид MIKOUPD-00000-00000-00000-00000, его следует активировать в разделе "Маркетплейс модулей" - "Управление лицензией"
Панель отборов
Позволяет установить период выборки
Отображает количество вызов за выбранный период
Позволяет кликом по кнопкам "Входящие" / "Пропущенные" / "Исходящие" быстро отфильтровать вызовы по типу звонка
В поле "Найти..." можно описать произвольный номер телефона для отбора
Кнопка выгрузки в Excel - позволит скачать данные, соответствующие текущему отбору
Кнопка "Сохранить" - позволяет сохранить текущий отбор, при повторном открытии страницы фильтры восстановятся
Позволяет установить отбор по группе сотрудников, из модуля "Упрвление телефонными группами"
Позволяет установить отбор по сотрудникам
Строка звонка - содержит общую информацию по вызову, направление, дата начала, кто и кому звонил.
Статус звонка может быть одним из:
"ok" - успешный вызов
"перевод" - переадресация вызова
"пропущен" - входящий вызов, не отвеченный
"недозвон" - исходящий вызов, не отвеченный
"перезвонил клиент" - успешный входящий вызов клиента после пропущенного
"перезвонили" - успешный исходящий вызов клиенту после пропущенного
"приложение" - вызов на "Приложение Dialplan или на служебный номер"
При клике по номеру в колонке "Кто" и "Кому" будет установлен отбор по номеру в поле "Найти..."
Расшифровка звонка - отображает более подробную информацию:
Кто пропустил вызов
Кто ответил на вызов
Ссылку на прослушивание и скачивание разговора
Длительность ожидания
Длительность разговора
Этот модуль предназначен для двусторонней синхронизации учетных данных сотрудников с MikoPBX. Источником данных служит сервер Active Directory или LDAP.
При создании нового сотрудника в домене он будет автоматически загружен в MikoPBX, с присвоением свободного внутреннего номера. Информация о номере будет передана обратно в домен и записана в карточке сотрудника. То же самое произойдет с мобильным телефоном и фотографией. Настройка, как всегда, максимально простая.
Для каждого сервера AD/LDAP, вы можете указать настройки синхронизации, фильтры по отделам или создать произвольный фильтр для сложной логики фильтрации.
Далее необходимо корректно настроить атрибуты для синхронизации учетных записей.
Во время первой синхронизации, система сопоставит уже существующие в MikoPBX учетные записи с полученными из домена данными. Для поиска соответствий используются следующие поля:
Адрес электронной почты
Имя сотрудника
Мобильный телефон
Внутренний телефон
Перед включением автоматической синхронизации рекомендуется проверить правильность указанных атрибутов, нажав на кнопку Выполнить запрос.
Если все параметры указаны верно, вы увидите список сотрудников с атрибутами из домена. Это безопасный запрос и не приведет к изменениям в системе.
После тестирования можно запустить ручную или автоматическую синхронизацию данных.
В колонках "статус" и "обновлен" можно отследить текущий процесс синхронизации.
При удалении или отключении сотрудника в домене он останется активным в MikoPBX, но будет перемещен в специальную таблицу “Отключенные в LDAP/AD сотрудники”. Его учетная запись будет сохранена до момента ее ручного удаления администратором MikoPBX. Это обусловлено тем, что возможны различные сложные сценарии маршрутизации вызовов, при которых невозможно просто удалить сотрудника из маршрута, не заменив его другим.
При синхронизации возможны конфликты, когда системе не удается создать или изменить данные сотрудника в MikoPBX или на стороне сервера LDAP/AD. Все проблемы синхронизации фиксируются модулем и записываются в специальную таблицу “Конфликты синхронизации”.
Администратор MikoPBX может вручную решить возникшую проблему и очистить таблицу с конфликтами в модуле.
В модуле предусмотрена возможность синхронизации SIP паролей с контроллером домена. Это может быть удобно для автоматической настройки IP-телефонов в компании по данным из домена.
Для включения синхронизации необходимо создать специальный атрибут на стороне контроллера домена и указать этот атрибут в поле “Пароль SIP” в настройке сопоставления атрибутов для синхронизации. Учтите, что пароль будет храниться в открытом виде. При включенной двусторонней синхронизации значение пароля из MikoPBX будет передаваться в домен и наоборот, в зависимости от даты последнего изменения.
Обратите внимание: пароль SIP не является паролем доменной учетной записи; это отдельное значение.
Модуль позволяет создать группы доступа с определенными правами, и назначить эти права сотрудникам компании.
Так же модуль позволяет организовать авторизацию в MikoPBX используя внешние сервис LDAP/AD или просто назначить каждому сотруднику логин и проль.
Так же модуль добавляет новую вкладку на странице настройки сотрудника, что позволяет быстро назначить группу доступа или изменить пароль прямо его карточке.
Рассмотрим несколько самых распространенных сценариев.
Создаем группу доступа и включаем переключатель Группа без ограничений доступа.
Выбираем домашнюю страницу, на которую будут попадать администраторы после авторизации.
Переходим на вкладку Пользователи группы доступа и выбираем сотрудников, которым будет разрешено администрировать систему.
Создаем группу доступа, без полных прав.
Переходим на вкладку настройка прав и выбираем только необходимые права для открытия и модификации существующих IVR меню.
Назначаем группу сотрудникам, которые будут администрировать IVR меню и сохраняем группу доступа.
Создаем группу доступа, выключаем полные права и выбираем доступ только к разделу с историей вызовов.
При выборе этого раздела, в настройках модуля появляется дополнительная вкладка, которая позволяет настроить права на просмотр и прослушивание записей разговоров в разрезе сотрудников.
Можно выбрать разные варианты фильтрации и сотрудников, чьи записи можно будет прослушивать пользователям этой группы доступа.
Модуль позводляет авторизовать пользователей как простой парой логин и пароль, так и с помощью внешнего сервера авторизации LDAP.
Для настройки связи с сервером, перейдите на вкладку Настройка доменной авторизации.
Укажите параметры доступа к вашему домену, при необходимости укажите парамтеры подразделения и фильтра к учетным записям пользователей. Перед сохранением можно выполнить проверку данных подключения и получить список пользователей с сервера.
В конце можно ввести учетные данные пользователя для проверки авторизации и сохранить настройки модуля.
Бесплатный модуль позволяет создавать и управлять резервными копиями. Позволяет импортировать данные сотрудников из csv файла.
Перейдите во вкладку "Модули" -> "Управление модулями"
Убедитесь, что Модуль резервного копирования установлен и включен
Перейдите в настройки модуля
Выполните действие «Создать архивную копию»
Необходимо выбрать, какие именно данные будут включены в архивную копию АТС, т.е. какие данные необходимо сохранить:
Настройки PBX - все настройки конфигурации MikoPBX, которые были выполнены в web-интерфейсе в соответствующих разделах.
История разговоров - сохранение истории базы данных cdr.db (расположение: /storage/usbdisk1/mikopbx/astlogs/asterisk/cdr.db). Данная настройка не предполагает сохранение самих записей разговоров, т.е. будет сохранена вся информация на вкладке Телефония → История вызовов (Документация) без возможности прослушивания / скачивания файлов записей.
Файлы с записями разговоров - сохранение всех записей разговоров в формате *.mp3.
Звуковые файлы - сохранение звуковых файлов, которые были загружены на АТС в разделе Телефония → Звуковые файлы (Документация).
Выполните действие «Создать архивную копию».
После завершения операции списке резервных копий появится новые данные:
В списке резервных копий есть возможность выполнить следующие действия:
Восстановить из резервной копии
Скачать архив данных
Удалить резервную копию
В списке резервных копий выберите нужную и выполните действие "Восстановить из резервной копии"
Выберите категории данных к восстановлению
Выполните действие «Восстановить из архива»
Будет запущен процесс восстановления, после завершения АТС будет перезагружена
Прогресс восстановления данных из архива будет отображен на текущей странице
Рекомендуем восстанавливать данные в два этапа:
Восстановление «Звуковые файлы» + «Настройки PBX» + «История разговоров»
Восстановление «Файлы записи разговоров» - наиболее длительный этап
Режим FTP - будет создан ZIP архив. Для данного режима необходимо наличие ftp-сервера.
Режим SFTP - создается tar архив. Для данного режима достаточно только самой MikoPBX.
Режим WebDav - создается tar архив.
Наиболее быстрые варианты резервного копирования по расписанию - SFTP и WebDav. FTP морально устарел, со временем возможность использования этого протокола будет исключена из модуля резервного копирования
Нажмите на кнопку "Расписание архивации" для настройки автоматического резервного копирования.
Для включения резервного копирования активируйте переключатель «Архивация по расписанию"
Заполните необходимые данные:
Адрес сервера - IP-адрес MikoPBX, или адрес SFTP \ FTP сервера
Порт - для режима SFTP порт 22, при отключении флага «Режим SFTP» активируется режим FTP - порт 21
Имя пользователя - имя пользователя для авторизации на сервере
Пароль - пароль для авторизации на сервере
Путь на сервере - директория, в которую будут сохраняться резервные копии. Рекомендуемый каталог на MikoPBX: /storage/usbdisk1/mikopbx/backup/
При использовании WebDav каталог из поля «Путь на сервере» необходимо создать заранее, вручную.
Расписание - укажите в какой день выполнять резервное копирование и время, когда запустить операцию
Оставлять последние Х версий - укажите, какое количество версий бекапа должно обязательно сохраняться
Настройки PBX - все настройки конфигурации MikoPBX, которые были выполнены в web-интерфейсе в соответствующих разделах
История разговоров - сохранение истории базы данных cdr.db (расположение: /storage/usbdisk1/mikopbx/astlogs/asterisk/cdr.db). Данная настройка не предполагает сохранение самих записей разговоров, т.е. будет сохранена вся информация на вкладке Телефония → История вызовов без возможности прослушивания / скачивания файлов записей
Файлы с записями разговоров - сохранение всех записей разговоров в формате *.mp3
Звуковые файлы - сохранение звуковых файлов, которые были загружены на АТС в разделе Телефония → Звуковые файлы
Нажмите "Сохранить"
Бывает полезно, когда требуется загрузить / создать большое количество сотрудников.
Кликните по кнопке «Загрузить файл для восстановления
»
Выберите файл в кодировке UTF-8
, с расширением *.csv
Дождитесь завершения операции
Формат файла должен быть следующим:
extension;username;password;mobile-phone;ringtime;enable-forward;authUsername
"extension
" - обязательное поле, внутренний номер пользователя
"username
" - обязательное поле, имя пользователя, допускает кириллица
"password
" - обязательное поле, пароль для SIP аккаунта
"mobile-phone
" - мобильный номер телефона, можно оставить пустым
"ringtime
" - как долго звонить на внутренний номер, можно оставить пустым
"enable-forward
" - включить адресацию на мобильный после «ringtime
», задается числом: "1
" - Истина, "0
" - ложь, можно оставить пустым
"authUsername
" - имя для авторизации, для случаев, когда оно не соответствует внутреннему номеру (username и authusername будут приравнены этому параметру, а не значению внутреннего номера), можно оставить пустым
Пример файла:
701;Alex;password701@;89066643322;10;1
702;Петр (Sales);password@_702
105;Курчатов Петр;hdfsf_dLVz;;;;admin
Функция позволяет загрузить из FreePBX все Extensions, которые будут преобразованы в «Сотрудников».
Установите в FreePBX модуль Bulk Handler
Перейдите в интерфейс модуля «Admin» - «Bulk Handler»
Экспортируйте данные «Extensions»
Откройте в MikoPBX интерфейс модуля резервного копирования
Кликните по кнопке «Загрузить файл для восстановления
»
Выберите файл, с расширением *.csv
Дождитесь завершения операции
Это статья, описывающая процесс быстрой настройки телефонов в MikoPBX. В ней объясняется, как автоматически конфигурировать устройства для обеспечения их готовности к использованию в системе.
Autoprovisioning Plug & Play (PnP), эту технологию поддерживают многие производители — Yealink, Snom. Телефоны этих производителей могут быть настроен текущей версией модуля.
Основные достоинства автоматической настройки телефонов:
Облегчает первичную настройку — не требуется заходить в web интерфейс каждого устройства. Достаточно на сервере автонастройки указать соответствие MAC адреса устройства и аккаунта.
Упрощает поддержку — действительно становится легче при необходимости изменить настройки устройства. Управляем настройками опять же на сервере
Возможно свести настройку к набору star-кода: «*911*<SIP_ACC>» — в ряде случаев этой функции просто цены нет. Не каждый офисный работник сможет настроить IP телефон, а вот набрать комбинацию цифр задача простая.
Модуль может работать только в локальной сети
В сети должны быть разрешены multicast запросы на IP 224.0.1.75
На текущий момент в качестве адреса регистрации можно задать только одно общее значение для всех устройств
На АТС должны быть открыты порты web интерфейса (HTTP) и SIP - 80 и 5060
Работа по HTTPS пока не поддерживается
В сети не должно быть запущено других PnP серверов. Устройство будет получать настройки от первого ответившего сервера
Yealink T19(P)
Yealink T28(P)
Yealink W52
Yealink WP530
Snom D120
Snom D785
Snom D735
Snom D715
Snom D385
Snom D335
Fanvil X5U
Fanvil X3SP
Fanvil X1SP
Мы обязательно будем расширять линейку поддерживаемых телефонов.
Перейдите в интерфейс «Модули» -> «Маркетплейс модулей».
Установите модуль «Модуль автоматической настройки телефонов».
Запускайте модуль только после завершения его настройки.
Перейдите к его интерфейсу:
Шаблон внутреннего номера - укажите добавочный номер для возможности настройки телефона star-кодом.
Адрес сервера для регистрации телефонов - ip или имя сервера MikoPBX. По этому адресу будут подключаться телефоны к АТС.
Черный список MAC адресов телефонов - перечислите MAC телефонов, которые НЕ требуется настраивать Это список описывает исключения. Черный список имеет более высокий приоритет, чем белый.
Белый список MAC адресов телефонов - ограничьте настраиваемые телефоны только перечисленными.
Если Черный и Белый списки не настроены, то модуль будет пытаться настроить все телефоны.
В поле «Дополнительные параметры» допускается описать произвольные настройки для конфигурационных файлов телефонов.
Сервер по умолчанию генерирует следующий конфигурационный файл:
#!version:1.0.0.1
account.1.enable = 1
account.1.label = Askozia (204)
account.1.display_name = 204
account.1.auth_name = 204
account.1.user_name = 204
account.1.password = 1c9709222690713dd
account.1.sip_server_host = 172.16.156.223
account.1.sip_server_port = 5060
account.1.transport = 0
account.1.codec.1.enable = 1
account.1.codec.1.payload_type = PCMU
account.1.codec.1.priority = 1
account.1.codec.1.rtpmap = 0
account.1.cid_source = 4
voice_mail.number.1 = *001
phone_setting.lcd_logo.mode=0
auto_provision.dhcp_option.enable = 0
features.intercom.allow = 1
features.intercom.mute = 0
features.intercom.tone = 1
features.intercom.barge = 1
features.dtmf.transfer = ##
features.dtmf.replace_tran = 1
features.headset_prior = 1
features.intercom.allow = 1
К нему можно добавить в конец произвольный набор параметров. Для этого необходимо в поле «Дополнительные параметры» описать секцию «[yealink]». Пример:
[yealink]
features.headset_prior = 1
features.intercom.allow = 1
Каждый новый параметр выделяется отдельной строкой.
Ссылка на сайт поддержки Yealink
Пример файла конфигурации:
<?xml version="1.0" encoding="utf-8"?>
<settings>
<time_24_format perm="R">off</time_24_format>
<phone-settings>
<user_pname idx="1" perm="RW">203</user_pname>
<user_name idx="1" perm="RW">203</user_name>
<user_realname idx="1" perm="RW">Smirnova Irina Aleksandrovna</user_realname>
<user_pass idx="1" perm="RW">3256157a99f176eb959ef9c1fdd947f0</user_pass>
<user_host idx="1" perm="RW">172.16.32.225</user_host>
<user_srtp idx="1" perm="RW">off</user_srtp>
<user_mailbox idx="1" perm="RW">*001</user_mailbox>
<user_dp_str idx="1" perm="RW">!([^#]%2b)#!sip:\1@\d!d</user_dp_str>
<contact_source_sip_priority idx="INDEX" perm="PERMISSIONFLAG">PAI RPID FROM</contact_source_sip_priority>
<answer_after_policy perm="RW">idle</answer_after_policy>
</phone-settings>
</settings>
Файл имеет более сложную структуру, чем у Yealink.
Для добавления данных в узел «<settings>» следует описать секцию «[snom]»:
[snom]
<tbook>
<item context="line1" type="none" index="0">
<name>Adrian</name>
<number>42965</number>
</item>
<item context="active" type="colleagues" index="1">
<name>Roland</name>
<number>16424</number>
</item>
</tbook>
<dialplan>
<template match="0" timeout="4" scheme="sip" user="phone" rewrite="" />
<template match="00" timeout="0" scheme="sip" user="phone" rewrite="" />
<template match="011............" timeout="4" scheme="sip" user="phone" rewrite="" />
<template match="*79" timeout="0" scheme="sip" user="phone" rewrite="" />
<template match="*234" timeout="0" scheme="sip" user="phone" rewrite="" />
</dialplan>
Для добавления данных в узел «<phone-settings>» следует описать секцию «[snom-phone-settings]»:
[snom-phone-settings]
<firmware_status perm="R"></<firmware_status>
<update_policy perm="R">auto_update</update_policy>
<firmware_interval perm="R">2880 </firmware_interval>
Документация доступна на сайте wiki.snom.com
Пример файла конфигурации:
<<VOIP CONFIG FILE>>Version:2.0002
PNP Enable :0
<SIP CONFIG MODULE>
--SIP Line List-- :
SIP1 Enable Reg :1
SIP1 Phone Number :203
SIP1 Display Name :Smirnova Irina Aleksandrovna
SIP1 Sip Name :203
SIP1 Register Addr :172.16.156.223
SIP1 Register Port :5060
SIP1 Register User :203
SIP1 Register Pswd :3256157a99f176eb959ef9c1fdd947f0
SIP1 MWI Num :*001
SIP1 Proxy User :
SIP1 Proxy Pswd :
SIP1 Proxy Addr :
<TELE CONFIG MODULE>
SIP1 Caller Id Type:4
P1 Enable Intercom :1
P1 Intercom Mute :0
P1 Intercom Tone :1
P1 Intercom Barge :1
<AUTOUPDATE CONFIG MODULE>
PNP Enable :1
PNP IP :224.0.1.75
PNP Port :5060
PNP Transport :0
PNP Interval :1
<<END OF FILE>>
Принцип кастомизации схож. В поле «Дополнительные параметры» есть возможность описать следующие секции:
[fanvil] - добавляет конфигурацию в начало файла
[fanvil-sip] - добавляет строки конфигурации в конец раздела «<SIP CONFIG MODULE>»
[fanvil-tele] - добавляет строки конфигурации в конец раздела «<TELE CONFIG MODULE>»
[fanvil-autoupdate] - добавляет строки конфигурации в «<TELE CONFIG MODULE>»
Первым делом, убедитесь, что Вы используете актуальную версию прошивки телефона.
Перейдите в web интерефс устройства
Перейдите в меню «Настройки» - «Конфигурация»:
Включите уровень журнала на максимальное значение 6.
Перезагрузите устройство.
Выполните действие «Экспорт».
В скачанном логе следует обратить внимание на строки вида:
LIBD[528]: HTTP<5+notice> URL :
LIBD[528]: HTTP<3+error > Connect Error
AUTP[528]: AUTP<3+error > http to file failed, code = -3, msg = Connect Failed, cout = 0
Видно, что телефон попытался скачать конфигурационный файл с 172.16.32.105:56080. В моем случае это был сервер со старой Askozia 4.
Корректный ответ должен выглядеть следующим образом:
Oct 17 11:26:58 LIBD[548]: HTTP<5+notice> URL : ...
Oct 17 11:26:58 LIBD[548]: DCMN<6+info > Connecting 172.16.32.225:80
Oct 17 11:26:58 LIBD[548]: DCMN<6+info > Connecting IP = 172.16.32.225, Port = 80
Oct 17 11:26:58 LIBD[548]: HTTP<6+info > Request Line: GET /pbxcore/api/modules/ModuleAutoprovision/...
Oct 17 11:26:58 LIBD[548]: HTTP<6+info > Host: 172.16.32.225
Oct 17 11:26:58 LIBD[548]: HTTP<6+info > User-Agent: Yealink SIP-T28P 2.72.14.2 00:15:65:18:72:eb
Oct 17 11:26:58 LIBD[548]: HTTP<6+info > process response
Oct 17 11:26:58 LIBD[548]: HTTP<5+notice> response code: 200
Oct 17 11:26:58 LIBD[548]: HTTP<6+info > Content-Length: 961
Oct 17 11:26:58 LIBD[548]: HTTP<5+notice> response process finish!
Oct 17 11:26:58 LIBD[548]: HTTP<5+notice> recv : 961 bytes
Oct 17 11:26:58 AUTP[548]: AUTP<6+info > download file success!!
Данный модуль предназначен для обработки пропущенных звонков. При обнаружении пропущенного будет сформирована задача. Как только появляется свободный сотрудник, ему поступит телефонный звонок. Как только он поднимет трубку, будет выполнена попытка звонка клиенту.
Давайте рассмотрим работу модуля на конкретных примерах:
Клиент пытался дозвониться в компанию, однако ему никто не ответил. Причины могут быть разные, например такие как:
Вызов оборвался
Клиент положил трубку
Модуль сформирует задачу callback. Как только освободится сотрудник, ему будет направлен вызов.
Есть возможность воспроизвести сотруднику уведомление, звуковой файл можно указать в настройках модуля Оповещение "Внимание, будет произведено соединение с клиентом". После уведомления сотрудника, будет выполнен звонок клиенту.
Сотрудников, которые будут обрабатывать звонки по пропущенным следует добавить в единую «Очередь вызовов» и указать ее в настройках модуля в поле Номер очереди или сотрудника для обработки звонка.
Не каждый вызов, на который ответил клиент, можно считать успешным. В модуле предусмотрена настройка критерия «Длительность отвеченного звонка, который считаем успешным»:
Если вызов был неудачным, то есть возможность настроить количество повторных звонков:
«На какое количество секунд откладывать вызов» - время между попытками
«Количество попыток звонка»
Слишком старые вызовы, могут быть уже не актуальными, есть возможность настройки «времени жизни» для пропущенного. Вызовы и задачи, старше, чем «Количество секунд для анализа пропущенных в истории», не будут обработаны.
Вариант, когда клиент устал ждать и «ставит задачу на callback» также возможен. В настройках модуля укажите звуковой файл в поле Оповещение "Заявка на обратный звонок принята".
Как только клиент нажмет «1» и задача callback будет сформирована, клиенту будет воспроизведено оповещение. Возможность «нажать 1» будет доступна для очередей, перечисленных на вкладке «Очереди, где разрешен callback».
Так же в «Расширенных» настройках конкретной очереди можно настроить дополнительное оповещение.
Это может быть использовано например для того, чтобы предложить клиенту нажать "1" для постановки задачи на обратный звонок.
Поддержка модуля приостановлена, проблема в базовой библиотеке, пока она не будет решена, модуль не будет корректно работать. Рекомендуем использовть сервис https://www.sip.tg/
Модуль состоит из нескольких компонент:
Шлюз SIP ↔ Telegram - позволяет принимать звонки от telegram и совершать исходящие звонки через telegram. Шлюз не зависит от прочих компонент, они лишь его дополняют
Телеграм клиент - работает совместно с ботом, во время входящего звонка звонящему отправляется клавиатура для ввода добавочного номера.
Телеграм бот - служит для формирования клавиатуры и отправки тональных команд в текущий канал. Для работы необходимо предварительно получить токен через интерфейс бота «@BotFather»
При звонке в компанию клиенту будет отправлена с сообщением клавиатура для ввода добавочного номера:
После завершения звонка клавиатура будет скрыта.
После неудачного звонка из компании (клиент не ответил). Клиенту будет отправлена визитка:
Текст визитки и клавиатуры ввода добавочного можно исправить в настройках модуля:
Screenshot here!
Необходимо настроить видимость номера телефона в разделе "Конфиденциальность" , а так же разрешить Всем звонить на номер телефона в разделе "Звонки":
Создайте бота
Откройте чат с @BotFather в любом удобном клиенте Телеграм
Отправьте команду
/newbot
Введите «name» нового бота, к примеру new_keyboard_bot, имя должно быть коротким и понятным, имя увидит клиент при получении клавиатуры
Введите «username» для нового бота, к примеру newest_keyboard_bot
Отправьте боту команду
/setinline
Выберите созданного ранее бота
Отправьте команду
/mybots
Выберите созданного ранее бота
Кликните по кнопке «API Token»
Скопируйте значение «token»
Отправьте из аккаунта телеграмм вашему боту команду
/start
Напишите боту произвольное сообщение, к примеру «Привет!»
С ботом должен быть открытый диалог, если не отправить ему команду «/start», то часть функционала работать не будет.
«App api_id» и «App api_hash» - это секретные параметры, которые привязываются к вашему telegram аккаунту. Никому не сообщайте эти значения! Они необходимы для подключения к API Telegram. Подробнее можно почитать в документации.
Перейдите по ссылке https://my.telegram.org/auth
Укажите номер телефона, привязанный к telegram аккаунту
Перейдите в раздел «API development tools»
Опишите параметры нового приложения:
«App title» - заголовок приложения
«Short name» - уникальное короткое имя приложения
«URL»- произвольный адрес сайта
«Platform» - Other
«Description» - произвольное описание
Выполните действие «Create application»
Скопируйте значения «App api_id» и «App api_hash»
При восстановлении из бекапа может потребоваться повторная авторизация в telegram.
Установите дополнительный модуль «Провайдер Telegram», (см. инструкции по установке модулей в разделе Управление модулями)
Ведите значения «App api_id» и «App api_hash», полученные на предыдущем этапе, а так же Token бота, который вы получили при создании бота.
Сохраните изменения
Добавьте новый номер по кнопке «Добавить»
Запустите процесс авторизации для Шлюза, Клиента Telegram, для Бота
Авторизуйте все линии. После подключения отобразится "Линии подключены". Подключенные каналы отобразятся зеленым цветом.
В случае возникновения проблем, может потребоваться очистить служебные каталоги (с помощью SSH-клиента):
/storage/usbdisk1/mikopbx/custom_modules/ModuleTelegramProvider/db/7906660000
/storage/usbdisk1/mikopbx/custom_modules/ModuleTelegramProvider/db/madeline/7906660000
где 7906660000 - номер телефона, логин телеграмм аккаунта
Скопируйте адрес и порт из активной линии. В нашем случае это 127.0.0.1:30001
Перейдите в раздел "Провайдеры телефонии"
Добавьте нового провайдера
Введите «Название провайдера» - произвольное значение.
Укажите «Тип учетной записи» - «Аутентификация по IP адресу, без пароля».
Введите «Хост или IP адрес» - 127.0.0.1
«Расширенные настройки» - «Порт соединения SIP» - укажите порт линии, в текущем примере «30001»
«Расширенные настройки» - «Отключить использование поля fromuser»
Сохраните изменения
В разделе «Система» -> «Общие настройки» разрешите использование кодека Opus
Для настройки входящих маршрутов ознакомьтесь с документацией «Входящие маршруты»
Порядок определения callerid: Telegram может передавать следующие идентификаторы:
X-TG-Phone - номер телефона
X-TG-Username - ник пользователя
X-TG-ID - идентификатор пользователя
Некоторые идентификаторы могут быть скрыты клиентом в настройках приватности. Caller ID будет установлен исходя из этих полей, X-TG-Phone - имеет наивысший приоритет, X-TG-ID - низший.
Для настройки входящих маршрутов ознакомьтесь с документацией «Исходящие маршруты»
Обязательно добавить плюс при наборе номера! См. пример ниже.
Пример маршрута:
«Название правила» - siptg
«Номер начинается с» - 7
«Остальная часть номера состоит из указанного количества цифр» - 10
«Перед тем как начать звонок отсекаем» - 0
«цифр в начале номера, затем добавляем в начало » - символ плюс »+«
amoCRM - популярная CRM система для автоматизации учета в отделе продаж. Интеграция с телефонной системой - один из наиболее существенных элементов CRM системы, телефонные звонки - важнейший источник сделок.
Перехват звонка на ответственного
Звонок из карточки
Записи телефонных разговоров прикрепляются к карточке клиента / сделке
Панель управления вызовами
Отображение статусов абонентов АТС
Переадресация вызова на другого сотрудника двойным кликом
Вызов абонента АТС двойным кликом в панели управления вызовами
Пропущенные вызовы попадают в неразобранное
Подробное описание функций вы можете найти здесь.
Установка модуля в MikoPBX
Установка виджета в amoCRM
Выполнить авторизацию модуля MikoPBX на amoCRM
Выполнить настройку виджета в amoCRM
Инструкцию по установке amoCRM вы можете найти здесь.
АТС должна быть доступна на "белом" адресе
Адреса должен быть доступен по https протоколу, необходимо получить SSL сертификат (см. lets encrypt модуль)
Работа виджета проверена на браузерах семейства Chrome: Google Chrome, Yandex браузер
Откройте web-интерфейс MikoPBX. Перейдите в раздел «Модули» - «Маркетплейс модулей».
Установите «Модуль связи с AmoCRM»
Перейдите к редактированию настроек модуля. На вкладке «Настройка подключения» заполните поле «Адрес портала».
Сгенерируйте новый «Ключ доступа к API MikoPBX»
Выполните действие «Сохранить», далее - включите модуль.
Выполните авторизацию на портале amoCRM. Это действие выполнит установку модуля на портал.
Модуль автоматически заполнит настройка на вкладке «Создание сущностей»:
Перейдите в интерфейс портала amoCRM. Откройте amoМаркет.
Перейдите на вкладку «Установленные».
Откройте настройки виджета MikoPBX.
Укажите «Адрес сервера MikoPBX» - публичный адрес, на котором доступна АТС.
Заполните «Токен», его значение следует взять из настроек АТС «Ключ доступа к API MikoPBX».
Назначьте внутренние номера в разделе: «Пользователи АТС».
Сохраните настройки.
Откройте amoМаркет.
Перейдите по кнопке «WEB HOOKS».
Добавьте новое правило для адреса:
https://АДРЕС_АТС_MIKOPBX/pbxcore/api/amo-crm/v1/entity-update
Выберите события «контакт удален» / «сделка удалена» / «компания удалена».
Сохраните настройки.
Если возникают сложности при настройке, Вы можете обратиться к нам за помощью.
Модуль может автоматически создавать следующие сущности:
Контакт - карточка клиента
Шаблон имени нового контакта - к примеру
Новый контакт <PhoneNumber>
Параметр <PhoneNumber> будет заменен на номер телефона клиента.
Неразобранное
Сделка
«Шаблон наименования» - к примеру
Новая сделка <PhoneNumber>
«Воронка» - к ней будет отнесена сделка,
«Этап воронки» - статус сделки в воронке
«Ответственный» - «первый, кто ответил на вызов», «последний, кто ответил на вызов»
Задача - будет создана задача с крайним сроком выполнения, срок назначается в часах, относительно даты создания задачи
Наименование задачи - можно задать в виде шаблона
Перезвонить по номеру <PhoneNumber>
Ответственный по задаче - задача будет создана только в том случае, если удалось определить ответственного. Варианты: «первый, кто ответил на вызов», «последний, кто ответил на вызов», «ответственный по умолчанию»
Отвеченный входящий с неизвестного номера
Отвеченный входящий с известного номера
Отвеченный исходящий на известный номер
Отвеченный исходящий на неизвестный номер
Пропущенный с неизвестного номера
Пропущенный с известного номера
Не отвеченный исходящий на известный номер
Для каждого типа звонка можно описать свое правило создания сущностей:
Для каждого DID (номер компании, на который позвонил клиент). Можно создать уникальные правила создания сущностей.
Разграничение прав доступа к исходящим маршрутам
Установка СallerID (FROM, user) для исходящего вызова
Изоляция групп
1. Выполните установку модуля в разделе Управление модулями.
2. Включите модуль и зайдите в его настройки.
3. На основной странице модуля отображается список существующих групп. Сейчас он пустой.
3. На вкладке Cотрудники отображается список всех сотрудников и то, к какой группе они принадлежат. Сейчас они сотрудники не принадлежат ни к какой группе, потому что самих групп еще не создано.
4. Для добавления новой группы нажмите Создать группу сотрудников.
5. На вкладке Настройки группы укажите ее имя и описание. Затем нажмите Сохранить.
6. Вы перейдете на вкладку Сотрудники группы. Добавьте в группу необходимых сотрудников.
7. Перейдите на вкладку Правила исходящей маршрутизации и активируйте разрешенные маршруты.
Если все маршруты будут запрещены - то будут позволены только внутренние вызовы.
1. Создайте новую группу Только внутренние (название группы может быть любым).
2. На вкладке Сотрудники группы заполните список сотрудников.
3. На вкладке Правила исходящей маршрутизации отключите все маршруты.
Настройка выполняется аналогично примеру Разрешить сотруднику только внутренние вызовы с тем лишь отличием, что следует запретить только международные маршруты.
Для каждого сотрудника создайте отдельную группу. Укажите разрешенный маршрут.
На вкладке Правила исходящей маршрутизации укажите CallerID для каждого маршрута.
Не каждый провайдер позволяет подменить CallerID. Обычно позволяют использовать только тот номер, который принадлежит организации. Допускается следующий формат CallerID ИМЯ <ИДЕНТИФИКАТОР>:
примеры:
74952293045 <admin>
74952293045
74952293045 <74952293045>
Следует уточнить у поставщика услуг связи, какой формат заголовка FROM
(поле user
) поддерживается.
Если необходимо использовать этот функционал, то в настройках провайдера потребуется отключить использование поля fromuser
. Эта настройка также влияет на заголовок FROM
и имеет более высокий приоритет.
Подробнее о настройке функции перехвата можно почитать в документации.
Кобинация для перехвата звонка по умолчанию *8
или *8номерТелефона
При включении функции изоляции перехват вызова будет доступен только в рамках группы. Состав группы описан на вкладке "Сотрудники группы".
Функция позволяет изолировать группу сотрудников на АТС:
Сотрудники группы смогут звонить только на номера своей группы
Сотрудники из других групп, не смогут позвонить на изолированную группу
Перехват вызова (pickup) будет доступен только в рамках группы
Шаблоны номеров, относящихся к группе. Участник группы сможет звонить только на них
В шаблонах допускается использовать символ от 1 до 9 и символ X (любая цифра 1-9)
Участник группы сможет набрать Все номера, удовлетворяющие шаблону
Примеры шаблонов:
2XX - номера с 200 по 299
200001 - явно указанный внутренни номер, к примеру номер очереди
7XXXXXXXXXX - 11ти значные номера РФ
Предоставляет REST API для формирования кампаний по автоматическому набору внешних номеров
Если есть свободный сотрудник, то модуль набирает номер телефона из пула кампании
Когда клиент отвечает, выполняется соединение с внутренним номером очереди или сотрудника
Если внутренний номер занят, то вызов автоматически завершается
Для всех запросов, кроме локальных, требуется авторизация.
По умолчанию для авторизации можно использовать административный пароль web интерфейса.
Если необходимо ограничить права к настройкам АТС - то можно задействовать модуль «Управление доступом в систему».
Запрос
curl 'http://172.16.156.223/admin-cabinet/session/start' \
-X 'POST' --cookie-jar auth-cookies.txt \
-H 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' \
-H 'X-Requested-With: XMLHttpRequest' \
--data 'login=admin&password=adminpassword'
«login
» - admin, имя пользователя web интерфейса
«password
» - adminpassword, пароль пользователя web интерфейса
«172.16.156.223
» - адрес сервера MikoP
Результат:
{"success":true,"reload":false,"message":[]}
Пример выполнения запросов:
curl -b auth-cookies.txt \
'http://172.16.156.223pbxcore/api/sip/getPeersStatuses'
Позволяют организовать автоматический опрос клиента. Средствами API возможно описать перечень вопросов, связи между ними и варианты ответов.
Возможно использовать механизм генерации речи или готовые mp3 / wav файлы.
Пример cURL:
JSON='{
"name": "New polling",
"questions": [
{
"questionId": "1",
"questionText": "Добрый день, у нас есть новый товар, для заказа товара нажмите 1, не интересует - нажмите 2, для отказа от подписке нажмите 3",
"press": [
{
"key": "1",
"action": "playback",
"value": "\"Спасибо за выбор этого товара\"",
"valueOptions": "text"
},
{
"key": "3",
"action": "playback",
"value": "\"Спасибо за ваш ответ\"",
"valueOptions": "text"
}
],
"nextQuestion": ""
}
]
}';
curl -X POST -d "$JSON" http://127.0.0.1/pbxcore/api/module-dialer/v1/polling
"crmId
" - идентификатор опроса, если указан, то будет создан новый опрос с этим ID либо отредактирован существующий, если пуст, то параметр будет назначен автоматически
"name
" - наименование опроса
"questions
" - массив вопросов
"question
['
questionId
']
" - порядковый номер (идентификатор) вопроса
"question['nextQuestion']
" - идентификатор следующего вопроса
"question['questionText']
" - текст вопроса, для возможности генерации Yandex SpeechKit
"question[
'
lang
']
" - код языка для Yandex SpeechKit к примеру "ru-RU"
"question['questionFile']
" - полный путь к файлу wav, если указан, то "questionText" не используется
"press['key']
" - добавочный номер, который должен нажать клиент
"press['action']
" - действие, которое должно быть выполнено
action "playback
" - воспроизвести медиафайл, сохранить набранный номер
action "dial
" - набрать добавочный номер, завершить опрос
action "answer
" - сохранить набранный клиентом номер
"press['
valueOptions']
" - используется при "action "playback""
option "file
" - следует указать полный путь к wav файлу
option "text
" - текст для возможности генерации Yandex SpeechKit
Пример ответа на запрос:
{
"result": true,
"data": {
"id": "7",
"crmId": 7,
"name": "New polling"
},
"messages": [],
"function": "",
"processor": "",
"pid": 13416
}
Пример запроса cURL
curl 'http://127.0.0.1/pbxcore/api/module-dialer/v1/polling'
Пример ответа
{
"result": true,
"data": {
"results": [
{
"id": "8",
"crmId": "8",
"name": "New polling"
},
{
"id": "9",
"crmId": "9",
"name": "New polling"
},
{
"id": "10",
"crmId": "10",
"name": "\u041e\u043f\u0440\u043e\u0441 \u043e \u043d\u043e\u0432\u043e\u043c \u0442\u043e\u0432\u0430\u0440\u0435"
}
]
},
"messages": [],
"function": "",
"processor": "",
"pid": 28941
}
Пример запроса cURL
curl 'http://127.0.0.1/pbxcore/api/module-dialer/v1/polling/7'
где "7
" - идентификатор опроса.
Пример ответа:
{
"result": true,
"data": {
"id": "7",
"crmId": "7",
"name": "New polling",
"questions": [
{
"id": "79",
"questionText": "\u0414\u043e\u0431\u0440\u044b\u0439 \u0434\u0435\u043d\u044c, \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u0442\u043e\u0432\u0430\u0440, \u0434\u043b\u044f \u0437\u0430\u043a\u0430\u0437\u0430 \u0442\u043e\u0432\u0430\u0440\u0430 \u043d\u0430\u0436\u043c\u0438\u0442\u0435 1, \u043d\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442 2, \u0434\u043b\u044f \u043e\u0442\u043a\u0430\u0437\u0430 \u043e\u0442 \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0435 \u043d\u0430\u0436\u043c\u0438\u0442\u0435 3",
"questionFile": null,
"lang": "ru-RU",
"press": [
{
"key": "1",
"action": "playback",
"value": "\"\u0421\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0432\u044b\u0431\u043e\u0440 \u044d\u0442\u043e\u0433\u043e \u0442\u043e\u0432\u0430\u0440\u0430\"",
"valueOptions": null,
"nextQuestion": null
},
{
"key": "2",
"action": "playback",
"value": "\"\u0421\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0432\u0430\u0448 \u043e\u0442\u0432\u0435\u0442\"",
"valueOptions": null,
"nextQuestion": null
}
]
}
]
},
"messages": [],
"function": "",
"processor": "",
"pid": 16875
}
Задача позволяет описать все номера телефонов, которые следует оповестить, связать их с опросом или направить вызов на сотрудника / группу сотрудников.
JSON="{
"name": "New pollingtask",
"state": 0,
"innerNum": "9",
"innerNumType": "polling",
"maxCountChannels": 1,
"dialPrefix": "999",
"numbers": [
{
"number": "79522233446"
},
{
"number": "79522233416"
}
]
}";
curl -X POST -d "$JSON" http://127.0.0.1/pbxcore/api/module-dialer/v1/task
«name
» - наименование задачи, можно оставить пустым
«state
» - состояние / статус
0
- открыт / разрешен
1
- закрыт / завершен
2
- пауза
«id
» и «crmId
» - идентификатор обзвона, если пустой, то будет создан новый
«innerNumType
» - если «polling» - направить обзвон на «опрос»
«innerNum
» - идентификатор опроса или внутренний номер очереди / сотрудника
«maxCountChannels
» - максимальное количество допустимых одновременных звонков в рамках задачи
«dialPrefix
» - перед набором, к номеру телефона будет добавлен этот префикс. Опция позволяет выбрать нужный исходящий маршрут звонка
«numbers
» - массив номеров телефонов, которые следует опросить
Пример ответа:
{
"result": true,
"data": {
"id": "41",
"crmId": "41",
"name": "New pollingtask",
"innerNum": "9",
"innerNumType": "polling",
"maxCountChannels": 1,
"state": 0,
"dialPrefix": "999"
},
"messages": [],
"function": "",
"processor": "",
"pid": 2593
}
curl -X GET http://127.0.0.1/pbxcore/api/module-dialer/v1/task/36
где "36
" - идентификатор задачи
пример ответа:
{
"result": true,
"data": {
"id": "41",
"crmId": "41",
"name": "New pollingtask",
"innerNum": "9",
"innerNumType": "polling",
"maxCountChannels": "1",
"state": "1",
"dialPrefix": "999",
"results": [
{
"id": "132",
"taskId": "41",
"phoneId": "9522233446",
"phone": "79522233446",
"linkedId": "mikopbx-1724235065.54",
"callFile": "dialer-41-79522233446-9.call",
"result": "SUCCESS_POLLING",
"outDialState": null,
"inDialState": null,
"state": "EVENT_POLLING_END",
"verboseCallId": "[C-0000001b]",
"cause": null,
"params": "s:0:\"\";",
"changeTime": "1724235073",
"countTry": null,
"timeCallAllow": "0",
"closeTime": "1724235073"
}
],
"resultsPoling": [
{
"id": "45",
"taskId": "41",
"questionCrmId": "0",
"pollingId": "9",
"phoneId": "9522233446",
"phone": "79522233446",
"result": "1",
"exten": "1",
"changeTime": "1724235071.0536"
}
]
},
"messages": [],
"function": "",
"processor": "",
"pid": 2514
}
"results
" - результаты и статус звонка
"phoneId
" - последние 10 цифр номера клиента, префиксы удалены
"linkedId
" - идентификатор звонка, по нему можно отфильтровать историю звонков
"verboseCallId
" - идентификатор verbose лога
"changeTime
" - дата модификации записи
"result
" - результат звонка
"resultsPoling
" - результат опроса
"questionCrmId
" - идентификатор вопроса
"pollingId
" - идентификатор опроса
"phoneId
" - последние 10 цифр номера клиента, префиксы удалены
"result
" - результат ввода
"exten
" - введенный номер в тональном режиме
"changeTime
" - дата модификации записи
Расшифровка статусов (result
) звонка
«FAIL_USER_NO_ANSWER
» - До клиента дозвонились, пользователь не ответил, к примеру завершил вызов
«FAIL_USER_BUSY
» - До клиента дозвонились, пользователи заняты или не доступны
«FAIL_CLIENT_H_BEFORE_ANSWER
» - До клиента дозвонились, клиент положил трубку до ответа сотрудника (не дождался)
«FAIL_ROUTE
» - До клиента не дозвонились, нет маршрута для звонка по номеру клиента, нет провайдера на MIkoPBX
«FAIL_PROVIDER
» - До клиента не дозвонились, провайдер не доступен, не активен, ошибка регистрации
«SUCCESS_USER_H
» - Успешный звонок, трубку положил сотрудник
«SUCCESS_CLIENT_H
» - Успешный звонок, трубку положил клиент
«SUCCESS_POLLING
» - Опрос пройден успешно.
«FAIL_POLLING
» - Опрос не пройден
«SUCCESS
» - Успешный звонок
«FAIL
» - Безуспешный вызов, проблема не классифицирована
curl -X GET http://127.0.0.1/pbxcore/api/module-dialer/v1/results/{changeTime}
где "changeTime
" - timestamp, возвращает данные начиная с указанной даты
{
"result": true,
"data": {
"results": [
{
"id": "134",
"taskId": "1000000001",
"phoneId": "9522233446",
"phone": "79522233446",
"linkedId": "mikopbx-1724323615.3",
"callFile": "dialer-1000000001-79522233446-10.call",
"result": "SUCCESS_POLLING",
"outDialState": null,
"inDialState": null,
"state": "EVENT_POLLING_END",
"verboseCallId": "[C-00000003]",
"cause": null,
"params": "s:0:\"\";",
"changeTime": "1724323625",
"countTry": null,
"timeCallAllow": "0",
"closeTime": "1724323625"
},
{
"id": "135",
"taskId": "1000000002",
"phoneId": "9522233446",
"phone": "79522233446",
"linkedId": "mikopbx-1724324361.6",
"callFile": "dialer-1000000002-79522233446-10.call",
"result": "SUCCESS_POLLING",
"outDialState": null,
"inDialState": null,
"state": "EVENT_POLLING_END",
"verboseCallId": "[C-00000005]",
"cause": null,
"params": "s:0:\"\";",
"changeTime": "1724324376",
"countTry": null,
"timeCallAllow": "0",
"closeTime": "1724324376"
}
]
},
"messages": [],
"function": "",
"processor": "",
"pid": 28941
}
"results
" - результаты и статус звонка
"phoneId
" - последние 10 цифр номера клиента, префиксы удалены
"linkedId
" - идентификатор звонка, по нему можно отфильтровать историю звонков
"verboseCallId
" - идентификатор verbose лога
"changeTime
" - дата модификации записи
"result
" - результат звонка
Пример запроса cURL
curl -X GET http://127.0.0.1/pbxcore/api/module-dialer/v1/polling-results/{changeTime}
где "changeTime
" - timestamp, возвращает данные начиная с указанной даты
Пример ответа:
{
"result": true,
"data": {
"results": [
{
"id": "48",
"taskId": "1000000002",
"questionCrmId": "0",
"pollingId": "10",
"phoneId": "9522233446",
"phone": "79522233446",
"result": "3",
"exten": "3",
"changeTime": "1724324374.2487"
}
]
},
"messages": [],
"function": "",
"processor": "",
"pid": 28941
}
"results
" - результат опроса
"questionCrmId
" - идентификатор вопроса
"pollingId
" - идентификатор опроса
"phoneId
" - последние 10 цифр номера клиента, префиксы удалены
"result
" - результат ввода
"exten
" - введенный номер в тональном режиме
"changeTime
" - дата модификации записи
Рекомендованные параметры аудио файла mp3
Channels : 1
Sample Rate : 8000
Precision : 16-bit
Bit Rate : 16.0k
Sample Encoding: MPEG audio (layer I, II or III)
Пример загрузки файла на АТС средствами cURL
curl -F "[email protected]" 'http://127.0.0.1/pbxcore/api/module-dialer/v1/audio'
Имя файла "1.mp3" будет являться его идентификатором. При загрузке нового файла с прежним именем старый файл будет заменен на новый.
Пример ответа:
{
"result": true,
"data": {
"filename": "\/storage\/usbdisk1\/mikopbx\/custom_modules\/ModuleAutoDialer\/db\/audio\/474d57f8204699fbb2249f20dede5f8e.mp3"
},
"messages": [],
"function": "",
"processor": "",
"pid": 10884
}
«result
» - результат операции, булево
«filename
» - полный путь к загруженному файлу, его можно использовать при создании «опроса»
Пример загрузки файла на АТС средствами cURL
curl 'http://127.0.0.1/pbxcore/api/module-dialer/v1/audio'
Пример ответа:
{
"result": true,
"data": [
{
"id": "1",
"name": "1.mp3",
"path": "\/storage\/usbdisk1\/mikopbx\/custom_modules\/ModuleAutoDialer\/db\/audio\/474d57f8204699fbb2249f20dede5f8e.mp3"
}
],
"messages": [],
"function": "",
"processor": "",
"pid": 27195
}
Пример загрузки файла на АТС средствами cURL
curl -X DELETE 'http://127.0.0.1/pbxcore/api/module-dialer/v1/audio/1.mp3'
Пример ответа
{
"result": true,
"data": [],
"messages": [],
"function": "",
"processor": "",
"pid": 22226
}