Кастомизация системных файлов

Описание возможностей раздела "Кастомизация системных файлов"

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

С его помощью можно:

  • Редактировать конфигурационные файлы: вносить изменения в существующие файлы или добавлять новые параметры.

  • Переопределять стандартные настройки: изменять значения по умолчанию для определенных функций или модулей.

  • Добавлять собственные скрипты или модули: расширять функциональность системы путем интеграции пользовательских решений.

Он находится в Система -> Кастомизация системных файлов:

Раздел "Кастомизация системных файлов"

Важно отметить, что неправильное изменение системных файлов может привести к нестабильной работе или сбоям системы. Поэтому рекомендуется создавать резервные копии перед внесением изменений и тщательно проверять корректность настроек.

Мы рекомендуем использовать возможности данного раздела только опытным администраторам Asterisk. В MikoPBX есть возможность из web-интерфейса изменять следующие конфигурационные файлы:

Наименование файла

Описание

asterisk.conf

Общие (глобальные) настройки Asterisk. В файле конфигурации asterisk.conf Вы определяете следующее: -Местоположение, права доступа и владельца сокета, которые используется для подключения удаленной консоли управления сервером. Местоположение различных директорий, используемых сервером Asterisk для определения местоположения файлов конфигурации, библиотек, скриптов и место, где будут создаваться лог фалы. Параметры командной строки запуска сервера, используемые по умолчанию.

cel.conf

Лог событий канала. В отличии от CDR, сохраняет все события имевшие место в канале.

extensions.conf

План набора (dialplan) Asterisk. В нем определяется обработка и маршрутизация входящих и исходящих вызовов. Этот файл управляет поведением всех соединений, проходящих через Вашу АТС.

features.conf

В файле назначаются пользовательские коды и опции абонентских функций Asterisk, такие как: перевод вызова (transfer); перехват вызова (pickup); запись по требованию (record on demand); таймауты набора и переадресации (digit timeout); паркинг (park) и др.

http.conf

Встроенный http сервер Asterisk

iax.conf

В файле Вы описываете ваши соединения по протоколу IAX.

indications.conf

Национализация тональных сигналов

logger.conf

Настройка логов Asterisk. В данном файле настраивается логирование событий Asterisk в файлы, консоль и syslog linux. Для применения настроек выполните команду «logger reload» в консоли (CLI) Asterisk.

manager.conf

Настройка интерфейса AMI (Asterisk Manager Interface)

modules.conf

Параметры загрузки модулей Asterisk.

musiconhold.conf

Параметры музыки на удержание в IVR

queues.conf

Очередь входящих вызовов Asterisk. Подробное описание стратегии вызовов. Penalty, timeout, member и все доступные параметры.

rtp.conf

Глобальные настройки RTP - медиа-портов и протокола

sip.conf

Файл отвечает за настройку внутренних и внешних каналов SIP в Asterisk.

voicemail.conf

Настройки уведомлений по E-mail

jail.local

Настройки Fail2ban

msmtp.conf

Настройки SMTP-клиента

Для редактирования конфигурационного файла воспользуйтесь кнопкой:

Перед Вами будет открыта форма редактирования конфигурационного файла:

Меню кастомизации системного файла /acl.conf (пример)

Выберите один из четырех возможных вариантов редактирования:

  • «Не менять» - не позволяет вносить изменения в файл, только чтение файла.

  • «Добавлять в конец файла» - в конец выбранного конфигурационного файла будут добавлены (рекомендуемый).

  • «Заменять полностью» - все Ваши изменения переопределят конфигурационный файл.

  • Режим "Script" - читайте далее.

Кастомизация системных файлов скриптом

Существуют сценарии, когда нужно выполнить более сложные модификации системных файлов, чем простое добавление текста в конец конфигурационного файла. Например, нужно выполнить переопределение параметров PJSIP учетных записей, но хочется сохранить возможность настройки системы через веб интерфейс.

Реализован новый подход к кастомизации. Можно описать bash скрипт, который будет выполняться каждый раз после того, как система сформирует конфигурационный файл. В итоге интегратор сможет делать очень тонкие изменения конфигурационных файлов без разработки дополнительных модулей.

Например, мы хотим поменять значение max_contacts у всех сотрудников, кроме одного.

Кастомизация файлов "скриптом"

sip.conf

Добавить параметры к существующей секции возможно используя конструкцию (+):

[general](+)
allowtransfer=yes

Описать новую секцию можно в произвольной форме, единственное, не следует допускать повторения имен секций: Пример:

[user2_pingtel]
type=friend
username=user2_pingtel
secret=blah
host=dynamic
qualify=1000 ; Рассматриваем клиента как неработающего,
; если ответ от него идет более 1 сек.
callgroup=1,3-4 ; Клиент является членом групп вызовов: 1, 3 и 4
pickupgroup=1,3-4 ; Мы можем совершать "pick-up" вызовов, нажатием *8,
; для вызовов из групп 1, 3 и 4
defaultip=192.168.0.60
disallow=all
allow=ulaw
allow=alaw
allow=g729

extensions.conf

Существует возможность перехватить выполнения dialplan. Для этого необходимо описать custom контексты. На текущий момент можно перехватить выполнения в следующих контекстах:

  • internal-originate-custom - контекст используется при звонках из панели телефонии для 1С

  • <ID-ПРОВАЙДЕРА>-incoming-custom - контекст предназначен для обработки входящих вызовов через провайдера

  • <ID-ПРОВАЙДЕРА>-outgoing-custom - контекст предназначен для обработки исходящих вызовов через провайдера

  • all_peers-custom - контекст используется при прямом исходящем звонке с телефона

  • outgoing-custom - контекст используется при наборе внешнего номера, ДО выбора исходящего маршрута

  • add-trim-prefix-clid-custom - этот контекст используется при обработке входящих вызовов, лучшим образом подходит для нормализации входящего номера телефона, добавить / отсечь префикс

  • internal-users-custom - в этом контексте обрабатываются вызовы на внутренние номера

  • public-direct-dial-custom - контекст обработки входящих вызовов БЕЗ авторизации

Пример контекста:

[outgoing-custom]
exten => _X!,1,NoOp(--- hangup - ${CHANNEL} ---)
	same => n,return

Обязательно следует в конце вызывать метод «return».

Некоторые примеры использования custom-контекстов:

Last updated

Was this helpful?