Команды управления подразделяются на общие команды и команды для управления приоритетами (актуально для blf/presence-списков).

Общие команды

declare

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

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

/domain/<DOMAIN>/lists/declare

Синтаксис:

declare <NAME> [<DESCRIPTION>] [<TYPE>] [<NUMBERS>]

Параметры:

  • <NAME> — имя списка;
  • <DESCRIPTION> — описание списка;
  • <TYPE> — тип списка (blf, default, presence);
  • <NUMBERS> — номера (диапазоны номеров) абонентов, разделенные пробелом.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/declare vats default "Номера, веведенные в ВАТС" 3854343434 385440000{0-9}
List successfully declared

[exec at: 17.02.2021 14:42:41, exec time: 33ms, nodes: ds1@ecss1 v.3.14.7.589]

info

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

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

/domain/<DOMAIN>/lists/info

Синтаксис:

info [--number <NUMBER>] [--type <TYPE>] [<NAME>]

Параметры:

--number <NUMBER> — информация из списков по выделенному диапазону номеров;

--type <TYPE> — информация из списков определенного типа;

<NAME> — имя списка.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/info blf_lab4     
 Information about lists:
┌────────┬────┬───────────┬──────┬──────────────────┐
│  Name  │Type│Description│Number│      Number      │
│        │    │           │      │     property     │
├────────┼────┼───────────┼──────┼──────────────────┤
│blf_lab4│blf │4 этаж ШПД │240100│priority => high  │
│        │    │           │240101│priority => normal│
│        │    │           │240501│priority => normal│
│        │    │           │240502│priority => normal│
│        │    │           │240503│priority => normal│
│        │    │           │240504│priority => normal│
│        │    │           │240505│priority => low   │
│        │    │           │240506│priority => normal│
│        │    │           │240507│priority => normal│
│        │    │           │240508│priority => normal│
│        │    │           │416977│priority => low   │
└────────┴────┴───────────┴──────┴──────────────────┘

[exec at: 17.02.2021 16:05:32, exec time: 24ms, nodes: ds1@ecss1 v.3.14.7.589]

list

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

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

/domain/<DOMAIN>/lists/list

Синтаксис:

list

Параметры:

Команда не содержит аргументов.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/list                       
┌─────────┬────────┬─────────────────────────┐
│  Name   │  Type  │       Description       │
├─────────┼────────┼─────────────────────────┤
│prec_boss│presence│Руководство              │
│blf_lab4 │blf     │Лаборатория 4            │
│k508     │blf     │508 каб.                 │
│vats     │default │Номера, веведенные в ВАТС│
└─────────┴────────┴─────────────────────────┘

[exec at: 17.02.2021 14:51:47, exec time: 19ms, nodes: ds1@ecss1 v.3.14.7.589]

remove

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

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

/domain/<DOMAIN>/lists/remove

Синтаксис:

remove <LIST>

Параметры:

  • <LIST> — имя списка.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/remove vats                                                  
List successfully removed

[exec at: 17.02.2021 14:40:10, exec time: 20ms, nodes: ds1@ecss1 v.3.14.7.589]

rename

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

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

/domain/<DOMAIN>/lists/rename

Синтаксис:

rename <LIST_NAME> <NEW_LIST_NAME>

Параметры:

  • <LIST_NAME> — существующее имя списка;
  • <NEW_LIST_NAME > — новое имя списка.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/rename k508 ewsd              
List name successfully changed.

[exec at: 17.02.2021 14:52:48, exec time: 44ms, nodes: ds1@ecss1 v.3.14.7.589]

set

Команда установки свойств списка номеров.

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

/domain/<DOMAIN>/lists/set

Синтаксис:

set <NAME> [<PROPERTY> | [<VALUE>]

Параметры:

  • <NAME> — имя списка;
  • <PROPERTY> — свойство (type — тип списка; description — описани; numbers — список номеров);
  • <VALUE> —
    для <PROPERTY> = type — default (черные/белые списки номеров для транков), blf- или presence-списки;
    для <PROPERTY> = description — строка, заключенная в двойные кавычки;
    для <PROPERTY> = numbers — список номеров, разделенных пробелом.

Примеры:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/set blf_lab4 description "4 этаж ШПД"    
Property successfully setted

[exec at: 17.02.2021 14:54:25, exec time: 8ms, nodes: ds1@ecss1 v.3.14.7.589]
admin@mycelium1@ecss1:/$ domain/biysk.local/lists/set ewsd type presence     
Property successfully setted

[exec at: 17.02.2021 14:55:57, exec time: 16ms, nodes: ds1@ecss1 v.3.14.7.589]
admin@mycelium1@ecss1:/$ domain/biysk.local/lists/set prec_boss numbers 419300 419393 416370 240002
Property successfully setted

[exec at: 17.02.2021 14:57:05, exec time: 8ms, nodes: ds1@ecss1 v.3.14.7.589]

numbers-add

Команда предназначена для добавления номера в список. Диапазон номеров задается в формате {номер1-номерN}.

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

/domain/<DOMAIN>/lists/numbers-add

Синтаксис:

numbers-add <NAME> <NUMBERS>

Параметры:

  • <NAME> — имя списка;
  • <NUMBERS> — номер (диапазон номеров) абонента.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/numbers-add ewsd 416977 419419 240101
Numbers successfully added

[exec at: 17.02.2021 14:57:58, exec time: 22ms, nodes: ds1@ecss1 v.3.14.7.589]

numbers-copy

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

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

/domain/<DOMAIN>/lists/numbers-copy

Синтаксис:

numbers-copy <NAME_FROM> <NAME_TO> <NUMBERS>

Параметры:

  • <NAME_FROM> — имя списка источника;
  • <NAME_TO> — имя целевого списка;
  • <NUMBERS> — номер (диапазон номеров) абонента.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/numbers-copy ewsd blf_lab4 416977 240101
Numbers successfully copied

[exec at: 17.02.2021 14:59:43, exec time: 13ms, nodes: ds1@ecss1 v.3.14.7.589]

numbers-import

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

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

/domain/<DOMAIN>/lists/numbers-import

Синтаксис:

numbers-import <HOST> <FILE> <NAME> <TYPE> [<OPTIONS>]

Параметры:

  • HOST — имя хоста, где находится импортируемый список номеров;
  • FILE — имя файла (файл должен находиться по пути /var/lib/ecss/numbers/<DOMAIN>/) и не содержать пустых строк;
  • NAME — имя экспортируемого списка;
  • TYPE — тип листа.
  • OPTIONS (Опции):
    • LOG — с записью лога (по умолчанию: нет);
    • REPLACE — перезаписать лист, если такой уже есть (по умолчанию: нет);
    • DESCRIPTION — описание.

Формат файла со списком номеров:

Number_1
Number_2
...
Number_N

Замечание 1: Number_<N> может быть диапазоном номеров;
Замечание 2: Файлы с листами номеров располагаютсяв папке /var/lib/ecss/numbers/biysk.local.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/numbers-import ecss1 1.txt 1 default --log --replace                            
Success: List was imported

Log file: /var/lib/ecss/numbers/biysk.local/1.txt.log

[exec at: 28.09.2021 16:20:42, exec time: 70ms, nodes: ds1@ecss1 v.3.14.10.4]

numbers-move

Команда перемещает номера из одного списка в другой.

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

/domain/<DOMAIN>/lists/numbers-move

Синтаксис:

numbers-move <NAME_FROM> <NAME_TO> <NUMBERS>

Параметры:

  • <NAME_FROM> — имя списка источника;
  • <NAME_TO> — имя целевого списка;
  • <NUMBERS> — номер (диапазон номеров) абонента.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/numbers-move ewsd vats 419419       
Numbers successfully moved

[exec at: 17.02.2021 16:09:04, exec time: 27ms, nodes: ds1@ecss1 v.3.14.7.589]

numbers-export

Команда предназначена для экспорта номеров из списка в текстовый файл.

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

/domain/<DOMAIN>/lists/numbers-export

Синтаксис:

numbers-export  <NAME>

Параметры:

  • <NAME> — имя экспортируемого списка;

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/numbers-export vats              
Success: List vats has been exported

[exec at: 17.02.2021 15:42:19, exec time: 28ms, nodes: ds1@ecss1 v.3.14.7.589]

numbers-remove

Команда предназначена для удаления номера (номеров) из списка. Диапазон номеров задается в формате {номер1-номерN}.

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

/domain/<DOMAIN>/lists/numbers-remove

Синтаксис:

numbers-remove <NAME> <NUMBERS>

Параметры:

  • <NAME> — имя списка;
  • <NUMBERS> — номер (диапазон номеров) абонента.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/numbers-remove vats 3854400008   
Numbers successfully removed

[exec at: 17.02.2021 16:09:58, exec time: 35ms, nodes: ds1@ecss1 v.3.14.7.589]

Команды управления приоритетами (только для списков BLF и Presence)

Приоритеты:

  • низкий (low) — номер с данным приоритетом не может ни за кем следить;
  • нормальный (normal) — номер с данным приоритетом может следить за номерами с приоритетом low, normal;
  • высокий (high) — номер с данным приоритетом может следить за номерами с приоритетом low, normal, high.

numbers-delete-property

Команда предназначена для удаления (сброса к значению по умолчанию) свойства номера в списке.
В настоящее время осуществляется сброс единственного свойства - priority.

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

/domain/<DOMAIN>/lists/numbers-delete-property

Синтаксис:

numbers-delete-property <NAME> priority [<NUMBERS>]

Параметры:

  • <NAME> — имя списка;
  • <NUMBERS> — номер (диапазон номеров) абонента.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/numbers-delete-property blf_lab4 priority 416977 240505
Property successfully deleted

[exec at: 18.02.2021 07:30:36, exec time: 29ms, nodes: ds1@ecss1 v.3.14.7.589]

numbers-set-property

Команда предназначена для установки свойств для заданных номеров входящих в список.
В настоящее время для номеров входящих в список устанавливается только свойство priority (приоритет), которое определяет уровень доступа к номеру из списка.
Уровнем доступа определяется поведение, например, возможность подписки на события.

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

/domain/<DOMAIN>/lists/numbers-set-property

Синтаксис:

numbers-set-property <NAME> priority <PRIORITY> [<NUMBERS>]

Параметры:

  • <NAME> — имя списка;
  • <PRIORITY> — приоритет свойства:
    • низкий (low) — номер с данным приоритетом не может ни за кем следить;
    • нормальный (normal) — номер с данным приоритетом может следить за номерами с приоритетом low, normal;
    • высокий (high) — номер с данным приоритетом может следить за номерами с приоритетом low, normal, high.
  • <NUMBERS> — номер (диапазон номеров) абонента.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/numbers-set-property blf_lab4 priority high 240100       
Property successfully setted

[exec at: 18.02.2021 07:31:35, exec time: 28ms, nodes: ds1@ecss1 v.3.14.7.589]

Внимание! Номера в нескольких списках одного типа могут пересекаться между собой, задача администратора контролировать правильность при предоставлении прав абонентам.

Примеры настройки BLF-листов

Пример 1:

Необходимо настроить BLF-лист таким образом, чтобы:
1. Номер 240500 мог следить за номерами 240501, 240502.
2. Номера 240501, 240502 не могли следить за 240500 и друг за другом.

Настройка:

1. Создайте лист:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/declare blf2_508 blf "blf-cc room 508 group2" 24050{0-4}
List successfully declared

[exec at: 18.02.2021 07:32:00, exec time: 25ms, nodes: ds1@ecss1 v.3.14.7.589]

2. Установите low-приоритет для номеров 240501, 240502, чтобы они не могли прослеживать действия:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/numbers-set-property blf2_508 priority low 24050{1-2}
Property successfully setted

[exec at: 18.02.2021 07:32:30, exec time: 27ms, nodes: ds1@ecss1 v.3.14.7.589]

3. У абонента 240500 остается дефолтный приоритет normal, что позволяет ему следить за номерами 240501 и 240502.

Пример 2:

Необходимо настроить BLF-лист таким образом, чтобы:
1. Номер 240500 мог следить за номерами 240501, 240502, 240503.
2. Номера 240501 и 240502 могли следить друг за другом и за 240503.
3. Номера 240501 и 240502 не могли следить за 240500.
4. Номер 240503 ни за кем не может следить.

Настройка:

1. Создайте лист:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/declare blf2_508 blf "blf-cc room 508 group2" 24050{0-4}
List successfully declared

[exec at: 18.02.2021 07:32:00, exec time: 25ms, nodes: ds1@ecss1 v.3.14.7.589]

2. Установите high-приоритет для номера 240500, чтобы он мог наблюдать за всеми:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/numbers-set-property blf2_508 priority high 240500
Property successfully setted

[exec at: 18.02.2021 07:33:33, exec time: 26ms, nodes: ds1@ecss1 v.3.14.7.589]

3. Установите low-приоритет для номера 240503, чтобы он не мог наблюдать за номерами с приоритетом high, normal:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/numbers-set-property blf2_508 priority low 240503
Property successfully setted

[exec at: 18.02.2021 07:53:58, exec time: 27ms, nodes: ds1@ecss1 v.3.14.7.589]

4. Номера 240501, 240502, 240504 остаются с приоритетом по умолчанию normal, что позволяет им следить за номерами с приоритетом low и друг за другом.

Итоговый получаемый список:

admin@mycelium1@ecss1:/$ domain/biysk.local/lists/info blf2_508      
 Information about lists:
┌────────┬────┬──────────────────────┬──────┬────────────────┐
│  Name  │Type│     Description      │Number│     Number     │
│        │    │                      │      │    property    │
├────────┼────┼──────────────────────┼──────┼────────────────┤
│blf2_508│blf │blf-cc room 508 group2│240500│priority => high│
│        │    │                      │240501│                │
│        │    │                      │240502│                │
│        │    │                      │240503│priority => low │
│        │    │                      │240504│                │
└────────┴────┴──────────────────────┴──────┴────────────────┘

[exec at: 18.02.2021 09:00:12, exec time: 20ms, nodes: ds1@ecss1 v.3.14.7.589]