Миграция настроек Vinteo Desktop через групповые политики

Материал из База знаний VINTEO

Общее описание

Начиная с версии 3.15, при каждом запуске десктоп-клиента, происходит загрузка настроек из файла ClientSettings для последующей миграции в десктоп-клиент. Файл ClientSettings нужно добавить в определенную папку:

  • для Windows - %appData%/Roaming/Vinteo.Desktop
  • для MacOS - /Users/y/Library/Application Support/VinteoDesktop
  • для Linux - /home/.config/VinteoDesktop

Передаваемые настройки, в файле ClientSettings, хранятся в формате json и валидируются json-схемой на этапе чтения файла. Схема валидации с полным списком полей содержится в проекте clients - packages/apps/desktop-client/src/clientSettingsSchema.json.

Файл ClientSettings имеет две группы настроек:

  • profile - настройки корпоративного профиля
  • settings - настройки приложения

Параметры мигрируемых настроек

Каждая настройка в группе представляет собой простой объект с двумя свойствами:

Свойство Описание
value Содержит значение настройки, которое будет мигрировано в приложение. Может иметь типы "string", "number" или "boolean" в зависимости от конкретной настройки
overwriteUserSettings Опциональный флаг принудительной миграции. При установке значения true, настройка из файла принудительно перепишет настройку пользователя в клиенте. При значении false или отсутствии флага, настройка будет перезаписана только если пользователь не изменял ее значение с момента первого запуска клиента.

Настройки клиента (settings)

Группа настроек settings содержит следующие настройки:

Настройка Тип значения Описание
displayName string Отображаемое имя пользователя
remoteMicControl boolean Разрешать модератору включать и выключать микрофон
remoteCameraControl boolean Разрешить модератору включать и выключать камеру
moveContentVideoToFullscreen boolean Запускать входящую презентацию в полноэкранном режиме
autoOpenChat boolean Автоматически открывать чат при старте звонка или трансляции
autoOpenParticipants boolean Автоматически открывать список участников при старте звонка или трансляции
autoAnswer boolean Автоответ при входящем звонке
autoMute boolean Выключение микрофона при автоответе
autoFullscreen boolean Полноэкранный режим при автоответе
hardwareNotification boolean Аппаратное оповещение
autorun boolean Автозапуск
minimizeOnClose boolean Сворачивание приложения при закрытии
disableConfirms boolean выключить все диалоги подтверждения действий
disableNotifications boolean выключить все уведомления
disableErrors boolean выключить все уведомления об ошибках
Важно! При при попытке включения autoOpenChat и autoOpenParticipants, флаг autoOpenParticipants имеет приоритет. То есть, autoOpenParticipants будет включен, а autoOpenChat останется выключенным. Последовательность и одновременность передачи флагов не имеют значения.

Корпоративный профиль

Корпоративный профиль - это профиль, который создается и обновляется скриптами миграции. Отличие корпоративного профиля от прочих в уникальном uuid, который равен "uuid-corporate-profile-0fa76dd5-9c48-48de-be1b-75b8df1b2208". Данный профиль создается, если его еще нет в списке профилей подключения, либо обновляется при миграции.

Настройки корпоративного профиля (profile)

Группа настроек profile содержит следующие настройки, доступных для миграции корпоративного профиля:

Настройка Тип значения Описание
name string Логин пользователя. Опциональный параметр
serverUrl string Адрес сервера подключения. Может содержать URL или IP сервера
profileName string Имя корпоративного профиля - будет указано в качестве названия для корпоративного профиля подключения. Опциональный параметр

Важно!

  • Через группу настроек profile нельзя передать пароль пользователя;
  • При каждой перезаписи корпоративного профиля, пароль предыдущего профиля удаляется из клиента;

Если в группе настроек profile не хватает данных для подключения, то, при запуске клиента, откроется диалоговое окно начальных настроек подключения (InitialSetupWizard), в котором необходимо заполнить недостающие данные. Данный шаг можно пропустить.

Примеры недостающих данных в группе настроек profile

  • Не заполнен serverUrl (адрес сервера подключения);
  • Не заполнен displayName (отображаемое имя);
  • Заполнены displayName, serverUrl и name (не хватает пароля).

Примеры

Ниже приведен пример файла ClientSettings:

Примеры ClientSettings

Ссылка на полную схему файла с настройками: