Описание объекта 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
и т.д.