/domain/<DOMAIN>/sip/user/ - команды управления конфигурацией абонентов SIP
В данном разделе приводится описание команд управления конфигурацией абонентов SIP.
<DOMAIN> — имя виртуальной АТС.
Набор параметров SIP:
authentication
Команда просмотра информации о параметрах авторизации абонента.
При выполнении команды осуществляется запрос на LDAP-сервер для получения данных абонентского аккаунта.
Путь команды:
/domain/<DOMAIN>/sip/user/authentication
Синтаксис:
authentication <GROUP> <USER_INTERFACE>
Параметры:
<GROUP> - название группы пользователей. Символ "*" используется для указания всех групп;
<USER_INTERFACE> - название интерфейса, задается в формате: Имя_пользователя@Домен_SIP_регистрации. Символ "*" используется для указания всех интерфейсов.
Пример:
/domain/test_domain/sip/user/authentication sip 42007@test_domain 1 make users list ... [**********************************************************************] 69mks check authentication info for 1 interfaces ... [**********************************************************************] 12ms Executed on the sip1@ecss2 ┌───────────────────┬─────────┬────────────┬────────────────┐ │ User │ Use QOP │ Trusted IP │ LDAP account │ ├───────────────────┼─────────┼────────────┼────────────────┤ │ 42007@test_domain │ true │- │ no_information │ └───────────────────┴─────────┴────────────┴────────────────┘ ┌─────────────┐ │ elements: 1 │ └─────────────┘
call-list
Команда просмотра списка активных вызовов через выбранный интерфейс.
Путь команды:
/domain/<DOMAIN>/sip/user/call-list
Синтаксис:
call-list [<GROUP>] [<INTERFACE>] [<OPTIONS>]
Параметры:
<GROUP> - название группы интерфейсов. Символ "*" указывается для отображения всех групп интерфейсов;<INTERFACE> - логическое имя интерфейса;
<OPTIONS> - дополнительные действия:
- --complete - установка данного флага позволяет отобразить все интерфейсы, на которые были приняты вызовы;
- --more T [sec|min|hour] - установка данного флага позволяет отобразить все вызовы, длительность которых более установленного времени;
- --less T [sec|min|hour] - установка данного флага позволяет отобразить все вызовы, длительность которых менее установленного времени.
Пример:
/domain/test_domain/sip/user/call-list
Executed on the sip1@ecss1
┌───────────────────┬──────────────────────────┬───────────┬──────────────────────────────────────────┬─────────────────────────────────────────────────┐
│ Interface URI │ Direction │ State │ Time │ Additional info │
├───────────────────┼──────────────────────────┼───────────┼──────────────────────────────────────────┼─────────────────────────────────────────────────┤
│ 42007@test_domain │ sip[42007] <- ssw[42009] │ connected │ Start: Tue, 12 Aug 2025 09:23:06 │ Node: sip1@ecss1, <0.4289.4> │
│ │ │ │ Last activity: Tue, 12 Aug 2025 09:23:10 │ CallRef: 3263544057 │
│ │ │ │ │ Call-ID: "06daebb0a6e39ef6" │
│ │ │ │ │ SessionID: <<"06daebb0a6e39ef6">> │
│ │ │ │ │ Session handler: {amqp_io_12,<0.4289.4>} │
│ 42009@test_domain │ sip[42009] -> ssw[42007] │ connected │ Start: Tue, 12 Aug 2025 09:23:06 │ Node: sip1@ecss1, <0.4288.4> │
│ │ │ │ Last activity: Tue, 12 Aug 2025 09:23:10 │ CallRef: 3263544057 │
│ │ │ │ │ Call-ID: "503dfe40-9b68-1200-06a0-6813e2092a90" │
│ │ │ │ │ SessionID: <<"06daebb0a5d80cd5">> │
│ │ │ │ │ Session handler: {amqp_io_7,<0.4288.4>} │
└───────────────────┴──────────────────────────┴───────────┴──────────────────────────────────────────┴─────────────────────────────────────────────────┘
┌────────────┐
│ 2 sessions │
└────────────┘
change-group
Команда изменения группы интерфейса.
Путь команды:
/domain/<DOMAIN>/sip/user/change-group
Синтаксис:
change-group <GROUP> <USER INTERFACE> <OTHER GROUP> [--force]
Параметры:
<GROUP> - название группы интерфейсов;
<USER INTERFACE> - логическое имя интерфейса.
<OTHER GROUP> - название группы интерфейсов, на которую производится замена. При отсутствии создается новая;
--force - выполнение команды без запроса подтверждения.
Примеры:
/domain/test_domain/sip/user/change-group sip 50003@test_domain test 1 make users list ... [**********************************************************************] 59mks [change-group] Group test isn't exists continue: yes/no ?> yes 1 interfaces apply ... [**********************************************************************] 1ms 12 interfaces recall to base [**********************************************************************] 5ms 1 interfaces recall to base [**********************************************************************] 2ms Warning: obsolete command. It will be removed at ECSS-10 v3.15. Use command /domain/<DOMAIN>/sip/user/set <GROUP> <URI> group <NEW_GROUP> Executed on the sip1@ecss1 ok
/domain/test_domain/sip/user/change-group sip 4201{0-9}@test_domain test
10 make users list ...
[**********************************************************************] 79mks
10 interfaces apply ...
[**********************************************************************] 8ms
12 interfaces recall to base
[**********************************************************************] 7ms
11 interfaces recall to base
[**********************************************************************] 8ms
Warning: obsolete command. It will be removed at ECSS-10 v3.15. Use command /domain/<DOMAIN>/sip/user/set <GROUP> <URI> group <NEW_GROUP>
Executed on the sip1@ecss1
ok
check
Команда проверки доступности абонентского устройства по сигнализации.
Путь команды:
/domain/<DOMAIN>/sip/user/check
Синтаксис:
check <GROUP> <USER_INTERFACE><METHOD> [timerF = <TIMEOUT>]
Параметры:
<GROUP> - название группы интерфейсов;
<USER_INTERFACE> - название интерфейса, задается в формате: Имя_пользователя@Домен_SIP_регистрации. Символ "*" используется для указания маски интерфейсов,
<METHOD> - OPTIONS or NOTIFY
например:
./user/check test.subscribers * ./user/check test.subscribers 10000* ./user/check test.subscribers 100000@eltex.local timerF = 5000
<TIMEOUT> - тайм-аут ожидания ответа, в пределах которого отправляются повторные запросы, если удаленная сторона не отвечает. По умолчанию 5000 мс.
Пример:
/domain/test_domain/sip/user/check sip 4200* options 10 make users list ... [**********************************************************************] 30mks Executed on the sip1@ecss1 Intermediate (incomplete) result: check for user 42005@test_domain by sip1@ecss1 (node control: sip1@ecss1) ... Executed on the sip1@ecss1 Intermediate (incomplete) result: check for user 42007@test_domain by sip1@ecss1 (node control: sip1@ecss1) ... Executed on the sip1@ecss1 Intermediate (incomplete) result: check for user 42009@test_domain by sip1@ecss1 (node control: sip1@ecss1) ... Executed on the sip1@ecss1 ┌───────┬───────────────────┬────────────┬────────────────────────────────────────────────────────────────────┐ │ Group │ User │ Accessible │ Check info │ ├───────┼───────────────────┼────────────┼────────────────────────────────────────────────────────────────────┤ │ sip │ 42000@test_domain │ false │ User isn't registered now │ │ │ │ │ │ │ sip │ 42001@test_domain │ false │ User isn't registered now │ │ │ │ │ │ │ sip │ 42002@test_domain │ false │ User isn't registered now │ │ │ │ │ │ │ sip │ 42003@test_domain │ false │ User isn't registered now │ │ │ │ │ │ │ sip │ 42005@test_domain │ true │ OPTIONS to <sip:42005@test_domain>: 200 OK, cseq: 412920 OPTIONS. │ │ │ │ │ Request by node: sip1@ecss1 │ │ │ │ │ │ │ sip │ 42007@test_domain │ true │ OPTIONS to <sip:42007@test_domain>: 200 OK, cseq: 416337 OPTIONS. │ │ │ │ │ Request by node: sip1@ecss1 │ │ │ │ │ │ │ sip │ 42009@test_domain │ true │ OPTIONS to <sip:42009@test_domain>: 200 OK, cseq: 442004 OPTIONS. │ │ │ │ │ Request by node: sip1@ecss1 │ └───────┴───────────────────┴────────────┴────────────────────────────────────────────────────────────────────┘
clean
Команда предназначена для установки параметров в значение по умолчанию.
Путь команды:
/domain/<DOMAIN>/sip/user/clean
Синтаксис:
clean <GROUP> <USER_INTERFACE> <PARAMETER> [--force]
Параметры:
<GROUP> - название группы интерфейсов;
<USER_INTERFACE> - название интерфейса, задается в формате: Имя_пользователя@Домен_SIP_регистрации. Символ "*" используется для указания маски интерфейсов. Доступен также ввод диапазона интерфейсов:
./user/clean test.subscribers * trusted-ip
./user/clean test.subscribers 10000*
./user/clean test.subscribers 100000@eltex.local
./user/clean test.subscribers 100{000-399}@eltex.local
<PARAMETER> - параметр, значение которого нужно установить по умолчанию, список приведен выше.
[--force] — удаление без дополнительного подтверждения (опциональный параметр).
Примеры:
/domain/test_domain/sip/user/clean sip 42005@test_domain keep_alive_control [clean] Set parameters to default value continue: yes/no ?> yes 1 make users list ... [**********************************************************************] 20mks clean to 1 interfaces ... [**********************************************************************] 19ms Executed on the sip1@ecss1 complete
/domain/test_domain/sip/user/clean test 4201* qop-authentication [clean] Set parameters to default value continue: yes/no ?> yes 11 make users list ... [**********************************************************************] 34mks clean to 10 interfaces ... [**********************************************************************] 105ms Executed on the sip1@ecss1 complete
declare
Команда декларации абонента (группы абонентов).
При декларации создаются соответствующие интерфейсы и алиасы.
При требовании аутентификации для абонента (абонентов) можно сразу прописать параметры аккаунта (логин, пароль).
Путь команды:
/domain/<DOMAIN>/sip/user/declare
Синтаксис:
declare <ROUTING_CONTEXT> <GROUP> <USER_INTERFACE> <ALIAS> <QOP_AUTH> <LOGIN> <PASSWORD>
Параметры:
<ROUTING_CONTEXT> - название существующего контекста маршрутизации;
<GROUP> - название группы пользователей (может быть задана существующая или новая группа пользователей);
<USER_INTERFACE> - интерфейс создаваемого SIP-абонента в формате <НОМЕР>@<DOMAIN>.
<ALIAS> - альтернативный номер абонента, при указании значения "none" создается sip-абонент без алиаса; при указании значения "alias-as-user " - создается SIP-абонент с алиасом;
<QOP_AUTH> - поддержка QOP-аутентификации (повышенный уровень защиты). Опциональный параметр:
- no_qop_authentication - не использовать QOP-аутентификацию;
- qop_authentication - использовать QOP-аутентификацию.
<LOGIN> - имя декларируемого пользователя. Опциональный параметр. Имя пользователя может быть впоследствии добавлено/изменено как терминальными командами, так и на LDAP-сервере:
- login_as_number - в качестве имен пользователей использовать декларируемые номера;
- none - не назначать параметры авторизации при декларации;
- common_login <LOGIN> - общее имя <LOGIN> для всех декларируемых абонентов.
<PASSWORD> - пароль декларируемых пользователей. Не указывается, если в качестве <LOGIN> выбрано "none". Пароли проверяются на соответствие требованиям, установленным в профиле безопасности (/system/security/profile/), параметр restrictions.
- auto_generation - каждому декларируемому абоненту генерируется персональный пароль. Полученные пароли можно будет посмотреть командами "user info" или "user authentication";
- публичный пароль (символьная строка) - всем декларируемым абонентам будет назначен единый заданный пароль.
Пример:
Декларация одного абонента с номером 240815 без требования аутентификации:
/domain/test_domain/sip/user/declare default_routing sip 42002 alias-as-user no_qop_authentication login-as-user 42002 Executed on the sip1@ecss1 Intermediate (incomplete) result: Declaration for range: 42002@test_domain..42002@test_domain (1) ... 1 interfaces check for existing ... [**********************************************************************] 23mks 1 users interfaces declaration ... [**********************************************************************] 26ms 1 users divided into 1 parts to declare ... [**********************************************************************] 4mks 1 users aliases declaration ... [**********************************************************************] 4ms 1 users trying licence packages activating ... [**********************************************************************] 5ms 13 interfaces recall to base [**********************************************************************] 17ms Executed on the sip1@ecss1 ┌────────────────────────┐ │ declared 1 subscribers │ └────────────────────────┘
Декларация 10 абонентов с требованием аутентификации при регистрации, qop требуется, сразу создаются аккаунты с автоматической генерацией паролей:
/domain/test_domain/sip/user/declare default_routing sip 4201{0-9} alias-as-user qop_authentication login-as-user auto-generation
Executed on the sip1@ecss2
Intermediate (incomplete) result:
Declaration for range: 42010@test_domain..42019@test_domain (10)
...
10 interfaces check for existing ...
[**********************************************************************] 143mks
10 users interfaces declaration ...
[**********************************************************************] 207ms
10 users divided into 1 parts to declare ...
[**********************************************************************] 44mks
10 users aliases declaration ...
[**********************************************************************] 7ms
10 users trying licence packages activating ...
[**********************************************************************] 4ms
23 interfaces recall to base
[**********************************************************************] 12ms
Executed on the sip1@ecss2
┌─────────────────────────┐
│ declared 10 subscribers │
└─────────────────────────┘
errors
Команда просмотра информации об ошибках в регистрации абонентов.
Путь команды:
/domain/<DOMAIN>/sip/user/errors
Синтаксис:
errors <PARAMETER> [VALUE]
Параметры:
<PARAMETER> - назначаемое действие, принимает значение:
- clear-table - удаление всех записей об ошибках регистрации;
- set-limit <LIMIT> - установление максимального количества записей (<LIMIT>), значение должно быть целым;
- uri <URI> - просмотр информации об ошибках для определенного URI;
- all - просмотр информации обо всех ошибках;
- known - просмотр информации об ошибках регистрации известных абонентов;
- unknown - просмотр информации об ошибках регистрации неизвестных абонентов;
<VALUE> - значение.
Примеры:
/domain/test_domain/sip/user/errors set-limit 5 Executed on the sip1@ecss1 Changed limit: 1000 -> 5
/domain/test_domain/sip/user/errors Executed on the sip1@ecss1 ┌─────────────────────┬─────────────────────┬────────────────────────────────────────────────────────────────────────────────┐ │ Uri │ Last event time │ Event │ ├─────────────────────┼─────────────────────┼────────────────────────────────────────────────────────────────────────────────┤ │ 10.0.20.35:5060 udp │ 2025-08-11 10:55:10 │ sip:vasja@test_domain : No interface detected (first: 2025-08-11 10:55:10, 1/1 │ │ │ │time(s)) │ │ 42005@test_domain │ 2025-08-12 09:07:10 │ Wrong authentication (first: 2025-08-12 09:07:10, 2/2 time(s)) │ └─────────────────────┴─────────────────────┴────────────────────────────────────────────────────────────────────────────────┘
info
Команда для просмотра информации о параметрах абонентского интерфейса (группы абонентских интерфейсов).
Путь команды:
/domain/<DOMAIN>/sip/user/info
Синтаксис:
info <GROUP> [<USER_INTERFACE>] [<OPTIONS>]
Параметры:
<GROUP> - название группы пользователей. Символ "*" используется для указания всех групп; <USER_INTERFACE> - название интерфейса, задается в формате: Имя_пользователя@Домен_SIP_регистрации. Символ "*" используется для указания всех интерфейсов;
<OPTIONS>:
- --ldap-account - выполнять запрос на LDAP-сервер (отображение логина и пароля). По умолчанию запрос не выполняется - отображается только требование авторизации;
- --show-password - показывать логин и пароль.
Если в профиле безопасности (/system/security/profile/) параметр show_password_at_cli = off, то в выводе пароль скрывается, и вместо него показываются ********. В случае, если <USER_INTERFACE> = '*' то для отображения пароля в режиме on_request нужно ввести дополнительный флаг --show-password. Если был указан определенный пользователь, то в режиме on_request пароль покажется автоматически
Примеры:
Информация по одному абоненту:
/domain/test_domain/sip/user/info sip 42007@test_domain
1 make users list ...
[**********************************************************************] 46mks
1 users information read ...
[**********************************************************************] 17ms
Executed on the sip1@ecss2
┌──────────────────────────────┬────────────────────────────────────────────────────────────────────────────────┐
│ User │ 42007@test_domain │
├──────────────────────────────┼────────────────────────────────────────────────────────────────────────────────┤
│internal iface name │06f3e8add128e0a4 │
│isActive │true │
│group │sip │
│authentication │42007:42007 (ds) use qop: true │
│contacts definition │q: 1.0; ip-set: test_set; on port: 5060; sip │
│ │ registered by node: sip1@ecss1 │
│ │ gate: {gate_amqp,<<"acp.adapter.init.ex">>, │
│ │ <<"acp.sip.sip1.test_set.init.rk">>} │
│ │ sip transport: udp │
│ │ user-agent: VP-15P/2.9.5-b18 sofia-sip/1.25 │
│ │ <sip:42007@10.0.20.138:5060>;expires=0 │
│ │ │
│access_group │all │
│alarm_enable │false │
│aliases activities │42007: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 │
│keep_alive_control │disable (options) │
│last via │SIP/2.0/UDP 10.0.20.138;received=10.0.20.138;rport=5060 │
│my_from │test_domain │
│nat_traversal │false │
│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 10.0.20.31:5060 │
│regs_time │02.07.2026 07:32:24 │
│remote-ctr-indication │rpi │
│req100rel │supported │
│rfc-4028-control │force │
│routing.context │default_routing │
│sip-domain │test_domain │
│sip-modifications │[] │
│supported │[req100rel] │
│symbol_hash_as_is │false │
│sip-transit │[] │
│transmit-global-call-reference│false │
│trusted-ip │unassigned │
│user agent │VP-15P/2.9.5-b18 sofia-sip/1.25 │
└──────────────────────────────┴────────────────────────────────────────────────────────────────────────────────┘
Сводная общая информация о всех sip-абонентах:
/domain/test_domain/sip/user/info
2 group check for lookup active users ...
[**********************************************************************] 10ms
Executed on the sip1@ecss2
┌─────────┬─────────┬────────────────────────────────────────────────────────────────────────────────┐
│ Group │ Dynamic │ Parameters │
├─────────┼─────────┼────────────────────────────────────────────────────────────────────────────────┤
│ sip │ false │ 'number of users' = 10 │
│ │ │ 'number of registered users' = 5 │
│ │ │ domain = "test_domain" │
│ │ │ gate = {gate_amqp,<<"acp.adapter.init.ex">>, │
│ │ │ <<"acp.sip.sip1.test_set.init.rk">>} │
│ │ │ group = {gate_amqp,<<"acp.adapter.init.ex">>, │
│ │ │ <<"acp.sip.sip1.test_set.init.rk">>} │
│ │ │ owner = "sip1" │
│ │ │ │
│ test │ false │ 'number of users' = 11 │
│ │ │ 'number of registered users' = 0 │
│ │ │ domain = "test_domain" │
│ │ │ gate = {gate_amqp,<<"acp.adapter.init.ex">>, │
│ │ │ <<"acp.sip.sip1.test_set.init.rk">>} │
│ │ │ group = "test" │
│ │ │ owner = "sip1" │
│ │ │ │
│ summary │ ------- │ 'number of users' = 21 │
│ │ │ 'number of registered users' = 5 │
└─────────┴─────────┴────────────────────────────────────────────────────────────────────────────────┘
Регистрационная информация по абонентам из диапазона:
/domain/test_domain/sip/user/info sip 4200{5-9}@test_domain
5 make users list ...
[**********************************************************************] 121mks
3 users information read ...
[**********************************************************************] 38ms
Executed on the sip1@ecss1
┌───────────────────┬────────┬─────────────────┬───────┬──────────────────┬────────────────────────────────────────────────────────────┬───────────────────────────────────────┐
│ User │ Number │ Is active on DS │ Group │ Login │ Registration │ Extended information │
├───────────────────┼────────┼─────────────────┼───────┼──────────────────┼────────────────────────────────────────────────────────────┼───────────────────────────────────────┤
│ 42005@test_domain │ 42005 │ true │ sip │ 42005:42005 (ds) │ q: 1.0; ip-set: test_set; on port: 5060; sip │ internal iface name: 06d0e917ee2cc392 │
│ │ │ │ │ │ node control: sip1@ecss1 │ sip domain: test_domain │
│ │ │ │ │ │ gate: {gate_amqp,<<>>,<<"acp.sip.sip1.0a00141f.init.q">>} │ │
│ │ │ │ │ │ sip transport: udp │ │
│ │ │ │ │ │ user-agent: Twinkle/1.10.2 │ │
│ │ │ │ │ │ <sip:42005@10.0.20.35>;expires=591 │ │
│ │ │ │ │ │ │ │
│ 42007@test_domain │ 42007 │ true │ sip │ 42007:42007 (ds) │ q: 1.0; ip-set: test_set; on port: 5060; sip │ internal iface name: 06da428bec13ff40 │
│ │ │ │ │ │ node control: sip1@ecss1 │ sip domain: test_domain │
│ │ │ │ │ │ gate: {gate_amqp,<<>>,<<"acp.sip.sip1.0a00141f.init.q">>} │ │
│ │ │ │ │ │ sip transport: udp │ │
│ │ │ │ │ │ user-agent: VP-15P/2.7.6.34 sofia-sip/1.12 │ │
│ │ │ │ │ │ <sip:42007@10.0.20.134:5060>;expires=359 │ │
│ │ │ │ │ │ │ │
│ 42009@test_domain │ 42009 │ true │ sip │ 42009:42009 (ds) │ q: 1.0; ip-set: test_set; on port: 5060; sip │ internal iface name: 06da42f374eea5e5 │
│ │ │ │ │ │ node control: sip1@ecss1 │ sip domain: test_domain │
│ │ │ │ │ │ gate: {gate_amqp,<<>>,<<"acp.sip.sip1.0a00141f.init.q">>} │ │
│ │ │ │ │ │ sip transport: udp │ │
│ │ │ │ │ │ user-agent: VP-15P/2.7.6.34 sofia-sip/1.12 │ │
│ │ │ │ │ │ <sip:42009@10.0.20.138:5060>;expires=1033 │ │
└───────────────────┴────────┴─────────────────┴───────┴──────────────────┴────────────────────────────────────────────────────────────┴───────────────────────────────────────┘
┌─────────────┐
│ elements: 3 │
└─────────────┘
is-elph
Команда для проверки наличия у пользователя SIP-свойства Elph и способности его установки.
Путь команды:
/domain/<DOMAIN>/sip/user/is-elph
Синтаксис:
is-elph <GROUP_NAME> <SIP_URI>
Параметры:
<GROUP_NAME> - имя группы интерфейсов, логическая привязка интерфейсов в определенной виртуальной АТС;
<SIP_URI> - SIP URI абонента, задается в виде: username@host, где username – номер абонента; host – название SIP-домена;
Примеры:
/domain/test_domain/sip/user/is-elph sip * ┌──────────────────────────────┬──────────────────────────────┬──────────────────────────────┬────────────────────────────────────────┐ │ Group │ User │ Is Elph user │ Can be set to Elph user │ ├──────────────────────────────┼──────────────────────────────┼──────────────────────────────┼────────────────────────────────────────┤ │sip │42000@test_domain │false │true │ │sip │42001@test_domain │false │true │ │sip │42002@test_domain │true │false - Already is Elph user │ │sip │42003@test_domain │false │true │ │sip │42005@test_domain │false │true │ │sip │42007@test_domain │false │true │ │sip │42009@test_domain │false │true │ │sip │50000@test_domain │false │true │ │sip │50001@test_domain │false │true │ └──────────────────────────────┴──────────────────────────────┴──────────────────────────────┴────────────────────────────────────────┘
list
Команда для просмотра списка пользователей по указанному правилу.
Путь команды:
/domain/<DOMAIN>/sip/user/list
Синтаксис:
list <KEY> | <GROUP> <KEY> | <GROUP> <KEY> <IFACE_TEMPLATE>
Параметры:
<KEY> - название параметра, по которому формировать список:
- --active - зарегистрированные абоненты;
- --inactive - незарегистрированные абоненты
- --forbidden - авторизация запрещена;
<GROUP> - название группы пользователей. Символ "*" используется для указания всех групп;
<IFACE_TEMPLATE> - шаблон имени интерфейса. Символ "*" используется для указания маски интерфейсов.
Примеры:
/domain/test_domain/sip/user/list --active 10 users check for active ... [**********************************************************************] 803mks 11 users check for active ... [**********************************************************************] 397mks Executed on the sip1@ecss2 ┌─────┬─────────────────┬─────────────────────────────────────────┐ │group│ user │ current contact(s) │ ├─────┼─────────────────┼─────────────────────────────────────────┤ │sip │42005@test_domain│<sip:42005@10.0.20.35>;expires=120 │ │sip │42007@test_domain│<sip:42007@10.0.20.134:5060>;expires=1153│ │sip │42009@test_domain│<sip:42009@10.0.20.138:5060>;expires=1052│ │sip │50000@test_domain│<sip:50000@10.0.20.136:5060>;expires=843 │ │sip │50001@test_domain│<sip:50001@10.0.20.136:5060>;expires=485 │ └─────┴─────────────────┴─────────────────────────────────────────┘ ┌─────────────┐ │ elements: 5 │ └─────────────┘
/domain/test_domain/sip/user/list --forbidden Executed on the sip1@ecss1 ┌────────────────────┬───────────────────────┬────────────────────────────────────────────────────────────────────────────────┐ │request by transport│time of the last trying│ info │ ├────────────────────┼───────────────────────┼────────────────────────────────────────────────────────────────────────────────┤ │10.0.20.35:5060 udp │2025-08-11 10:55:10 │sip:vasja@test_domain : No interface detected (first: 2025-08-11 10:55:10, 1/1 t│ │ │ │ime(s)) │ │42005@test_domain │2025-08-12 09:43:33 │Wrong authentication (first: 2025-08-12 09:10:52, 0/110 time(s)) │ └────────────────────┴───────────────────────┴────────────────────────────────────────────────────────────────────────────────┘ ┌─────────────┐ │ elements: 2 │ └─────────────┘
registered
Команда для просмотра списка зарегистрированных в данный момент абонентов.
Просмотр доступен по всей группе, по маске, по определенному абоненту.
Путь команды:
/domain/<DOMAIN>/sip/user/registered
Синтаксис:
registered [<GROUP> [<USER_INTERFACE>]]
Параметры:
<GROUP> - название группы пользователей. Символ "*" используется для указания всех групп;
<USER_INTERFACE> - название интерфейса, задается в формате: Имя_пользователя@Домен_SIP_регистрации. Символ "*" используется для указания всех интерфейсов или маски номера.
Пример:
/domain/test_domain/sip/user/registered sip 4200*
10 make users list ...
[**********************************************************************] 86mks
7 users information read ...
[**********************************************************************] 2ms
Executed on the sip1@ecss1
┌───────────────────┬────────┬─────────┬─────────────────────────────────────────────────────┬─────────────────────────────────────────────────────┐
│ Interface │ Number │ Dynamic │ Contact │ Registration info │
├───────────────────┼────────┼─────────┼─────────────────────────────────────────────────────┼─────────────────────────────────────────────────────┤
│ 42005@test_domain │ 42005 │ false │ q: 1.0; ip-set: test_set; on port: 5060; sip │ registered on: │
│ │ │ │ node control: sip1@ecss1 │ node: sip1@ecss1 port: udp 10.0.20.31:5060 │
│ │ │ │ gate: {gate_amqp,<<>>,<<"acp.sip.sip1.0a00141f.init│ last via list: │
│ │ │ │.q">>} │ SIP/2.0/UDP 10.0.20.35;received=10.0.20.35;rport=5│
│ │ │ │ sip transport: udp │060 │
│ │ │ │ user-agent: Twinkle/1.10.2 │ last user agent: │
│ │ │ │ <sip:42005@10.0.20.35>;expires=1970 │ Twinkle/1.10.2 │
│ │ │ │ │ │
│ 42007@test_domain │ 42007 │ false │ q: 1.0; ip-set: test_set; on port: 5060; sip │ registered on: │
│ │ │ │ node control: sip1@ecss1 │ node: sip1@ecss1 port: udp 10.0.20.31:5060 │
│ │ │ │ gate: {gate_amqp,<<>>,<<"acp.sip.sip1.0a00141f.init│ last via list: │
│ │ │ │.q">>} │ SIP/2.0/UDP 10.0.20.134;received=10.0.20.134;rport│
│ │ │ │ sip transport: udp │=5060 │
│ │ │ │ user-agent: VP-15P/2.7.6.34 sofia-sip/1.12 │ last user agent: │
│ │ │ │ <sip:42007@10.0.20.134:5060>;expires=1391 │ VP-15P/2.7.6.34 sofia-sip/1.12 │
│ │ │ │ │ │
│ 42009@test_domain │ 42009 │ false │ q: 1.0; ip-set: test_set; on port: 5060; sip │ registered on: │
│ │ │ │ node control: sip1@ecss1 │ node: sip1@ecss1 port: udp 10.0.20.31:5060 │
│ │ │ │ gate: {gate_amqp,<<>>,<<"acp.sip.sip1.0a00141f.init│ last via list: │
│ │ │ │.q">>} │ SIP/2.0/UDP 10.0.20.138;received=10.0.20.138;rport│
│ │ │ │ sip transport: udp │=5060 │
│ │ │ │ user-agent: VP-15P/2.7.6.34 sofia-sip/1.12 │ last user agent: │
│ │ │ │ <sip:42009@10.0.20.138:5060>;expires=535 │ VP-15P/2.7.6.34 sofia-sip/1.12 │
└───────────────────┴────────┴─────────┴─────────────────────────────────────────────────────┴─────────────────────────────────────────────────────┘
┌─────────────┐
│ elements: 3 │
└─────────────┘
elph-registered
Команда для просмотра списка зарегистрированных в данный момент абонентов, использующих Elph.
Просмотр доступен по всему домену либо по группе.
Путь команды:
/domain/<DOMAIN>/sip/user/elph-registered
Синтаксис:
elph-registered [<GROUP> ]
Параметры:
<GROUP> - название группы пользователей. Символ "*" используется для указания всех групп.
Пример:
/domain/test_domain/sip/user/elph-registered * Executed on the sip1@ecss1 ┌──────────────────┬────────┬─────────┬──────────────────────────────────────────────┬─────────────────────────────────────────────────────────┐ │ Interface │ Number │ Dynamic │ Contact │ Registration info │ ├──────────────────┼────────┼─────────┼──────────────────────────────────────────────┼─────────────────────────────────────────────────────────┤ │ 1006@test_domain │ 1006 │ false │ q: 1.0; ip-set: lab.ims; on port: 5060; sip │ registered on: │ │ │ │ │ registered by node: sip1@ecss1 │ node: sip1@ecss1 port: tcp 10.25.88.84:5060 │ │ │ │ │ sip transport: tcp │ last via list: │ │ │ │ │ user-agent: Elph-desktop 2.1.136 │ SIP/2.0/TCP 192.168.114.122;received=95.167.221.157 │ │ │ │ │ <sip:1006@95.167.221.157:12702>;expires=603 │ last user agent: │ │ │ │ │ │ Elph-desktop 2.1.136 │ └──────────────────┴────────┴─────────┴──────────────────────────────────────────────┴─────────────────────────────────────────────────────────┘ ┌─────────────┐ │ elements: 1 │ └─────────────┘
remove
Данной командой выполняется удаление абонента (группы абонентов).
При удалении удаляются соответствующие интерфейсы и алиасы.
Удаление применяется к конкретному URI абонента, к диапазону URI (начинающихся с одной комбинации символов), ко всей группе абонентов.
При удалении будет предложено удалить также и аккаунт(ы) на LDAP-сервере.
Путь команды:
/domain/<DOMAIN>/sip/user/remove
Синтаксис:
remove <GROUP> <USER_INTERFACE> [--force]
Параметры:
<GROUP>- название группы пользователей. Символ "*" используется для указания всех групп;
<USER_INTERFACE> - название удаляемого интерфейса, задается в формате: Имя_пользователя@Домен_SIP_регистрации;
Имя пользователя может быть задано шаблоном: Prefix_Symbols{Start_Digits-Stop_Digits}.
[--force] - удаление без дополнительного подтверждения (опциональный параметр).
Пример:
Удаление одного абонента:
/domain/test_domain/sip/user/remove test 42010@test_domain [remove] Remove interfaces. Undo will be impossible continue: yes/no ?> yes 1 make users list ... [**********************************************************************] 44mks 1 interfaces check for existing ... [**********************************************************************] 7mks 1 read users binary id ... [**********************************************************************] 94mks 1 users leave ... [**********************************************************************] 5ms 10 interfaces recall to base [**********************************************************************] 7ms Executed on the sip1@ecss1 Complete
Удаление диапазона абонентов:
/domain/test_domain/sip/user/remove test 4201{1-9}@test_domain --force
9 make users list ...
[**********************************************************************] 62mks
9 interfaces check for existing ...
[**********************************************************************] 15mks
9 read users binary id ...
[**********************************************************************] 384mks
9 interfaces divided into 1 parts to remove from SIP ...
[**********************************************************************] 7mks
9 users leave ...
[**********************************************************************] 78ms
9 interfaces divided into 1 parts to remove from DS ...
[**********************************************************************] 10mks
9 interfaces and aliases remove from DS ...
[**********************************************************************] 93ms
1 interfaces recall to base
[**********************************************************************] 4ms
Executed on the sip1@ecss2
Complete
Удаление всей группы абонентов:
/domain/test_domain/sip/user/remove test * [remove] Remove interfaces. Undo will be impossible continue: yes/no ?> yes 11 interfaces check for existing ... [**********************************************************************] 84mks 11 read users binary id ... [**********************************************************************] 479mks 11 interfaces divided into 1 parts to remove from SIP ... [**********************************************************************] 8mks 11 users leave ... [**********************************************************************] 93ms 11 interfaces divided into 1 parts to remove from DS ... [**********************************************************************] 8mks 11 interfaces and aliases remove from DS ... [**********************************************************************] 256ms Executed on the sip1@ecss1 Intermediate (incomplete) result: Group test has been removed (all interfaces in this group was removed) ... Executed on the sip1@ecss1 Complete
set
Данной командой выполняется настройка параметров абонентов и группы.
Пароли проверяются на соответствие требованиям, установленным в профиле безопасности (/system/security/profile/), параметр restrictions.
Путь команды:
/domain/<DOMAIN>/sip/user/set
Синтаксис:
set <GROUP_NAME> <SIP_URI> <PARAMETER> <VALUE>
Параметры:
<GROUP_NAME> - имя группы интерфейсов, логическая привязка интерфейсов в определенной виртуальной АТС;
<SIP_URI> - SIP URI абонента, задается в виде: 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.
<PARAMETER> - имя изменяемого параметра, список приведен выше;
<VALUE> - значение изменяемого параметра, список приведен выше.
Пример:
/domain/test_domain/sip/user/set sip 50002@test_domain category_to_sip category 1 make users list ... [**********************************************************************] 13mks set for 1 users ... [**********************************************************************] 6ms Executed on the sip1@ecss1
Пример назначения профиля (режима):
Значения могут быть:
- auto - автоматическое определение (по заголовку User-Agent);
- none - режим профилей игнорируется (сейчас используется по умолчанию этот режим);
- coral - для абонентов Coral;
- PROFILE_NAMES - список имеющихся профилей, из которых выбирается лишь один.
set-elph
Данной командой выполняется установка свойства Elph для пользователя SIP.
Путь команды:
/domain/<DOMAIN>/sip/user/set-elph
Синтаксис:
set-elph <GROUP_NAME> <SIP_URI>
Параметры:
<GROUP_NAME> - имя группы интерфейсов, логическая привязка интерфейсов в определенной виртуальной АТС;
<SIP_URI> - SIP URI абонента, задается в виде: username@host, где username – номер абонента; host – название SIP-домена;
Команда выполняется индивидуально, задать список невозможно.
Пример:
/domain/test_domain/sip/user/set-elph sip 42002@test_domain Success: Elph properties are set for users in "sip" group(s): ["42002@test_domain"]
stop-registration
Данной командой производится принудительное завершение регистрации.
Сброс регистрации применяется как к конкретному URI абонента, так и к диапазону по маске.
Может понадобиться, например, для выведения шлюза из работы (для его замены).
Путь команды:
/domain/<DOMAIN>/sip/user/stop-registration
Синтаксис:
stop-registration <GROUP> <USER_INTERFACE> [--force]
Параметры:
<GROUP> - название группы пользователей. Символ "*" используется для указания всех групп;
<USER_INTERFACE> - название интерфейса или шаблон;
[--force] - выполнить команду без подтверждения.
Пример:
/domain/test_domain/sip/user/stop-registration sip 42007@test_domain --force 1 make users list ... [**********************************************************************] 23mks stop registration to 1 interfaces ... [**********************************************************************] 11ms 1 users divided into 1 parts to declare ... [**********************************************************************] 9mks set 1 interfaces to inactive state on DS ... [**********************************************************************] 10ms Executed on the sip1@ecss1 1 users are de-registered (directly expired): 06da428bec13ff40 (42007@test_domain) ... 06da428bec13ff40
subscription-limits
Команда предназначена для просмотра текущих лимитов подписок пользователя.
Путь команды:
/domain/<DOMAIN>/sip/user/subscription-limits
Синтаксис:
subscription-limits [Type] [Number]
Параметры:
Type - blf | presence;Number - номер абонента.
Пример:
/domain/test_domain/sip/user/subscription-limits * * ┌──────┬────────┬─────┐ │Number│ Type │Limit│ ├──────┼────────┼─────┤ │42007 │presence│0/16 │ │42009 │presence│0/32 │ │42009 │blf │0/16 │ └──────┴────────┴─────┘
subscription-list
Команда предназначена для просмотра статистики подписок пользователей.
Путь команды:
/domain/<DOMAIN>/sip/user/subscription-list
Синтаксис:
subscription-list [OPTIONS]
Параметры:
- ID - выбор по идентификатору. Несовместим с параметрами: --from, --to, --event;
- EVENT - выбор по типу blf | presence. Несовместим с параметром: --id;
- FROM - выбор по номеру "From" Несовместим с параметром: --id;
- TO - выбор по номеру "To" Несовместим с параметром: --id;
- COUNT - максимальное количество строк (по умолчанию: 50) Несовместим с параметром: --id.
Пример:
/domain/test_domain/sip/user/subscription-list ┌────────────────────────────────┬─────────────────┬────────────────────┬────────────────────┬──────────┐ │ ID │ Event │ From │ To │ Expires │ ├────────────────────────────────┼─────────────────┼────────────────────┼────────────────────┼──────────┤ │ca8498ddfae461cd619ad0ed2c954ac1│blf │42007 │42009 │234 │ │d81aec36b572fd69864b3f89f4883ddc│blf │42009 │42005 │691 │ │8f96882221071ff226e695af1d36e5be│blf │42009 │42001 │691 │ └────────────────────────────────┴─────────────────┴────────────────────┴────────────────────┴──────────┘
/domain/test_domain/sip/user/subscription-list --from 42009 ┌────────────────────────────────┬─────────────────┬────────────────────┬────────────────────┬──────────┐ │ ID │ Event │ From │ To │ Expires │ ├────────────────────────────────┼─────────────────┼────────────────────┼────────────────────┼──────────┤ │d81aec36b572fd69864b3f89f4883ddc│blf │42009 │42005 │622 │ │8f96882221071ff226e695af1d36e5be│blf │42009 │42001 │622 │ └────────────────────────────────┴─────────────────┴────────────────────┴────────────────────┴──────────┘
subscription-monitor
Команда предназначена для мониторинга подписок пользователя.
Путь команды:
/domain/<DOMAIN>/sip/user/subscription-monitor
Синтаксис:
monitor event = <TypeService> <Address1> <Address2> ...
Прерывание мониторинга - Ctrl+C
Параметры:
<Address> - используемый адрес домена;
<TypeService> - мониторинг услуг blf или голосовой почты.
Пример:
/domain/test_domain/sip/user/subscription-monitor event = * 42009 trying : 2516270882@192.168.2.201 : early : 2516270882@192.168.2.201 : test:42009 -> :42007 confirmed : 2516270882@192.168.2.201 : test:42009 -> :42007 terminated : 2516270882@192.168.2.201 : test:42009 -> :42007 Command has been canceled: interrupted
subscription-stop
Команда предназначена для остановки подписок пользователя.
Путь команды:
/domain/<DOMAIN>/sip/user/subscription-stop
Синтаксис:
subscription-stop <SRC_USER_INTERFACE><TYPE><DST_USER_INTERFACE> [--force]
Параметры:
<SRC_USER_INTERFACE> - название интерфейса подписчика. Символ "*" используется для указания всех пользователей;
<TYPE> - тип подписки (blf, conference-info, presence, ss-info, voicemail). Символ "*" используется для указания всех типов;
<DST_USER_INTERFACE> - название интерфейса, на который подписан пользователь. Символ "*" используется для указания всех пользователей.
Пример:
/domain/test_domain/sip/user/subscription-stop 42009@test_domain blf 42007@test_domain [subscription-stop] record(s) will be removed continue: yes/no ?> yes Executed on the sip1@ecss1 1 subscriptions are stoped