/Methods/AddSubscriptionItem

<< Click to Display Table of Contents >>

Navigation:  API MasterSCADA 4D > Подключение к исполнительной системе по JSON > HTTP API MasterPLC > Проигрывание истории >

/Methods/AddSubscriptionItem

Добавляет в подписку архивные параметры по их внутренним archiveItemId.

HTTP: POST /Methods/AddSubscriptionItem

Запрос

{
  "sessionId": 123456789,
  "subscriptionId": 1,
  "items": [11, 12, 13]
}

Поля запроса

Поле

Тип

Обязательное

Описание

sessionId

integer

условно

Нужен, если сессия не передана заголовком Session-Id

subscriptionId

integer

да

Идентификатор подписки проигрывателя

items

array of integer

да

archiveItemId, полученные от GetArchiveItems

Ответ

{
  "subscriptionId": 1,
  "code": 0
}

Поля ответа

Поле

Тип

Описание

subscriptionId

integer

Идентификатор изменённой подписки

code

integer

Общий результат добавления

Поведение и ограничения

Если items отсутствует или не является массивом, возвращается OpcUa_BadRequestTypeInvalid.

Идентификаторы сохраняются в std::set: повторы автоматически схлопываются, а несколько вызовов накапливают общий набор.

Элементы массива, которые не распознаны как JSON-числа, молча игнорируются. Поддерживаемый контракт — целые 64-битные значения; дробные числа передавать нельзя.

Метод не проверяет существование archiveItemId и не возвращает поэлементные статусы. Неизвестный идентификатор обнаруживается только при последующем чтении; текущий архивный менеджер при этом обычно формирует успешный элемент с пустым values, а не ошибочный statusCode.

Добавление параметров после RunPlayerSubscription не изменяет уже поставленный в очередь запрос. Чтобы новый набор участвовал в чтении, нужно снова вызвать RunPlayerSubscription.

Метод не перезапускает таймер активности подписки.