Към съдържанието

Задачи за Hype Reports ​

Задачи ​

Всяка задача е запис в опашката, който Hype Reports трябва да извлече от HES, обработи и отчете със статус и отговор.

Тези адреси са в HES. Hype Reports извлича задачи за синхронизация с HTTP GET и изпраща резултатите им с HTTP PUT независимо от type на задачата. Полето type описва действието върху обекта. Генерирането на справки е отделен процес: POST заявява справка, а GET проверява резултата ѝ. Няма PUT операция за редактиране на генерирана справка.

HES създава задачи за следните типове обекти:

  • categories
  • fiscalDevices
  • mainCategories
  • menus
  • saloons
  • tables
  • users

Адреси за извличане:

  • GET /tasks/hype-reports/categories
  • GET /tasks/hype-reports/fiscalDevices
  • GET /tasks/hype-reports/mainCategories
  • GET /tasks/hype-reports/menus
  • GET /tasks/hype-reports/saloons
  • GET /tasks/hype-reports/tables
  • GET /tasks/hype-reports/users

Адреси за отчитане:

  • PUT /tasks/hype-reports/categories
  • PUT /tasks/hype-reports/fiscalDevices
  • PUT /tasks/hype-reports/mainCategories
  • PUT /tasks/hype-reports/menus
  • PUT /tasks/hype-reports/saloons
  • PUT /tasks/hype-reports/tables
  • PUT /tasks/hype-reports/users

Структура на задачата ​

Всеки GET отговор връща масив от задачи:

json
[
  {
    "id": "...",
    "request": { ... },
    "status": 0,
    "meta": {
      "source_account": {
        "id": "a0fa1fe5-feda-4753-9f23-691343e3828c",
        "name": "Local",
        "platform_id": "4d410b0e-ee37-497e-8362-478a383d68ee",
        "platform_name": "Hype Server",
        "platform_key": "hype-server"
      }
    },
    "type": "POST"
  }
]

id е идентификаторът на задачата. Използвайте го като entity_task_id при отчитане.

request съдържа данните, които Hype Reports трябва да обработи. Включва и source_account — акаунта в Hype Server, от който идва промяната; същият обект е и в meta.source_account.

type определя операцията за изпълнение:

  • GET: връщане на записите от Hype Reports към HES.
  • POST: създаване или съпоставяне на нов обект.
  • PUT: промяна или съпоставяне на съществуващ обект.

HES не изпраща DELETE задачи. Запис, изтрит в Hype, пристига като PUT задача с нулирани полета (празни низове или нули, например "name": "").

status е 0 за нова, необработена задача.

GET задачи ​

GET задача изисква от Hype Reports записи от посочения тип. Върнете масив в response или [], ако не съхранявате такива записи.

POST/PUT задачи ​

POST и PUT задачите съдържат обект от Hype Server. Приложете го в Hype Reports и върнете един обект в response. Ако записът вече съществува, върнете съществуващия HR идентификатор. Това създава връзката между идентификаторите в Hype Server и Hype Reports.

Отчитане на резултати от задачи ​

След обработката изпратете PUT заявка към адреса за съответния тип обект:

json
[
  {
    "entity_task_id": "...",
    "status": 200,
    "response": {
      "id": "..."
    }
  }
]

entity_task_id е идентификаторът от получената задача.

status е код за резултата от обработката със значението на HTTP код.

response съдържа резултата от обработката:

  • GET задачи: масив или [].
  • POST/PUT задачи: един обект с Hype Reports идентификатора.

Салони и маси ​

Задачите за маси идват със saloonId, вече заменен с идентификатора на салона в Hype Reports, или 0, ако сте потвърдили салона с {}. HES съпоставя масите само по id и не чете saloonId от вашия отговор.

API на Hype Exchange Service