Дисплейные экраны
Основная платформаdisplay_brand_settings_writeДисплейные экраныChanges Display Screens settings shared by every facility in the facility's brand: the boot screen shown while screens start up, the settings new screens start with, and what templated content shows. Organisation admins only; read the current values and canEdit with display_settings_read boot_screen, screen_defaults or templated.
Actions:
- save_boot_screen: Save the boot screen. Sets the boot screen image (PNG, JPEG or WebP, up to 10 MB, from a public https imageUrl or imageBase64) and/or how it is laid out. Without an image, fit and background re-render the current one. Screens pick it up when they next start. Asks for confirmation.
- reset_boot_screen: Reset the boot screen. Removes the brand's boot screen; screens go back to the default one when they next start. Asks for confirmation.
- save_screen_defaults: Save the screen defaults. The settings a screen starts with when it is paired at one of the brand's facilities. Only the settings you pass change. Screens that are already paired keep their own settings; change those with device_inventory_write configure_screen. Asks for confirmation.
- save_templated: Save templated content settings. What templated content screens and the Schedule show: the data source name, workout names, programs in the Schedule and how far ahead, training phases and how far ahead, and Program Builder training camps (one banner per week) and how far ahead. Asks for confirmation.
Параметры
| Имя | Тип | Описание |
|---|---|---|
action* | "save_boot_screen" | "reset_boot_screen" | "save_screen_defaults" | "save_templated" | Что сделать; каждое действие описано в описании инструмента. |
imageUrl | string | Публичный https URL изображения (save_boot_screen) |
imageBase64 | string | Изображение в base64, если URL нет (save_boot_screen) |
fit | "logo" | "fill" | (save_boot_screen) |
background | string | Цвет фона (#RRGGBB) (save_boot_screen) |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
orientation | "normal" | "left" | "right" | "inverted" | Screen rotation (save_screen_defaults) |
airplayEnabled | boolean | Screens accept AirPlay (save_screen_defaults) |
sessionTimerEnabled | boolean | Synchronised session timer (master clock) and its bells (save_screen_defaults) |
sonosEnabled | boolean | Sonos speaker control (save_screen_defaults) |
duressEnabled | boolean | Bluetooth duress button monitoring (save_screen_defaults) |
cameraRestreamingEnabled | boolean | Restream local camera feeds from the screen (save_screen_defaults) |
wifiSupport | boolean | Captive Wi-Fi setup portal (save_screen_defaults) |
showSourceName | boolean | (save_templated) |
showWorkoutNames | boolean | (save_templated) |
showProgramsInSchedule | boolean | (save_templated) |
programLookaheadDays | integernull | Количество дней вперёд (0–90) или null без ограничения (save_templated) |
showTrainingPhases | boolean | (save_templated) |
phaseLookaheadDays | integernull | Количество дней вперёд (0–90) или null без ограничения (save_templated) |
showTrainingCamps | boolean | (save_templated) |
campLookaheadDays | integernull | Количество дней вперёд (0–90) или null без ограничения (save_templated) |
confirm | boolean | Задавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом |
display_groups_writeДисплейные экраныСоздаёт, переименовывает и удаляет группы Display Screen на объекте и задаёт, какие экраны в них входят. Группы служат целями публикации (display_publish targets.groupIds) и целями команд (display_screen_command groupIds). Если указано несколько экранов, групп или целей, инструмент действует на все сразу за один вызов; прежде чем действовать на многие, уточните у пользователя.
Действия:
- save: сохранить группу. Создание: name (и при необходимости screenIds). Переименование: groupId (id или текущее название) и name. screenIds заменяет состав группы; не указанные экраны выходят из этой группы, но остаются в своих других группах.
- delete: удалить группу. Удаляет группу: её экраны выходят из неё (оставаясь в других своих группах), а контент, опубликованный в группу, удаляется из расписания. Требуется groupId. Запрашивает подтверждение.
Параметры
| Имя | Тип | Описание |
|---|---|---|
action* | "save" | "delete" | Что сделать; каждое действие описано в описании инструмента. |
groupId | string | id или название существующей группы, чтобы переименовать её или изменить состав |
name | string | Название группы (обязательно при создании) (save) |
screenIds | array | Экраны в группе; заменяет текущий состав (save) |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
confirm | boolean | Задавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом |
display_hosted_apps_writeДисплейные экраныПубликует статические HTML-приложения («hosted apps») для Display Screens. Сначала вызовите display_library_read app_guidelines, чтобы узнать размеры экранов, правила дизайна, ограничения и SDK, а затем display_screenshot, чтобы проверить результат на экране. Если указано несколько экранов, групп или целей, инструмент действует на все сразу за один вызов; прежде чем действовать на многие, уточните у пользователя.
Действия:
- publish: опубликовать hosted app. Создаёт hosted app (name + files) или публикует новую версию (appId + files; она сразу начинает работать везде, где показывается приложение, rollback отменяет это). publishTo также выводит его на экраны, как display_publish; для цели brand или organisation нужен confirm. Требуется files. Может запрашивать подтверждение.
- rollback: откатить hosted app. Снова делает текущей более раннюю версию везде, где показывается приложение. Список версий: display_library_read app_versions. Требуются appId, version.
Параметры
| Имя | Тип | Описание |
|---|---|---|
action* | "publish" | "rollback" | Что сделать; каждое действие описано в описании инструмента. |
appId | string | id существующего hosted app (app_…), для которого публикуется новая версия |
name | string | Название приложения (обязательно при создании) (publish) |
files | array | Файлы приложения. encoding: utf8 (по умолчанию) или base64 для двоичных файлов. (publish) |
entry | string | Входной HTML-файл (по умолчанию index.html) (publish) |
durationSec | number | Время показа на экране в плейлистах по умолчанию, в секундах (publish) |
tags | array | (publish) |
ownerScope | "facility" | "brand" | "organisation" | Кому принадлежит новый контент (по умолчанию facility). Для brand и organisation нужен доступ на уровне всей организации. (publish) |
publishTo | object | (publish) |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
version | integer | Версия, которую нужно сделать текущей (rollback) |
confirm | boolean | Задавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом |
display_library_readДисплейные экраныЧитает библиотеку контента Display Screens, доступную объекту: медиа (изображения, видео), приложения (веб-страницы, размещённые HTML-приложения, приложения ИИ-агентов, представления видеонаблюдения) и плейлисты, а также приложения ИИ-агентов и источники видеонаблюдения, которые можно добавить.
У каждого элемента есть contentRef (media#…, app#…, playlist#…) для display_publish и плейлистов. ownerScope показывает владельца (facility#, brand# или org#); контент можно публиковать только в пределах его владельца. Медиа со статусом processing ещё не готово; failed нужно загрузить заново. Веб-страницы с frameable: false нельзя воспроизводить в плейлистах, только как полноэкранный экран. Элементы с displayIssue экраны пропускают: приложение ИИ-агента, которое не опубликовано, приостановлено, в состоянии display-off, ограничено по аудитории или без Custom Apps; представление видеонаблюдения с no-cctv, cctv-off (администратор объекта включает видеонаблюдение для экранов в настройках Display Screens) или no-cameras.
Действия:
- list: список элементов библиотеки. Медиа и приложения (постранично; фильтр по type, kind, tag или названию) или, с type agent-apps, приложения ИИ-агентов, разрешённые на экранах, которые можно опубликовать через display_publish content.agentAppId. У каждого элемента есть type: media, app или agent-app.
- cctv_sources: список источников видеонаблюдения. Камеры объекта и общие Live Views для display_publish content.cctv, а также включено ли видеонаблюдение на экранах. Требуется доступ к видеонаблюдению на объекте.
- get: получить элемент библиотеки. Один медиаэлемент, приложение или плейлист по contentRef. Требуется contentRef.
- usages: где используется контент. Действующие назначения расписания и плейлисты, в которых используется медиаэлемент или приложение (или назначения для плейлиста). Используемый контент нельзя удалить. Требуется contentRef.
- app_versions: список версий hosted app. Версии hosted app и какая из них текущая, для display_hosted_apps_write rollback. Требуется appId.
- app_guidelines: рекомендации для hosted app. Размеры экранов, правила дизайна, ограничения пакета, Display App SDK и стартовый шаблон. Вызовите это перед созданием приложения для display_hosted_apps_write publish.
- check_url: проверить веб-страницу. Можно ли показывать веб-страницу в плейлистах (некоторые сайты запрещают встраивание во фрейм), с подсказками о том, как она выглядит. Страницы, запрещающие встраивание, всё равно можно показывать как полноэкранный экран. Требуется url.
- playlists: список плейлистов. Плейлисты, доступные объекту (постранично), каждый со своими элементами (contentRef, duration, fit).
Параметры
| Имя | Тип | Описание |
|---|---|---|
action* | "list" | "cctv_sources" | "get" | "usages" | "app_versions" | "app_guidelines" | "check_url" | "playlists" | Что сделать; каждое действие описано в описании инструмента. |
type | "media" | "apps" | "agent-apps" | Только один вид элементов (по умолчанию: медиа и приложения) (list) |
kind | "image" | "video" | "url" | "hosted" | "agent-app" | "cctv-view" | (list) |
tag | string | Только элементы с этим тегом (list) |
search | string | Фильтр по названию без учёта регистра (list) |
limit | integer | Элементов на странице (по умолчанию 25, не более 100) (list, playlists) |
cursor | string | nextCursor с предыдущей страницы (list, playlists) |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. (list, cctv_sources, get, usages, app_versions, check_url, playlists) |
contentRef | string | media#<id>, app#<id> или playlist#<id> из display_library_read list или playlists (get, usages) |
appId | string | id hosted app (app_…) (app_versions) |
url | string | Публичный https URL (check_url) |
display_library_writeДисплейные экраныДобавляет и изменяет контент библиотеки Display Screens: загрузка изображений и видео, создание приложений веб-страниц, приложений ИИ-агентов и представлений видеонаблюдения, изменение названий, тегов, длительности и дат, удаление неиспользуемых элементов и обновление предпросмотра приложения. Размещённые HTML-приложения публикуются через display_hosted_apps_write, плейлисты — через display_playlists_write.
Создавайте изображения размером 1920×1080 (альбомная ориентация) или 1080×1920 (портретная). Новое медиа сначала находится в статусе processing, пока создаются версии для веба; его можно сразу добавлять в плейлисты, а воспроизводиться оно начнёт, когда будет готово. ownerScope: facility (по умолчанию), brand или organisation (для brand и organisation нужен доступ на уровне всей организации).
Действия:
- upload_media: загрузить изображение или видео. Добавляет изображение или видео по публичному https url (предпочтительно; изображения до 25 МБ, видео до 200 МБ) или в base64 с mimeType (до 20 МБ). Изображения JPEG, PNG, WebP, GIF; видео MP4, WebM, MOV (преобразуются в H.264 MP4 до 1080p). Для видео большего размера: create_video_upload.
- create_video_upload: начать загрузку большого видео. Для видео до 2 ГБ: регистрирует видео и возвращает предподписанную загрузку (отправьте файл методом PUT на upload.url с upload.headers до upload.expiresAt), затем вызовите transcode с его contentRef. Требуются name, mimeType, bytes.
- transcode: обработать видео. Преобразует видео для экранов: после create_video_upload, повторно после сбоя или для старого видео, которое экраны не могут воспроизвести. Требуется contentRef.
- create_app: добавить приложение. Добавляет веб-страницу (kind url, передайте url; проверяется возможность встраивания во фрейм), приложение ИИ-агента (kind agent-app, передайте agentAppId из display_library_read list type agent-apps) или представление видеонаблюдения (kind cctv-view, принадлежит объекту, требуется доступ к видеонаблюдению). Требуются kind, name.
- update: обновить элемент библиотеки. Изменяет название, теги или длительность медиаэлемента или приложения; validFrom/validTo медиаэлемента (ISO, null очищает; вне этого периода элемент пропускается); url веб-страницы; или камеры, представление, компоновку или качество представления видеонаблюдения. Требуется contentRef.
- delete: удалить элемент библиотеки. Удаляет медиаэлемент или приложение. Блокируется, пока элемент находится в действующем расписании или плейлисте: в ошибке они перечислены (сначала удалите их с помощью display_schedule_write delete или display_playlists_write save). Требуется contentRef. Запрашивает подтверждение.
- refresh_preview: обновить предпросмотр приложения. Делает новый снимок экрана приложения для предпросмотра в библиотеке (например, после изменения страницы). Требуется contentRef.
Параметры
| Имя | Тип | Описание |
|---|---|---|
action* | "upload_media" | "create_video_upload" | "transcode" | "create_app" | "update" | "delete" | "refresh_preview" | Что сделать; каждое действие описано в описании инструмента. |
url | string | Публичный https URL изображения или видео (предпочтительно) (upload_media, create_app, update) |
base64 | string | Содержимое файла в base64 (не более 20 МБ), если URL нет (upload_media) |
mimeType | string | Обязательно вместе с base64, например image/png (upload_media, create_video_upload) |
name | string | Название в библиотеке (upload_media, create_video_upload, create_app, update) |
tags | array | Теги (заменяют текущие теги) (upload_media, create_video_upload, create_app, update) |
ownerScope | "facility" | "brand" | "organisation" | Кому принадлежит новый контент (по умолчанию facility). Для brand и organisation нужен доступ на уровне всей организации. (upload_media, create_video_upload, create_app) |
durationSec | number | Время показа изображений на экране по умолчанию, в секундах (upload_media, create_app, update) |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
bytes | integer | Размер файла в байтах (create_video_upload) |
resolution | "720" | "1080" | "1440" | "2160" | "original" | Максимальный размер, до которого видео преобразуется для экранов (по умолчанию 1080; original сохраняет исходный размер) (create_video_upload, transcode) |
contentRef | string | media#<id>, app#<id> или playlist#<id> из display_library_read list или playlists (transcode, update, delete, refresh_preview) |
kind | "url" | "agent-app" | "cctv-view" | (create_app) |
agentAppId | string | Приложения ИИ-агентов: id приложения (create_app) |
source | "view" | "cameras" | Представления видеонаблюдения: view (передайте viewId) или cameras (передайте cameras) (create_app, update) |
viewId | string | Представления видеонаблюдения: id Live View (display_library_read cctv_sources) (create_app, update) |
cameras | array | Представления видеонаблюдения: id камер (display_library_read cctv_sources) (create_app, update) |
layout | "auto" | "1x1" | "2x1" | "1+2" | "2x2" | "1+5" | "2x3" | "3x3" | Представления видеонаблюдения: компоновка плиток (create_app, update) |
quality | "auto" | "native" | "1080p" | "720p" | "480p" | "360p" | "240p" | Представления видеонаблюдения: качество потока (create_app, update) |
showNames | boolean | Представления видеонаблюдения: показывать названия камер на плитках (create_app, update) |
validFrom | stringnull | Медиа: дата и время ISO начала воспроизведения; null очищает (update) |
validTo | stringnull | Медиа: дата и время ISO окончания воспроизведения; null очищает (update) |
confirm | boolean | Задавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом |
display_playlists_writeДисплейные экраныСоздаёт, обновляет и удаляет плейлисты Display Screens: упорядоченные циклы медиа и приложений. Изменения доходят до всех экранов, показывающих плейлист, за считаные секунды. Опубликуйте плейлист с помощью display_publish content.contentRef "playlist#
Действия:
- save: сохранить плейлист. Создание: name + items (items может быть пустым). Обновление: playlistId + любые из name, items, transition; items заменяет весь список, поэтому отправляйте все элементы по порядку.
- delete: удалить плейлист. Удаляет плейлист. Блокируется, пока плейлист где-либо опубликован: в ошибке перечислены назначения, которые нужно сначала удалить (display_schedule_write delete). Требуется playlistId. Запрашивает подтверждение.
Параметры
| Имя | Тип | Описание |
|---|---|---|
action* | "save" | "delete" | Что сделать; каждое действие описано в описании инструмента. |
playlistId | string | id существующего плейлиста (pl_…) для обновления |
name | string | Название плейлиста (обязательно при создании) (save) |
transition | "fade" | "none" | (save) |
ownerScope | "facility" | "brand" | "organisation" | Кому принадлежит новый контент (по умолчанию facility). Для brand и organisation нужен доступ на уровне всей организации. (save) |
items | array | Весь список по порядку (заменяет текущие элементы; сохраните itemId, чтобы оставить элемент). Веб-страницы с frameable: false воспроизводиться не будут. (save) |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
confirm | boolean | Задавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом |
display_publishДисплейные экраныВыводит контент на Display Screens: медиаэлемент, плейлист, приложение, веб-страницу, приложение ИИ-агента или трансляцию видеонаблюдения в реальном времени — на экраны, группы, объект, его бренд или его организацию.
mode: now (по умолчанию) заменяет то, что цели показывают обычно; scheduled показывает контент только в еженедельных окнах (часовой пояс объекта) и/или между from и to; takeover прерывает всё на durationMin (или до заданного времени), а затем завершается сам (досрочно остановить можно с помощью display_takeover_stop). Экраны определяют, что показывать, по слою (takeover > scheduled > default), а затем по конкретности цели (screen > group > facility > brand > organisation).
Видеонаблюдение: трансляции с камер в реальном времени видны всем, кто находится рядом с экранами. Первый вызов возвращает requiresConfirmation (код CCTV_CONFIRMATION_REQUIRED); спросите пользователя, затем вызовите снова с confirmCctv: true. На объекте должен быть включён параметр "Allow CCTV on display screens".
Опубликованный контент показывают только экраны в режиме player; остальные перечисляются в warnings. Возвращает batchId; display_schedule_write delete с ним отменяет всю публикацию. Если указано несколько экранов, групп или целей, инструмент действует на все сразу за один вызов; прежде чем действовать на многие, уточните у пользователя.
Параметры
| Имя | Тип | Описание |
|---|---|---|
targets* | object | Куда выводится контент. Можно сочетать любые из этих вариантов. Работают как id, так и названия групп. Для brand и organisation нужен доступ к Display Screens на уровне всей организации. |
content* | object | Что показывать: ровно одно из contentRef, url, agentAppId или cctv. |
mode | "now" | "default" | "scheduled" | "takeover" | `now`/`default` (по умолчанию): заменяет то, что цели показывают обычно. `scheduled`: только в окнах и/или между from и to. `takeover`: прерывает всё на durationMin (или до заданного времени), а затем завершается сам. |
windows | array | Еженедельные окна в часовом поясе объекта. days — дни недели ISO (1 = понедельник … 7 = воскресенье); start/end в формате "HH:MM" (для end допускается "24:00"). |
from | string | Дата и время ISO начала запланированной публикации |
to | string | Дата и время ISO окончания запланированной публикации |
durationMin | number | Длительность takeover в минутах (не более 7 дней) |
until | string | Дата и время ISO окончания takeover (вместо durationMin) |
priority | integer | Определяет приоритет между пересекающимися запланированными элементами (побеждает более высокий) |
confirmCctv | boolean | Задавайте только после того, как пользователь явно подтвердил показ видеонаблюдения в реальном времени |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
confirm | boolean | Задавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом |
display_schedule_readДисплейные экраныЧитает, что опубликовано на Display Screens: для одного экрана — что он показывает в определённый момент и за период (с учётом всех слоёв и целей, от которых он наследует) плюс назначения, которые до него доходят; либо назначения, опубликованные в группу, объект, его бренд или его организацию.
id назначений (as_…) и id пакетов (bt_…) — это то, что обновляет или удаляет display_schedule_write. Время указывается в ISO; окна — в часовом поясе объекта.
Действия:
- get: получить расписание экрана. Что экран показывает в момент
at(по умолчанию сейчас), его временная шкала отfromдоto(по умолчанию 24 часа) и все назначения, которые до него доходят. Требуется screenId. - list_assignments: список назначений. Назначения, опубликованные в группу (groupId) или в объект, его бренд или его организацию (target, по умолчанию facility). Постранично, сначала последние изменения.
Параметры
| Имя | Тип | Описание |
|---|---|---|
action* | "get" | "list_assignments" | Что сделать; каждое действие описано в описании инструмента. |
screenId | string | id экрана (6-символьный код) из display_screens_read list (get) |
at | string | Дата и время ISO, на которые нужно проверить показ (по умолчанию сейчас) (get) |
from | string | Начало временной шкалы в ISO (по умолчанию at, иначе сейчас) (get) |
to | string | Конец временной шкалы в ISO (по умолчанию через 24 часа после from) (get) |
includeExpired | boolean | Включить завершившиеся назначения |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
groupId | string | id или название группы экранов из display_screens_read groups (list_assignments) |
target | "facility" | "brand" | "organisation" | Если groupId не указан (по умолчанию facility) (list_assignments) |
limit | integer | Элементов на странице (по умолчанию 25, не более 100) (list_assignments) |
cursor | string | nextCursor с предыдущей страницы (list_assignments) |
display_schedule_writeДисплейные экраныИзменяет то, что опубликовано на Display Screens: редактирует время, приоритет или контент назначения (при необходимости во всей публикации) либо удаляет одно назначение или всю публикацию. id можно найти с помощью display_schedule_read. При удалении контента из расписания он остаётся в библиотеке; чтобы досрочно завершить takeover, сохранив его историю, используйте display_takeover_stop.
Действия:
- update: обновить назначение. Изменяет время (еженедельные окна, from/to; null очищает дату), приоритет или контент назначения. applyToBatch вносит то же изменение во все цели публикации. Для takeover можно изменить только время окончания. Для контента видеонаблюдения нужен confirmCctv после согласия пользователя. Требуется assignmentId.
- delete: удалить из расписания. Удаляет одно назначение (assignmentId) или всё из одной публикации (batchId). За считаные секунды экраны возвращаются к тому, что показывали бы в ином случае. Запрашивает подтверждение.
Параметры
| Имя | Тип | Описание |
|---|---|---|
action* | "update" | "delete" | Что сделать; каждое действие описано в описании инструмента. |
assignmentId | string | Одно назначение (as_…) из display_schedule_read |
applyToBatch | boolean | Внести то же изменение во все цели публикации (update) |
windows | array | Еженедельные окна в часовом поясе объекта. days — дни недели ISO (1 = понедельник … 7 = воскресенье); start/end в формате "HH:MM" (для end допускается "24:00"). (update) |
from | stringnull | Дата и время ISO начала; null очищает (update) |
to | stringnull | Дата и время ISO окончания; null очищает (update) |
priority | integer | Определяет приоритет между пересекающимися запланированными элементами (побеждает более высокий) (update) |
contentRef | string | media#<id>, app#<id> или playlist#<id> из display_library_read list или playlists (update) |
confirmCctv | boolean | Задавайте только после того, как пользователь явно подтвердил показ видеонаблюдения в реальном времени (update) |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
batchId | string | Вся публикация (bt_…) из display_publish или display_schedule_read, по всем её целям (delete) |
confirm | boolean | Задавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом |
display_screen_commandДисплейные экраныОтправляет команду в реальном времени на Display Screens объекта: reload (экраны player заново загружают расписание), identify (на экране мигают его название и код, чтобы найти его на площадке), displayOn/displayOff (панель телевизора), rebootDevice (перезапускает компьютер экрана, экран пуст 1–2 минуты; требуется confirm: true) или osd (короткое сообщение на экране; передайте message).
Выберите экраны с помощью screenIds и/или groupIds (все экраны этих групп на объекте) или allScreens: true для всех экранов объекта (тогда displayOn/displayOff действуют и на экраны templated content). Возвращает результаты по каждому экрану. Если указано несколько экранов, групп или целей, инструмент действует на все сразу за один вызов; прежде чем действовать на многие, уточните у пользователя.
Параметры
| Имя | Тип | Описание |
|---|---|---|
screenIds | array | id экранов (6-символьные коды) из display_screens_read list. Не указывайте при использовании allScreens. |
groupIds | array | id или названия групп экранов: все экраны этих групп на объекте |
allScreens | boolean | Все экраны на объекте, включая экраны templated content |
command* | "reload" | "identify" | "displayOn" | "displayOff" | "rebootDevice" | "osd" | Что сделать (для rebootDevice нужен confirm) |
message | string | Текст для osd |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
confirm | boolean | Задавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом |
display_screens_readДисплейные экраныЧитает Display Screens объекта: список экранов с их статусом и тем, что показывается сейчас и далее (фильтр по группе, статусу или режиму отображения), полные сведения и временная шкала одного экрана или список групп экранов с их экранами.
Режим отображения показывается пользователям как "Data Source": player — это "User managed content", program-builder — "Templated content" (никогда не называйте его пользователям прежним названием), url — "Full-page website (Kiosk Mode)". Время указывается в ISO; возвращается часовой пояс объекта.
Действия:
- list: список экранов. Экраны объекта (постранично), каждый со статусом, последним сигналом heartbeat, группами, тегами и тем, что показывается сейчас и далее. Также возвращает группы.
- get: получить экран. Полные сведения об одном экране (статус, heartbeat, версия плеера, недавние ошибки) и, для экранов player, что он показывает за период времени (по умолчанию следующие 24 часа, не более 14 дней). Требуется screenId.
- groups: список групп экранов. Группы экранов объекта (постранично), каждая со своими экранами.
Параметры
| Имя | Тип | Описание |
|---|---|---|
action* | "list" | "get" | "groups" | Что сделать; каждое действие описано в описании инструмента. |
groupId | string | Только экраны в этой группе (id или название) (list) |
status | "playing" | "provisioning" | "display-off" | "not-responding" | "offline" | "online" | (list) |
mode | "player" | "program-builder" | "url" | (list) |
limit | integer | Элементов на странице (по умолчанию 25, не более 100) (list, groups) |
cursor | string | nextCursor с предыдущей страницы (list, groups) |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
screenId | string | id экрана (6-символьный код) из display_screens_read list (get) |
from | string | Начало временной шкалы в ISO (по умолчанию сейчас) (get) |
to | string | Конец временной шкалы в ISO (по умолчанию через 24 часа после from) (get) |
display_screens_writeДисплейные экраныУправление устройствамиИзменяет Display Screens: подключает новый экран по коду сопряжения; переименовывает экран, задаёт его группы и теги или переключает режим отображения (показывается пользователям как "Data Source"); обновляет токен экрана player; создаёт ссылку предпросмотра экрана или контента с ограниченным сроком действия; или сбрасывает экран до заводских настроек (удаляет его с объекта).
Режимы отображения: player ("User managed content"), url ("Full-page website (Kiosk Mode)", передайте url, только https), program-builder ("Templated content"; никогда не называйте его пользователям прежним названием). Смена режима сразу перезагружает экран и меняет то, что видят посетители, поэтому требует подтверждения пользователя.
Действия:
- update: обновить экран. Задаёт название экрана, группы (id или названия; заменяют текущие группы), теги (заменяют текущие) и/или режим отображения. При смене режима сначала возвращается requiresConfirmation. Требуется screenId. Может запрашивать подтверждение.
- rotate_token: обновить токен экрана. Выдаёт новый токен для экрана player и перезагружает его; старый токен перестаёт работать. Используйте, если URL плеера экрана мог утечь. Требуется screenId. Запрашивает подтверждение.
- create_preview_link: создать ссылку предпросмотра. Ссылка (действует ограниченное время), показывающая, что отображает экран или как выглядит контент, при необходимости на будущий момент. Любой, у кого есть ссылка, может открыть её до истечения срока.
- reset: сбросить экран до заводских настроек. Удаляет экран с объекта и сбрасывает его до заводских настроек; выключенный экран сбросится, когда снова выйдет в сеть, а затем покажет страницу сопряжения. Передайте confirmName: название экрана точно так, как его ввёл пользователь. Требуется Управление устройствами. Требуются screenId, confirmName. Запрашивает подтверждение.
- pair: подключить новый экран. Добавляет новый экран на объект по 6-символьному коду на его странице сопряжения, затем перезагружает его. На объектах только с Display Screens экран запускается в режиме player; если есть и templated content, режим выбирается параметром mode (по умолчанию program-builder). Требуется Управление устройствами. Требуются pairingCode, name. Запрашивает подтверждение.
Параметры
| Имя | Тип | Описание |
|---|---|---|
action* | "update" | "rotate_token" | "create_preview_link" | "reset" | "pair" | Что сделать; каждое действие описано в описании инструмента. |
screenId | string | id экрана (6-символьный код) из display_screens_read list (update, rotate_token, create_preview_link, reset) |
name | string | Название экрана (update, pair) |
groupIds | array | id или названия групп; заменяют текущие группы (группы создаются через display_groups_write save) (update) |
tags | array | Заменяет текущие теги (update) |
mode | "player" | "program-builder" | "url" | Режим отображения ("Data Source") (update, pair) |
url | string | Сайт для режима url (https) (update) |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
contentRef | string | media#<id>, app#<id> или playlist#<id> из display_library_read list или playlists (create_preview_link) |
orientation | "landscape" | "portrait" | Для предпросмотра contentRef (по умолчанию landscape) (create_preview_link) |
at | string | Дата и время ISO для предпросмотра (по умолчанию сейчас) (create_preview_link) |
confirmName | string | Название экрана, введённое пользователем для подтверждения (должно совпадать точно) (reset) |
pairingCode | string | Код, который экран показывает на странице сопряжения (0 и O выглядят похоже) (pair) |
contentStream | string | Templated content: поток (раунд), который воспроизводится, по умолчанию 1 (pair) |
confirm | boolean | Задавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом |
display_screenshotДисплейные экраныДелает снимок того, что Display Screen показывает прямо сейчас, и возвращает изображение, чтобы вы могли проверить свою работу после публикации (компоновка, размер текста, ничего не обрезано и не прокручивается). Ждёт ответа экрана до 15 секунд; для экранов не в сети время ожидания истекает. Также возвращает URL портала для JPEG (только для пользователей, выполнивших вход, хранится 10 минут).
На снимках экрана могут быть трансляции видеонаблюдения в реальном времени и люди в кадре; не передавайте их за пределы разговора.
Параметры
| Имя | Тип | Описание |
|---|---|---|
screenId* | string | id экрана (6-символьный код) из display_screens_read list |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
display_settings_readДисплейные экраныReads Display Screens settings for a facility: the fallback slate, polling and nightly reload, CCTV on screens; the screen power schedule (with the next days' on/off times); automations (brightness, bell volume, check-in power, round timer state); the brand's boot screen, screen defaults and templated content settings; and, with templated content, the scheduled program dates and the templated schedule.
Actions:
- settings: Get facility display settings. The fallback slate (message, background, logo, facility name), polling interval, nightly reload time and whether CCTV may be shown on screens.
- power_schedule: Get the power schedule. When screens turn on and off: the saved schedule (or the older automations' equivalent), the facility time zone and the on/off times for the next 7 days.
- power_schedule_preview: Preview a power schedule. The on/off times a schedule would give over the next 7 days, without saving it. Needs schedule.
- automations: Get display automations. Automatic brightness (day/night levels and triggers), bell volume levels and schedule (decimal hours, 6.5 = 06:30), check-in power, and the round timer state, for one or several facilities. usesGlobalDefaults is true until the facility saves its own.
- boot_screen: Get the brand's boot screen. The image the facility's brand shows while screens start up (fit, background, image URLs) and whether you can change it (organisation admins).
- screen_defaults: Get the brand's screen defaults. The settings a screen starts with when it is paired at one of the brand's facilities (orientation, screen mirroring, session timer, speaker control, duress monitoring, camera restreaming, Wi-Fi support) and whether you can change them (organisation admins). Screens that are already paired keep their own settings; see device_inventory_read for those.
- templated: Get the brand's templated content settings. What templated content screens and the Schedule show for the facility's brand (source name, workout names, programs and training phases, look-ahead days) and whether you can change it (organisation admins).
- program_dates: List scheduled program dates. The dates with a workout program, from the start of this month to the brand's look-ahead. Needs templated content (Program Builder) at the facility.
- templated_schedule: Get the templated schedule. Programs and training phases between two dates (YYYY-MM-DD, at most 62 days), as the brand shows them. Needs templated content (Program Builder) at the facility. Needs from, to.
Параметры
| Имя | Тип | Описание |
|---|---|---|
action* | "settings" | "power_schedule" | "power_schedule_preview" | "automations" | "boot_screen" | "screen_defaults" | "templated" | "program_dates" | "templated_schedule" | Что сделать; каждое действие описано в описании инструмента. |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
schedule | object | Экраны включены в часы присутствия персонала (расширенные на заданные смещения) или в пользовательские еженедельные окна, с правилом для праздников. (power_schedule_preview) |
facilityIds | array | Несколько ID объектов, чтобы выполнить один и тот же запрос для каждого. Используйте вместо facilityId. (automations) |
from | string | Первая дата (YYYY-MM-DD) (templated_schedule) |
to | string | Последняя дата (YYYY-MM-DD) (templated_schedule) |
display_settings_writeДисплейные экраныИзменяет настройки Display Screens объекта: Fallback Slate, опрос и ночную перезагрузку, а также "Allow CCTV on display screens"; расписание питания экранов; и автоматизации (яркость, громкость звонка, включение при регистрации посетителя). Поля, которые вы не указали, сохраняют текущие значения. Настройки на уровне бренда (экран загрузки, templated content) находятся в display_brand_settings_write.
Действия:
- save_settings: сохранить настройки отображения объекта. Fallback Slate, показываемый, когда ничего не запланировано, интервал опроса (30–300 с), время ночной перезагрузки (HH:mm) и allowCctv. Для включения allowCctv нужно подтверждение пользователя и администратор объекта с доступом к видеонаблюдению. Может запрашивать подтверждение.
- save_power_schedule: сохранить расписание питания. Изменяет время включения и выключения экранов; переданные поля объединяются с сохранённым расписанием. Возвращает время включения и выключения на следующие 7 дней. Сначала проверьте с помощью display_settings_read power_schedule_preview. Требуется schedule.
- save_automations: сохранить автоматизации отображения. Изменяет настройки автоматической яркости, громкости звонка и включения при регистрации посетителя. После этого объект использует собственные настройки вместо глобальных значений по умолчанию.
Параметры
| Имя | Тип | Описание |
|---|---|---|
action* | "save_settings" | "save_power_schedule" | "save_automations" | Что сделать; каждое действие описано в описании инструмента. |
slate | object | (save_settings) |
pollIntervalSec | integer | (save_settings) |
nightlyReloadTime | string | HH:mm (save_settings) |
allowCctv | boolean | Разрешить видеонаблюдение на экранах (save_settings) |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
schedule | object | Экраны включены в часы присутствия персонала (расширенные на заданные смещения) или в пользовательские еженедельные окна, с правилом для праздников. (save_power_schedule) |
autoPowerDisplays | boolean | Включение/выключение старой автоматизации питания (её заменяет расписание питания) (save_automations) |
minsBeforeOpenDisplayOn | integer | Старая автоматизация питания: минут до открытия (save_automations) |
minsAfterCloseDisplayOff | integer | Старая автоматизация питания: минут после закрытия (save_automations) |
displaysOnCheckIn | boolean | Включать экраны, когда кто-то регистрируется (save_automations) |
minsLastCheckInDisplayOff | integer | Вместе с displaysOnCheckIn: через сколько минут после последней регистрации экраны выключаются (save_automations) |
enableAutoBrightness | boolean | Переключаться между дневной и ночной яркостью (save_automations) |
dayTriggerType | "auto" | "staffed" | "custom" | Когда начинается дневная яркость (save_automations) |
dayTimeStart | string | Для dayTriggerType custom: HH:mm (время объекта) (save_automations) |
dayOffsetMinutes | integer | Минут после рассвета или открытия (save_automations) |
dayBrightnessLevel | integer | Дневная яркость, % (save_automations) |
nightTriggerType | "auto" | "staffed" | "custom" | Когда начинается ночная яркость (save_automations) |
nightTimeStart | string | Для nightTriggerType custom: HH:mm (время объекта) (save_automations) |
nightOffsetMinutes | integer | Минут после наступления темноты или до закрытия (save_automations) |
nightBrightnessLevel | integer | Ночная яркость, % (save_automations) |
bellMasterLevel | integer | Общая громкость звонка, % (save_automations) |
bellClubHoursLevel | integer | Громкость звонка в часы присутствия персонала, % (save_automations) |
bellExtendedHoursLevel | integer | Громкость звонка в расширенные часы, % (save_automations) |
enableBellAutoVolume | boolean | Следовать расписанию громкости звонка (save_automations) |
bellVolumeSchedule | object | Еженедельные блоки громкости звонка по дням недели (mon … sun); заменяют всё расписание (save_automations) |
confirm | boolean | Задавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом |
display_takeover_stopДисплейные экраныНемедленно завершает активные takeover на Display Screens: для одной публикации (batchId из display_publish), для целей (по умолчанию: takeover, опубликованные на весь объект) или, с allScreens, все takeover, опубликованные на объект, его экраны или их группы. takeover бренда и организации останавливаются только по batchId. За считаные секунды экраны возвращаются к запланированному контенту или контенту по умолчанию; возвращает количество остановленных. Если указано несколько экранов, групп или целей, инструмент действует на все сразу за один вызов; прежде чем действовать на многие, уточните у пользователя.
Параметры
| Имя | Тип | Описание |
|---|---|---|
batchId | string | Публикация takeover (bt_…) из display_publish |
targets | object | Куда выводится контент. Можно сочетать любые из этих вариантов. Работают как id, так и названия групп. Для brand и organisation нужен доступ к Display Screens на уровне всей организации. |
allScreens | boolean | Все takeover, опубликованные на объект, его экраны или их группы |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
display_templated_writeДисплейные экраныУправляет экранами templated content (режим отображения "Templated content" в display_screens_read): загружает на них программу тренировок на день или управляет таймером раундов. Экраны с User managed content и полностраничным сайтом не затрагиваются.
Действия:
- load_program: загрузить программу тренировок. Загружает программу тренировок на дату (YYYY-MM-DD, по умолчанию сегодня) из источника данных объекта на все экраны templated content на одном или нескольких объектах; экраны перезагружаются за считаные секунды. Используйте, чтобы показать тренировку на сегодня или другой день, либо если экраны показывают не ту. Для нескольких объектов нужен confirm. Может запрашивать подтверждение.
- clock: управлять таймером раундов. Запускает, приостанавливает, перезапускает или останавливает таймер раундов на экранах templated content, отключает или включает звуки раундов, задаёт громкость звонка (setvolume с volume 0–100) или запрашивает его состояние. Требуется templated content на объекте. Требуется command.
Параметры
| Имя | Тип | Описание |
|---|---|---|
action* | "load_program" | "clock" | Что сделать; каждое действие описано в описании инструмента. |
facilityIds | array | Несколько ID объектов, чтобы выполнить один и тот же запрос для каждого. Используйте вместо facilityId. (load_program) |
date | string | Дата тренировки, YYYY-MM-DD (по умолчанию сегодня) (load_program) |
facilityId | string | ID объекта. Необязателен, если имеется в виду подключённый объект. |
command | "getstate" | "play" | "pause" | "restart" | "stop" | "mute" | "unmute" | "setvolume" | (clock) |
volume | integer | Для setvolume: громкость звонка, % (clock) |
confirm | boolean | Задавайте только после того, как пользователь подтвердил предпросмотр, возвращённый первым вызовом |