Описание файла конфигурации (версия 3)
В данном разделе приведено описание настройки файла конфигурации для редактирования его в ручном режиме
Путь по умолчанию
Битрикс24: /etc/itgrix_bx/config.json
AmoCRM: /etc/itgrix_amo/config.json
После ручного редактирования убедитесь в валидности json файла (например, через сервис https://jsonlint.com/). Иначе модуль не будет работать.
Для применения настроек перезапустите модуль:
# systemctl restart itgrix_bx # systemctl restart itgrix_amo
либо
# service itgrix_bx stop # service itgrix_amo stop
# service itgrix_bx start # service itgrix_amo start
Для изменения настроек через веб-интерфейс (админку), перезагружаться не нужно.
Сохраняться нужно на каждой странице админки – https://<Asterisk IP>:8078/config
.
app – раздел настроек работы приложения
Сопоставление внешних номеров телефона с источниками вызова в CRM:
"trunks": {
"2723033": {
"source": "WEB",
"default_responsible_id": 1035
},
"4993508890": {
"source": "CALL",
"default_responsible_id": 0
}
}
Для корректной работы модуля необходимо указать все используемые транки. Если не указать транк, то могут возникнуть проблемы с отображением окна при входящем.
Транки можно узнать следующими способами:
в БД asterisk в таблице trunks (номера в столбце outcid);
в файле
/etc/asterisk/extensions_additional.conf
(в FreePBX extensions_additional.conf), выполнив команду:grep ^OUTCID /etc/asterisk/extensions{,_additional}.conf
Либо транки можно получить прямым запросом в CEL
select distinct exten from cel where uniqueid=linkedid and length(cid_num)>4 and eventtype='CHAN_START' and length(exten)>4;
Для каждого транка можно настраивать источнк и ответственного за транк на странице настроек /config/trunks
.
Настройка максимальной длины внутренних номеров:
"max_inner_phone_len": 4
По умолчанию это значение равно 4. Номера такой длины и менее будут считаться внутренними номерами. Эту настройку можно изменить если ваши внутренние номера длиннее 4 символов, но если номер клиента окажется в пределах этой длины, то звонок не будет зарегистрирован и обработан корректно.
asterisk – Раздел настроек подключения к Asterisk
Настройки подключения к AMI:
"host": "127.0.0.1"
"port": 5038
"login": "bx24"
"password": "bx24secret"
Настройки инициации вызова в Asterisk:
"originate": {
"caller_id": "Звонок на #TO# <#TO#>",
"channel": "SIP/#FROM#", (Вместо SIP можно указывать любой другой протокол IAX2, PJSIP)
"context": "from-internal",
"extension": "#TO#",
"priority": "1"
}
Про параметры originate в Asterisk можно прочитать здесь.
Путь до файлов с записями разговоров:
"recordings_dir": "/var/spool/asterisk/monitor"
Файлы с записями хранятся в поддиректориях согласно дате разговора:
"recordings_dir_subdirs_by_date": true
Комбинация для совершения перехвата вызова (указывается настроенная на Астериск комбинация для распознавания перехвата):
"pickup_code": *8
bitrix – раздел настроек подключения к Битрикс24
Адрес портала Битрикс24:
"host": "
https://portal.bitrix24.ru
",
Будьте внимательны: если у вас коробочный 1С-Битрикс24 с протоколом http, здесь должен быть указан http://, хотя обычно используется https:// (в том числе для облачных порталов).
Адрес для click-to-call:
"c2c_address" : "1.1.1.1"
Адрес для работы функции click-to-call из облачного Битрикс24, внешнего по отношению к сети компании. Нужен внешний (!) IP-адрес компании.
Адрес для получения записей:
"recording_address" : "
192.168.0.1
"
Адрес, необходимый для формирования ссылки на получение записи разговора в деле. Рекомендуем указывать внутренний адрес сервера с модулем.
Протокол и порт добавляются автоматически.
ID пользователя портала Битрикс24, назначенного ответственным за пропущенные звонки с неизвестных номеров и за новые лиды:
"default_user_id": 1
Использование внешних линий при регистрации звонков в Битрикс24:"use_external_lines": true
Использование c2c-сервера:
"use_c2c": true
Создавать сущности (лиды/контакты) для входящих/исходящих разговоров:
"create_entity_for_incoming": true,
"create_entity_for_outgoing": true,
true – лиды/контакты создаваться будут, false – лиды/контакты создаваться не будут Параметры создания сущности могут быть #кастомизированы.
Создание задачи по пропущенному:
"create_task_for_unanswered": false,
true – при пропущенном звонке будет создаваться задача. Параметры могут быть кастомизированы (см. раздел #task creation params). false – задача создаваться не будет.
Логика регистрации пропущенного
"unanswered_responsible_type": 0
0 – пропущенный регистрируется на ответственного за сущность; 1 – пропущенный регистрируется на пользователя из последнего разговора (у кого звонил аппарат); 2 – пропущенный регистрируется на “пользователя по умолчанию”.
Префиксы:
"prefixes": [
"7",
"8",
"+7"
]
Загружать файлы записей разговора в CRM или они будут прослушиваться с локального сервера (по ссылке):
"store_records_in_crm": true
true – записи будут выгружаться в Битрикс. false – в Битриксе будут только ссылки на записи.
У нас реализовано 2 способа прослушивания разговоров на портале:
1) Выгрузка записей при создании дела. При этом варианте запись отдаем в Битрикс, указывая к какому делу она принадлежит. Минусы этого способа – все пользователи портала смогут прослушивать все записи, тратится место на портале.
Важно: перед отправкой файла его нужно сконвертировать в mp3. Как это сделать, можно прочитать в #Статье базы данных.
2) К делу прикрепляем плеер, который получает запись на стороне Asterisk.
Есть нюанс: для случаев когда сервер с записями находится за NAT, ссылка на получение аудиозаписи будет указана либо на внешний адрес, либо на внутренний. Соответственно запись будет доступна либо тем, кто запрашивает ее извне, либо только тем, кто находится в одной сети с сервером.
Если необходимо прослушивание записей извне, то необходимо открыть порт 8077 на маршрутизаторе, и в переменной Адрес для локальных сервисов “address_int”
указать внешний IP.
Разрешённые пользователи (только в бесплатном режиме):
"fallback_users": [
12,
34
]
В этот список нужно указать id пользователей, с которыми будет работать модуль. Звонки остальных пользователей будут игнорироваться.
customizer – раздел настроек кастомизаций
Включение кастомизатора:
"is_enabled": true
Путь до скрипта кастомизации (в этом файле возможно переопределять настройки приложения):
"program_path": "/opt/itgrix_bx/customizer.php"
У файла кастомизатора должны быть права на исполнение. Их можно добавить командой:
chmod +x /opt/itgrix_bx/customizer.php
При стандартной процедуре установки это делается автоматически.
Таймаут исполнения кастомизаций (мс, рекомендуемое значение 500):
"execution_timeout_msec": 500
Включение дополнительных возможностей кастомизации (методы, начиная с версии 3.0.7):
"methods": {
"process_final_params": false,
"process_registration_params": false,
"process_task_creation_params": false,
"customize_activity": false,
"customize_entity": false
}
Кастомизации:
"process_final_params"
– параметров завершения звонка,
"process_registration_params"
– параметров регистрации разговора,
"process_task_creation_params"
– задачи после пропущенного звонка,
"customize_activity"
– дела после завершения звонка,
"customize_entity"
– сущности (лида, контакта), после завершения звонка.
Подробнее про кастомизации можно узнать в разделе Полезные кастомизации.
database – раздел подключения к MySQL
Параметры подключения к MySQL:
"database": "asteriskcdrdb",
"host": "127.0.0.1",
"login": "freepbxuser"
"password": "mysqlsecret",
"port": 3306,
Названия таблиц и полей в MySQL (для типовых случаев оставляем значения по умолчанию):
"column_name_aliases": {
"cdr_calldate": "calldate",
"cdr_cnum": "cnum",
"cdr_recordingfile": "recordingfile",
"cdr_src": "src",
"cdr_uniqueid": "uniqueid",
"cel_channame": "channame",
"cel_cid_num": "cid_num",
"cel_eventtime": "eventtime",
"cel_eventtype": "eventtype",
"cel_exten": "exten",
"cel_id": "id",
"cel_linkedid": "linkedid",
"cel_uniqueid": "uniqueid"
}
"table_name_aliases": {
"cdr": "cdr",
"cel": "cel"
}
В большинстве конфигураций поля в MySQL выглядят именно так.
При необходимости проверить можно SQL-запросом: describe *имя_таблицы*
.
server – Настройки ВЕБ-сервера
Адрес и порт, на которых запускается WEB-сервер (по умолчанию адрес – 0.0.0.0, порт – 8077):
"host": "0.0.0.0"
"port": "8077"
Логин и пароль для доступа в админку:
"login": "admin"
"password": "123"
Last updated