В данном разделе описываются команды по управлению шаблонами телеконференций.

<DOMAIN> — имя виртуальной АТС.

Таблица 1. Ключи изменения шаблона телеконференции

КлючОписание
--answer_to_initiator_when_success_outgoing_call

ответить инициатору после успешного исходящего вызова(только, если включен автосбор). Формат: --answer_to_initiator_when_success_outgoing_call true|false;

Ответ (SIP сообщение 200 OK) приходит инициатору конференции, когда:

  • в конференции включен флаг "автосбор";
  • в шаблоне конференции есть хотя бы один участник помимо самого инициатора;
  • был инициирован вызов на участника из пункта выше.
--auto_collectсовершает вызов на участников(номера) после старта шаблона конференции. Формат: --auto_collect true|false;
--conf-id-in-sip-contact-headerиспользовать идентификатор конференции в поле заголовка SIP «Contact». Пример: <sip:conf-id:0sbd8437sdb7sdkdn@test.domain>;isfocus, где 0sbd8437sdb7sdkdn - идентификатор конференции;
--conversation_recordвключить или выключить запись разговора телеконференции. Формат: --conversation_record true|false. Запись разговора телеконференции пишется в call_record_peer по пути domain/<domain>/tc/<template id>/records/<meeting_id>_<year>-<month>-<day>_<hour>-<min>-<sec>.wav;
--conversation_timeoutзавершать совещание по прошествии заданного времени. Формат: --conversation_timeout <timeout>. Где <timeout> число от 0 до 86400000, мс. Данный параметр прикрывает таймер conversation_timeout на домене (/domain/<domain>/timers/core/... ;
--descriptionвыставить описание шаблона телеконференции. Содержит слово или строку в двойных кавычках. Пример: --description "Sales department";
--destroy_by_no_initiatorинициатором, в данном случае, является абонент позвонивший на номер телеконференции и создавший её. После выхода данного абонента из телеконференции, телеконференция завершается. Но, если телеконференция управляется из АРМ, то телеконференция будет завершена тогда, когда это управление закончится. Формат: --destroy_by_no_initiator true|false;
--destroy_when_only_one_member_leftзавершить, если остался один участник.  Когда из телеконференции выходят участники, и остается один участник(менеджер), телеконференция завершается. Формат: --destroy_when_only_one_member_left true|false;
--display_name_prefix

отображаемый префикс конференции для конференций, созданных по feature-коду. Окончательный display name формируется из prefix + display name. Формат: --display_name_prefix <prefix>. Где <prefix> слово или строка в двойных кавычках. Пример: --display_name_prefix "Mine number 5".

Пример работы:

  • абонент А делает вызов на feature-код create_one_of_rooms телеконференции c номером(*480*NUMBER#), за котором закреплен шаблон телеконференции;
  • создается совещание с данным номером;
  • инициируются исходящие вызовы на абонентов заданных в шаблоне совещания, при этом:
    • вызовы делается от имени интерфейса абонента А;
    • display_name равен "Префикс" + display_name абонента А.
--farewell

прощальный лист извещений телеконференции. Формат: --farewell [<path>, <path 2>, ..., <path N>]. Где <path> путь до медиа ресурсов;

--farewell_by_timeout

голосовое оповещение участников  о завершении телеконференции по превышению длительности вызова.   Формат:--farewell_by_timeoutl [<path>, <path 2>, ..., <path N>].Где <path> путь до медиа ресурсов;

Оставив пустое значение в параметрах, звукового оповещения не будет. Формат: --farewell_by_timeoutl [ ];

--farewell_of_callиндивидуальное оповещение для участника об окончании селекторного совещания. Формат: --farewell_of_call [<path>, <path 2>, ..., <path N>]
--greeting_of_incoming_callголосовое оповещение участников телеконференции для входящего вызова. Формат: --greeting_of_incoming_call [<path>, <path 2>, ..., <path N>]. Где <path> путь до медиа ресурсов;
--greeting_of_outgoing_callголосовое оповещение участников телеконференции для исходящего вызова. Формат: --greeting_of_outgoing_call [<path>, <path 2>, ..., <path N>]. Где <path> путь до медиа ресурсов;
--greeting_of_outgoing_call_by_auto_collectголосовое оповещение участников телеконференции для исходящего вызова с автоматическим сбором участников. Формат: --greeting_of_outgoing_call_by_auto_collect [<path>, <path 2>, ..., <path N>]. Где <path> путь до медиа ресурсов;
--microphone-updates-display-name

при установленном флаге у всех участников созданной по шаблону телеконференции обновляется состояние микрофона через display name путем добавления или удаления фразы "(Microphone disabled)".

Для этой опции обязательно должен быть включен "remote-ctr-indication"(sip заголовок для указания об удаленном CTR) в  параметрах sip-интерфейса 

--nameвыставить имя шаблона телеконференции. Содержит слово или строку в двойных кавычках. Пример: --name Support;
--new-member-voiceустановить голос участников, которых нет в шаблоне;
--no_answer_timeoutтайм-аут ожидания ответа абонента. Формат: --no_answer_timeout <timeout>. Где <timeout> число от 5000 до 300000 мс. Если параметр не задан, то будет использовано значение, выставленное на уровне домена (/domain/<domain>/timers/core/info no_answer_timeout);
--notification_of_join_subscriberлист извещения о присоединении к телеконференции. Формат: --notification_of_join_subscriber [<path>, <path 2>, ..., <path N>]. Где <path> путь до медиа ресурсов;
--notification_of_leave_subscriberлист извещения о выходе участника из телеконференции. Формат: --notification_of_leave_subscriber [<path>, <path 2>, ..., <path N>]. Где <path> путь до медиа ресурсов;
--notification_of_microphone_disabledизвещение о выключенном микрофоне. Формат: --notification_of_microphone_disabled [<path>, <path 2>, ..., <path N>]. Где <path> путь до медиа ресурсов;
--notification_of_microphone_enable_requestуведомление о запросе включения микрофона. Формат: --notification_of_microphone_enable_request [<path>, <path 2>, ..., <path N>]. Где <path> путь до медиа ресурсов;
--notification_of_microphone_enable_request_rejectedуведомление о том, что запрос на включение микрофона отклонен. Формат: --notification_of_microphone_enable_request_rejected [<path>, <path 2>, ..., <path N>]. Где <path> путь до медиа ресурсов;
--notification_of_microphone_enabledизвещение о включенном микрофоне. Формат: --notification_of_microphone_enabled [<path>, <path 2>, ..., <path N>]. Где <path> путь до медиа ресурсов;
--numberномер телефона шаблона конференции. Формат: --number <number>;
--owned_by_membersпринадлежит всем участникам. Формат: false/true, значение по умолчанию — false;
--pinнастройка pin-кода для шаблона телеконференции. Формат: --pin <pin>. Где <pin> - число из 4 цифр от 0 до 9;
--pin-disableвыключить использование pin-кода в шаблоне телеконференции. Конфликтует с --pin-enable;
--pin-enableвключить использование pin-кода в шаблоне телеконференции. Конфликтует с --pin-disable;
--pin-for-allиспользовать pin-код для всех участников и внешних номеров в шаблоне телеконференции. Конфликтует с --pin-for-numbers;
--pin-for-numbersиспользовать pin-код только для внешних номеров в шаблоне телеконференции. Конфликтует с --pin-for-all;
--private

только задекларированные участники могут присоединиться к телеконференции. Формат: --private true|false;

declare

Команда декларирования шаблона телеконференции.

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

/domain/<DOMAIN>/teleconference/template/declare

Синтаксис:

declare <NAME>

Параметры:

<NAME> — имя шаблона (строка до 64 символов). Имя, содержащее пробелы, заключаются в двойные кавычки.

Примеры:

Создание нового шаблона:

admin@mycelium1@ecss1:/$ domain/biysk.local/teleconference/template/declare "IT service template"
Success: Template has been declared with id 064ea0fa57899a7e.

[exec at: 02.03.2021 11:29:25, exec time: 33ms, nodes: core1@ecss1 v.3.14.7.620]

Вывод ошибки:

admin@mycelium1@ecss1:/$ domain/biysk.local/teleconference/template/declare "IT service template"
Warning: Template with such name already exists.

[exec at: 02.03.2021 11:32:22, exec time: 28ms, nodes: core1@ecss1 v.3.14.7.620]

admin@mycelium1@ecss1:/$ 
admin@mycelium1@ecss1:/$ domain/biysk.local/teleconference/template/declare 0123456789_0123456789_0123456789_0123456789_0123456789_0123456789_0123456789_0123456789 
Error: Invalid command's arguments: "0123456789_0123456789_0123456789_0123456789_0123456789_0123456789_0123456789_0123456789".

[exec at: 06.11.2019 21:28:06, exec time: 66ms, nodes: core1@ecss1]

list

Команда просмотра списка шаблонов телеконференции.

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

/domain/<DOMAIN>/teleconference/template/list

Синтаксис:

list

Параметры:

Команда без параметров

admin@mycelium1@ecss1:/$ domain/biysk.local/teleconference/template/list                       
┌──┬────────────────┬────────────────────────┬──────┐
│# │       id       │          Name          │Number│
├──┼────────────────┼────────────────────────┼──────┤
│1 │064ea11337afd03d│Утренняя планерка       │      │
│2 │064ea1032e0090c2│weekly meeting          │      │
│3 │064ea0fa57899a7e│IT service template     │      │
└──┴────────────────┴────────────────────────┴──────┘

[exec at: 02.03.2021 11:36:14, exec time: 27ms, nodes: core1@ecss1 v.3.14.7.620]

clean

Команда выставляет свойство шаблона телеконференции в значение по умолчанию.

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

/domain/<DOMAIN>/teleconference/template/clean

Синтаксис:

clean <TEMPLATE> <OPTIONS>

Параметры:

<TEMPLATE> — группа телеконференции, должна выглядеть в одном из форматов:

  • --id <template id> — идентификатор шаблона телеконференции;
  • <template name> — имя шаблона телеконференции.

<OPTIONS> — свойство шаблона, описания ключей приведены в Таблице 1.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/teleconference/template/clean "weekly meeting" --farewell       
Success: Property has been cleaned.

[exec at: 03.03.2021 10:57:17, exec time: 32ms, nodes: core1@ecss1 v.3.14.7.625]
admin@mycelium1@ecss1:/$ domain/biysk.local/teleconference/template/clean "weekly meeting" --destroy_by_no_initiator 
Success: Property has been cleaned.

[exec at: 03.03.2021 10:58:26, exec time: 8ms, nodes: core1@ecss1 v.3.14.7.625]

set

Команда для изменения свойств шаблона телеконференции.

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

/domain/<DOMAIN>/teleconference/template/set

Синтаксис:

set <TEMPLATE> <OPTIONS>

Параметры:

<TEMPLATE> — группа телеконференции, должна выглядеть в одном из форматов:

  • --id <template id> — идентификатор шаблона телеконференции;
  • <template name> — имя шаблона телеконференции.

<OPTIONS> — свойство шаблона, описания ключей приведены в Таблице 1.

Примеры:

Не завершать конференцию после выхода инициатора:

admin@mycelium1@ecss1:/$ domain/biysk.local/teleconference/template/set "weekly meeting" --destroy_by_no_initiator false 
Success: Property has been set.

[exec at: 03.03.2021 10:52:56, exec time: 18ms, nodes: core1@ecss1 v.3.14.7.625]

Установить звуковой файл оповещения участников о завершении конференции:

admin@mycelium1@ecss1:/$ domain/biysk.local/teleconference/template/set "weekly meeting" --farewell [system sounds/ai_conference_destroyed.wav] 
Success: Property has been set.

[exec at: 03.03.2021 10:53:37, exec time: 53ms, nodes: core1@ecss1 v.3.14.7.625]

Установка тона оповещения о выходе участника:

admin@mycelium1@ecss1:/$ domain/biysk.local/teleconference/template/set "weekly meeting" --notification_of_leave_subscriber [tone 400 200 500 0 100 ]
Success: Property has been set.

[exec at: 03.03.2021 10:54:01, exec time: 10ms, nodes: core1@ecss1 v.3.14.7.625]

Примеры ввода некорректных значений:

admin@mycelium1@ecss1:/$ domain/biysk.local/teleconference/template/set "weekly meeting" --no_answer_timeout 2s                                      
Command error: can't parse flag no_answer_timeout

[exec at: 03.03.2021 10:54:32, exec time: 5ms, nodes: core1@ecss1 v.3.14.7.625]

Установка таймера пребывания в конференции.

admin@mycelium1@ecss1:/$ domain/biysk.local/teleconference/template/set "weekly meeting" --conversation_timeout 2m
Success: Property has been set.

[exec at: 03.03.2021 10:55:50, exec time: 38ms, nodes: core1@ecss1 v.3.14.7.625]

remove

Команда удаления шаблона телеконференции.

Если установлен флаг force у команды, то команда удалит не только шаблон, но и все запланированные совещания. Иначе команда будет отменена и будет выведен список запланированных совещаний.

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

/domain/<DOMAIN>/teleconference/template/remove

Синтаксис:

remove <TEMPLATE> [--force]

Параметры:

<TEMPLATE> — группа телеконференции, должна выглядеть в одном из форматов:

  • --id <template id> — идентификатор шаблона телеконференции;
  • <template name> — имя шаблона телеконференции.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/teleconference/template/remove "w                                        
Enter name of the teleconference template or the flag --id:           

admin@mycelium1@ecss1:/$ domain/biysk.local/teleconference/template/remove "weekly meeting" 
[remove] You are going to remove template with name "weekly meeting". It will delete the 
         template folder (The folder may be contains audio files which were uploaded by u
         ser and conversations records which were created by teleconference meetings).
Are you sure?: yes/no ?> yes
Success: Template has been removed.

[exec at: 03.03.2021 10:59:05, exec time: 2s 716ms, nodes: core1@ecss1 v.3.14.7.625]

info

Команда просмотра шаблона телеконференции.

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

/domain/<DOMAIN>/teleconference/template/info

Синтаксис:

info <TEMPLATE> [<OPTIONS>]

Параметры:

<TEMPLATE> — группа телеконференции, должна выглядеть в одном из форматов:

  • --id <template id> — идентификатор шаблона телеконференции;
  • <template name> — имя шаблона телеконференции.

<OPTIONS> — параметры шаблона.

  • --show-members — показать информацию об участниках (default: false);
  • --show-groups — показать информацию о группах в шаблоне (default: false);
  • --show-numbers — показать информацию о внешних номерах (default: false).

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/teleconference/template/info "weekly meeting" 
===================================================
Template: weekly meeting (064ea1032e0090c2)

Template properties:
┌──────────────────────────────────────────────────┬────────────────────────────────────────────────────────┐
│                       Key                        │                         Value                          │
├──────────────────────────────────────────────────┼────────────────────────────────────────────────────────┤
│description                                       │                                                        │
│number                                            │                                                        │
│answer_to_initiator_when_success_outgoing_call    │false                                                   │
│auto_collect                                      │false                                                   │
│destroy_by_no_initiator                           │true                                                    │
│destroy_when_only_one_member_left                 │false                                                   │
│display_name_prefix                               │"Teleconference "                                       │
│farewell                                          │system://sounds/ai_conference_destroyed.wav             │
│farewell_of_call                                  │system://sounds/ai_conference_call_completed.wav        │
│greeting_of_incoming_call                         │system://sounds/ai_conference_prompt.wav                │
│greeting_of_outgoing_call                         │system://sounds/ai_conference_prompt.wav                │
│greeting_of_outgoing_call_by_auto_collect         │system://sounds/ai_conference_prompt.wav                │
│microphone_updates_display_name                   │false                                                   │
│new_member_voice                                  │true                                                    │
│no_answer_timeout                                 │undefined                                               │
│notification_of_join_subscriber                   │tone://?f1=490&f2=0&on_msec=200&off_msec=100&duration=30│
│                                                  │0                                                       │
│notification_of_leave_subscriber                  │tone://?f1=390&f2=0&on_msec=200&off_msec=100&duration=30│
│                                                  │0                                                       │
│notification_of_microphone_disabled               │system://sounds/ai_microphone_disabled.wav              │
│notification_of_microphone_enable_request         │system://sounds/ai_microphone_enable_request.wav        │
│notification_of_microphone_enable_request_rejected│system://sounds/ai_microphone_enable_request_rejected.wa│
│                                                  │v                                                       │
│notification_of_microphone_enabled                │system://sounds/ai_microphone_enabled.wav               │
│private                                           │false                                                   │
└──────────────────────────────────────────────────┴────────────────────────────────────────────────────────┘

[exec at: 03.03.2021 08:31:44, exec time: 29ms, nodes: core1@ecss1 v.3.14.7.625]