Тревога

Основная платформа
duress_acknowledge_incidentТревога

Подтверждает получение открытого инцидента Duress от имени пользователя: фиксирует, что он реагирует, и может остановить дальнейшую эскалацию. Подтвердить можно только открытые инциденты.

Всегда сначала уточняйте. Вызовите без confirm, чтобы получить инцидент, сообщите пользователю, получение чего он подтверждает, и вызовите снова с confirm: true только после его согласия.

В workflow или из агента это работает только там, где план реагирования объекта позволяет workflows подтверждать, закрывать и поднимать тревоги. Чтобы закрыть инцидент, используйте duress_resolve_incident.

Параметры

ИмяТипОписание
incidentId*stringID инцидента (inc_...) из duress_incidents_read list или триггера workflow Duress.
notestringНеобязательное примечание, например "Иду на ресепшен"
confirmbooleanЗадавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом
duress_buttons_readТревогаDuress ConfigurationУправление устройствами

Читает тревожные кнопки Duress на объекте: их статус (батарея, когда последний раз был слышен сигнал, когда последний раз проверялась), полные профили (метка, помещение, зона, размещение, связанные камеры, двери и экраны, отключённые оповещения, состояние контроля), то, с чем их можно связать, экраны, которые передают их нажатия, и тест настройки недавно добавленной кнопки.

Батарея: low — 30% или меньше (скоро замените), critical — 20% или меньше (замените сейчас). Значение null для батареи и lastSeenAt означает, что ни один экран ещё не слышал кнопку. Время указывается в ISO.

Действия:

  • status: статус кнопок. Каждая кнопка с зоной, помещением, батареей, временем, когда экран последний раз её слышал, и временем последней проверки. «Работают ли тревожные кнопки?», «В каких нужно заменить батарейки?»
  • list: профили кнопок. Полный профиль каждой кнопки: то, что изменяет duress_buttons_write update, плюс сигнал, экраны, слышавшие её за последние сутки, состояние контроля и ожидающий тест настройки.
  • link_options: варианты связи. Камеры, двери, экраны и зоны доступа объекта, с которыми можно связать кнопку (id для duress_buttons_write update).
  • receivers: приёмники кнопок. Экраны объекта, которые слышат кнопки и передают нажатия, и находится ли каждый в сети. ready равно false, если ни один экран не может услышать кнопку.
  • setup_test: тест настройки. Тест настройки недавно добавленной кнопки: waiting (её первое нажатие — только тест), received, expired, ended или none, и слышал ли её какой-либо экран с момента добавления. Требуется deviceSerialNumber.

Параметры

ИмяТипОписание
action*"status" | "list" | "link_options" | "receivers" | "setup_test"Что сделать; каждое действие описано в описании инструмента.
facilityIdstringID объекта. Необязателен, если имеется в виду подключённый объект.
limitintegerЭлементов на странице (по умолчанию 25, не более 100) (status, list)
cursorstringnextCursor с предыдущей страницы (status, list)
deviceSerialNumberstringСерийный номер кнопки из duress_buttons_read status или list (setup_test)
duress_buttons_writeDuress ConfigurationТревогаУправление устройствами

Изменяет тревожные кнопки Duress на объекте: добавление новой кнопки, её профиль (метка, помещение, зона, размещение, примечания, связанные камеры, двери, экраны и зона доступа, отключённые оповещения устройства), подача звукового сигнала, чтобы персонал мог её найти, завершение теста настройки новой кнопки, чтобы она заработала в боевом режиме, и удаление кнопки.

Поля, не указанные в update, сохраняют свои значения; null очищает их. Текущий профиль можно прочитать с помощью duress_buttons_read list.

Действия:

  • update: обновить кнопку. Сохраняет профиль кнопки на объекте, где она зарегистрирована (там нужен Duress Configuration). zone — от 001 до 999, уникальная в пределах объекта. alertsMutedUntil (ISO, не более чем на 30 дней вперёд) отключает её оповещения о батарее и отключении от сети. Требуется deviceSerialNumber.
  • locate: подать звуковой сигнал кнопкой. Кнопка пищит и мигает 30 секунд, чтобы персонал мог её найти, например ту, что постоянно сообщает о низком заряде батареи. Команду отправляет экран рядом с кнопкой, поэтому она должна находиться в зоне действия одного из экранов. Недоступно, пока по кнопке есть открытая тревога. Требуется deviceSerialNumber.
  • go_live: перевести новую кнопку в боевой режим. Немедленно завершает тест настройки недавно добавленной кнопки, чтобы следующее нажатие было настоящей тревогой. Сначала проверьте duress_buttons_read setup_test. Требуется Управление устройствами или Duress Configuration на объекте. Требуется deviceSerialNumber. Запрашивает подтверждение.
  • remove: удалить кнопку. Отвязывает кнопку от объекта и удаляет её профиль, освобождая её зону. Недоступно, пока по кнопке есть открытая тревога. Требуется Управление устройствами на объекте. Требуется deviceSerialNumber. Запрашивает подтверждение.
  • add: добавить кнопку. Регистрирует новую тревожную кнопку на объекте по напечатанному на ней серийному номеру. По умолчанию её первое нажатие в течение следующих 30 минут — только тест (setupTest). На объекте должен быть экран с включённым Duress alarm monitoring или IoT Gateway. Требуется Управление устройствами на объекте. Требуется deviceSerialNumber. Запрашивает подтверждение.

Параметры

ИмяТипОписание
action*"update" | "locate" | "go_live" | "remove" | "add"Что сделать; каждое действие описано в описании инструмента.
facilityIdstringID объекта. Необязателен, если имеется в виду подключённый объект.
deviceSerialNumberstringСерийный номер кнопки из duress_buttons_read status или list
labelstringnullКак персонал называет кнопку, например "Стойка ресепшена" (update)
roomstringnullПомещение, в котором она находится (update, add)
zonestringnullЗона центра мониторинга, от 001 до 999 (update)
placement"fixed" | "carried" | "null"fixed (закреплена) или carried (носимый кулон) (update)
notesstringnullПримечания для персонала (update)
cameraIdsarraynullКамеры, связанные с кнопкой (id из duress_buttons_read link_options); null или [] очищает их (update)
doorIdsarraynullДвери, связанные с кнопкой (id из duress_buttons_read link_options); null или [] очищает их (update)
screenIdsarraynullЭкраны, связанные с кнопкой (id из duress_buttons_read link_options); null или [] очищает их (update)
accessZoneIdstringnullЗона доступа, в которой находится кнопка (update)
alertsMutedUntilstringnullДата и время ISO, до которых отключены оповещения устройства; null включает их снова (update)
muteReasonstringnullПочему её оповещения отключены (update)
setupTestbooleanПо умолчанию true: первое нажатие — только тест (add)
confirmbooleanЗадавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом
duress_end_testТревога

Немедленно завершает текущий тест Duress на объекте, чтобы следующее нажатие было настоящей тревогой. Результаты приходят примерно через 10 минут, как и для любого теста.

Параметры

ИмяТипОписание
facilityIdstringID объекта. Необязателен, если имеется в виду подключённый объект.
duress_incidents_readТревога

Читает инциденты тревоги Duress (сотрудник нажал тревожную кнопку или тревогу поднял workflow): списки, временная шкала и доставки одного инцидента, отчёт для разбора и записи видеонаблюдения вокруг тревоги.

Статусы: open (никто ещё не подтвердил получение), acknowledged (кто-то реагирует), resolved (закрыт, с итогом: genuine, false_alarm, test или unknown). active означает open или acknowledged. Тестовые инциденты (isTest) возникают при тестах кнопок; testType 'unplanned' — это тревога, поднятая как настоящая, которую реагирующий закрыл как тест.

Статус доставки: sent, acknowledged (получатель подтвердил), failed (см. error), shadow (пробный прогон, ничего не отправлено). Доставки в центр мониторинга также суммируются в monitoringCentre. В результатах указываются имена людей, но никогда не указываются номера телефонов или адреса электронной почты. Время указывается в ISO.

Действия:

  • list: список инцидентов. Сначала новые. scope: facility (по умолчанию; указанный или подключённый объект) или organisation (все доступные вам объекты организации; по умолчанию организация объекта).
  • get: получить инцидент. Статус, нажатые кнопки, временная шкала (нажатия, эскалации, подтверждения, примечания) и каждая попытка отправки уведомления или доставки в центр мониторинга с её результатом. Требуется incidentId.
  • report: отчёт об инциденте. Для разбора: инцидент, секунды до подтверждения и закрытия, достигнутые этапы, все записи временной шкалы, что было отправлено по каждому каналу и что не удалось, а также были ли сохранены записи. Используйте вместе с duress_incidents_write add_note, чтобы добавить разбор к инциденту. Требуется incidentId.
  • footage_previews: записи тревоги. Каждая камера в записях тревоги: её статус, количество кадров и клипов, загруженные клипы и кадр, ближайший к нажатию (posterSeconds). С cameraId — только эта камера плюс Unix-секунды каждого кадра (frameSeconds). Требуется видеонаблюдение на объекте. Требуется incidentId.
  • footage_frame: кадр записи тревоги. Один кадр таймлапса из записей тревоги, возвращаемый как изображение: сохранённая копия, если записи сохранены, иначе кадр в реальном времени в окне тревоги. seconds — значение posterSeconds или frameSeconds из footage_previews. Требуются incidentId, cameraId, seconds.

Параметры

ИмяТипОписание
action*"list" | "get" | "report" | "footage_previews" | "footage_frame"Что сделать; каждое действие описано в описании инструмента.
scope"facility" | "organisation"По умолчанию facility (list)
facilityIdstringID объекта. Необязателен, если имеется в виду подключённый объект. (list)
organisationIdstringДля scope organisation. По умолчанию организация объекта. (list)
status"active" | "open" | "acknowledged" | "resolved"active — это open или acknowledged (list)
fromstringДата и время ISO: инциденты, открытые в это время или позже (list)
tostringДата и время ISO: инциденты, открытые в это время или раньше (list)
limitintegerЭлементов на странице (по умолчанию 25, не более 100) (list)
cursorstringnextCursor с предыдущей страницы (list)
incidentIdstringID инцидента (inc_...) из duress_incidents_read list или триггера workflow Duress. (get, report, footage_previews, footage_frame)
cameraIdstringКамера в записях тревоги из footage_previews (footage_previews, footage_frame)
secondsintegerstringВремя кадра в виде 10-значного числа Unix-секунд (footage_frame)
duress_incidents_writeТревогаDuress Configuration

Изменяет инцидент Duress, не затрагивая саму тревогу: даёт ему название, добавляет примечания персонала и сохраняет или освобождает записи видеонаблюдения вокруг него. Никто не оповещается. Чтобы подтвердить получение, закрыть инцидент или сообщить реагирующим, используйте duress_acknowledge_incident, duress_resolve_incident или duress_post_update.

Действия:

  • rename: назвать инцидент. Даёт инциденту название, чтобы его было легко найти позже, например "Агрессивный посетитель у стойки обслуживания". Пустое название или null удаляет его. Названия отображаются в консоли Duress и отчётах. Требуется incidentId.
  • add_note: добавить примечание. Добавляет примечание во временную шкалу инцидента, например что обнаружил пользователь или кто прибыл на место. При любом статусе; примечания видит только персонал, и они не меняют инцидент. Пишите словами пользователя и сначала согласуйте с ним формулировку. Требуются incidentId, note.
  • keep_footage: сохранить записи тревоги. Сохраняет записи видеонаблюдения вокруг закрытой настоящей тревоги, чтобы они не удалились вместе с обычными записями, используя минуты и камеры из плана реагирования. Выполняется через несколько минут, после загрузки. Не для тестов, открытых тревог или записей, которые уже сохранены или освобождены. Требуется incidentId.
  • release_footage: освободить сохранённые записи. Отказывается от записей, сохранённых для тревоги: клипы возвращаются к обычному сроку хранения, а сохранённые кадры удаляются, поэтому после истечения срока обычных записей их больше нельзя будет просмотреть. Требуется Duress Configuration на объекте. Требуется incidentId. Запрашивает подтверждение.

Параметры

ИмяТипОписание
action*"rename" | "add_note" | "keep_footage" | "release_footage"Что сделать; каждое действие описано в описании инструмента.
incidentIdstringID инцидента (inc_...) из duress_incidents_read list или триггера workflow Duress.
namestringnullНазвание; пустое значение или null удаляет его (rename)
notestringПримечание (add_note)
confirmbooleanЗадавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом
duress_lift_lockdownТревога

Снимает блокировку, вызванную тревогой Duress: заблокированные ею двери снова пропускают людей. Работает при любом статусе тревоги.

Сначала уточните. Вызовите без confirm, чтобы увидеть блокировку, сообщите пользователю и вызовите снова с confirm: true после его согласия.

Параметры

ИмяТипОписание
incidentId*stringID инцидента (inc_...) из duress_incidents_read list или триггера workflow Duress.
confirmbooleanЗадавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом
duress_post_updateТревога

Публикует обновление для людей, реагирующих на тревогу Duress, например "Полиция уже едет" или "Отбой, человек ушёл". Оно появляется на их странице тревоги и в приложении Duress, а при настоящей тревоге план реагирования может также отправить его SMS всем, кому уже отправлялись SMS об этой тревоге. Обновления можно публиковать в течение 24 часов после закрытия тревоги.

Сначала уточните. Вызовите без confirm, чтобы проверить инцидент, покажите пользователю точную формулировку и вызовите снова с confirm: true после его согласия. Для информации, которую должен видеть только персонал, используйте вместо этого duress_incidents_write add_note.

Параметры

ИмяТипОписание
incidentId*stringID инцидента (inc_...) из duress_incidents_read list или триггера workflow Duress.
text*stringОбновление, слово в слово
confirmbooleanЗадавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом
duress_raise_alarmТревога

Поднимает настоящую тревогу Duress на объекте, как будто была нажата кнопка: запускается план реагирования (люди оповещаются, следуют эскалация и напоминания, выполняются действия реагирования), а в тревоге указано, что её поднял этот workflow, с причиной.

  • reason: что произошло, например "Взлом двери запасного выхода" (до 200 символов).
  • deviceSerialNumber: необязательно. Кнопка, местоположение которой следует использовать; только в этом случае также оповещается центр мониторинга, с зоной этой кнопки.

Только как шаг workflow, на объектах, план реагирования которых позволяет workflows подтверждать, закрывать и поднимать тревоги. Пока тревога этого workflow открыта, он не поднимет другую, а вернёт эту тревогу.

Параметры

ИмяТипОписание
facilityIdstringID объекта. Необязателен, если имеется в виду подключённый объект.
reason*stringЧто произошло
deviceSerialNumberstringКнопка на объекте (необязательно)
duress_reports_readТревогаDuress Configuration

Отчётность о соответствии требованиям Duress для объекта, бренда или организации: время реагирования (P50/P95), инциденты по итогам и доля ложных тревог, охват тестами и объекты с просроченными тестами, время работы кнопок, успешность доставки в центр мониторинга и экспорт по каждому инциденту. А также недоставленные оповещения последней тревоги на одном объекте.

Дни считаются по местному времени объекта; периоды более 400 дней сокращаются (range.capped). Настоящие и тестовые инциденты считаются отдельно. Длительность указывается в мс (p50Ms, p95Ms). Отчёты по бренду охватывают только доступные вам объекты, если у вас нет доступа на уровне всей организации (scope.restrictedToAccessibleFacilities).

Действия:

  • overview: обзор отчёта Duress. Итоги, помесячная динамика и метрики по организациям, брендам и объектам (incidents, testCoverage, deviceUptime, deliveries). Объекты выводятся постранично.
  • compliance_summary: сводка соответствия требованиям Duress. То, что показывает PDF о соответствии: охват тестами с объектами с просроченными тестами, время работы кнопок, успешность доставки, недавние тесты (testHistory), а по каждому объекту — его последний тест, учения и настоящая тревога со временем работы каждой кнопки. Объекты выводятся постранично.
  • incident_export: экспорт инцидентов Duress. Одна строка на инцидент, сначала старые, со столбцами экспорта CSV: объект, тест или настоящая тревога, статус, итог, местное время, секунды до подтверждения и закрытия, кто подтвердил и закрыл, кнопки и количество доставок.
  • delivery_problems: недоставленные оповещения о тревоге. Последняя тревога или тест объекта (со всем окном теста) и оповещения, которые так и не дошли, по каналам. problems равно null, если всё доставлено. Требуется Duress или Duress Configuration на объекте.

Параметры

ИмяТипОписание
action*"overview" | "compliance_summary" | "incident_export" | "delivery_problems"Что сделать; каждое действие описано в описании инструмента.
scope"facility" | "brand" | "organisation"По умолчанию: наиболее конкретный указанный id, иначе подключённый объект. (overview, compliance_summary, incident_export)
facilityIdstringID объекта. Необязателен, если имеется в виду подключённый объект.
brandIdstringID бренда, для шаблона бренда вместо объекта (overview, compliance_summary, incident_export)
organisationIdstringТребуется доступ к Duress на уровне всей организации (overview, compliance_summary, incident_export)
fromstringПервый день, YYYY-MM-DD по местному времени объекта (по умолчанию за 30 дней до to) (overview, compliance_summary, incident_export)
tostringПоследний день, YYYY-MM-DD по местному времени объекта, включительно (по умолчанию сегодня) (overview, compliance_summary, incident_export)
limitintegerЭлементов на странице (по умолчанию 25, не более 100) (overview, compliance_summary, incident_export)
cursorstringnextCursor с предыдущей страницы (overview, compliance_summary, incident_export)
duress_resolve_incidentТревога

Закрывает инцидент Duress: завершает тревогу, останавливает эскалацию и фиксирует итог. Закрыть можно открытые инциденты и инциденты с подтверждённым получением.

  • disposition: genuine (настоящая чрезвычайная ситуация), false_alarm, test или unknown.
  • note: что произошло. Обязательно для настоящей тревоги.

Всегда сначала уточняйте. Вызовите без confirm, чтобы получить инцидент, сообщите пользователю, какую тревогу он закрывает и с каким итогом, и вызовите снова с confirm: true только после его согласия.

В workflow или из агента это работает только там, где план реагирования объекта позволяет workflows подтверждать, закрывать и поднимать тревоги.

Параметры

ИмяТипОписание
incidentId*stringID инцидента (inc_...) из duress_incidents_read list или триггера workflow Duress.
disposition*"genuine" | "false_alarm" | "test" | "unknown"Итог
notestringЧто произошло. Обязательно, если disposition равно genuine.
confirmbooleanЗадавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом
duress_settings_readТревогаDuress Configuration

Читает настройки Duress: планы реагирования (кого, в каком порядке и как оповещать — на объекте или как шаблон бренда), итоговый план, который фактически использует механизм тревог, люди и роли, которых можно добавить, оповещения устройств (проблемы с батареей, подключением, покрытием и доставкой), правила контактов бренда и статус планов, обзор кнопок бренда или организации, а также как тревоги передаются в центр мониторинга.

Объект использует шаблон своего бренда (иначе — своей организации), дополняет его контактами (mode extend) или заменяет собственным планом (mode replace). Настройки изменяются через duress_settings_write. Время указывается в ISO.

Действия:

  • response_plan: план реагирования. План, действующий на объекте (effective), и что содержит каждый уровень (sources: facility, brand, organisation), или, только с brandId, шаблон бренда. Контакты — в сохранённом виде, готовые к редактированию и повторному сохранению.
  • resolved_plan: итоговый план. Кому механизм тревог отправляет оповещения на объекте, уровень за уровнем: роли, раскрытые до людей, каналы, по которым можно связаться с каждым, задержки и предупреждения, которые нужно устранить до тревоги. Только имена, без номеров телефонов и адресов электронной почты.
  • contact_options: варианты контактов. Люди и роли, которых можно добавить в план объекта (там нужен Duress Configuration) или, только с brandId, в шаблон бренда с учётом правил контактов бренда.
  • device_alerts: оповещения устройств. Кому сообщается о низком заряде батарей, кнопках не в сети, потере покрытия и неудачных доставках: правила на каждом уровне и итоговые получатели объекта или, только с brandId, правила бренда.
  • contact_rules: правила контактов бренда. Какие роли объекты бренда могут добавлять в планы: allowAllExcept скрывает перечисленные роли, manual предлагает только их. Требуется то же, что и для редактирования плана бренда. Требуется brandId.
  • plan_status: статус планов бренда. Каждый объект бренда: использует ли он шаблон, дополняет его или имеет собственный план, сколько контактов он добавил и предупреждения его плана. Требуется brandId.
  • buttons_summary: обзор кнопок. Все объекты бренда или организации: количество кнопок, батарей и устройств не в сети, следующий и последний тест. Данные обзоров Brands & Customisation и организации.
  • monitoring: маршрутизация в центр мониторинга. Как тревоги уходят с объекта: eaAlarmType none, cid (вызов центра мониторинга через eaAlarmProvider) или relay (проводная панель через eaRelayModel), а также доступные провайдеры.

Параметры

ИмяТипОписание
action*"response_plan" | "resolved_plan" | "contact_options" | "device_alerts" | "contact_rules" | "plan_status" | "buttons_summary" | "monitoring"Что сделать; каждое действие описано в описании инструмента.
facilityIdstringID объекта. Необязателен, если имеется в виду подключённый объект. (response_plan, resolved_plan, contact_options, device_alerts, monitoring)
brandIdstringID бренда, для шаблона бренда вместо объекта (response_plan, contact_options, device_alerts, contact_rules, plan_status, buttons_summary)
organisationIdstringID организации (buttons_summary)
duress_settings_writeDuress Configuration

Изменяет настройки Duress: планы реагирования (на объекте или шаблон бренда или организации), оповещения устройств, правила контактов бренда и то, как тревоги передаются в центр мониторинга. Каждое изменение запрашивает подтверждение, потому что оно меняет, кто будет оповещён.

Передайте одно из: facilityId (по умолчанию подключённый объект), brandId или organisationId. Для планов объекта там нужен Duress Configuration; для шаблонов нужен администратор организации с Duress Configuration, а для бренда — Duress Configuration на каждом его объекте. Сначала прочитайте настройки с помощью duress_settings_read.

Действия:

  • save_response_plan: сохранить план реагирования. Уровни контактов, оповещаемых через afterSeconds после нажатия (по возрастанию, первый обычно 0), ackRequired, reminders и responseActions. Вместо этого объект может дополнить свой шаблон (mode extend) с помощью additions. Не указанные поля сохраняют сохранённые значения; responseActions объединяются по действию. Запрашивает подтверждение.
  • remove_response_plan: удалить план реагирования. Удаляет план, сохранённый на этом уровне, после чего объект снова использует свой шаблон, а бренд возвращается к шаблону организации. Запрашивает подтверждение.
  • save_device_alerts: сохранить оповещения устройств. Заменяет правила оповещений устройств на этом уровне: до 10 правил, каждое — набор событий и контактов (push, sms или email). Сохраняйте id правил, прочитанные из duress_settings_read device_alerts. Требуется rules. Запрашивает подтверждение.
  • remove_device_alerts: удалить оповещения устройств. Удаляет правила оповещений устройств на этом уровне, после чего снова действуют правила следующего уровня выше. Запрашивает подтверждение.
  • save_contact_rules: сохранить правила контактов бренда. Какие роли объекты бренда могут добавлять в планы: allowAllExcept скрывает roleIds, manual предлагает только roleIds. Уже сохранённые контакты остаются; итоговые планы обновляются. Требуются brandId, mode, roleIds. Запрашивает подтверждение.
  • save_monitoring: сохранить маршрутизацию в центр мониторинга. Куда передаются тревоги: eaAlarmType none, cid (нужен eaAlarmProvider, один из провайдеров, перечисленных в duress_settings_read monitoring) или relay (eaRelayModel). Требуется Duress Configuration на объекте. Требуется eaAlarmType. Запрашивает подтверждение.

Параметры

ИмяТипОписание
action*"save_response_plan" | "remove_response_plan" | "save_device_alerts" | "remove_device_alerts" | "save_contact_rules" | "save_monitoring"Что сделать; каждое действие описано в описании инструмента.
facilityIdstringID объекта. Необязателен, если имеется в виду подключённый объект. (save_response_plan, remove_response_plan, save_device_alerts, remove_device_alerts, save_monitoring)
brandIdstringID бренда, для шаблона бренда вместо объекта (save_response_plan, remove_response_plan, save_device_alerts, remove_device_alerts, save_contact_rules)
organisationIdstringID организации, для шаблона организации (save_response_plan, remove_response_plan, save_device_alerts, remove_device_alerts)
mode"replace" | "extend"Только для планов объекта: replace (собственные уровни) или extend (дополнения к шаблону) (save_response_plan, save_contact_rules)
tiersarrayУровни плана (mode replace и шаблоны) (save_response_plan)
additionsarrayMode extend: дополнительные контакты для каждого уровня шаблона (tierId и afterSeconds из него) (save_response_plan)
ackRequiredbooleanПродолжается ли эскалация, пока кто-нибудь не подтвердит получение (save_response_plan)
remindersobjectnullПовторять оповещения каждые everySeconds (0 отключает их) до stopAfterSeconds (save_response_plan)
responseActionsobjectДействия по названию, каждое { enabled, ... }: unlockOnAcknowledge (doorIds), lockdown, staffScreenAlerts, buttonAcknowledge, dashboardCctv, dashboardDoorControls, dashboardResolve, updateTexts, aiSummary, workflowControl, retainFootage (minutesBefore, minutesAfter, cameras) (save_response_plan)
rulesarrayПравила; пустой список не сохраняет ни одного (здесь никто не оповещается) (save_device_alerts)
roleIdsarrayid ролей, к которым применяется режим (save_contact_rules)
eaAlarmType"none" | "cid" | "relay"none, cid или relay (save_monitoring)
eaAlarmProviderstringnullДля cid: код провайдера (save_monitoring)
eaRelayModel"none" | "numato-rl80001"Для relay: релейная плата (save_monitoring)
confirmbooleanЗадавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом
duress_start_lockdownТревога

Блокирует объект из-за тревоги Duress: все двери перестают пропускать людей, пока блокировка не будет снята (duress_lift_lockdown или из консоли). Для одной тревоги возможна только одна блокировка.

Никогда не для тестовых или закрытых тревог. Требуется Door/Gate Access на объекте.

Сначала уточните. Вызовите без confirm, чтобы проверить инцидент, сообщите пользователю, что все двери будут заблокированы, и вызовите снова с confirm: true после его согласия.

Параметры

ИмяТипОписание
incidentId*stringID инцидента (inc_...) из duress_incidents_read list или триггера workflow Duress.
confirmbooleanЗадавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом
duress_start_testТревога

Немедленно запускает тест Duress на объекте. Пока он не завершится, каждое нажатие — тест, а не настоящая тревога:

  • walk: персонал нажимает каждую кнопку; оповещается только первый этап плана реагирования, с пометкой TEST.
  • drill: выполняется весь план реагирования, с пометкой TEST.

Тестовые контакты объекта получают сообщение о начале теста, а результаты — примерно через 10 минут после его окончания. На объекте одновременно может идти только один тест. Досрочно завершить его можно с помощью duress_end_test; запланировать тесты заранее — с помощью duress_tests_write.

Сначала уточните. Вызовите без confirm, сообщите пользователю, что в течение durationMinutes нажатия не будут поднимать настоящие тревоги, и вызовите снова с confirm: true после его согласия. В workflow или из агента это работает только там, где план реагирования объекта позволяет workflows подтверждать, закрывать и поднимать тревоги.

Параметры

ИмяТипОписание
facilityIdstringID объекта. Необязателен, если имеется в виду подключённый объект.
type"walk" | "drill"walk (по умолчанию) или drill
durationMinutesintegerКак долго нажатия считаются тестами (по умолчанию 60)
monitoringCentreMode"test-codes" | "none"`test-codes` отправляет в центр мониторинга тестовые сигналы; `none` ничего не отправляет
confirmbooleanЗадавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом
duress_tests_readТревогаDuress Configuration

Читает тесты тревожных кнопок Duress: расписания, по которым они планируются (walk, comms или drill, однократно или с повторением, для организации, брендов или объектов), окна тестов, которые они создают на каждом объекте (scheduled, active, completed, cancelled, а также внеплановые тесты), и результаты окна (какие кнопки были нажаты или пропущены, кто был оповещён, сигналы центра мониторинга, время подтверждения).

Кто запланировал, изменил или отменил тест, не указывается; получатели доставок скрыты. Время указывается в ISO; localDate и localStartTime — в часовом поясе объекта. Запланировать или изменить тесты можно с помощью duress_tests_write; запустить тест сейчас — с помощью duress_start_test.

Действия:

  • schedules: расписания тестов. scope facility (по умолчанию; все расписания, охватывающие объект, включая общие, которые он пропускает или заменяет), brand (brandId) или organisation (по умолчанию организация объекта). Сначала последние изменения.
  • windows: окна тестов. Окна тестов объекта от from до to (по умолчанию примерно с недели назад до месяца вперёд) или, только с organisationId, предстоящие окна организации по всем её объектам.
  • results: результаты теста. Окно и его результаты: сохраняются после отправки, рассчитываются в реальном времени во время теста (чек-лист теста walk), null для запланированных или отменённых окон. Требуется Duress на объекте. Требуется startsAtKey.

Параметры

ИмяТипОписание
action*"schedules" | "windows" | "results"Что сделать; каждое действие описано в описании инструмента.
scope"facility" | "brand" | "organisation"По умолчанию facility (schedules)
facilityIdstringID объекта. Необязателен, если имеется в виду подключённый объект.
brandIdstringID бренда, для шаблона бренда вместо объекта (schedules)
organisationIdstringДля scope organisation (schedules, windows)
includeCancelledbooleanВключить отменённые (schedules, windows)
limitintegerЭлементов на странице (по умолчанию 25, не более 100) (schedules, windows)
cursorstringnextCursor с предыдущей страницы (schedules, windows)
fromstringДата и время ISO (windows)
tostringДата и время ISO (windows)
startsAtKeystringОкно теста (startsAtKey) из duress_tests_read windows (results)
duress_tests_writeDuress ConfigurationТревога

Создаёт, изменяет и отменяет расписания тестирования Duress, задаёт, как отдельный объект следует общему расписанию, и отменяет одно предстоящее окно тестирования. Каждое изменение бронирует или перезаписывает будущие окна и отправляет письма заинтересованным лицам, поэтому каждое действие запрашивает подтверждение.

Для расписаний требуется разрешение Duress Configuration на всю цель (для расписаний на всю организацию — администратор организации). Время указывается в часовом поясе каждого объекта. Сначала прочитайте расписания и окна с помощью duress_tests_read; чтобы начать тест сейчас, используйте duress_start_test.

Действия:

  • create_schedule: Создать расписание тестирования. Бронирует окна примерно на год вперёд на каждом объекте в target и отправляет письмо с подтверждением. Требуются name, type, target, startDate, localStartTime и recurrence. Требуются name, type, target, startDate, localStartTime, recurrence. Запрашивает подтверждение.
  • update_schedule: Изменить расписание тестирования. Неуказанные поля сохраняют свои значения. Будущие окна перезаписываются (уже начавшиеся не затрагиваются), а заинтересованные лица получают уведомление об изменении. Затем используйте ownerScope из результата. Требуются ownerScope, scheduleId. Запрашивает подтверждение.
  • cancel_schedule: Отменить расписание тестирования. Отменяет расписание и его будущие окна и отправляет письмо об отмене. Объекты с собственной копией сохраняют её. Требуются ownerScope, scheduleId. Запрашивает подтверждение.
  • set_facility_override: Изменить общее расписание для одного объекта. mode follow (снова выполнять здесь общее расписание), skip (остановить его здесь) или own (заменить его здесь копией, созданной из schedule). Требуется Duress Configuration только на этом объекте. Требуются ownerScope, scheduleId, mode. Запрашивает подтверждение.
  • cancel_window: Отменить одно окно тестирования. Отменяет один запланированный тест на объекте (расписание продолжает действовать) и отправляет письмо его заинтересованным лицам. Требуется Duress на объекте; активный тест вместо этого завершается с помощью duress_end_test. Требуется startsAtKey. Запрашивает подтверждение.

Параметры

ИмяТипОписание
action*"create_schedule" | "update_schedule" | "cancel_schedule" | "set_facility_override" | "cancel_window"Что сделать; каждое действие описано в описании инструмента.
namestringОтображается в письмах и календаре (create_schedule, update_schedule)
type"walk" | "comms" | "drill"walk (нажать каждую кнопку), comms (одно нажатие на каждый канал мониторинга) или drill (отработка реагирования) (create_schedule, update_schedule)
targetobjectКакие объекты: вся организация, brandIds или facilityIds (create_schedule, update_schedule)
startDatestringПервое выполнение, YYYY-MM-DD в часовом поясе каждого объекта (create_schedule, update_schedule)
localStartTimestringHH:mm в часовом поясе каждого объекта (create_schedule, update_schedule)
durationMinutesintegerПо умолчанию 60 (create_schedule, update_schedule)
recurrence"once" | "monthly" | "quarterly" | "twice-yearly" | "yearly"once, monthly, quarterly, twice-yearly или yearly (create_schedule, update_schedule)
repeatOnobjectnullПовторять в n-й день недели месяца вместо той же даты; null сбрасывает значение (create_schedule, update_schedule)
monitoringCentreMode"test-codes" | "none"test-codes отправляет сигналы как тестовые; none не задействует центр мониторинга (create_schedule, update_schedule)
extraEmailsarrayТакже получают по электронной почте бронирование, напоминания и результаты (create_schedule, update_schedule)
organisationIdstringПо умолчанию: организация подключённого объекта (create_schedule, update_schedule, cancel_schedule, set_facility_override)
ownerScopestringИз duress_tests_read schedules, например brand#b-123; может измениться при изменении цели (update_schedule, cancel_schedule, set_facility_override)
scheduleIdstringИз duress_tests_read schedules (update_schedule, cancel_schedule, set_facility_override)
facilityIdstringID объекта. Необязателен, если имеется в виду подключённый объект. (set_facility_override, cancel_window)
mode"follow" | "skip" | "own"follow, skip или own (set_facility_override)
scheduleobjectmode own: поля копии (target — всегда этот объект); неуказанные поля берутся из общего расписания (set_facility_override)
startsAtKeystringОкно тестирования (startsAtKey) из duress_tests_read windows (cancel_window)
confirmbooleanЗадавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом
duress_unlock_doorsТревога

Разблокирует двери при тревоге Duress, например чтобы впустить полицию или службу первой помощи: двери, связанные с нажатой кнопкой, а если таких нет — двери плана реагирования. Не указывайте doorIds, чтобы разблокировать все, или перечислите некоторые из них. Каждая разблокировка отображается на временной шкале инцидента и в журналах доступа.

Никогда не используется для тестовых или устранённых тревог. Требуется Door/Gate Access на объекте.

Сначала подтвердите. Вызовите без confirm, чтобы узнать, какие двери будут разблокированы, сообщите об этом пользователю и вызовите снова с confirm: true, когда он согласится.

Параметры

ИмяТипОписание
incidentId*stringID инцидента (inc_...) из duress_incidents_read list или триггера workflow Duress.
doorIdsarrayНекоторые из дверей, перечисленных при вызове без confirm. Не указывайте, чтобы выбрать все.
confirmbooleanЗадавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом