
Параметр settings.public (публичные настройки) представляет собой объект, содержащий настройки, которые устройство использует для изменения своего поведения.
Chat Server позволяет изменять публичные настройки без перезапуска путем отправки соответствующих запросов от admin.help.bot.
Пользователь admin.help.bot
Включение admin.help.bot
admin.help.bot — системный пользователь, имеющий права администратора на сервере.
Чтобы включить system.admin.bot в системе, необходимо задать ему пароль в конфигурации сервиса. Для этого выполните следующие шаги:
1. Откройте docker-compose.yml:
<nano/vim/mcedit> elph-chat-server/stable/docker-compose.yml |
2. Найдите секцию services. Внутри секции services найдите секцию server и добавьте следующую строку в раздел environment:
...
services:
...
server:
...
environment:
...
- SYSTEM_ADMIN_PASSWORD=password
... |
3. Замените «password» на желаемый пароль для администратора. После внесения изменений сохраните файл и перезапустите сервис для применения новых настроек.
./ecss-elph-chat-server.sh up
|
Авторизация admin.help.bot
Далее необходимо авторизоваться за system.admin.bot. Для этого отправьте POST https://<proxy>/elph_chat/api/v1/login с телом запроса:
{
"user": "admin.help.bot",
"password": "password",
"domain": "some_domain" // Опциональное поле. Используется для мультитенантности чатов на различных доменах.
} |
Сохраните из ответа значения полей:
{
"userId": //X-User-Id: уникальный идентификатор пользователя
"authToken": //X-Auth-Token: токен аутентификации пользователя
} |
Запрос settings.public
GET https://<proxy>/elph_chat/api/v1/settings.public позволяет получить список настроек Chat Server. Все пользователи могут просматривать этот список, однако, изменять его могут только администраторы.
Отправьте GET /api/v1/settings.public. В заголовках запроса должны быть указаны следующие параметры:
- X-Auth-Token — токен аутентификации пользователя;
- X-User-Id — уникальный идентификатор пользователя.
Описание настроек settings.public
| Setting ID | Type | Default | Description | Note |
|---|
FileUpload_Enabled | boolean | true | Разрешена ли загрузка файлов |
| FileUpload_MaxFileSize | int | 104857600 | Максимальный размер файла (в байтах) |
| FileUpload_MaxGroupAvatarSize | int | 10485760 | Максимальный размер файла аватара комнаты (в байтах) |
| FileUpload_MediaTypeWhiteList | stringArray | '[]' | Список допустимых к загрузке MIME-типов файлов | Значение '[]' эквивалентно — разрешены все MIME типы | FileUpload_MediaTypeBlackList | stringArray | '["image/svg+xml"]' | Список запрещенных к загрузке MIME-типов файлов | Значение '[]' эквивалентно — разрешены все MIME типы | UserFolderLimit
| int | 15 | Максимальное количество папок, которое может быть у пользователя |
| ForwardLimit
| int | 50 | Максимальное количество сообщений, которые можно переслать за один раз |
| PinRoomsInFolderLimit
| int | 25 | Максимальное количество закрепляемых комнат в папке |
| RoomInFoldersLimit | int | 300 | Максимальное количество комнат в папке |
| AllowMultipleReactions | boolean | true | Разрешить ставить под сообщением несколько реакций одного автора |
| Message_autolink_enabled | boolean | true | Сокращать ссылки в сообщениях (включено по умолчанию) |
| Message_autolink_domains | autolinkArray | [{ "regExp": "https:\/\/jira\.example\.com\/browse\/.*-(.*)/g", "replace": '[JIRA] $1"}, {...}, {...}] | Cписок ресурсов для преобразования настраивается на Chat Server |
| Message_local_number_enabled | boolean | false | Преобразовывать номера в кликабельные ссылки (включено по умолчанию) |
| Message_local_number_regexp | regExp | "/[0-9]{4}/g" | Регулярные выражения для поиска номеров в тексте |
| platform_Android | json | { "version": { "number": "2.11.0", "required": false } } | Текущая версия android клиента, доступная в магазине приложений. При не соответствии версии приложение будет просить пользователя обновиться, при значении required: true кнопка отмены обновления будет скрыта. |
| platform_iOS | json | { "version": { "number": "2.11.0", "required": false } } | Текущая версия iOS клиента, доступная в магазине приложений. При не соответствии версии приложение будет просить пользователя обновиться, при значении required: true кнопка отмены обновления будет скрыта. |
|
|
Запрос settings.set
POST https://<proxy>/elph_chat/api/v1/settings.set позволяет изменять настройки Chat Server. Для изменения настроек требуется авторизация под admin.help.bot.
В заголовках запроса нужно передать:
Cookie: rc_token=<your_token>; rc_uid=admin.help.bot
|
В теле запроса необходимо указать id изменяемой настройки и значение:
{
"id": "Push_enable",
"value": true
}
|