Справка полей ответов API v1


Услуга в талоне

ticketProduct

{
  "Id": Guid, - идентификатор
  "Name": String, - название
  "Created": DateTime, - дата и время создания
  "StartTime": DateTime, - время постановки в очередь либо время записи для талона по записи
  "IsPending": Bool, - предварительная запись
  "Ticket":{ - талон
    "Id": Guid, - идентификатор
    "Created": DateTime, - дата и время создания
    "PinCode": String, - ПИН код
    "Prefix": String, - префикс
    "Number": Integer, - номер
    "FullNumber": String, - полный номер (префикс + номер)
    "State": Integer, - состояние талона (ticketStates)
    "Products": [] - услуги в талоне
  },
  "Product": {} - услуга (product)
  "ProductId": Guid, - идентификатор услуги
  "Chain": Integer, - номер "цепочки". Услуги одного маршута имеют одинаковое значение Chain
  "State": Integer, - состояние услуги в талоне (ticketProductStates)
  "CurrentPriority": - приоритет,
  "TicketProductDataFields": [], - пользовательские данные (requiredField)
  "InQueueStartTime": DateTime, - время первой постановки в очередь
  "ActivatedStartTime": DateTime, - время активации талона по записи
  "InvitedStartTime": DateTime, - время приглашения
  "OperatingStartTime": DateTime, - время начала обслуживания
  "CompletedEndTime": DateTime - время завершения обслуживания
}

Состояние талона

Услуга

Состояние услуги в талоне

Значения дополнительных данных для услуги


Услуга в талоне

ticketProduct2

{
  "Id": Guid, - идентификатор
  "Name": String, - название
  "Created": DateTime, - дата и время создания
  "StartTime": DateTime, - время постановки в очередь либо время записи для талона по записи
  "IsPending": Bool, - предварительная запись
  "Ticket":{ - талон
    "Id": Guid, - идентификатор
    "Created": DateTime, - дата и время создания
    "PinCode": String, - ПИН код
    "Prefix": String, - префикс
    "Number": Integer, - номер
    "FullNumber": String, - полный номер (префикс + номер)
    "State": Integer, - состояние талона (ticketStates)
    "Products": [] - услуги в талоне
  },
  "Product": {} - услуга (product)
  "ProductId": Guid, - идентификатор услуги
  "Chain": Integer, - номер "цепочки". Услуги одного маршута имеют одинаковое значение Chain
  "State": Integer, - состояние услуги в талоне (ticketProductStates)
  "CurrentPriority": - приоритет,
  "TicketProductDataFields": [], - пользовательские данные (requiredField)
  "InQueueStartTime": DateTime, - время первой постановки в очередь
  "ActivatedTime": DateTime, - время активации талона по записи
  "AwaitingDurationSeconds": int, - время ожидания в секундах. Поле присутствует в версии 3.3.9.0 и выше
  "InvitedStartTime": DateTime, - время приглашения
  "OperatingStartTime": DateTime, - время начала обслуживания
  "CompletedEndTime": DateTime - время завершения обслуживания
}

Состояние талона

Услуга

Состояние услуги в талоне

Значения дополнительных данных для услуги


Услуга

product

{
  "Prefix": String, - префикс
  "ActiveTickets":0,
  "TicketCount": Integer, - сколько талонов в день можно взять по услуге (-2 - автоматический расчет, -1 - бесконечно, либо указанное значение)
  "RequiredFields":[], - дополнительные данные, необходимые для получения услуги (productRequiredField)
  "AliveScheduleId": Guid, - идентификатор расписания живой очереди
  "RecordScheduleId": Guid, - идентификатор расписания записи
  "RecordDays": Integer, - на сколько дней вперед разрешена запись (если значение null, то 90)
  "DefaultServiceMinutes": Integer, - Предполагаемое время обслуживания (мин)
  "Color": String, - цветовой идентификатор услуги
  "Id": Guid, - идентификатор
  "Name": Guid, - идентификатор услуги
  "ProductCategoryId": Guid, - идентификатор категории, в которой находится услуга
  "IntegrationId": String, - идентификатор для API
  "RecordLimit": Integer, - Ограничение предварительной записи на одно время (талонов)
  "ServerId": Guid - идентификатор сервера, к которому привязана услуга
}

Дополнительные данные, необходимые для получения услуги


Состояние талона

ticketStates

0 - Новый, еще создаваемый в терминале
1 - Талон, владелец которого ожидает в очереди хотя бы по одной из услуг
2 - Талон, владелец которого приглашен или обслуживается по одной из услуг в талоне
3 - Талон, владелец которого не ожидает в очереди ни по одной из услуг

Состояние услуги в талоне

ticketProductStates

0 - Зарезервирован
1 - Резерв отменён
2 - Предварительная запись
3 - В очереди
4 - Приглашён
5 - Обслуживается
6 - В персональной очереди
7 - Не явился
8 - Перенаправлен
9 - Обслужен (услуга оказана)
10 - Отменён
12 - Не явился, вызовут повторно
13 - Предварительная запись (не активирован)
14 - Отменён (не был активирован)
15 - Обслуживание еще недоступно
16 - Подтверждён
17 - Услуга не оказана

Дополнительные данные, необходимые для получения услуги

productRequiredField

{
  "Id": Guid, - идентификатор
  "Name": String, - название
  "Type": Integer, - тип (requiredFieldTypes)
  "Mask": String, - маска для ввода
  "ReferenceSource": String,
}

Типы дополнительных данных услуги


Типы дополнительных данных услуги

requiredFieldTypes

0 - Целое число(Integer)
1 - Строка(String)
2 - Дробное число(Double)
3 - Дата и время(DateTime)
4 - Ссылка(Reference)
5 - Бинарный(Bool)

Значения дополнительных данных для услуги

requiredField

{
  "Id": Guid, - идентификатор
  "ProductRequiredFieldTypeId": Guid, - идентификатор дополнительных данных, необходимых для получения услуги (productRequiredField)
  "Value": String - значение
}

Дополнительные данные, необходимые для получения услуги


Типы ответов

answerTypes

1 - Да/Нет
2 - Единственный выбор
3 - Множественный выбор
4 - Шкала
5 - Текст

Аварийные ситуации филиала

serverError

{
  "Id": Guid, - идентификатор
  "Key":String, - событие
  "Value": String - описание события
}

Количество обслуженных клиентов

completedTickets

{
  "Hour": Integer, - время (час)
  "Load":Integer - количество обслуженных клиентов
}

Меню услуг

workplaceMenu

[{
  "Priority": Integer, - приоритет
  "ProductId": Guid, - идентификатор услуги
  "Product": {}, - услуга (product)
  "QueueIsAvailable": Bool, - живая очередь доступна
  "RecordIsAvailable": Bool, - запись доступна
  "Id": Guid, - идентификатор
  "Name": String, - название
  "Order": Integer, - порядок в меню
  "ProductsMenuCategoryId": Guid, - идентификатор категории
  "ParentItem":{ - категория
    "SubItems": [], - элементы меню в категории
    "Id": Guid, - идентификатор
    "Name": String, - название
    "Order": Integer, - порядок в меню
    "ProductsMenuCategoryId": Guid, - идентификатор категории
    "ParentItem": Object, - категория
    "BackgroundImageId": Guid, - идентификатор фонового изображения
    "BackgroundColor": String, - цвет фона
    "IconId": Guid, - идентификатор иконки
    "IntegrationId": string, - идентификатор для интеграции
    "DockIconToRight": Bool - располагать иконку справа
  },
  "BackgroundImageId": Guid, - идентификатор фонового изображения
  "BackgroundColor": String, - цвет фона
  "IconId": Guid, - идентификатор иконки
  "DockIconToRight": Bool - располагать иконку справа
}]

Услуга


Типы рабочих мест (пультов оператора)

workPlaceTypes

1 - Окно
2 - Специалист
3 - Кабинет
4 - Зал
5 - Этаж
6 - Администратор
7 - Стол
8 - Касса
9 - Регистратура
10 - Строение
11 - Здание
12 - Корпус

Режимы откладывания посетителей в персональную очередь (для пульта оператора)

holdModes

0 - Ручной
  Посетитель помещается в персональную очередь, из которой вызывается оператором.

1 - На время
  Оператор определяет время, на которое откладывает посетителя (например, 15 мин).
  До наступления времени оператор может сам вызвать посетителя из персональной очереди.
  По истечении времени посетитель ставится в очередь к оператору и будет вызван при приглашении следующего посетителя.

Редактируемый талон в формате разметки (для пульта оператора)

Редактируемый талон содержит услугу, по которой оператор сейчас обслуживает посетителя, а также все услуги, по которым посетитель будет обслужен. Услуги идут не простым списком, а сгруппированы, чтобы было понятно, какие услуги оказываются в любом порядке, а какие - строго последовательно (как этапы маршрута). Формат такой группировки называется «разметка талона».

editTicket

{
  "Type" - тип элемента:
    0 - обслуживаемая услуга талона (по умолчанию),
    1 - уже существующая услуга в талоне,
    2 - услуга в талоне, добавляемая оператором в рамках текущего редактирования,
    3 - параллельный контейнер,
    4 - последовательный контейнер,
    5 - зона обслуживания
  "Id": Guid, - идентификатор услуги в талоне или контейнера
  "Name": string, - название услуги в талоне или зоны обслуживания
  "WillBeServed": bool, - успеет ли услуга в талоне обслужиться до конца рабочего дня
  "ToWorkPlace": string, - название пульта оператора, к которому привязана услуга в талоне (по умолчанию - не привязана)
  "ToUser": string, - ФИО оператора, к которому привязана услуга в талоне (по умолчанию - не привязана)
  "Priority": integer, - Приоритет услуги (0-3)
  "Children": [ элемент разметки талона (editTicket) ] - дочерние элементы контейнера
  "Content": {} элемент разметки талона (editTicket) - содержимое зоны обслуживания
}

Редактируемый талон в формате разметки (для пульта оператора)