FreePBX 13 Extensions - Внутренние номера

Настройка внутренних номеров FreePBX - это совокупность свойств диалплана и канала вызова устройства. Диалплан определяет набираемый номер. Канал - технологию (SIP, IAX, DAHDI…) для вызова устройства и его id. Набираемый номер и идентификатор канала не обязательно должны совпадать. Extensions может указывать, как на устройство зарегистрированное в Asterisk, так и на номер за его пределами.

Оперируя понятиями linux, можно сравнить extensions с "мягкой ссылкой", которая указывает на файл в системе или в сети.

Сперва выберите технологию, которая будет использована для конфигурации номера:

freepbx13-extensions

Типы Екстеншенов:

  • Custom Extensions - Экстеншен неопределенной технологии, как правило используется для назначения внешнего номера, например, на дружественной АТС в сети. Технология (например: IAX2/iaxtrunk/<num>) задается параметром Dial, в настройках екстеншена.
  • DAHDI Extensions - Номер устройства DAHDI, например платы FXS или устройства TDM over IP типа Asteroid.
  • IAX2 Extensions - Номер подключаемый по протоколу Inter Asterisk Exchange (IAX).
  • PjSIP Extensions - SIP аккаунт с использованием драйвера res_pjsip.
  • chan_SIP - SIP аккаунт с использованием драйвера chan_sip.

После создания аккаунта по технологии chan_sip или res_pjsip, вы можете, после, изменить используемый драйвер в настройках екстеншена. FreePBX сгенерирует новый конфиг в соответствии с требованиями драйвера.

  • Virtial Extension - В отличии от Custom Extensions, не имеет опции Dial вообще. Можно использовать в качестве контейнера, каких-либо свойств, например виртуального факса или голосового почтового ящика, без привязки явного устройства.

Какая бы технология не использовалась, все екстеншены имеют ряд основных параметров, общих для всех, что хорошо видно на примере Virtual Extension:

Параметры общие для всех типов екстеншенов

General

- Add Extension

freepbx13-basic-extensions назначьте:

  • User Extension - используется для вызова екстеншена
  • Display Name - будет использовано в качестве CALLERID(name)
  • Outbound CallerID - используется в качестве CallerId для внешних вызовов, если это разрешено настройками исходящей маршрутизации
- User Manager Settings

freepbx13-extensions-user-manager User Management модуль управления пользователями FreePBX. Пользователь FreePBX (не путайте с администраторами, хотя этот пользователь может быть и администратором) назначается для доступа к User Control Panel, назначения виртуального факса для екстеншена и других очень полезных возможностей интерфейса FreePBX.
При создании екстеншена, вы можете не беспокоится о этих настройках. Если в дальнейшем понадобится что-то изменить, сделайте это через соответствующий модуль.

Advanced

-Assigned DID/CID

freepbx13-extensions-did-cid

DID или Direct Inward Dialing - прямой входящий набор. По сути дополнительное расширение диалплана, сопоставленное данному екстеншену, которое будет добавлено в Inbound Routes.

  • DID description - описание для DID
  • Add Inbound DID - номер прямого входящего набора.
  • Add Inbound CID - CallerID вызывающего абонента, если задано, DID будет действовать только для звонков с этого номера.

Если вы назначите данные параметры, в модуле Inbound Routes появится соответствующее правило:

Если вы назначите данные параметры, в модуле Inbound Routes появится соответствующее правило:

freepbx13-extensions-did-cid-inbound-routes


Вы можете задать столько DID для одного екстеншена, сколько вам требуется. Назначенные маршруты отобразятся в настройках екстешена:

freepbx13-extensions-did-cid-inbound-routes-list

- Edit Extensions

freepbx13-edit-extensions

  • CID Num Alias - Псевдоним CID. Если не задано, для внутренних вызовов в качестве CALLERID(num) екстеншена используется его номер. Если задать здесь другое значение, то будет использоваться оно. Здесь можно задать номер Ринг группы или очереди, например, чтобы пользователи перенабирали не конкретный номер, а группу телефонов тех. поддержки. Не используется для внешних вызовов.
  • SIP Alias - если хотите использовать прямой (direct) sip набор, здесь можно задать псевдоним, для вызова данного екстеншена.
- Extension Options

freepbx13-extension-options

  • Asterisk Dial Options - опции команды Asterisk Dial для внутренних исходящих вызовов с данного екстеншена. По умолчанию глобальные дефолтные значения заданные в Advanced Settings. Задайте override значения, если требуется. Подробнее о опциях команды Dial
  • Ring Time - Таймаут вызова екстеншена. По умолчанию дефолтное значение из Advanced Settings
  • Ringer Volume Override - Переназначение громкости (только Sangoma Phones)
  • Call Forward Ring Time - Время вызова в секундах при Call Forward, Call Forward Busy, по истечению которого вызов будет перенаправлен в голосовую почту или - Optional Destinations. Если ни то, ни другое не задано, будет звонить до упора.
  • Outbound Concurrency Limit - кол-во одновременных вызовов через данный пир.
  • Call Waiting - Включить службу ожидания вызова. Если включено и телефон занят, вызывающему абоненту подается сигнал вызова, в ожидании освобождения телефона. Если выключено, будет дан отбой. Выключите Call Waiting, если екстеншен обслуживает очередь.

Большинство пользователей привыкли, получать сигнал занято. Иначе они считают, что им просто не отвечают. Обратите внимание, что все IP телефоны, тоже имеют такую опцию. Отключите ожидающий вызов и на аппаратах, если требуется. В CW Enabled by Default можно выключить call waiting по умолчанию для новых екстеншенов.

  • Call Screening - Служба представления, требует от внешнего вызывающего абонента назвать свое имя и проигрывает записанное имя вызываемому, прежде чем соединить их, давая возможность отказаться от приема вызова.
  • Pinless Dialing - Включить Пин код для исходящих вызовов.
  • Emergency CID - CallerID для транка помеченного, как emergency (т.е. для экстренных вызовов)
  • Queue State Detection - Если данный екстеншен обслуживает очередь, когда оттуда приходит вызов, очередь пытается определить состояние екстеншена, доступен он или нет.

В некоторых случаях, когда установлено FollowMe или использован виртуальный екстеншен, очередь будет считать его недоступным и екстеншен не будет вызван, несмотря на то, что может ответить. Чтобы избежать подобных коллизий, используйте 'Ignore State'. Однако для большинства сценариев рекомендуется 'Use State'.

asterisk -rx 'database show'

asterisk -rx 'database show'

Ни Virtual, ни Custom Extensions не имеют собственных конфигов. Где же храняться эти многочисленные настройки? А хранятся они во внутренней базе данных Asterisk - astdb. Откуда диалплан сгенерированный FreePBX в extensions_additional.conf и берет их, подставляя в макросы.

# asterisk -rx 'database show' | grep 667
/AMPUSER/667/answermode                           : disabled
/AMPUSER/667/cfringtimer                          : 0
/AMPUSER/667/cidname                              : test
/AMPUSER/667/cidnum                               : 667
/AMPUSER/667/concurrency_limit                    : 3
/AMPUSER/667/device                               : 667
/AMPUSER/667/dialopts                             : Ttr
/AMPUSER/667/hint                                 : ,CustomPresence:667
/AMPUSER/667/intercom                             : enabled
/AMPUSER/667/noanswer                             :
/AMPUSER/667/outboundcid                          :
/AMPUSER/667/password                             :
/AMPUSER/667/queues/qnostate                      : usestate
/AMPUSER/667/recording                            :
/AMPUSER/667/recording/in/external                : dontcare
/AMPUSER/667/recording/in/internal                : dontcare
/AMPUSER/667/recording/ondemand                   : disabled
/AMPUSER/667/recording/out/external               : dontcare
/AMPUSER/667/recording/out/internal               : dontcare
/AMPUSER/667/recording/priority                   : 10
/AMPUSER/667/ringtimer                            : 0
/AMPUSER/667/rvolume                              :
/AMPUSER/667/voicemail                            : novm
/CW/667                                           : ENABLED

Это касается и ектеншенов с технологиями, для опций диалплана, не предусмотренных их драйверами.

- Recording Options

freepbx13-extensions-recording-options

  • Inbound External Calls - Записывать входящие внешние вызова
    • Force - Всегда, даже если далее встретится Don't Care или No, но Never отменит данную директиву.
    • Yes - Записывать.
    • Don't Care - Не записывать, но yes и force заставят.
    • No - Не записывать.
    • Never - Не записывать никогда. Но последующее «Force» пересилит данную установку.

(Force и Never всегда переопределяют установки заданные ранее.)

  • Outbound External Calls - Внешние исходящие вызовы
  • Inbound Internal Calls - Входящие внутренние вызовы
  • Outbound Internal Calls -Внутренние исходящие вызовы
  • On Demand Recording - Запись по запросу (абонентским кодом)
Record Priority Policy

Политики определяют записывать вызов или нет, если настройки двух ектеншенов вступают в противоречие друг с другом. Более высокий приоритет определяет политику. Если приоритеты равны, используется глобальная настройка Call Recording Policy - caller или callee (вызывающий или вызываемый) . По умолчанию выше вызывающий. Например:

  • Yes против Never - never победил
  • Yes против No - пошли меряться чл приоритетами
    • приоритеты равны - Вызывающий победил (по умолчанию)
  • Force против Never - - Вызывающий победил (по умолчанию)

FreePBX

  • freepbx/extensions.txt
  • Последние изменения: 2018/11/17