Понятия, определения

  • Алиас (абонент) — совокупность, описывающая в пределах системы телефонный номер, связанный с интерфейсом в рамках определенной виртуальной АТС и различные дополнительные атрибуты (категория, абонентская группа, услуги). Фактически описывает абонента виртуальной АТС, подключенного к определенному порту и обладающего определенным набором специфичных для него параметров.
  • Форкинг (forking) — привязка нескольких частных контактов к одному публичному контакту.

Порядок конфигурирования SIP-абонентов

Перед созданием SIP-абонента необходимо:

  1. Создать виртуальную АТС, создать контексты маршрутизации;
  2. Выделить абонентскую емкость для использования системой;
  3. При необходимости настроить LDAP-сервер, если для хранения данных аутентификации пользователя выбран данный режим. По умолчанию в системе выбран другой вариант хранения параметров аутентификации — база DS.

Порядок конфигурирования:

  1. Создать SIP-абонента;
  2. Выполнить настройку параметров.

Описание общих параметров абонента приведено в Приложении А. Набор параметров алиасов.

Настройка параметров SIP-абонента может быть выполнена индивидуально или через назначение определенного профиля настроек.

Иерархия профилей настроек имеет вид:

  1. Domain profile — профиль на уровне виртуальной АТС;
  2. Named profiles — абонентские профили;
  3. 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 – натуральные числа.
Например, интерфейсы , , можно задать в виде 111{1-3}@eltex.local или 111{1,2,3}@eltex.local или {1111,1112,1113}@eltex.local.Может быть задан существующий домен SIP-регистрации или указан новый;
<ALIAS> — альтернативный номер абонента, при указании значения "none" альтернативный номер не используется. Параметр нужен для возможности использовать тестовые имена на уровне SIP. Например, нужно прописать в качестве интерфейса SIP-абонента "", но так как в системе 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-домена;

Список может быть задан диапазоном {a-b} или перечислением {a,b}, где a,b – натуральные числа.
Пример. Интерфейсы  можно задать в виде 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-домена;

Список может быть задан диапазоном {a-b} или перечислением {a,b}, где a,b – натуральные числа.
Пример. Интерфейсы , , можно задать в виде 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 транспорт см. Настройка ip-set.

Для добавления 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}; 
  • Модификация номеров (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-абонентов.

Описание параметров приведено в в Приложении Б. Набор параметров интерфейса 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>

Запрещено указывать адрес SBC или NAT как доверенный адрес.

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

  • Офисные абоненты подключены к абонентскому шлюзу (например, 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").

Ответы 3хх воспринимаются как неуспешные, если в списке есть другие контакты. То есть работа форкинга приоритетней услуг переадресации.

Исходящие звонки разрешены с любого контакта в любом режиме.
Абонент считается занятым, если по какому-либо контакту есть соединение или идет установка соединения, то есть работа интерфейса с несколькими зарегистрированными контактами в системе ничем не отличается от работы интерфейса с одним контактом.

Пример зарегистрированного абонента с несколькими контактами:

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.local1112@eltex.local1113@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).
  • remote_party_id_enable - Включение/выключение передачи заголовка Remote-Party-ID (используется в сервисе pickup) 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                                                    │
│                     │                                                                                │
│access_group         │all                                                                             │
│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)