Все запросы в White Server отправляются от имени одного из агрегаторов. Список агрегаторов можно посмотреть в разделе Агрегаторы административной панели WS.

Существует две основные схемы маршрутизации запросов:

Если на ресторане не зарегистрировано ни одного мультиагента, задача уходит на агент в ресторане.

МультиагентLink to Мультиагент

Мультиагент подключается автоматически при активации интеграции с r_k Delivery.

Если на ресторане обнаружены мультиагенты, то для каждого мультиагента будут зарегистрированы следующие параметры:

  • Приоритет — от 0 до 19999. Задача передается на мультиагент с наименьшим значением приоритета, если он имеет право обработать данную задачу
  • Пропускать запросы от — список агрегаторов, запросы от которых мультиагент пропускает и не обрабатывает. Если список пуст, то мультиагент обрабатывает запросы от всех агрегаторов.

Каждый мультиагент при активации по событию оповещает WS о следующих параметрах:

  • Активность агента —  список ресторанов, задачи для которых этот мультиагент обрабатывает
  • Обрабатывает задачи — список типов задач, которые обрабатывает мультиагент.
Для одного ресторана может быть зарегистрировано несколько мультиагентов.

Правило распределения задач:
  1. Берется мультиагент с минимальным приоритетом
  2. Если задача может быть обработана мультиагентом: поддерживается тип задачи, и запрос сделан от агрегатора, которого нет в списке Пропускает запросы от, то задача отдается ему
  3. Иначе берется и проверяется следующий по приоритету мультиагент
  4. Если нет мультиагентов, которые могут обработать задачу, она отправляется на агент в ресторане.

Прямые запросы для подключенных системLink to Прямые запросы для подключенных систем

Маршрутизация запросов доступна для следующих типов подключенных систем:

  • RK Ref
  • RK Mid
  • StoreHouse
  • SQL server

По умолчанию запросы отправляются для выбранной подключенной системы.

Но также есть возможность, при уже выбранной основной подключённой системе, отправлять запросы на другую подключенную систему при использовании SystemName в запросе. Это актуально для всех подключенных систем кроме StoreHouse.

Для примера рассмотрим запрос CreateOrder с использованием systemName.


В данной конфигурации по умолчанию для RKMid выбрана подключенная система MID3, но также доступна и система MID4 для отправки запросов.

Для выполнения запроса потребуется в секцию "params" добавить "systemName": "MID4". Такой подход актуален и для других подключенных систем типа RK Ref, SQL.

"taskType": "CreateOrder",
 "params": {
  "sync": {
   "objectId": 199990236,
    "timeout": 120,
    "systemName": "MID4"
  },
CODE
Описание общих параметров запросов к WhiteServer

Параметр

Тип

Обязательный

Описание

Значение

async


-

Асинхронный вызов метода (допустимо использовать один из: синхронный, либо асинхронный)


objectId

int

да

Код ресторана в системе лицензирования

Присутствует во всех методах, кроме GetAgentList

sync


-

Синхронный вызов метода (допустимо использовать один из: синхронный, либо асинхронный)


systemName

string

нет

Указание конкретной подключенной системы для которой выполняется запрос

Присутствует во всех методах, кроме GetAgentList

timeout

int

-

Время ожидания ответа от агента в секундах

по умолчанию 120 секунд,
максимальное 180 секунд