/domain/<DOMAIN>/sip/user/ - команды управления конфигурацией абонентов SIP
В данном разделе приводится описание команд управления конфигурацией абонентов SIP.
<DOMAIN> - имя виртуальной АТС.
Набор параметров SIP
authentication
Команда просмотра информации о параметрах авторизации абонента.
При запросе выполняется запрос на LDAP-сервер для получения данных абонентского аккаунта.
Путь команды:
/domain/<DOMAIN>/sip/user/authentication
Синтаксис:
authentication <GROUP> <USER_INTERFACE>
Параметры:
<GROUP> - название группы пользователей. Символ "*" используется для указания всех групп;
<USER_INTERFACE> - название интерфейса, задается в формате: Имя_пользователя@Домен_SIP_регистрации. Символ "*" используется для указания всех интерфейсов.
Пример:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/authentication loc.gr 240502@biysk.local 1 make users list ... [**********************************************************************] 36mks check authentication info for 1 interfaces ... [**********************************************************************] 7ms Executed on the sip1@ecss1 ┌────────────────────┬─────────┬────────────┬────────────────┐ │ User │ Use QOP │ Trusted IP │ LDAP account │ ├────────────────────┼─────────┼────────────┼────────────────┤ │ 240502@biysk.local │ true │- │ no_information │ └────────────────────┴─────────┴────────────┴────────────────┘ ┌─────────────┐ │ elements: 1 │ └─────────────┘ [exec at: 18.03.2019 22:38:53, exec time: 118ms, nodes: sip1@ecss1]
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] - установка данного флага позволяет отобразить все вызовы, длительность которых менее установленного времени.
Пример:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/call-list --more 2 min Executed on the sip1@ecss1 ┌────────────────────┬────────────────────────────┬───────────┬──────────────────────────────────────────┬───────────────────────────────────────────────────────┐ │ Interface URI │ Direction │ State │ Time │ Additional info │ ├────────────────────┼────────────────────────────┼───────────┼──────────────────────────────────────────┼───────────────────────────────────────────────────────┤ │ 240244@biysk.local │ sip[240244] -> ssw[240470] │ connected │ Start: Mon, 18 Mar 2019 13:49:54 │ Node: sip1@ecss1, <0.29555.0> │ │ │ │ │ Last activity: Mon, 18 Mar 2019 13:52:48 │ CallRef: 3833844896 │ │ │ │ │ │ Call-ID: "8f84-46ae" │ │ │ │ │ │ SessionID: <<"8cfadbfb0e6c517c">> │ │ │ │ │ │ Session handler: {amqp_io_2,<0.29555.0>} │ │ 240470@biysk.local │ sip[240470] <- ssw[240244] │ connected │ Start: Mon, 18 Mar 2019 13:49:54 │ Node: sip1@ecss1, <0.29557.0> │ │ │ │ │ Last activity: Mon, 18 Mar 2019 13:52:48 │ CallRef: 3833844896 │ │ │ │ │ │ Call-ID: "BA:8cfadbfb0e6c517c:8cfadc03a5511282" │ │ │ │ │ │ SessionID: <<"BA:8cfadbfb0e6c517c:8cfadc03a5511282">> │ │ │ │ │ │ Session handler: {amqp_io_7,<0.29557.0>} │ └────────────────────┴────────────────────────────┴───────────┴──────────────────────────────────────────┴───────────────────────────────────────────────────────┘ ┌────────────┐ │ 2 sessions │ └────────────┘ [exec at: 18.03.2019 13:52:49, exec time: 75ms, nodes: sip1@ecss1]
change-group
Команда изменения группы интерфейса.
Путь команды:
/domain/<DOMAIN>/sip/user/change-group
Синтаксис:
change-group <GROUP> <USER INTERFACE> <OTHER GROUP> [--force]
Параметры:
<GROUP> - название группы интерфейсов;
<USER INTERFACE> - логическое имя интерфейса.
<OTHER GROUP> - название группы интерфейсов, на которую производится замена. При отсутствии создается новая;
--force - выполнение команды без запроса подтверждения.
Примеры:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/change-group loc.gr 240800@biysk.local 800.gr [change-group] Group 800.gr isn't exists continue: yes/no ?> yes 1 make users list ... [**********************************************************************] 92mks 1 interfaces apply ... [**********************************************************************] 1ms Executed on the sip1@ecss2 ok [exec at: 19.03.2019 10:42:30, exec time: 4s 816ms, nodes: sip1@ecss2]
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/change-group loc.gr 24081{0-9}@biysk.local 800.gr 10 make users list ... [**********************************************************************] 127mks 5 interfaces apply ... [**********************************************************************] 12ms Executed on the sip1@ecss1 ok [exec at: 19.03.2019 10:43:00, exec time: 509ms, nodes: sip1@ecss1]
check
Команда проверки доступности абонентского устройства по сигнализации.
Путь команды:
/domain/<DOMAIN>/sip/user/check
Синтаксис:
check <GROUP> <USER_INTERFACE> [timerF = <TIMEOUT>]
Параметры:
<GROUP> - название группы интерфейсов;
<USER_INTERFACE> - название интерфейса, задается в формате: Имя_пользователя@Домен_SIP_регистрации. Символ "*" используется для указания маски интерфейсов, например:
./user/check test.subscribers * ./user/check test.subscribers 10000* ./user/check test.subscribers 100000@eltex.local timerF = 5000
<TIMEOUT> - тайм-аут ожидания ответа, в пределах которого отправляются повторные запросы, если удаленная сторона не отвечает. По умолчанию 5000 мс.
Пример:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/check loc.gr 24046* 324 make users list ... [**********************************************************************] 803mks Executed on the sip1@ecss2 Intermediate (incomplete) result: check for user 240462@biysk.local by sip1@ecss2 (node control: false) ... Executed on the sip1@ecss2 Intermediate (incomplete) result: check for user 240464@biysk.local by sip1@ecss2 (node control: false) ... Executed on the sip1@ecss2 Intermediate (incomplete) result: check for user 240466@biysk.local by sip1@ecss2 (node control: false) ... Executed on the sip1@ecss2 Intermediate (incomplete) result: check for user 240469@biysk.local by sip1@ecss2 (node control: false) ... Executed on the sip1@ecss2 ┌────────┬────────────────────┬────────────┬───────────────────────────────────────────────────────────────────────┐ │ Group │ User │ Accessible │ Check info │ ├────────┼────────────────────┼────────────┼───────────────────────────────────────────────────────────────────────┤ │ loc.gr │ 240462@biysk.local │ true │ OPTIONS to <sip:240462@192.168.2.6>: 200 OK, cseq: 875088 OPTIONS. │ │ │ │ │ Request by node: sip1@ecss2 │ │ │ │ │ │ │ loc.gr │ 240464@biysk.local │ true │ OPTIONS to <sip:240464@192.168.2.200>: 200 OK, cseq: 979690 OPTIONS. │ │ │ │ │ Request by node: sip1@ecss2 │ │ │ │ │ │ │ loc.gr │ 240465@biysk.local │ false │ User isn't registered now │ │ │ │ │ │ │ loc.gr │ 240466@biysk.local │ true │ OPTIONS to <sip:240466@192.168.2.6>: 200 OK, cseq: 7954 OPTIONS. │ │ │ │ │ Request by node: sip1@ecss2 │ │ │ │ │ │ │ loc.gr │ 240467@biysk.local │ false │ User isn't registered now │ │ │ │ │ │ │ loc.gr │ 240469@biysk.local │ true │ OPTIONS to <sip:240469@192.168.2.6>: 200 OK, cseq: 118367 OPTIONS. │ │ │ │ │ Request by node: sip1@ecss2 │ └────────┴────────────────────┴────────────┴───────────────────────────────────────────────────────────────────────┘ [exec at: 19.03.2019 10:47:39, exec time: 451ms, nodes: sip1@ecss2]
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] - удаление без дополнительного подтверждения (опциональный параметр).
Примеры:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/clean 800.gr 240813@biysk.local register-expire-max [clean] Set parameters to default value continue: yes/no ?> yes 1 make users list ... [**********************************************************************] 46mks clean to 1 interfaces ... [**********************************************************************] 6ms Executed on the sip1@ecss2 complete [exec at: 19.03.2019 11:39:56, exec time: 6s 582ms, nodes: sip1@ecss2]
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/clean loc.gr 24065* qop-authentication --force 324 make users list ... [**********************************************************************] 379mks clean to 10 interfaces ... [**********************************************************************] 51ms Executed on the sip1@ecss2 complete [exec at: 19.03.2019 11:56:23, exec time: 378ms, nodes: sip1@ecss2]
declare
Команда декларации абонента (группы абонентов).
При декларации создаются соответствующие интерфейсы и алиасы.
При требовании аутентификации для абонента (абонентов) можно сразу прописать параметры аккаунта (логин, пароль).
Путь команды:
/domain/<DOMAIN>/sip/user/declare
Синтаксис:
declare <ROUTING_CONTEXT> <GROUP> <USER_INTERFACE> <ALIAS> <QOP_AUTH> <LOGIN> <PASSWORD>
Параметры:
<ROUTING_CONTEXT> - название существующего контекста маршрутизации;
<GROUP> - название группы пользователей (может быть задана существующая или новая группа пользователей);
<USER_NUMBER> - номер создаваемого SIP-абонента.
<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 без требования аутентификации:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/declare ctx_from_smgreg 800.gr 240815 alias-as-user no_qop_authentication none Executed on the sip1@ecss1 Intermediate (incomplete) result: Declaration for range: 240815@biysk.local..240815@biysk.local (1) ... 1 interfaces check for existing ... [**********************************************************************] 112mks 1 users interfaces declaration ... [**********************************************************************] 21ms 1 users aliases declaration ... [**********************************************************************] 46ms 7 interfaces recall to base [**********************************************************************] 10ms Executed on the sip1@ecss1 ┌────────────────────────┐ │ declared 1 subscribers │ └────────────────────────┘ [exec at: 19.03.2019 13:22:47, exec time: 242ms, nodes: sip1@ecss1]
Декларация 10 абонентов с требованием аутентификации при регистрации, qop требуется, сразу создаются аккаунты с автоматической генерацией паролей:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/declare ctx_from_local 85.gr 24084{0-9} alias-as-user qop_authentication common_login test48-1 auto-generation Executed on the sip1@ecss2 Intermediate (incomplete) result: Declaration for range: 240840@biysk.local..240849@biysk.local (10) ... 10 interfaces check for existing ... [**********************************************************************] 213mks 10 users interfaces declaration ... [**********************************************************************] 165ms 10 users aliases declaration ... [**********************************************************************] 33ms 10 interfaces recall to base [**********************************************************************] 16ms Executed on the sip1@ecss2 ┌─────────────────────────┐ │ declared 10 subscribers │ └─────────────────────────┘ [exec at: 19.03.2019 13:18:38, exec time: 369ms, nodes: sip1@ecss2]
errors
Команда просмотра информации об ошибках в регистрации абонентов.
Путь команды:
/domain/<DOMAIN>/sip/user/errors
Синтаксис:
errors <PARAMETER> [VALUE]
Параметры:
<PARAMETER> - назначаемое действие, принимает значение:
- clear-table - удаление всех записей об ошибках регистрации;
- set-limit <LIMIT> - установление максимального количества записей (<LIMIT>), значение должно быть целым;
- uri <URI> - просмотр информации об ошибках для определенного URI;
- all - просмотр информации обо всех ошибках;
- known - просмотр информации об ошибках регистрации известных абонентов;
- unknown - просмотр информации об ошибках регистрации неизвестных абонентов;
<VALUE> - значение.
Примеры:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/errors set-limit 5 Executed on the sip1@ecss2 [{old,1000},{new,5}] [exec at: 19.03.2019 13:24:43, exec time: 113ms, nodes: sip1@ecss2]
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/errors Executed on the sip1@ecss1 ┌────────────────────┬─────────────────────┬────────────────────────────────────────────────────────────────┐ │ Uri │ Last event time │ Event │ ├────────────────────┼─────────────────────┼────────────────────────────────────────────────────────────────┤ │ 240544@biysk.local │ 2019-03-19 07:38:37 │ Wrong authentication (first: 2019-03-19 07:38:37, 2/2 time(s)) │ │ 240550@biysk.local │ 2019-03-19 07:38:37 │ Wrong authentication (first: 2019-03-19 07:38:37, 0/2 time(s)) │ │ 240592@biysk.local │ 2019-03-19 07:38:37 │ Wrong authentication (first: 2019-03-19 07:38:37, 2/2 time(s)) │ │ 240602@biysk.local │ 2019-03-19 07:38:37 │ Wrong authentication (first: 2019-03-19 07:38:37, 0/2 time(s)) │ │ 240635@biysk.local │ 2019-03-19 07:38:37 │ Wrong authentication (first: 2019-03-19 07:38:37, 0/2 time(s)) │ └────────────────────┴─────────────────────┴────────────────────────────────────────────────────────────────┘ [exec at: 19.03.2019 13:26:06, exec time: 92ms, nodes: sip1@ecss1]
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 пароль покажется автоматически
Примеры:
Информация по одному абоненту:
admin@mycelium1@ecss1:/$ domain/biysk.local/sip/user/info loc.gr 240101@biysk.local 1 make users list ... [**********************************************************************] 89mks 1 users information read ... [**********************************************************************] 8ms Executed on the sip1@ecss1 ┌─────────────────────┬────────────────────────────────────────────────────────────────────────────────┐ │ User │ 240101@biysk.local │ ├─────────────────────┼────────────────────────────────────────────────────────────────────────────────┤ │internal iface name │063015220171e7f3 │ │isActive │true │ │group │loc.gr │ │authentication │240101:******** (ds) use qop: true │ │contacts definition │q: 1.0; ip-set: ipset1; on port: 5060; sip │ │ │ registred by node: sip1@ecss1 │ │ │ sip transport: udp │ │ │ user-agent: Yealink SIP-T28P 2.73.14.3 │ │ │ <sip:240101@192.168.2.26:5060;transport=UDP;line=20457>;expires=744 │ │declared by │admin at 13.03.2020 15:02:40 │ │ │ │ │alarm_enable │false │ │aliases activities │240101:true │ │allow │INVITE, INFO, PRACK, ACK, BYE, CANCEL, OPTIONS, NOTIFY, SUBSCRIBE, REFER, UPDATE│ │ │, MESSAGE │ │allow events │refer, talk, hold │ │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.1.201:5062;received=194.150.142.251 │ │ │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 │16.06.2020 12:18:02 │ │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 │Yealink SIP-T28P 2.73.14.3 │ └─────────────────────┴────────────────────────────────────────────────────────────────────────────────┘ [exec at: 18.06.2020 11:00:30, exec time: 26ms, nodes: sip1@ecss1]
Сводная общая информация о всех sip-абонентах:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/info 330 users check for active ... [**********************************************************************] 25ms Executed on the sip1@ecss2 ┌────────┬─────────┬────────────────────────────────────────────────────────────────────────────────┐ │ Group │ Dynamic │ Parameters │ ├────────┼─────────┼────────────────────────────────────────────────────────────────────────────────┤ │ loc.gr │ false │ 'number of users' = 330 │ │ │ │ 'number of registered users' = 201 │ │ │ │ gate = {gate_amqp,<<"acp.adapter.init.ex">>,<<"acp.sip.sip1.ipset1.init.rk">>} │ │ │ │ owner = "sip1" │ └────────┴─────────┴────────────────────────────────────────────────────────────────────────────────┘ [exec at: 19.03.2019 10:20:19, exec time: 298ms, nodes: sip1@ecss2]
Регистрационная информация по абонентам из диапазона:
admin@mycelium1@ecss1:/$ domain/biysk.local/sip/user/info loc.gr 24046{4-6}@biysk.local 3 make users list ... [**********************************************************************] 250mks 3 users information read ... [**********************************************************************] 7ms Executed on the sip1@ecss1 ┌────────────────────┬────────┬─────────────────┬────────┬──────────────────────┬──────────────────────────────────────────────────────────────────┬───────────────────────────────────────┐ │ User │ Number │ Is active on DS │ Group │ Login │ Registration │ Extended information │ ├────────────────────┼────────┼─────────────────┼────────┼──────────────────────┼──────────────────────────────────────────────────────────────────┼───────────────────────────────────────┤ │ 240464@biysk.local │ 240464 │ true │ loc.gr │ 240464:******** (ds) │ q: 1.0; ip-set: ipset1; on port: 5060; sip │ internal iface name: 06301521aa3fe8d9 │ │ │ │ │ │ │ registred by node: sip1@ecss1 │ sip domain: biysk.local │ │ │ │ │ │ │ sip transport: system (udp_only) │ │ │ │ │ │ │ │ user-agent: TAU-2M.IP/2.0.0.229 SN/VI39005419 sofia-sip/1.12.10 │ │ │ │ │ │ │ │ <sip:240464@192.168.2.200:5064>;expires=1453 │ │ │ │ │ │ │ │ │ │ │ 240465@biysk.local │ 240465 │ true │ loc.gr │ 240465:******** (ds) │ q: 1.0; ip-set: ipset1; on port: 5060; sip │ internal iface name: 06301521ac323499 │ │ │ │ │ │ │ registred by node: sip1@ecss1 │ sip domain: biysk.local │ │ │ │ │ │ │ sip transport: system (udp_only) │ │ │ │ │ │ │ │ user-agent: TAU-2M.IP/2.0.0.229 SN/VI39005419 sofia-sip/1.12.10 │ │ │ │ │ │ │ │ <sip:240465@192.168.2.200:5065>;expires=1596 │ │ │ │ │ │ │ │ │ │ │ 240466@biysk.local │ 240466 │ false │ loc.gr │ 240466:******** (ds) │ Contacts list is empty │ internal iface name: 063015220b839f5b │ │ │ │ │ │ │ │ sip domain: biysk.local │ │ │ │ │ │ │ │ last via: │ │ │ │ │ │ │ │ SIP/2.0/UDP 10.25.1.15:5041 │ │ │ │ │ │ │ │ SIP/2.0/UDP 192.168.2.26:5060 │ │ │ │ │ │ │ │ last time: │ │ │ │ │ │ │ │ 2020-06-16 09:35:57 │ └────────────────────┴────────┴─────────────────┴────────┴──────────────────────┴──────────────────────────────────────────────────────────────────┴───────────────────────────────────────┘ ┌─────────────┐ │ elements: 3 │ └─────────────┘ [exec at: 18.06.2020 11:07:14, exec time: 24ms, nodes: sip1@ecss1]
Полная информация по абоненту:
admin@mycelium1@ecss1:/$ domain/biysk.local/sip/user/info loc.gr 240470@biysk.local --show-password 1 make users list ... [**********************************************************************] 43mks 1 users information read ... [**********************************************************************] 17ms Executed on the sip1@ecss1 ┌─────────────────────┬────────────────────────────────────────────────────────────────────────────────┐ │ User │ 240470@biysk.local │ ├─────────────────────┼────────────────────────────────────────────────────────────────────────────────┤ │internal iface name │06301521af32b2ea │ │isActive │true │ │group │loc.gr │ │authentication │240470:******** (ds) use qop: true │ │contacts definition │q: 1.0; ip-set: ipset1; on port: 5060; sip │ │ │ registred by node: sip1@ecss1 │ │ │ sip transport: udp │ │ │ user-agent: RG-1404GF-W/1.11.0 SN/VI25002012 sofia-sip/1.12.10 │ │ │ <sip:240470@192.168.2.26:5060;transport=UDP;line=1311>;expires=834 │ │declared by │admin at 13.03.2020 15:02:35 │ │ │ │ │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 10.25.1.23:5069;received=10.25.1.23;rport=5069 │ │ │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.06.2020 03:19:50 │ │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: 18.06.2020 11:09:37, exec time: 34ms, nodes: sip1@ecss1]
list
Команда для просмотра списка пользователей по указанному правилу.
Путь команды:
/domain/<DOMAIN>/sip/user/list
Синтаксис:
list <KEY> | <GROUP> <KEY> | <GROUP> <KEY> <IFACE_TEMPLATE>
Параметры:
<KEY> - название параметра, по которому формировать список :
- --active - зарегистрированные абоненты;
- --inactive - незарегистрированные абоненты
- --forbidden - авторизация запрещена;
<GROUP> - название группы пользователей. Символ "*" используется для указания всех групп;
<IFACE_TEMPLATE> - шаблон имени интерфейса. Символ "*" используется для указания маски интерфейсов.
Примеры:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/list loc.gr --active 24047* 324 make users list ... [**********************************************************************] 637mks 5 users check for active ... [**********************************************************************] 477mks Executed on the sip1@ecss2 ┌──────┬──────────────────┬───────────────────────────────────────────────────────────────────┐ │group │ user │ current contact(s) │ ├──────┼──────────────────┼───────────────────────────────────────────────────────────────────┤ │loc.gr│240470@biysk.local│<sip:240470@192.168.2.6:5060;transport=UDP;line=1311>;expires=1748 │ │loc.gr│240471@biysk.local│<sip:240471@192.168.2.6:5060;transport=UDP;line=8035>;expires=882 │ │loc.gr│240473@biysk.local│<sip:240473@192.168.2.6:5060;transport=UDP;line=62384>;expires=1286│ │loc.gr│240474@biysk.local│<sip:240474@192.168.2.6:5060;transport=UDP;line=25653>;expires=1072│ │loc.gr│240475@biysk.local│<sip:240475@192.168.2.6:5060;transport=UDP;line=11697>;expires=710 │ └──────┴──────────────────┴───────────────────────────────────────────────────────────────────┘ ┌─────────────┐ │ elements: 5 │ └─────────────┘ [exec at: 19.03.2019 13:43:09, exec time: 291ms, nodes: sip1@ecss2]
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/list --forbidden Executed on the sip1@ecss1 ┌────────────────────┬───────────────────────┬──────────────────────────────────────────────────────────────┐ │request by transport│time of the last trying│ info │ ├────────────────────┼───────────────────────┼──────────────────────────────────────────────────────────────┤ │240544@biysk.local │2019-03-19 07:38:37 │Wrong authentication (first: 2019-03-19 07:38:37, 2/2 time(s))│ │240550@biysk.local │2019-03-19 07:38:37 │Wrong authentication (first: 2019-03-19 07:38:37, 0/2 time(s))│ │240592@biysk.local │2019-03-19 07:38:37 │Wrong authentication (first: 2019-03-19 07:38:37, 2/2 time(s))│ │240602@biysk.local │2019-03-19 07:38:37 │Wrong authentication (first: 2019-03-19 07:38:37, 0/2 time(s))│ │240635@biysk.local │2019-03-19 07:38:37 │Wrong authentication (first: 2019-03-19 07:38:37, 0/2 time(s))│ └────────────────────┴───────────────────────┴──────────────────────────────────────────────────────────────┘ ┌─────────────┐ │ elements: 5 │ └─────────────┘ [exec at: 19.03.2019 13:40:58, exec time: 73ms, nodes: sip1@ecss1]
registered
Команда для просмотра списка зарегистрированных в данный момент абонентов.
Просмотр доступен по всей группе, по маске, по определенному абоненту.
Путь команды:
/domain/<DOMAIN>/sip/user/registered
Синтаксис:
registered [<GROUP> [<USER_INTERFACE>]]
Параметры:
<GROUP> - название группы пользователей. Символ "*" используется для указания всех групп;
<USER_INTERFACE> - название интерфейса, задается в формате: Имя_пользователя@Домен_SIP_регистрации. Символ "*" используется для указания всех интерфейсов или маски номера.
Пример:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/registered loc.gr 24046* 324 make users list ... [**********************************************************************] 780mks 6 users information read ... [**********************************************************************] 1ms Executed on the sip1@ecss2 ┌────────────────────┬────────┬─────────┬───────────────────────────────────────────┬───────────────────────────────────────────┐ │ Interface │ Number │ Dynamic │ Contact │ Registration info │ ├────────────────────┼────────┼─────────┼───────────────────────────────────────────┼───────────────────────────────────────────┤ │ 240462@biysk.local │ 240462 │ false │ q: 1.0; ip-set: ipset1; on port: 5060; sip│ registered on: │ │ │ │ │ │ node: sip1@ecss1 port: udp 192.168.2.61:│ │ │ │ │ registred by node: sip1@ecss1 │5060 │ │ │ │ │ sip transport: udp │ last via list: │ │ │ │ │ user-agent: Brcm-Callctrl/v1.10.3 M5T SIP│ SIP/2.0/UDP 192.168.2.6:5060;received=19│ │ │ │ │ Stack/4.1.2.2 │2.168.2.6;rport=5060 │ │ │ │ │ <sip:240462@192.168.2.6:5060;transport=UD│ SIP/2.0/UDP 10.28.32.131;received=10.28.│ │ │ │ │P;line=20445>;expires=69 │32.131 │ │ │ │ │ │ last user agent: │ │ │ │ │ │ Brcm-Callctrl/v1.10.3 M5T SIP Stack/4.1.│ │ │ │ │ │2.2 │ │ │ │ │ │ │ │ 240464@biysk.local │ 240464 │ false │ q: 1.0; ip-set: ipset1; on port: 5060; sip│ registered on: │ │ │ │ │ │ node: sip1@ecss1 port: udp 192.168.2.61:│ │ │ │ │ registred by node: sip1@ecss1 │5060 │ │ │ │ │ sip transport: system (udp_only) │ last via list: │ │ │ │ │ user-agent: TAU-2M.IP/2.0.0.229 SN/VI3900│ SIP/2.0/UDP 192.168.2.200:5064;received=│ │ │ │ │5419 sofia-sip/1.12.10 │192.168.2.200;rport=5064 │ │ │ │ │ <sip:240464@192.168.2.200:5064>;expires=1│ last user agent: │ │ │ │ │336 │ TAU-2M.IP/2.0.0.229 SN/VI39005419 sofia-│ │ │ │ │ │sip/1.12.10 │ │ │ │ │ │ │ │ 240466@biysk.local │ 240466 │ false │ q: 1.0; ip-set: ipset1; on port: 5060; sip│ registered on: │ │ │ │ │ │ node: sip1@ecss1 port: udp 192.168.2.61:│ │ │ │ │ registred by node: sip1@ecss1 │5060 │ │ │ │ │ sip transport: udp │ last via list: │ │ │ │ │ user-agent: VP-12/1.2.1.454 SN/VI51000844│ SIP/2.0/UDP 192.168.2.6:5060;received=19│ │ │ │ │ sofia-sip/1.12.10 │2.168.2.6;rport=5060 │ │ │ │ │ <sip:240466@192.168.2.6:5060;transport=UD│ SIP/2.0/UDP 10.25.1.5:5041;received=10.2│ │ │ │ │P;line=29316>;expires=894 │5.1.5;rport=5041 │ │ │ │ │ │ last user agent: │ │ │ │ │ │ VP-12/1.2.1.454 SN/VI51000844 sofia-sip/│ │ │ │ │ │1.12.10 │ │ │ │ │ │ │ │ 240469@biysk.local │ 240469 │ false │ q: 1.0; ip-set: ipset1; on port: 5060; sip│ registered on: │ │ │ │ │ │ node: sip1@ecss1 port: udp 192.168.2.61:│ │ │ │ │ registred by node: sip1@ecss1 │5060 │ │ │ │ │ sip transport: udp │ last via list: │ │ │ │ │ user-agent: Brcm-Callctrl/v1.10.3 M5T SIP│ SIP/2.0/UDP 192.168.2.6:5060;received=19│ │ │ │ │ Stack/4.1.2.2 │2.168.2.6;rport=5060 │ │ │ │ │ <sip:240469@192.168.2.6:5060;transport=UD│ SIP/2.0/UDP 10.28.32.131;received=10.28.│ │ │ │ │P;line=58471>;expires=69 │32.131 │ │ │ │ │ │ last user agent: │ │ │ │ │ │ Brcm-Callctrl/v1.10.3 M5T SIP Stack/4.1.│ │ │ │ │ │2.2 │ └────────────────────┴────────┴─────────┴───────────────────────────────────────────┴───────────────────────────────────────────┘ ┌─────────────┐ │ elements: 4 │ └─────────────┘ [exec at: 19.03.2019 14:03:53, exec time: 392ms, nodes: sip1@ecss2]
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] - удаление без дополнительного подтверждения (опциональный параметр).
Пример:
Удаление одного абонента:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/remove 800.gr 240815@biysk.local [remove] Remove interfaces. Undo will be impossible continue: yes/no ?> yes 1 make users list ... [**********************************************************************] 33mks 1 interfaces check for existing ... [**********************************************************************] 18mks 1 users leave ... [**********************************************************************] 12ms 1 interfaces remove from DS ... [**********************************************************************] 7ms Executed on the sip1@ecss1 Complete [exec at: 19.03.2019 14:16:57, exec time: 5s 499ms, nodes: sip1@ecss1]
Удаление диапазона абонентов:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/remove loc.gr 24079{5-9}@biysk.local [remove] Remove interfaces. Undo will be impossible continue: yes/no ?> yes 5 make users list ... [**********************************************************************] 63mks 4 interfaces check for existing ... [**********************************************************************] 39mks 4 users leave ... [**********************************************************************] 66ms 4 interfaces remove from DS ... [**********************************************************************] 11ms Executed on the sip1@ecss2 Complete [exec at: 19.03.2019 14:18:39, exec time: 2s 660ms, nodes: sip1@ecss2]
Удаление всей группы абонентов:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/remove 85.gr * [remove] Remove interfaces. Undo will be impossible continue: yes/no ?> yes 10 interfaces check for existing ... [**********************************************************************] 48mks 10 users leave ... [**********************************************************************] 165ms 10 interfaces remove from DS ... [**********************************************************************] 22ms Executed on the sip1@ecss1 Intermediate (incomplete) result: Group 85.gr has been removed (all interfaces in this group was removed) ... Executed on the sip1@ecss1 Complete [exec at: 19.03.2019 14:19:35, exec time: 2s 543ms, nodes: sip1@ecss1]
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> - значение изменяемого параметра, список приведен выше.
Пример:
admin@[ds1@ecss1]:/$ domain/biysk.local/sip/user/set loc.gr 240101@biysk.local rfc-4028-control false 1 make users list ... [**********************************************************************] 210mks set for 1 users ... [**********************************************************************] 6ms Executed on the sip1@ecss1 [exec at: 20.03.2019 23:46:52, exec time: 100ms, nodes: sip1@ecss1]
Пример назначения профиля(режима):
Значения могут быть:
- auto - автоматическое определение (по заголовку User-Agent);
- none - режим профилей игнорируется (сейчас используется по умолчанию этот режим);
- coral - для абонентов Coral;
- PROFILE_NAMES - список имеющихся профилей, из которых выбирается лишь один.
admin@ds1@ecss1:/$ domain/biysk.local/sip/user/set loc.gr 240244@biysk.local client-profile GrandStream Yealink auto coral none admin@ds1@ecss1:/$ domain/biysk.local/sip/user/set loc.gr 240244@biysk.local client-profile Yealink 1 make users list ... [**********************************************************************] 95mks set for 1 users ... [**********************************************************************] 5ms Executed on the sip1@ecss1 [exec at: 15.05.2019 12:44:10, exec time: 119ms, nodes: sip1@ecss1]
stop-registration
Данной командой производится принудительное завершение регистрации.
Сброс регистрации применяется как к конкретному URI абонента, так и к диапазону по маске.
Может понадобиться, например, для выведения шлюза из работы (для его замены).
Путь команды:
/domain/<DOMAIN>/sip/user/stop-registration
Синтаксис:
stop-registration <GROUP> <USER_INTERFACE> [--force]
Параметры:
<GROUP> - название группы пользователей. Символ "*" используется для указания всех групп;
<USER_INTERFACE> - название интерфейса или шаблон;
[--force] - выполнить команду без подтверждения.
Пример:
admin@[ds1@ecss1]:/$ domain/biysk.local/sip/user/stop-registration loc.gr 240464@biysk.local --force 1 make users list ... [**********************************************************************] 35mks stop registration to 1 interfaces ... [**********************************************************************] 12ms set 1 interfaces to inactive state on DS ... [**********************************************************************] 22ms Executed on the sip1@ecss2 1 users are de-registered (directly expired): 708c5bf76388b92e (240464@biysk.local) ... 708c5bf76388b92e (240464@biysk.local) [exec at: 20.03.2019 23:40:07, exec time: 155ms, nodes: sip1@ecss2]
subscription-list
Команда предназначена для просмотра статистики подписок пользователя.
Путь команды:
/domain/<DOMAIN>/sip/user/subscription-list
Синтаксис:
subscription-list
subscription-list where Column =|/=|<|>|<=|>= Value
subscription-list where Column =|/=|<|>|<=|>= Value order_by Column asc|desc
subscription-list order_by Column asc|desc
Параметры:
full - полный вывод;
order_by - сортировка;
where - фильтры.
Пример:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/subscription-list ┌─┬────┬──────┬──────┬──────────────────┬──────────────────┬───────┐ │#│Type│ From │ To │ Subscriber │ Target │Expired│ ├─┼────┼──────┼──────┼──────────────────┼──────────────────┼───────┤ │1│blf │240101│240470│240101@biysk.local│240470@biysk.local│1580 │ │2│blf │240101│240464│240101@biysk.local│240464@biysk.local│1578 │ │3│blf │240244│240464│240244@biysk.local│240464@biysk.local│1124 │ │4│blf │240244│240474│240244@biysk.local│240474@biysk.local│1124 │ └─┴────┴──────┴──────┴──────────────────┴──────────────────┴───────┘ [exec at: 23.03.2019 08:31:36, exec time: 412ms, nodes: sip1@ecss1]
subscription-monitor
Команда предназначена для мониторинга подписок пользователя.
Путь команды:
/domain/<DOMAIN>/sip/user/subscription-monitor
Синтаксис:
monitor event = <TypeService> <Address1> <Address2> ...
Прерывание мониторинга - Ctrl+C
Параметры:
<Address> - используемый адрес домена;
<TypeService> - мониторинг услуг blf или голосовой почты.
Пример:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/subscription-monitor event = blf 240475 240475 : seizure : [Calling = home475:240475, Called = undefined:419145] 240475 : active : [Calling = home475:240475, Called = undefined:419145] 240475 : release : [Calling = home475:240475, Called = undefined:419145] 240475 : seizure : [Calling = home475:240475, Called = undefined:240471] 240475 : alerting : [Calling = home475:240475, Called = undefined:240471] 240475 : release : [Calling = home475:240475, Called = undefined:240471] Command has been canceled: interrupted
subscription-stop
Команда предназначена для просмотра подписок пользователя.
Путь команды:
/domain/<DOMAIN>/sip/user/subscription-stop
Синтаксис:
subscription <GROUP> <USER_INTERFACE> [--force]
Параметры:
<GROUP> - название группы пользователей. Символ "*" используется для указания всех групп;
<USER_INTERFACE> - название интерфейса или шаблон.
--force - выполнить команду без запроса подтверждения.
Пример:
admin@[mycelium1@ecss1]:/$ domain/biysk.local/sip/user/subscription-stop loc.gr 240101@biysk.local blf [subscription-stop] record(s) will be removed continue: yes/no ?> yes Executed on the sip1@ecss1 5 subscriptions are stoped [exec at: 23.03.2019 09:12:38, exec time: 3s 442ms, nodes: sip1@ecss1]