Коды ошибок при выполнении команд к WhiteServer
Общий формат ошибок
{
"error": {
"wsError": {
"code": "string",
"extCode": "string",
"desc": "string"
},
"agentError": {
"code": 0,
"desc": "string"
},
"rkError": {
"code": 0,
"desc": "string"
},
"shError": {
"code": 0,
"desc": "string"
}
}
}Описание параметров
| Параметр | Тип параметра | Обязательный | Описание |
|---|---|---|---|
| - wsError | string enum | Ошибка Whiteserver | |
| – code | string | Код ошибки | |
| – extCode | string | Расширенный код ошибки | |
| – desc | string | Описание ошибки | |
| - agentError | string enum | Ошибка Агента | |
| – code | int | Код ошибки | |
| – desc | string | Описание ошибки | |
| - rkError | string enum | Ошибка Rkeeper | |
| – code | int | Код ошибки | |
| – desc | string | Описание ошибки | |
| - shError | string enum | Ошибка Store House | |
| – code | int | Код ошибки | |
| – desc | string | Описание ошибки |
Коды ошибок
| code | extCode | desc/описание |
|---|---|---|
| BadRequest | Произошла ошибка в постановке запроса, может вернуться детальное описание ошибки. | |
| InternalError | Внутренняя ошибка сервера | |
| Timeout | Не удалось выполнить запрос к агенту за отведённое время, по умолчанию 2 минуты. Возможные причины: нет связи агента с сервером, агент не запущен, не настроен, долго обрабатывался запрос. | |
| AuthFailed | Ошибка авторизации, не корректный токен. | |
| License | WsAgent | WsAgent (agentID: {agentId}) - Не найдена лицензия WsAgent |
| License | WsAggregator | WsAggregator (aggregatorID: {aggregatorId}) - Не найдена лицензия WsAggregator |
| License | WsProduct | WsProduct(abstract soft) (agentID: {agentId}) - Не найдена лицензия WsProduct (Название индивидуально для агрегаторов) |
| WsaDuplicateOrder | Заказ с тем же внешним ID уже поступал в агент на создание | |
| WsaOrderCanceledOnKass | Создание заказа отклонено на кассе | |
| WsaOrderCreationCancellation | Ошибка отмены создаваемого заказа (создание заказа нужно было отменить, но произошла ошибка) | |
| WsaOrderCreationCancelled | Создание заказа прекращено из-за внутренней ошибки | |
| WsaNoOneGuidSpecifiedForOrderSearching | Для поиска заказа не заданы ни идентификатор заказа R-Keeper, ни идентификатор задачи на его создание. | |
| WsaOrderCanceledOnKass | Задача создания заказа отменена на кассе | |
| WsaFillingOrderError | Ошибка при заполнении созданного пустого заказ в R-Keeper (например, принтер не доступен..) | |
| WsaOrderError | Общая ошибка при работе с заказами R-Keeper | |
| WsaOrderCreationComboComponentNotFound | Компонент комбо-блюда из заказа не найден в меню | |
| WsaOrderCreationDishNotFound | Блюдо из заказа не найдено в меню | |
| WsaOrderCreationSelectorNotFound | Не найден селектор меню с указанным блюдом | |
| WsaOrderIgnoredOnPos | Кассир не успел отреагировать на заказ (и автосоздание заказа отключено в конфигурации Агента) | |
| WsaOrderingPreferencesError | Некорректная конфигурация механизма работы с заказами | |
| WsaOrderingSettingNotSpecified | Не задан параметр конфигурации, необходимый для работы с заказом | |
| WsaOrderMenuIsUnknownError | Меню не было запрошено перед созданием заказа (может возникнуть вскоре после первичной установки Агента) | |
| WsaOrderValidationError | Ошибка валидации заказа в R-Keeper | |
| WsaPriceNotSpecifiedForOnlineOrder | Для создаваемого онлайн-заказа не указа цена (price.total) | |
| WsaRk7QueryParseError | Ошибка разбора XML-запроса к R-Keeper (при обработке задачи ExecuteRk7Query) | |
| WsaPluginException | Исключение, возникшее при обработке задачи плагином | |
| WsError | Ошибка, которую прислал WhiteServer | |
| WsaConnectionSettingsUpdatingError | Сбой обновления настроек подключения к WhiteServer | |
| WsaCommandHandling | Ошибка обработки команды | |
| WsaCommandNotSupported | Агент не поддерживает команду | |
| WsaHandshakeError | Сбой при сообщении на WhiteServer о включении Агента | |
| WsaHttpRequest | Сбой при отправке HTTP запроса | |
| WsaHttpStatus | Статус HTTP-ответа отличается от 200 ОК. | |
| WsaInvalidSettings | Некорректные настройки (например, настройки логирования) | |
| WsaInvalidWsConnectionSettings | Некорректные настройки подключения к WhiteServer | |
| WsaParseError | Ошибка разбора Json-разбора ответа от WhiteServer | |
| WsaSendRequest | Ошибка отправки запроса к WhiteServer | |
| WsaLogNotFoundError | Файл запрошенного журнала не найден | |
| WsaUpdatingError | Ошибка установки пакета обновления | |
| WsaSqlError | Ошибка обработки задачи на выполнение запроса к SQL-серверу (сервер отчётов R-Keeper) | |
| WsaSh5Error | Общая ошибка обработки задачи для StoreHouse | |
| WsaSh5ProcedureNotAlowed | Вызов указанной процедуры запрещён | |
| WsaSh5ProcedureNotSpecified | В запросе к StoreHouse не указано название процедуры | |
| Название исключения .net (например, InvalidOperationException) | Если по какой-то причине исключение при обработке задачи не будет обёрнуто в вышеперечисленные исключения, то на WhiteServer вернётся ошибка вида { "code": "SomeDotNetException", "desc": "Описание ошибки" } Например, так будут оборачиваться исключения, брошенные из плагинов. Если в типе исключения есть открытое свойство с именем "Code", то именно его строковое значение будет помещено в поле "code" ответа Агента. |
Примеры ошибок
Пример: BadRequest - параметр запроса не соответствует модели
{
"error": {
"wsError": {
"code": "BadRequest",
"desc": "Invalid request structure"
}
}
}Пример: AuthFailed - попытка отправить команду без авторизации / с недействительным токеном
{
"error": {
"wsError": {
"code": "AuthFailed"
}
}
}Пример: Timeout - агент недоступен
{
"responseCommon": {
"taskGuid": "49a50e51-46f0-41d7-825e-ac10e1c33faa",
"taskType": "GetOrder",
"objectId": 199990106
},
"error": {
"wsError": {
"code": "Timeout"
}
}
}Пример: License - нет лицензии для агента
{
"responseCommon": {
"taskGuid": "fe5bc9ff-61cf-4f8f-8ae6-cf6d27627fb1",
"taskType": "GetStopList",
"objectId": 199995855
},
"error": {
"wsError": {
"code": "License",
"desc": "WsAgent"
}
}
}