Виртуальная АТС. Подключение и настройка SIP-абонентов
Понятия, определения
- Алиас (абонент) — совокупность, описывающая в пределах системы телефонный номер, связанный с интерфейсом в рамках определенной виртуальной АТС и различные дополнительные атрибуты (категория, абонентская группа, услуги). Фактически описывает абонента виртуальной АТС, подключенного к определенному порту и обладающего определенным набором специфичных для него параметров.
- Форкинг (forking) — привязка нескольких частных контактов к одному публичному контакту.
Порядок конфигурирования SIP-абонентов
Перед созданием SIP-абонента необходимо:
- Создать виртуальную АТС, создать контексты маршрутизации;
- Выделить абонентскую емкость для использования системой;
- При необходимости настроить LDAP-сервер, если для хранения данных аутентификации пользователя выбран данный режим. По умолчанию в системе выбран другой вариант хранения параметров аутентификации — база DS.
Порядок конфигурирования:
- Создать SIP-абонента;
- Выполнить настройку параметров.
Описание общих параметров абонента приведено в Приложении А. Набор параметров алиасов.
Настройка параметров SIP-абонента может быть выполнена индивидуально или через назначение определенного профиля настроек.
Иерархия профилей настроек имеет вид:
- Domain profile — профиль на уровне виртуальной АТС;
- Named profiles — абонентские профили;
- Subscriber settings — индивидуальные настройки абонента.
Для каждой виртуальной АТС может быть настроен только один профиль на уровне виртуальной АТС. Настройка профилей доступна администратору виртуальной АТС и администратору системы ECSS-10.
Значения параметров с меньшей областью действия переопределяют значения параметров профилей с большей областью действия. В приведенной выше иерархии параметры уровня 3 переопределяют параметры уровня 2 и меньших.
На практике рекомендуется задавать значения параметров в наиболее общих профилях, то есть на больших уровнях иерархии. Это позволяет хранить меньше данных, вносить групповые изменения в одном месте.
Настройка абонентов через CLI
Описание команд, используемых при настройке SIP-абонентов, приведено в справочнике команд CLI, раздел Команды управления конфигурацией абонентов SIP.
Добавление абонента
Для создания SIP-абонента используется команда:
/domain/<DOMAIN>/sip/user/declare
<ROUTING_CONTEXT> <GROUP> <INTERFACE> [<ALIAS>
[<QOP_AUTH> [<LOGIN> [<PASSWORD>]]]]
где
<DOMAIN> — имя виртуальной АТС;<ROUTING_CONTEXT> — имя контекста маршрутизации для данного абонента;
<GROUP> — название группы пользователей, логическое объединение интерфейсов в определенной виртуальной АТС. Может быть задана существующая или новая группа пользователей;
<INTERFACE> — название декларируемого интерфейса, задается в виде: username@host, где username – номер абонента; host – название SIP-домена регистрации. Список может быть задан диапазоном {a-b} или перечислением {a,b}, где a,b – натуральные числа.
Например, интерфейсы 1111@eltex.local, 1112@eltex.local, 1113@eltex.local можно задать в виде 111{1-3}@eltex.local или 111{1,2,3}@eltex.local или {1111,1112,1113}@eltex.local.Может быть задан существующий домен SIP-регистрации или указан новый;
<ALIAS> — альтернативный номер абонента, при указании значения "none" альтернативный номер не используется. Параметр нужен для возможности использовать тестовые имена на уровне SIP. Например, нужно прописать в качестве интерфейса SIP-абонента "text.users.name@some.sip.area", но так как в системе ECSS-10 используется телефонная маршрутизация, текстовое имя в маршрутизации использовать запрещено. В этом случае SIP-абоненту назначается параметр <ALIAS> — цифровой (телефонный) номер;
<QOP_AUTH> — поддержка QOP-аутентификации (повышенный уровень защиты). Опциональный параметр:
- no_qop_authentication — использовать QOP-аутентификацию;
- qop_authentication — не использовать QOP-аутентификацию;
<LOGIN> — имя декларируемого пользователя. Опциональный параметр. Имя пользователя может быть впоследствии добавлено/изменено как терминальными командами, так и на LDAP-сервере:
- login_as_number — в качестве имен пользователей использовать декларируемые номера;
- none — не назначать параметры авторизации при декларации;
- common_login <LOGIN> — общее имя <LOGIN> для всех декларируемых абонентов.
<PASSWORD> — пароль декларируемых пользователей. Не указывается, если в качестве <LOGIN> выбрано "none".
- auto_generation — каждому декларируемому абоненту генерируется персональный пароль. Полученные пароли можно будет посмотреть командами "user info" или "user authentication";
- публичный пароль (символьная строка) — всем декларируемым абонентам будет назначен единый заданный пароль.
Пример
Декларация одного абонента без указания параметров аутентификации, например, планируется указание доверенных IP-адресов (параметр "trusted-ip"):
domain/test.domain/sip/user/declare local smg 401@test.domain none no_qop_authentication
Настройка параметров абонента
Команды уровня администратора виртуальной АТС
Для изменения индивидуальных значений параметров абонента используются следующие команды:
- Команда для изменения параметров определенного абонентского номера и интерфейса заданной виртуальной АТС:
/domain/<DOMAIN>/alias/set <NUMBER> <GROUP> <INTERFACE> <PROPERTY> <VALUE>
- Команда для изменения параметров всех абонентов с определенным интерфейсом заданной виртуальной АТС:
/domain/<DOMAIN>/alias/set-for-iface <GROUP> <INTERFACE> <PROPERTY> <VALUE>
- Команда для изменения параметров всех абонентов с определенным абонентским номером заданной виртуальной АТС:
/domain/<DOMAIN>/alias/set-for-address <NUMBER> <PROPERTY> <VALUE>
где
<DOMAIN> — имя виртуальной АТС;
<NUMBER> — абонентский номер;
<GROUP> — имя группы интерфейсов, логическая привязка интерфейсов в определенной виртуальной АТС;
<INTERFACE> — имя интерфейса;
<PROPERTY> — имя изменяемого параметра, список приведен Приложении А. Набор параметров алиасов;
<VALUE> — значение изменяемого параметра, список приведен Приложении А. Набор параметров алиасов.
Для изменения значений параметров профиля виртуальной АТС абонента необходимо выполнить следующую команду:
/domain/<DOMAIN>/alias/set-for-domain <PROPERTY> <VALUE>
где
<DOMAIN> — имя виртуальной АТС;
<PROPERTY> — имя изменяемого параметра, список приведен Приложении А. Набор параметров алиасов;
<VALUE> — значение изменяемого параметра, список приведен Приложении А. Набор параметров алиасов.
Указанные выше команды используются для настройки общих параметров для всех абонентов системы: SIP-абонентов, абонентов H.248/megaco, виртуальных абонентов.
Для настройки параметров, специфичных только для SIP-абонентов, используется команда:
/domain/<DOMAIN>/sip/user/set <GROUP> <SIP_URI> <PROPERTY> <VALUE>
где
<DOMAIN> — имя виртуальной АТС;
<GROUP> — имя группы интерфейсов, логическая привязка интерфейсов в определенной виртуальной АТС;
<SIP_URI> — SIP URI абонента, задается в виде: username@host, где username – номер абонента; host – название SIP-домена;
Пример. Интерфейсы 1111@eltex.local, 1112@eltex.local, 1113@eltex.local можно задать в виде 111{1-3}@eltex.local или 111{1,2,3}@eltex.local или {1111,1112,1113}@eltex.local.
<PARAMETER> — имя изменяемого параметра, список приведен Приложении Б. Набор параметров интерфейса SIP;
<VALUE> — значение изменяемого параметра, список приведен Приложении Б. Набор параметров интерфейса SIP.
Команды уровня администратора системы
Для изменения значений индивидуальных параметров абонента необходимо выполнить следующую команду:
/cluster/storage/<CLUSTER>/alias/set-for-address <DOMAIN> <NUMBER> <PROPERTY> <VALUE>
Для изменения значений параметров профиля на уровне виртуальной АТС необходимо выполнить следующую команду:
/cluster/storage/<CLUSTER>/alias/set <DOMAIN> <PROPERTY> <VALUE>
где
<CLUSTER> — имя кластера хранения долговременных данных (DS). По умолчанию в системе присутствует кластера хранения долговременных данных с именем "ds1";
<NUMBER> — абонентский номер;
<DOMAIN> — имя виртуальной АТС (домена);
<PROPERTY> — имя изменяемого параметра, список приведен в Приложении А. Набор параметров алиасов;
<VALUE> — значение изменяемого параметра, список приведен в Приложении А. Набор параметров алиасов.
Удаление SIP-абонента
Для удаления SIP-абонента используется команда:
/domain/<DOMAIN>/sip/user/remove <GROUP> <SIP_URI> [--force]
где
<DOMAIN> — имя виртуальной АТС;
<GROUP> — имя группы интерфейсов, логическая привязка интерфейсов в определенной виртуальной АТС;
<SIP_URI> — SIP URI абонента, задается в виде: username@host, где username – номер абонента; host – название SIP-домена;
Пример. Интерфейсы 1111@eltex.local, 1112@eltex.local, 1113@eltex.local можно задать в виде 111{1-3}@eltex.local или 111{1,2,3}@eltex.local или {1111,1112,1113}@eltex.local.
[--force] — удаление без дополнительного подтверждения, опциональный параметр.
Настройка SIP-абонентов через web-конфигуратор
Для создания SIP-абонентов используется приложение "Карточка абонента" ("Subsciber card").
Описание приложения приведено в разделе Карточка абонента (Subscriber card).
Для управление профилями абонентов используется приложение "Профили алиасов" ("Alias profiles").
Описание приложения приведено в разделе Профили абонентов (Alias profiles).
Создание SIP-абонента
Для добавления SIP-абонента нажмите кнопку "Добавить SIP пользователя" ("Add sip user") и заполните следующие поля:
- Владелец интерфейсов (Interface owner) — владелец интерфейса — системная нода (адаптер);
- Контекст (Context) — название контекста маршрутизации;
- Группа интерфейсов (Interface group) — группа, в которую входит интерфейс. Задается администратором системы для удобства группировки абонентов по определенным параметрам.
- Имя интерфейса (Interface) — номер, закрепляемый за абонентом. Задается администратором системы. Номер не должен повторяться внутри одной ВАТС;
- Список абонентов может быть задан диапазоном {a-b} или перечислением {a,b}, где a,b — натуральные числа;
Пример. Список абонентов с номерами 755,765,775 можно указать в виде 7{5-7}5 или 7{5,6,7}5 или {755,765,775};
- Список абонентов может быть задан диапазоном {a-b} или перечислением {a,b}, где a,b — натуральные числа;
- Модификация номеров (Modificator) — выбрать правило модификации номера;
- Алиас как пользователь (Alias as user) — использовать алиас, с тем же номером, что и SIP-номер;
- Альтернативный алиас (Alternative alias) — использовать альтернативный номер у алиаса абонента;
- Профиль услуг (SS profile) — системный или доменный профиль услуг;
- Авторизация (Auth) — требование авторизации у абонента:
- none — авторизация не требуется;
- always — авторизация требуется как при регистрации, так и при запросах со стороны абонента;
- register — авторизация требуется при регистрации.
При выборе значений "always" и "register" нужно указать:
- Логин (Login) — имя пользователя для авторизации;
- Использовать номер в качестве логина (Login as number) — при установленном флаге в качестве имени пользователя использовать номер абонента, иначе — имя пользователя, установленное в поле "Логин" ("Login");
- Пароль (Password) — пароль пользователя для авторизации. Если поле оставить пустым, то пароль будет генерироваться автоматически;
- Авторизация qop (Authorization qop) — при установленном флаге использовать расширенную QoP-авторизацию, иначе — не использовать.
Нажмите кнопку "Ok" для добавления абонента(ов) в систему либо "Отмена" ("Cancel") для выхода из диалогового окна без добавления абонента(ов) в систему.
Настройка параметров SIP-абонента
Для настройки параметров, приведенных ниже, необходимо выделить нужного абонента, после чего приступать к настройке.
Настройка основных параметров для абонента
Во вкладке "Основные" ("General") выполняется настройка основных параметров для абонента.
- nai — идентификатор типа адреса, принимает значения: subscriberNumber, unknown, nationalNumber, internationNumber;
- npi — индикатор плана нумерации, принимает значения: isdnTelephony, dataNumberingPlan, telexNumberingPlan;
- ni — индикатор номера, принимает значения:
- emergency — экстренные службы;
- intercity — абоненты междугородной сети;
- international — абоненты международной сети;
- local — абоненты местной сети;
- private — локальные абоненты АТС;
- zone — абоненты зоновой сети;
- screening — индикатор контроля номера вызывающего абонента, принимает значения: userProvidedNotVerified, userProvidedVerifiedAndPassed, userProvidedVerifiedAndFailed, networkProvided;
- apri — индикатор ограничения предоставления номера вызывающего абонента: presentationAllowed, presentationRestricted, addressNotAvailable;
- категория (сategory) — категория вызывающего абонента, принимает значения: unknownAtThisTime, operatorFrench, operatorEngish, operatorGerman, operatorRussian, operatorSpanish, reserved, ordinarySubscriber, subscriberWithPriority, dataCall, testCall, spare, payphone, category0, hotelsSubscriber, freeSubscriber, paidSubscriber, localSubscriber, localTaksofon, autoCallI, semiautoCallI, autoCallII, semiautoCallII, autoCallIII, semiautoCallIII, autoCallIV, semiautoCallIV;
- статус (active) — состояние абонента, принимает значения:
- true — активен;
- false — не активен;
- cdr группа (cdr group) — имя CDR-группы (используется для группировки cdr-записей);
- тип доступа (access type) — тип доступа для абонента (долговременные ограничения, которые вводятся при подключении абонента);
- режим (regime) — режим обслуживания для абонента (временные ограничения);
- группа доступа (access group) — имя группы доступа;
- отображаемое имя (display name) — отображаемое имя на дисплее для абонента;
- support encoding — тип кодировки, используемый для отображения имени абонента;
- почта (email) — электронная почта для абонента;
- джаббер идентификатор (jabber id) — идентификационный номер Jabber для абонента;
- PIN-код — PIN-код для управления услугами с телефонного аппарата абонента;
- media-profile — выбранный на домене медиа-профиль для входящей связи, по умолчанию устанавливается профиль default;
- media-profile-outgouing — выбранный на домене медиа-профиль для исходящей связи связи, по умолчанию устанавливается значение undefined. При значении undefined для исходящей связи применяется тот же профиль, что и для входящей связи;
- тип терминала (terminal type) — basic/smart;
- профиль (profile) — профиль, назначаемый абоненту. Настройка профилей выполняется в приложении "Профили алиасов"("Alias profiles") в каталоге "named profiles";
- расположение (placement) — территориальное расположение номера;
- Язык — языковая локаль абонента.
- Русский
- Английский
- Немецкий
- Испанский
- Французский
Для обновления информации нажмите кнопку "Обновить" ("Refresh").
Для сохранения изменений в системе нажмите кнопку "Сохранить" ("Save").
Для отмены изменений нажмите кнопку "Отмена" ("Canсel").
Настройка дополнительных параметров для SIP-абонентов
Вкладка "SIP" будет доступна только при выборе SIP-абонента. Во вкладке "SIP" выполняются настройки, специфичные для SIP-абонентов.
Для обновления информации нажмите кнопку "Обновить" ("Refresh").
Для сохранения изменений в системе нажмите кнопку "Сохранить" ("Save").
Для отмены изменений нажмите кнопку "Отмена" ("Canсel").
Удаление абонента
Для удаления абонента в таблице абонентов установите флаг(и) напротив удаляемого(ых) абонента(ов) и нажмите кнопку "Удалить" ("Delete"). Подтвердите действие нажатием кнопки "Да".
Аутентификация абонентов
В системе ECSS-10 всегда требуется аутентификация абонентов.
Избежать требования аутентификации абонентов можно настройкой следующих параметров:
- trusted-IP — список доверенных IP-адресов, с которых разрешено получение запросов. Существует два режима запросов: strict (жесткий) — запросы разрешены только с этого адреса (адресов), nostrict — запросы разрешены с разных адресов. В случае strict-запроса аутентификация будет требоваться при включенном параметре digest. В случае nostrict-запросов вне зависимости от параметра digest аутентификация требуется с IP-адресов, не являющихся доверенными, с доверенных пускаем сразу.
Настройка выполняется командой domain/<DOMAIN>/sip/user/set <GROUP> <INTERFACE> trusted-ip <IP-addr>
Случаи, когда можно отказаться от требования аутентификации:
- Офисные абоненты подключены к абонентскому шлюзу (например, TAU-32M.IP, TAU-72.IP), но при этом абонентам разрешена регистрация из внешней сети (например, форкинг с мобильным терминалом, с домашним телефоном). Если указать "доверенный IP" (параметр "trusted-IP"), то при регистрации и звонках с офисных шлюзов не будет требоваться аутентификация. Звонки из внешней сети будут требовать аутентификацию.
- Офисные абоненты подключены к абонентскому шлюзу (например, TAU-32M.IP, TAU-72.IP). При этом все абоненты считаются стационарными без возможности форкинга контактов. Если указать «фиксированный IP» (параметр "trusted-ip"), то при регистрации и звонках с офисных шлюзов не будет требоваться аутентификация. При этом на шлюзах можно отключить регистрацию на сервере.
Если пользователи регистрируются из внешней сети, всегда должна требоваться аутентификация.
Регистрация нескольких контактов SIP-абонента (forking)
Общее описание
Если у абонента есть несколько терминалов, например, стационарный телефон и мобильный телефон, то он может все свои терминалы (разные SIP-контакты) зарегистрировать под одним публичным номером. Публичный номер будет известен другим абонентам, и по публичному номеру будут поступать входящие вызовы. Привязка нескольких частных контактов к одному публичному называется форкингом (forking).
На уровне SIP-адаптера форкинг работает в рамках одного абонентского интерфейса. Один абонент может под одним аккаунтом зарегистрировать несколько контактов (одной регистрацией или несколькими).
Принцип работы
Если есть несколько зарегистрированных контактов, то входящий вызов в зависимости от выбранного режима поступает одновременно или последовательно на все контакты.
Переход на следующий контакт/контакты выполняется по получению неуспешного ответа или истечении тайм-аута (таймер "find-me").
Исходящие звонки разрешены с любого контакта в любом режиме.
Абонент считается занятым, если по какому-либо контакту есть соединение или идет установка соединения, то есть работа интерфейса с несколькими зарегистрированными контактами в системе ничем не отличается от работы интерфейса с одним контактом.
Пример зарегистрированного абонента с несколькими контактами:
ecss-root@[ecss_mycelium@alex]:/# domain/d.408/sip/user/info sip.test 900000@sip.test 1 users information read ... [**********************************************************************] 6ms Executed on the pa_sip@alex ---------------------------------------------------------------------------------------------------------------------------------------------- | User | Is active | Group | Login | Registration | Extended information | |-----------------+-----------+----------+-------+--------------------------------------------------------------------+----------------------| | 900000@sip.test | true | sip.test | | q=1.0; <sip:900000@192.168.23.166:5064>;expires=65 | | | | | | | q=0.8; <sip:900000@192.168.23.166:5062;transport=udp>;expires=9003 | | ----------------------------------------------------------------------------------------------------------------------------------------------
Режим форкинга
Выбор режима работы форкинга выполняется для абонента или группы абонентов следующей командой:
domain/<DOMAIN>/sip/user/set <GROUP> <SIP_URI> fork-mode <MODE> <ALLOW-REPEAT-IP> <PREVIOUS-CONTINUE>
где
<DOMAIN> — имя виртуальной АТС;
<GROUP> — имя группы интерфейсов, логическая привязка интерфейсов в определенной виртуальной АТС;
<SIP_URI> — SIP URI абонента, задается в виде: username@host, где username – имя/номер абонента; host – домен регистрации;
Список может быть задан диапазоном {a-b} или перечислением {a,b}, где a,b – натуральные числа.
Пример. Интерфейсы 1111@eltex.local, 1112@eltex.local, 1113@eltex.local можно задать в виде 111{1-3}@eltex.local или 111{1,2,3}@eltex.local или {1111,1112,1113}@eltex.local.
<MODE> — режим форкинга:
- all-contacts — запрос на установление соединения (INVITE) отправляется одновременно на все зарегистрированные контакты. С первым ответившим контактом устанавливается диалог, вызовы на остальные контакты завершаются;
- find-me-one-by-one — последовательный перебор контактов по списку. Если контакт не отвечает по истечении таймера "find-me" (контакту отправляется CANCEL) или приходит неуспешный ответ, запрос перенаправляется на следующий контакт;
- find-me-with-q — последовательный перебор с учетом приоритета. Сначала выполняется запрос на все контакты самого старшего приоритета, затем на контакты со следующим приоритетом и так далее. Если в списке контакты только одного приоритета, то работа аналогична режиму "all-contacts". Если все имеют разный приоритет, то аналогично режиму "find-me-one-by-one";
- disable — отключение форкинга. Запрос на установление соединения (INVITE) будет отправляться только на первый контакт в списке, наличие остальных контактов игнорируется. Совершать вызовы разрешено со всех зарегистрированных контактов.
<ALLOW-REPEAT-IP> — будет ли перезаписываться старый контакт новым, если изменился только порт:
- allow-repeat-ip — существующий контакт будет сохраняться;
- disallow-repeat-ip — существующий контакт будет перезаписываться;
Примечание: параметр обязателен для всех режимов, кроме операции отключения (disable)
<PREVIOUS-CONTINUE> — свойство режимов find-me (для all-contacts не применяется):
- previous-continue — при переходе к следующему контакту (группе контактов с одним приоритетом) вызов предыдущего (предыдущих) продолжается;
- previous-stop — при переходе к следующему контакту (группе контактов с одним приоритетом) вызов предыдущего (предыдущих) отменяется
Примечание: параметр обязателен для режимов find-me-one-by-one и find-me-with-q
Список контактов формируется при регистрации в порядке убывания приоритета (параметр контакта "q"), равнозначные — в порядке получения регистраций. Если в регистрации приоритет контакта не указан, то он принимается равным 1.
Значения приоритетов — число от 0 (низкий) до 1 (высокий).
Назначить приоритет контакту на уровне системы нельзя, приоритет контакта указывает пользователь в запросе регистрации.
Таймер "find-me"
Таймер "find-me" определяет интервал времени, в течение которого контакт должен ответить на поступивший вызов, по истечении таймера вызов передается следующему контакту SIP-аккаунта. Значение устанавливается в секундах, по умолчанию 5 секунд.
Команда для изменения значения таймера "find-me":
domain/<DOMAIN>/timers/sip/set find-me <VALUE>
где
<DOMAIN> — имя виртуальной АТС;
<VALUE> — значение таймера "find-me".
Пример:
admin@[mycelium@ecss1]:/# domain/d.408/timers/sip/set find-me 5 Property "find_me" successfully changed from: 7 to 5. ... admin@[mycelium@ecss1]:/# domain/d.408/timers/sip/info ----------------------------- | Property |Domain|Value| |--------------+------+-----| |find_me |d.408 |5 | ...
SIP-профили
Общее описание
Многие сип клиенты имеют особенности реализации.
Основная масса касается поддержки того или иного стандарта или спецификации. Также оператор сам может контролировать включение/выключение некоей функции (например, контроль сессии по RFC 4028).
Есть еще ограничения встречной стороны, которые противоречат или жестко ограничивают текущую реализацию взаимодействия адаптер-клиент:
- нотификации BLF о ходе параллельных соединений на наблюдаемом клиенте;
- осуществление исходящих звонков только через ноду адаптера, принявшую запрос регистрации
- реализация авто ответа, которая поддержана в рамках трех спецификаций, которые в свою очередь могут иметь разные опции.
Для преодоления данных ограничений реализованы профили SIP-клиентов, которые включают в себя особенности производителя.
Назначение профилей может осуществляться следующим образом:
- непосредственное назначение в свойствах SIP-абонента. Данный режим актуален когда нет полноценной детекции клиента;
- автоматическое определение при регистрации (по User-Agent).
Настройка профиля
При создании профиля задается его имя и набор параметров (один и более из имеющихся).
Сейчас поддерживаются три рабочих параметра и шаблон авто-определения:
- auto-answer_version — реализация авто ответа;
- concurency_blf — нотификации о параллельных диалогах. Значения true|false (по умолчанию — false).
Под параллельными нотификациями имеются ввиду нотификации о параллельных звонках с одного абонента.
Реализована очередь нотификаций. Работает следующим образом — пока есть события по одному диалогу, другие события слаться не будут, они будут откладываться в очередь. Когда же текущий диалог завершится, то они будут разосланы в текущем состоянии.
Начиная с версии 3.11.0 этот режим может быть выбран профилем SIP-клиента. Абоненту назначается соответствующий профиль, либо он определяется автоматически (настройка client_profile = auto). Параметры профиля:
- concurency_blf = true — разрешены параллельные нотификации, очередь не работает.
concurency_blf = false — запрещены параллельные нотификации, очередь работает. Этот режим используется "по умолчанию"
- node_control — ограничение исходящих вызовов нодой-регистратором, то есть привязка к ноде адаптера, на который пришла регистрация. Значения true|false (по умолчанию — false);
- templates — шаблон имени, содержащийся в заголовке User-Agent запроса регистрации;
- extended_blf — поддержка события Endpoint States для BLF. Значение true|false(по умолчанию — false).
Команды управления профилями
Ниже приведены команды CoCon для управления SIP-профилями
В данном разделе приводится описание команд управления команды настройки профиля абонентов SIP.
Общее описание работы SIP-профилей приведено в разделе SIP-профили.
<DOMAIN> - имя виртуальной АТС.
clean
Команда предназначена для сброса параметров профиля абонента SIP в значение по умолчанию. При необходимости можно сбросить все параметры профиля. Сам профиль удален при этом не будет.
В команде допустим ключ --force
, при котором предупреждение будет пропущено. Актуально, например, при работе через скрипт. По "tab" не подставляется!
Путь команды:
/domain/<DOMAIN>/sip/user/profile/clean
Синтаксис:
clean PROFILE_ID [--force]
Параметры:
<PROFILE_ID> - существующий или новый ID профиля;
[--force] - удаление без дополнительного подтверждения.
Пример:
admin@mycelium1@ecss1:/$ domain/biysk.local/sip/user/profile/clean vp12 [clean] Set parameters to default value continue: yes/no ?> domain/biysk.local/sip/user/profile/clean vp12 Executed on the sip1@ecss2 ┌──────────┬──────────────────────────────┐ │Profile ID│ Profile set │ ├──────────┼──────────────────────────────┤ │vp12 │auto-answer-version = default │ │ │concurency_blf = false │ │ │direct_early_update = false │ │ │extended_blf = false │ │ │force_fork_release = false │ │ │node_control = false │ │ │remote_party_id_enable = false│ │ │templates = - │ └──────────┴──────────────────────────────┘ [exec at: 12.03.2021 15:33:44, exec time: 12s 473ms, nodes: sip1@ecss2 v.3.14.8.26]
del
Команда предназначена для удаления профиля абонента SIP.
В команде допустим ключ --force
, при котором предупреждение будет пропущено. Актуально, например, при работе через скрипт. По "tab" не подставляется!
Путь команды:
/domain/<DOMAIN>/sip/user/profile/del
Синтаксис:
del PROFILE_ID [--force]
Параметры:
<PROFILE_ID> - существующий или новый ID профиля;
[--force] - удаление без дополнительного подтверждения.
Пример:
admin@mycelium1@ecss1:/$ domain/biysk.local/sip/user/profile/del vp12 [del] Remove profiles. Undo will be impossible continue: yes/no ?> yes Executed on the sip1@ecss1 ok [exec at: 12.03.2021 15:33:57, exec time: 1s 858ms, nodes: sip1@ecss1 v.3.14.8.26]
info
Команда предназначена для просмотра информации о профиле абонента SIP.
Путь команды:
/domain/<DOMAIN>/sip/user/profile/info
Синтаксис:
info PROFILE_ID
Параметры:
<PROFILE_ID> - существующий или новый ID профиля.
Пример:
admin@mycelium1@ecss1:/$ domain/biysk.local/sip/user/profile/info vp12 Executed on the sip1@ecss1 ┌──────────┬──────────────────────────────────────────────┐ │Profile ID│ Profile set │ ├──────────┼──────────────────────────────────────────────┤ │vp12 │auto-answer-version = Alert-Info: Auto Answer │ │ │concurency_blf = false │ │ │direct_early_update = false │ │ │extended_blf = false │ │ │force_fork_release = false │ │ │node_control = false │ │ │remote_party_id_enable = false │ │ │templates = - │ └──────────┴──────────────────────────────────────────────┘ [exec at: 12.03.2021 15:32:49, exec time: 5ms, nodes: sip1@ecss1 v.3.14.8.26]
list
Команда предназначена для просмотра списка профилей абонента SIP. Возвращает список имеющихся профилей, включая шаблон авто определения.
Путь команды:
/domain/<DOMAIN>/sip/user/profile/list
Синтаксис:
list
Параметры:
Команда не содержит аргументов.
Пример:
admin@mycelium1@ecss1:/$ domain/biysk.local/sip/user/profile/list Executed on the sip1@ecss2 ┌──────────┬───────────────────┐ │Profile ID│User-Agent template│ ├──────────┼───────────────────┤ │vp12 │ │ └──────────┴───────────────────┘ [exec at: 12.03.2021 15:33:17, exec time: 13ms, nodes: sip1@ecss2 v.3.14.8.26]
preset
Команда предназначена для активации заранее сконфигурированного профиля.
Путь команды:
/domain/<DOMAIN>/sip/user/profile/preset
Синтаксис:
preset PROFILE_ID
Параметры:
PROFILE_ID - идентификатор существующего профиля.
Пример:
admin@mycelium1@ecss1:/$ domain/biysk.local/sip/user/profile/preset coral Executed on the sip1@ecss1 New profile 'coral' was created [exec at: 15.03.2021 15:32:38, exec time: 10ms, nodes: sip1@ecss1 v.3.14.8.34]
set
Команда позволяет задать параметры профиля SIP-клиента. Если ID не существует, то команда задает новый профиль.
При первой настройке профиль с указанным именем будет создан автоматически. Указывать одновременно можно один и более параметров через запятую. Шаблон агента вводится в кавычках, если содержит пробелы.
Внимание! Вхождение шаблона проверяется без учета регистра, но с учетом количества указанных пробелов!
Результат команды:
new - создан новый профиль с указанными именем и параметрами (неуказанные параметры принимают значения "по умолчанию");
exists - указаны уже установленные параметры существующему профилю;
change - параметр (параметры) существующего профиля изменены.
Путь команды:
/domain/<DOMAIN>/sip/user/profile/set
Синтаксис:
set PROFILE_ID KEY = VALUE[, ...]
Параметры:
<PROFILE_ID> - существующий или новый ID профиля; <KEY> - название параметра, который разрешен:
- auto_answer_version - реализация авто ответа.;
- concurency_blf - нотификации о параллельных диалогах. Значения true|false (по умолчанию - false);
- node_control - ограничение исходящих вызовов нодой-регистратором. Значения true|false (по умолчанию - false);
- templates - шаблон имени, содержащийся в заголовке User-Agent запроса регистрации;
- blf_xml_pretty_print - возможность форматирования xml в NOTIFY BLF. Значения true|false (по умолчанию - false).
Пример:
admin@mycelium1@ecss1:/$ domain/biysk.local/sip/user/profile/set vp12 auto-answer-version alert-info template: "Auto Answer" Executed on the sip1@ecss1 New profile 'vp12' was created [exec at: 12.03.2021 15:32:30, exec time: 11ms, nodes: sip1@ecss1 v.3.14.8.26]
Настройки профиля для SIP-абонента
Как уже было указано выше профиль может назначаться как в автоматическом режиме так и непосредственно присвоением нужного.
Назначение режима
Текущее значение режима
admin@mycelium1@ecss1:/$ domain/biysk.local/sip/user/info loc.gr 240470@biysk.local --show-password 1 make users list ... [**********************************************************************] 131mks 1 users information read ... [**********************************************************************] 11ms Executed on the sip1@ecss2 ┌─────────────────────┬────────────────────────────────────────────────────────────────────────────────┐ │ User │ 240470@biysk.local │ ├─────────────────────┼────────────────────────────────────────────────────────────────────────────────┤ │internal iface name │064bc964febdde57 │ │isActive │false │ │group │loc.gr │ │authentication │240470:eGhohxie (ds) use qop: true │ │contacts definition │Contacts list is empty │ │declared by │admin at 28.01.2021 16:08:31 │ │ │ │ │alarm_enable │false │ │aliases activities │240470:true │ │allow │INVITE, ACK, BYE, CANCEL, OPTIONS, PRACK, MESSAGE, SUBSCRIBE, NOTIFY, REFER, UPD│ │ │ATE, INFO │ │allow events │none │ │auto-answer-version │Alert-Info: Auto Answer (default by domain) │ │category_to_sip │default │ │client-profile │none │ │compact-form │defaut (default) │ │digest │true │ │display-name-encoding│default │ │dtmf-duration │100 │ │dtmf-relay │false │ │fork-mode │all-contacts, allow repeated IP: true │ │last via │SIP/2.0/UDP 192.168.2.26:5060;received=192.168.2.26;rport=5060 │ │my_from │biysk.local │ │nat_traversal │false │ │options_control │disable │ │original-cdpn-to │true │ │published presence │none │ │referred-by-as-cgpn │false │ │register-expire-max │3600 │ │register-expire-min │90 │ │host-to-invite │registered-domain │ │registrator │node: sip1@ecss1 port: udp 192.168.2.62:5060 │ │regs_time │18.02.2021 14:44:30 │ │remote-ctr-indication│rpi │ │req100rel │false │ │rfc-4028-control │force │ │routing.context │ctx_from_local │ │sip-domain │biysk.local │ │sip-modifications │[] │ │supported │[req100rel] │ │symbol_hash_as_is │false │ │sip-transit │[] │ │trusted-ip │unassigned │ │user agent │RG-1404GF-W/1.11.0 SN/VI25002012 sofia-sip/1.12.10 │ └─────────────────────┴────────────────────────────────────────────────────────────────────────────────┘ [exec at: 12.03.2021 14:48:25, exec time: 26ms, nodes: sip1@ecss2 v.3.14.8.26]
При назначении автоматического режима, кроме самого значения режима будет указан профиль, который был определен.
Если регистрации не было или авто определение было не успешно, будет указано: auto(none)