Описание объекта restClientConfig¶
Во время установки соединения в ответе 200 OK на метод connect передается JSON объект restClientConfig, который определяет поведение для всех последующих вызовов, связанное с обработкой ошибок, перезаписью параметров и формированием набора передаваемых полей. Если restClientConfig передан не был, используются значения по умолчанию, представленные в таблице ниже.
| Parameter | Description | Default value |
|---|---|---|
| clientExclude | Список имен параметров, разделенных запятой. Параметры в этом списке не будут переданы на клиента. | пусто |
| restExclude | Список имен параметров, разделенных запятой. Параметры в этом списке не будут переданы на бэкенд сервер. | пусто |
| restOnError |
Реакция на ошибки при обработке REST методов:LOG - Записать ошибку в лог и продолжить выполнение операцииFAIL - Остановить операцию и вернуть ошибку
|
LOG |
| restPolicy |
Переопределение полей:OVERWRITE - Поля, перечисленные в restOverwrite, будут перезаписаны ответом бэкенд сервераNOTIFY - Поля не будт перезаписаны ответом бэкенд сервераDISABLE - Поля не будут отправлены на бэкенд сервер
|
NOTIFY |
| restOverwrite |
Список полей, разделенный запятыми. Поля из этого списка будут перезаписаны, если restPolicy установлена в OVERWRITE
|
пусто |
Пример объекта restClientConfig. В этом примере в объекте представлен только метод ConnectionStatusEvent. Aналогичным образом могут быть описаны другие методы. Если метод не описан, используются значения по умолчанию.
"restClientConfig":
{
"ConnectionStatusEvent":
{
"restExclude":"",
"clientExclude":"",
"restOnError":"LOG",
"restPolicy":"NOTIFY",
"restOverwrite":""
}
}
Интерпретация примера:
- Для метода
ConnectionStatusEventопределены следующие настройки:restExclude,clientExclude,restOnError,restPolicy,restOverwrite. - При вызове этого метода, на бэкенд сервер будут доставлены все поля, т.к.
restExclude: "". - При вызове этого метода, на клиента так же будут доставлены все поля, т.к.
clientExclude: "". - В случае ошибок при обращении к бэкенд серверу, эти ошибки будут логироваться, но не будут переданы на клиента. При этом на клиента придет нормальное событие
ConnectionStatusEvent. - Даже если бэкенд сервер вернет новые параметры, они не будут перезаписаны, т.к.
restPolicy: "NOTIFY". - Поле
restOverwriteздесь не работает, т.к. перезапись отключена вrestPolicy.
Аналогично restClientConfig может описывать конфигурацию для других вызовов, таких как: call, OnCallEvent, CallStatusEvent, sendMessage, OnMessageEvent, MessageStatusEvent и т.д.