设备管理
核心平台device_health_read设备管理将设施最近一次互联网测速结果与其设备的需求进行比较。network 返回以 Mbps 为单位的下载和上传速度,并针对最近 24 小时内出现的屏幕、摄像头(录制加实时串流)和已连接的扬声器系统返回:设备数量、每台设备所需带宽以及连接是否足够。用于诊断速度慢或频繁掉线的设备,或在添加设备前使用。传入 facilityIds 可检查多个设施。
操作:
- network:网络带宽检查。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
action* | "network" | 要执行的操作;每个操作的说明见工具描述。 |
facilityId | string | 设施 ID。如果所指的就是已连接的设施,则可省略。 |
facilityIds | array | 多个设施 ID,用于在每个设施执行相同的请求。代替 facilityId 使用。 |
device_inventory_read设备管理注册到设施的所有设备:显示屏、云摄像头、网络摄像头、AI Edge Processor、Duress 按钮、门控制器、人工智能代理和 IoT 传感器。用于故障排查、设备审计或查找设备 ID。
每台设备都有类型、型号、ID(deviceUuid;屏幕为 deviceID;Duress 按钮为 deviceSerialNumber)、位置、网络详情(IP、Wi-Fi 或 Ethernet、SSID、信道、附近的网络;metadata.networkStats 包含 PoE 交换机端口)、健康状况(CPU 温度、内存、运行时间)以及 metadata.updated,即以 Unix 毫秒表示的最后一次心跳。离线表示 5 分钟内没有心跳;离线超过 7 天且有在线的对应设备(相同设备、名称或位置)的设备很可能已被更换。networkCamera 记录是由 edgeProcessorUUID 中的 Edge Processor 拉取的流;其 deviceUuid(以 ep_ 开头)无法接收命令。除非设置了 includeCredentials,否则流 URL 凭据显示为 :。建议使用有线 Ethernet 而不是 Wi-Fi。
相关工具:cctv_cameras_read 和 cctv_cameras_write(摄像头)、cctv_edge_processors_write(Edge Processor)、device_inventory_write(重命名、配置、迁移)、device_send_command(控制)、device_health_read(带宽)。
操作:
- list:列出设备。设施中的设备,可按类型或名称筛选。使用 facilityIds 时,每个设施返回其第一页。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
action* | "list" | 要执行的操作;每个操作的说明见工具描述。 |
facilityId | string | 设施 ID。如果所指的就是已连接的设施,则可省略。 |
facilityIds | array | 多个设施 ID,用于在每个设施执行相同的请求。代替 facilityId 使用。 |
deviceType | string | 仅此类型,取值同 deviceType:screen、camera、networkCamera、duress 等 |
query | string | 名称、房间、deviceID、deviceUuid 或序列号包含此内容 |
includeCredentials | boolean | 返回包含用户名和密码的流 URL。默认关闭(凭据显示为 ***:***)。仅在用户明确需要凭据时设置;需要该设施的 CCTV 访问权限。 |
limit | integer | 每页条目数(默认 25,最多 100) |
cursor | string | 上一页返回的 nextCursor |
device_inventory_write设备管理更改注册到设施的设备。rename_screen 和 configure_screen 用于更改显示屏(按 device_inventory_read 中的 deviceID 识别);屏幕的分组、标签或显示模式改用显示屏工具。move 将屏幕、云摄像头、Duress 按钮、门控制器、人工智能代理或 AI Edge Processor 迁移到同一组织中的其他设施。
操作:
- rename_screen:重命名屏幕。立即生效,离线或已停止支持的屏幕也适用。需要 deviceID、displayName。
- configure_screen:更改屏幕的硬件设置。只有传入的设置会更改。设置会推送到设备,可能会重启其显示。离线和已停止支持的屏幕(状态 409)只能重命名。需要 deviceID。需要确认。
- move:将设备迁移到其他设施。facilityId 是设备当前所在的设施;你还需要拥有目标设施的访问权限。迁移 Edge Processor 会同时迁移其网络摄像头;如需迁移单个网络摄像头,使用 cctv_edge_processors_write transfer_cameras。需要 targetFacilityId、deviceType。需要确认。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
action* | "rename_screen" | "configure_screen" | "move" | 要执行的操作;每个操作的说明见工具描述。 |
deviceID | string | 屏幕 deviceID(6 位字符代码) |
displayName | string | 新的屏幕名称 (rename_screen, configure_screen) |
facilityId | string | 设施 ID。如果所指的就是已连接的设施,则可省略。 |
orientation | "normal" | "left" | "right" | "inverted" | 屏幕旋转 (configure_screen) |
resolution | "auto" | "1920x1080" | "1280x720" | "720x400" | 输出分辨率;auto 使用显示器上报的分辨率 (configure_screen) |
scheduledReboot | "disabled" | "daily" | "weekly" | "monthly" | 屏幕自动重启的时间 (configure_screen) |
displayBrightness | integer | 背光亮度,0-100 (configure_screen) |
airplayEnabled | boolean | 屏幕接受 AirPlay (configure_screen) |
airplayName | string | 自定义 AirPlay 接收器名称;留空则使用自动名称 (configure_screen) |
airplayPin | string | 4 位 AirPlay PIN;留空则移除 (configure_screen) |
duressEnabled | boolean | 蓝牙 Duress 按钮扫描器 (configure_screen) |
sonosEnabled | boolean | Sonos 扬声器控制 (configure_screen) |
wifiSupport | boolean | Wi-Fi 设置强制门户 (configure_screen) |
cameraRestreamingEnabled | boolean | 从屏幕转推本地摄像头画面 (configure_screen) |
sessionTimerEnabled | boolean | Synchronised session timer (master clock) and its bells (configure_screen) |
targetFacilityId | string | 设备要迁移到的设施 (move) |
deviceType | "screen" | "camera" | "duress" | "door-controller" | "ph-ai-agent" | "ai-edge-processor" | 设备种类;决定要传入哪个标识符 (move) |
deviceUuid | string | 摄像头、门控制器、人工智能代理或 Edge Processor 的 deviceUuid (move) |
deviceSerialNumber | string | Duress 按钮序列号 (move) |
confirm | boolean | 仅在用户确认第一次调用返回的预览后设置 |
device_send_command设备管理向单台设备或设施中的所有设备发送实时命令:重启、打开或关闭显示、重启浏览器、显示消息、加载页面、安装更新或对 PoE 端口断电重启。在线设备会在数秒内执行;离线设备永远不会收到命令。每条命令都会先请求确认。
使用 uuid(来自 device_inventory_read 的 deviceUuid)指定单台设备,或使用 broadcast: true 指定所有设备。传入 facilityIds 可在多个设施执行。屏幕支持所有命令;摄像头支持 rebootDevice 和 unlockUpdates。网络摄像头(deviceUuid 以 ep_ 开头)无法接收命令;改为指定其 Edge Processor (edgeProcessorUUID) 或对其 PoE 端口断电重启。
要恢复离线的 PoE 摄像头,在 device_inventory_read 中读取其 metadata.networkStats (switchID, sw_port),然后向设施中任意在线设备发送 powerCyclePort,参数为 {switchID, switchPort}。该设备会请求设施的网络控制器切断并恢复该端口的电源。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
facilityId | string | 设施 ID。如果所指的就是已连接的设施,则可省略。 |
facilityIds | array | 多个设施 ID,用于在每个设施执行相同的请求。代替 facilityId 使用。 |
command* | "displayOff" | "displayOn" | "unlockUpdates" | "rebootDevice" | "restartBrowser" | "gpuDebugOn" | "gpuDebugOff" | "restartBleScanner" | "osd" | "loadUrl" | "powerCyclePort" | 要发送的命令。未检测到 Duress 按钮时广播 restartBleScanner;添加、迁移或移除按钮时已会自动执行此操作,屏幕也会每约 10 分钟重新加载一次列表。 |
broadcast | boolean | 发送给设施中的所有设备,而不是单个 uuid |
uuid | string | 来自 device_inventory_read 的 deviceUuid;广播时省略 |
arguments | objectstring | osd:消息文本,显示在当前内容之上。loadUrl:http(s) URL,显示到下一次节目加载或重启为止。powerCyclePort:{switchID, switchPort}。其他命令省略此项。 |
confirm | boolean | 仅在用户确认第一次调用返回的预览后设置 |