/cluster/storage/<STORAGE>/modificators — команды управления контекстами модификации
Команды управления контекстами модификации
В данном разделе представлены команды по управлению контекстами модификации.
Подробнее описание настроек адаптации номеров описано в разделе Модификаторы и адаптация номеров по входу/выходу с интерфейса.
Для администратора системы команды выполняются на уровне кластера в разделе /cluster/storage/<CLUSTER>/modificators/.
<DOMAIN> — имя виртуальной АТС.
<STORAGE> — имя кластера с ролью storage.
delete
Команда предназначена для удаления заданного контекста модификации.
Путь команды:
cluster/storage/<STORAGE>/modificators/delete
Синтаксис:
delete <Context>
Параметры:
<Context> — контекста модификации номеров.
Пример:
admin@mycelium1@ecss1:/$ cluster/storage/ds1/modificators/delete biysk.local mod_smg Modificator was deleted [exec at: 04.03.2021 16:25:52, exec time: 36ms, nodes: ds1@ecss1 v.3.14.7.626]
edit
Данной командой производится редактирование контекстов маршрутизации.
При выполнении команды осуществляется запуск редактора, который выбран командой shell-options editor
Путь команды:
/cluster/storage/<STORAGE>/modificators/edit
Синтаксис:
edit <DOMAIN> <ROUTING_CONTEXT>
Параметры:
<DOMAIN> — имя виртуальной АТС;
<CONTEXT> — название контекста модификации.
Примеры:
Редактирование определенного контекста:
admin@mycelium1@ecss1:/$ cluster/storage/ds1/modificators/edit biysk.local mod_smg Importing modificators context from /tmp/modificators-0.8546.0.xml Success: Context was imported [exec at: 04.03.2021 16:24:04, exec time: 21s 699ms, nodes: ds1@ecss2 v.3.14.7.626]
export
Команда предназначена для экспорта контекста модификации в файловую систему.
Путь команды:
/cluster/storage/<STORAGE>/modificators/export
Синтаксис:
export <Node> <Domain> <Context>
Параметры:
<Node> — имя ноды;
<Domain> — имя виртуальной АТС;
<Context> — контекста модификации.
Пример:
admin@mycelium1@ecss1:/$ cluster/storage/ds1/modificators/export ecss1 biysk.local mod_smg Context mod_smg has been exported [exec at: 04.03.2021 16:20:29, exec time: 61ms, nodes: ds1@ecss1 v.3.14.7.626, ds1@ecss2 v.3.14.7.626]
import
Команда предназначена для импорта контекста модификации с файловой системы.
Путь команды:
/cluster/storage/<STORAGE>/modificators/import
Синтаксис:
import <Host> <File>
Параметры:
<Host> — имя хоста, где находится сохраненных файл;
<File> — имя файла с контекстом модификации номеров, который необходимо установить;
При задании имени файла можно использовать маску поиска:
"?" — соответствует одному символу;
"*" — соответствует любому количеству символов до конца файла, следующей точки или символа "/". {Item,...} — для указания альтернативного файла.
Пример:
admin@mycelium1@ecss1:/$ cluster/storage/ds1/modificators/import ecss1 biysk.local mod_smg.xml importing file mod_smg.xml... generated 7 rules 1 context has been successfully imported [exec at: 04.03.2021 15:40:25, exec time: 261ms, nodes: ds1@ecss1 v.3.14.7.626]
list
Команда предназначена для просмотра списка контекстов модификации.
Путь команды:
/cluster/storage/<STORAGE>/modificators/list
Синтаксис:
list [<Domain>]
Параметры:
<Domain> — имя виртуальной АТС.
Пример:
admin@mycelium1@ecss1:/$ cluster/storage/ds1/modificators/list biysk.local Modificators: biysk.local/default_modificators biysk.local/mod_smg --------- Total: 2 [exec at: 04.03.2021 15:37:24, exec time: 21ms, nodes: ds1@ecss1 v.3.14.7.626]
show
Команда предназначена для просмотра контекста модификации.
Путь команды:
/cluster/storage/<STORAGE>/modificators/show
Синтаксис:
show <ContextName>
Параметры:
<ContextName> — имя контекста модификации.
Пример:
admin@mycelium1@ecss1:/$ cluster/storage/ds1/modificators/show biysk.local mod_smg
Context was imported at 18.02.2021 14:00:41
<?xml version="1.0" encoding="UTF-8"?>
<modificators xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="ecss_modificators.xsd" name="mod_smg">
<in>
<rule name="mod_in_calls">
<conditions>
<cgpn digits="240101"/>
<cdpn digits="S(24046[29])"/>
<cn digits="9913699011"/>
<time value="09:00 - 18:00"/>
<weekday value="1,2,3,4,5"/>
</conditions>
<actions>
<cgpn digits="240101"/>
<cdpn digits="S240500$"/>
<cn digits="3854419159"/>
</actions>
<result>
<finish/>
</result>
</rule>
<rule name="other_in_calls">
<conditions/>
<actions/>
<result>
<finish/>
</result>
</rule>
</in>
<out>
<rule name="smg_out">
<conditions>
<cn digits="9913699011"/>
<weekday value="1,2,3,4,5"/>
</conditions>
<actions>
<cn digits="3854415800"/>
</actions>
<result>
<finish/>
</result>
</rule>
<rule name="other_out_calls">
<conditions/>
<actions/>
<result>
<finish/>
</result>
</rule>
</out>
</modificators>
[exec at: 04.03.2021 15:38:04, exec time: 43ms, nodes: ds1@ecss1 v.3.14.7.626]
trace
Команда предназначена для трассировки модификации номеров.
Путь команды:
/cluster/storage/<STORAGE>/modificators/trace
Синтаксис:
Команда аналогична командам трассировки маршрутизации:
trace [<Key1> = <Value1>[, ... [, <KeyN> = <ValueN>]]]
Параметры:
direction — направление вызова (in — входящий, out — исходящий) (обязательный параметр);
iface — ID интерфейса, для которого применяются модификаторы (взаимоисключающий с iface_name) (опциональный параметр);
iface_name — имя интерфейса, для которого применяются модификаторы (взаимоисключающий с iface) (опциональный параметр);
tag — параметр tag (опциональный параметр);
cgpn — параметры Calling party number (опциональный параметр);
cdpn — параметры Called party number, cdpn.digits (обязательный параметр);
rgn — параметры Redirecting number (опциональный параметр);
rnn — параметры Redirection number (опциональный параметр);
ocdpn — параметры Original called party number (опциональный параметр);
cn — параметры ConnectedNumber (опциональный параметр);
context — имя контекста модификации, (опциональный параметр) (по умолчанию: контекст модификации абонента А для in, абонента Б для out (либо переданного поля iface/iface_name));
date — дата запроса (D.M.Y or Y/M/D), (опциональный параметр) (по умолчанию: сегодня);
time — время запроса (H:M), (опциональный параметр) (по умолчанию: сейчас).
Сначала нужно добавить модификатор на нужный интерфейс
Пример:
admin@mycelium1@ecss1:/$ domain/biysk.local/iface/user-set sip1 loc.gr 240101@biysk.local modificator mod_smg Property 'modificator' successfully changed to 'mod_smg' for interfaces: 240101@biysk.local [exec at: 04.03.2021 16:13:47, exec time: 27ms, nodes: ds1@ecss1 v.3.14.7.626] admin@mycelium1@ecss1:/$ cluster/storage/ds1/modificators/trace biysk.local cgpn.digits=240101 cdpn.digits=240462 cn.digits=9913699011 direction=in Traceroute to 240462 from 240101(064bc9652bfe3487) CN:9913699011 at 04.03.2021 16:13:52 Default context is mod_smg mod_smg / default A: "240101"(displayName=undefined, ni=private, nai=subscriberNumber, inc=false, npi=isdnTelephony, apri=presentationAllowed, screening=networkProvided, category=ordinarySubscriber(10), caller_id="240101") B: "240462"(displayName=undefined, ni=undefined, nai=unknown, inc=false, inni=undefined, npi=undefined, category=undefined) CN: "9913699011"(displayName=undefined, ni=private, nai=subscriberNumber, npi=isdnTelephony, apri=presentationAllowed, caller_id=undefined) applying rule: other_in_calls ------------------------------------------ Modification result: finish A: "240101"(displayName=undefined, ni=private, nai=subscriberNumber, inc=false, npi=isdnTelephony, apri=presentationAllowed, screening=networkProvided, category=ordinarySubscriber(10), caller_id="240101") B: "240462"(displayName=undefined, ni=undefined, nai=unknown, inc=false, inni=undefined, npi=undefined, category=undefined) CN: "9913699011"(displayName=undefined, ni=private, nai=subscriberNumber, npi=isdnTelephony, apri=presentationAllowed, caller_id=undefined) [exec at: 04.03.2021 16:13:52, exec time: 21ms, nodes: ds1@ecss1 v.3.14.7.626]