Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

В данном разделе представлены команды управления транками SIP.

apply

Команда используется для применения к транку профиля настроек.

Параметры профиля применяются к транку разово. Если в профиле были изменения, то по необходимости нужно снова выполнить его применение к транку.

Путь команды:

domain/<DOMAIN>/trunk/sip/apply

Синтаксис:

apply <GROUP> <IFACE> profile <PROFILE>

Параметры:

<GROUP> - название группы интерфейсов;
<TRUNK_INTERFACE> - логическое имя транка;
<PROFILE> - имя профиля настроек транков. Для применения доступны профили, которые соответствует локализованным спецификациям ISUP: ISUP.ANSI; ISUP.ETSI; ISUP.RUS; ISUP.TELCORDIA. Профиль стандарта ISUP отличается от пользовательских профилей возможностью настраивать только определенные стандартом параметры.

Пример:

admin@[mycelium1@ecss1]:/$ domain/dom1.ssw/trunk/sip/apply new.gr test_trunk profile ISUP.ANSI 
Executed on the sip1@ecss1
profile 'ISUP.ANSI' is applyed to trunk 'test_trunk'.

block

Команда для блокировки определенного транка, всех транков одной группы.
Соответствующий интерфейс переводится в неактивное состояние.

Путь команды:

domain/<DOMAIN>/trunk/sip/block

Синтаксис:

block <GROUP> <TRUNK_INTERFACE> [--force]

Параметры:

<GROUP> - имя группы, интерфейс/интерфейсы которой нужно заблокировать; 
<TRUNK_INTERFACE> - имя блокируемого интерфейса, при указании символа "*" будут заблокированы все транки заданной группы;
[--force] - опционально, при указании данного флага блокировка транка/транков будет производиться без дополнительного вопроса.

Если флаг "--force" не указывать, то система выведет следующее сообщение:

[block] Trunk eltex will be blocked
Continue: yes/no ?> 

Если ввести команду "yes", то транк/транки будут заблокированы. Если ввести команду "no", то транк/транки не будут заблокированы.

Пример:

./trunk/sip/block sipt_directions *
[block] Trunk ECSS3 will be blocked
Continue: yes/no ?> yes
[block] Trunk SBC.ELTEX.LOC will be blocked
Continue: yes/no ?> yes
Executed on the pa_sip@alex
-------------------------
|     Trunk     | Block |
|---------------+-------|
| ECSS3         | ok    |
| SBC.ELTEX.LOC | ok    |
-------------------------

call-list

Команда просмотра списка активных вызовов через транк.

Путь команды:

domain/<DOMAIN>/trunk/sip/call-list

Синтаксис:

сall-list [GROUP] [INTERFACE] [OPTIONS]

Параметры:

<GROUP> - название группы интерфейсов. Символ "*" указывается для экспорта всех групп интерфейсов;
<INTERFACE> - логическое имя транка;
OPTIONS:
<--complete> - установка данного флага позволяет отобразить все интерфейсы, на которые были приняты вызовы;
<--more T [sec|min|hour]> - установка данного флага позволяет отобразить все вызовы, длительность которых более установленного времени;
<--less T [sec|min|hour]> - установка данного флага позволяет отобразить все вызовы, длительность которых менее установленного времени.

Пример:

./trunk/sip/call-list tmip --complete 
Executed on the pa_sip@alex
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
| Interface URI |       Direction        |   State   |                   Time                   |                         Additional info                         |
|---------------+------------------------+-----------+------------------------------------------+-----------------------------------------------------------------|
| TMIP.Public   | sip[513] <- ssw[515]   | connected | Start: Mon, 24 Jun 2013 11:27:45         | Node: pa_sip@alex, <0.7527.0>                                   |
|               |                        |           | Last activity: Mon, 24 Jun 2013 11:27:47 | CallRef: 206437603944398                                        |
|               |                        |           |                                          | SessionID: <<"core.cp.62313034-6466-6465-6435-393530306537">>   |
| TMIP.Public   | sip[515] -> ssw[61513] | connected | Start: Mon, 24 Jun 2013 11:27:45         | Node: pa_sip@alex, <0.7521.0>                                   |
|               |                        |           | Last activity: Mon, 24 Jun 2013 11:27:47 | CallRef: 206437603944398                                        |
|               |                        |           |                                          | SessionID: <<"pa.sip-t->37353034-6466-6465-6435-393438653263">> |
| tmip.12       |-                       |-          |-                                         | No calls                                                        |
-------------------------------------------------------------------------------------------------------------------------------------------------------------------

check

Команда проверки доступности направления. Выполняется посредством отправки запроса OPTIONS.
Тест может выполняться для определенного транка или для всех транков группы либо кластера.

Путь команды:

domain/<DOMAIN>/trunk/sip/check

Синтаксис:

check <GROUP> [<TRUNK_INTERFACE>] [timerF = <TIMEOUT>]

Параметры:

<GROUP> - название существующей группы интерфейсов. Символ "*" используется для указания всех групп транков;
<TRUNK_INTERFACE> - логическое имя транка. Символ "*" используется для указания всех интерфейсов группы.

Если ответ не получен (направление на данный транк не доступно), то выводится результат "timeout".

Если удаленный клиент не поддерживает запросы OPTIONS, и при этом не отвечает ответом 405, то результат будет таким же, хотя реально направление доступно для вызовов.
В таком случае периодический контроль доступности должен быть отключен (set options_control 0).

<TIMEOUT> - тайм-аут ожидания ответа, в пределах которого отправляются повторные запросы, если удаленная сторона не отвечает. Задается в миллисекундах. Для выключения контроля установите значение тайм-аута - 0.

Пример:

admin@[mycelium1@ecss1]:/$ domain/biysk.local/trunk/sip/check sbc.gr  *
Executed on the sip1@ecss1
Intermediate (incomplete) result:
Process to <<"nsk_sbc">> check is started: {<0.8398.0>,<0.8398.0>}
...
Executed on the sip1@ecss1
Intermediate (incomplete) result:
Try to send OPTIONS to <<"nsk_sbc">> (timerF = 5000)
...
Executed on the sip1@ecss1
Intermediate (incomplete) result:
Process to <<"to_aster">> check is started: {<0.8403.0>,<0.8403.0>}
...
Executed on the sip1@ecss1
Intermediate (incomplete) result:
Try to send OPTIONS to <<"to_aster">> (timerF = 5000)
...
Executed on the sip1@ecss1
Intermediate (incomplete) result:
Process to <<"to_sipp">> check is started: {<0.8406.0>,<0.8406.0>}
...
Executed on the sip1@ecss1
Intermediate (incomplete) result:
Try to send OPTIONS to <<"to_sipp">> (timerF = 5000)
...
Executed on the sip1@ecss1
┌────────┬──────────┬────────────┬────────────────────────────────────────────────────────────────────────────────┐
│ Group  │  Trunk   │ Accessible │                                   Check info                                   │
├────────┼──────────┼────────────┼────────────────────────────────────────────────────────────────────────────────┤
│ sbc.gr │ nsk_sbc  │ false      │ Response timeout is expired request by node: sip1@ecss1                        │
│        │          │            │                                                                                │
│ sbc.gr │ to_aster │ true       │ OPTIONS to <sip:192.168.2.6>: 200 OK, cseq: 875453 OPTIONS                     │
│        │          │            │ request by node: sip1@ecss1                                                    │
│        │          │            │                                                                                │
│ sbc.gr │ to_sipp  │ true       │ OPTIONS to <sip:192.168.2.6>: 200 OK, cseq: 897499 OPTIONS                     │
│        │          │            │ request by node: sip1@ecss1                                                    │
└────────┴──────────┴────────────┴────────────────────────────────────────────────────────────────────────────────┘
NOTE: 'timeout' as result means no answer from remote side.
      That may be caused by:
      1. remote side is realy unaccessible (host isn't alive or IP:Port is wrong set)
      2. remote side doesn't support of OPTIONS request and doesn't send any response

[exec at: 28.09.2018 11:42:57, exec time: 5s 57ms, nodes: sip1@ecss1]

clean

Команда устанавливает значения по умолчанию для параметров транка.

Путь команды:

domain/<DOMAIN>/trunk/sip/clean

Синтаксис:

clean GROUP|--profile TRUNK_INTERFACE|PROFILE_NAME PARAMETER [--force]

Параметры:

<GROUP> - имя группы;
<TRUNK_INTERFACE> - имя интерфейса или *;
<PROFILE_NAME> - имя профиля;
<PARAMETER> - параметр, для которого устанавливается значение по умолчанию;
--force - флаг выполнения команды без подтверждения.

  • для интерфейса устанавливается значение по умолчанию;
  • для профиля ранее введенные значения очищаются.

Примеры:

admin@[mycelium1@ecss1]:/$ domain/biysk.local/trunk/sip/clean --profile ISUP.TELCORDIA isup_standard              
Executed on the sip1@ecss1
isup_standard is set to default value: telcordia

[exec at: 28.09.2018 09:59:51, exec time: 19ms, nodes: sip1@ecss1]

admin@[mycelium1@ecss1]:/$ domain/biysk.local/trunk/sip/clean ssw.gr bsk2 req100rel --force
clean to 1 interfaces ...
[**********************************************************************] 3ms      
Executed on the sip1@ecss1
complete

[exec at: 28.09.2018 10:00:38, exec time: 18ms, nodes: sip1@ecss1]

declare

Команда декларации транка SIP.
Декларация нового транка возможна только в существующем контексте маршрутизации.
Может быть выбрана существующая группа или задекларирована новая.
При декларации выполняется проверка на существование имени интерфейса (одинаковые имена запрещены, о чем будет сразу выдано предупреждение "trunk already exists") и связки IP:Порт:Слушающий_порт (в случае совпадения с существующим именем будет выдано предупреждение, декларация может быть выполнена, а в дальнейшем параметры могут быть изменены).
При успешной операции выполняется проверка доступности заданного направления посредством запроса OPTIONS (см. команду check).

Путь команды:

domain/<DOMAIN>/trunk/sip/declare

Синтаксис:

declare <ROUTING_CONTEXT> <GROUP> <TRUNK_INTERFACE> <IP_SET>[--registration | <DEST_HOST> <DEST_PORT> <MODE> <LISTEN_PORT>]

Параметры:

<ROUTING_CONTEXT> - название существующего контекста маршрутизации; 
<GROUP> - название группы интерфейсов (может быть задана существующая или новая группа);
<TRUNK_INTERFACE> - имя системного интерфейса, описывающего данное направление. Имя интерфейса является внутрисистемным идентификатором, участвующем в маршрутизации, отображении статистики и другое;
<IP_SET> - набор IP-адресов;
--registration - декларация динамического транка (с регистрацией);

При декларации динамического транка операторская регистрация должна выполнятся для пользователя <TRUNK_INTERFACE>@<GROUP>.
Параметры <DEST_HOST>, <DEST_PORT>, <MODE>, <LISTEN_PORT> не задаются.
Режим для динамических транков устанавливается sip-proxy, регистрация для транков с инкапсуляцией ISUP использоваться не должна.

<DEST_HOST> - хост, назначаемый для транка (IP-адрес или доменное имя);
<DEST_PORT> - порт, назначаемый для транка;
<MODE> - режим инкапсуляции ISUP:

  • sip-proxy - направление работает только по протоколу SIP (RFC 3261);
  • sip-t - направление работает по SIP с инкапсуляцией ISUP по протоколу SIP-T (RFC 3372);
  • sip-i - направление работает по SIP с инкапсуляцией ISUP по протоколу SIP-I (Q.1912-5).
Работа в режимах sip-t, sip-i в основном отличается при кодировании/декодировании инкапсулированного ISUP и при маппинге статусов ответов о завершении.
В дальнейшем режим может быть изменен.

<LISTEN_PORT> - слушающий порт. На адаптере может быть открыто несколько слушающих портов. 
Используя слушающие порты, можно детектировать запросы с разных транков одного удаленного хоста, которые имеют одинаковые IP-адрес и номер порта.
При выборе значения "default" слушающий порт, который принял входящий запрос, не будет учитываться при определении транка.

Пример:

./trunk/sip/declare ctx_sipt_tmip_ext sipt_directions TMIP.Public 192.168.138.71 5060 sip-t default
Executed on the pa_sip@alex
Intermediate (incomplete) result:
{{declared,["d.408",ctx_sipt_tmip_ext,"sipt_directions",<<"TMIP.Public">>,
            "192.168.138.71",5060,sipt]},
 {<<"TMIP.Public">>,{real_uri_to_check,{sipt,far,"192.168.138.71",5060}}}}
...
Executed on the pa_sip@alex
"is accessible"                        - если данный порт доступен
timeout                                - если порт в данный момент не отвечает

info

Команда для просмотра информации о настройках параметров транка и профилей транка.
Дополнительное описание параметров интерфейсов (транков) приведено в Приложении Б. Набор параметров интерфейса SIP.

Путь команды:

domain/<DOMAIN>/trunk/sip/info

Синтаксис:

info <GROUP> [<TRUNK_INTERFACE>] [--profile <PROFILE>]

Параметры:

<GROUP> - название существующей группы интерфейсов, символ "*" используется для указания всех групп транков;
<TRUNK_INTERFACE> - логическое имя транка, символ "*" используется для указания всех интерфейсов группы.
Для просмотра свойств группы имя интерфейса транка (символ "*") не указывается.
--profile - флаг используется для просмотра информации о конфигурации профилей транка;
<PROFILE> - имя профиля, символ "*" используется для указания всех профилей транков.

Пример:

Параметр конфигурации всех групп кластера:

admin@[mycelium1@ecss1]:/$ domain/biysk.local/trunk/sip/info 
Executed on the sip1@ecss1
┌────────┬─────────────────────────────────────────┐
│ Group  │               Parameters                │
├────────┼─────────────────────────────────────────┤
│ sbc.gr │              my_from = biysk.local      │
│        │      routing context = undefined        │
│        │                                         │
│ smg.gr │              my_from = biysk.local      │
│        │      routing context = undefined        │
│        │                                         │
│ ssw.gr │              my_from = biysk.local      │
│        │      routing context = undefined        │
└────────┴─────────────────────────────────────────┘

[exec at: 28.09.2018 11:38:24, exec time: 24ms, nodes: sip1@ecss1]

Просмотр конфигурации профилей транков:

admin@[mycelium1@ecss1]:/$ domain/biysk.local/trunk/sip/info --profile 
Executed on the sip1@ecss1
┌───────────┬───────────────────────────┐
│  Profile  │        Parameters         │
├───────────┼───────────────────────────┤
│ ISUP.ETSI │ network-node-id = 0       │
│           │ network-id = 0            │
│           │ use-global-callref = true │
│           │ country-code = 250        │
│ ISUP.RUS  │ isup_r_ccl_send = true    │
└───────────┴───────────────────────────┘

[exec at: 28.09.2018 11:38:30, exec time: 16ms, nodes: sip1@ecss1]

remove

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

Путь команды:

domain/<DOMAIN>/trunk/sip/remove

Синтаксис:

remove <GROUP> <TRUNK_INTERFACE>|--profile <PROFILE> [--force]

Параметры:

<GROUP> - название существующей группы интерфейсов;
<TRUNK_INTERFACE> - имя интерфейса, который нужно удалить. Символ "*" используется для указания всех интерфейсов группы. При удалении всех интерфейсов группы также удаляется сама группа.
--profile - флаг используется для удаления профиля транка;
<PROFILE> - имя профиля, символ "*" используется для указания всех профилей транков.
--force - опционально, при указании данного флага удаление транка/транков будет производиться без дополнительного вопроса.

Если флаг --force не указывать, то система выведет следующее сообщение:

[remove] This command removes trunks interfaces. Undo will be impossible. 
Continue: yes/no ?>  

Если ввести команду "yes", то транк/транки будут удалены. Если ввести команду "no", то транк/транки не будут удалены.

Пример:

Удаление транка:

./trunk/sip/remove sip_test.direction Proxy.169-0 
Executed on the pa_sip@alex
[{removed,"Proxy.169-0"}]

Удаление группы:

./trunk/sip/remove sip_test.direction *
[remove] This command removes trunks interfaces. Undo will be impossible.
Continue: yes/no ?> yes
Executed on the pa_sip@alex
Intermediate (incomplete) result:
Group sip_test.direction has been removed (all interfaces in this group was removed)
...
Executed on the pa_sip@alex
[{removed,"Proxy.169-1"},
 {removed,"Proxy.169-2"},
 {removed,"Proxy.169-3"},
 {removed,"Proxy.169-4"},
 {removed,"Proxy.169-5"}]

Удаление профиля

elena@[ds1@ecss1]:/$ domain/test.domain/trunk/sip/remove --profile ISUP.ANSI 
[remove] This command removes of profile ISUP.ANSI. Undo will be impossible.
Continue: yes/no ?> yes

set

Данной командой выполняется настройка параметров группы транков.

Путь команды:

domain/<DOMAIN>/trunk/sip/set

Синтаксис:

set <GROUP> <TRUNK_INTERFACE> <PARAMETER> <VALUE> | --profile <PROFILE>

Параметры:

<GROUP> - название существующей группы интерфейса. Символ "*" используется для указания всех групп транков;
<TRUNK_INTERFACE> - имя интерфейса. Символ "*" используется для указания всех интерфейсов группы;
<PARAMETER> - название параметра, список параметров приведен в Части 5 Руководство по обслуживанию системы ECSS-10, в Приложении Б. Набор параметров интерфейса SIP.
<VALUE> - значение параметра.

--profile - флаг используется для создания/настройки профиля транков;
<PROFILE> - имя профиля.

Пример:

Попытка присвоить уже назначенный адрес:

./trunk/sip/set smg.test SMG.2 host 192.168.23.168
Executed on the pa_sip@alex

Error:
Direction TAU72 with 192.168.23.168:5060 (listen on 5060) is exists already.

Успешная смена адреса:

./trunk/sip/set smg.test SMG.2 host 192.168.23.163
Executed on the pa_sip@alex
Intermediate (incomplete) result:
{{ok,{sipproxy,sub,"192.168.23.163",5060}},
 {"OPTIONS is send in order to trunks accesibility check.",
  {<<"SMG.2">>,{real_uri_to_check,{sipproxy,sub,"192.168.23.163",5060}}},
  "wait response now ..."}}
...
Executed on the pa_sip@alex
is accessible

Создание и настройка нового профиля транков.

elena@[ds1@ecss1]:/$ domain/test.domain/trunk/sip/set --profile test user_name test
Executed on the sip1@ecss1

unblock

Команда для разблокировки определенного транка, всех транков одной группы.
Соответствующий интерфейс переводится в активное состояние.

Путь команды:

domain/<DOMAIN>/trunk/sip/unblock

Синтаксис:

unblock <GROUP> <TRUNK_INTERFACE>[--force]

Параметры:

<GROUP> - имя группы, интерфейс/интерфейсы которой нужно разблокировать; 
<TRUNK_INTERFACE> - имя интерфейса, символ "*" используется для указания всех интерфейсов группы;
[--force] - опционально, при указании данного флага разблокировка транка/транков будет производиться без дополнительного вопроса.

Если флаг --force не указывать, то система выведет следующее сообщение:

[unblock] Trunk eltex will be unblocked
Continue: yes/no ?>  

Если ввести команду "yes", то транк/транки будут разблокированы. Если ввести команду "no", то транк/транки не будут разблокированы.

Пример:

./trunk/sip/unblock sipt_directions * --force 
Executed on the pa_sip@alex
---------------------------
|     Trunk     | Unblock |
|---------------+---------|
| ECSS3         | ok      |
| SBC.ELTEX.LOC | ok      |
---------------------------
  • Нет меток