本页目录

  • 前提条件
  • 列出设备
  • 检查单个设备
  • 从检查转向操作
  • 验证结果
  • 后续步骤

列出设备并检查设备状态

当您需要枚举 Luxonis Hub 团队中的设备、详细检查某个设备,并决定是否继续执行应用生命周期或支持的更新操作时,请使用本指南。

前提条件

开始之前,您应当熟悉 GraphQL 基础知识。如果您是 GraphQL 新手,请查看 关于 GraphQL您还需要一个 API 密钥来验证请求。使用 API 密钥 在 Luxonis Hub Web 界面中创建一个,然后将其包含在 Authorization 请求头中:
Command Line
1Authorization: Bearer <your_api_key>

列出设备

首先查询对您的团队可见的设备。获得设备 ID,以便后续用于读取或变更操作。
Graphql
1query {
2  team {
3    devices(first: 10) {
4      nodes {
5        id
6        name
7        status
8        model
9        architecture
10        version
11        lastContactAt
12      }
13      pageInfo {
14        hasNextPage
15        endCursor
16      }
17    }
18  }
19}
利用此响应快速回答以下实际问题:
  • 团队中存在哪些设备
  • 它们当前是 ONLINE 还是 OFFLINE
  • 哪个设备 ID 用于后续查询
  • 是否还有更多页面

检查单个设备

使用列表查询返回的一个设备 ID 来获取在采取操作前所需的运行详细信息。
Graphql
1query($deviceId: ID!) {
2  team {
3    device(deviceId: $deviceId) {
4      id
5      name
6      status
7      model
8      serialNumber
9      architecture
10      kind
11      capabilities
12      version
13      lastContactAt
14      lastStatusChangeAt
15      networkInterfaces {
16        interfaceName
17        ipv4Address
18        macAddress
19      }
20      availableUpgrade {
21        id
22        version
23        semver
24      }
25    }
26  }
27}
变量:
JSON
1{
2  "deviceId": "device-id-from-list"
3}
利用此响应确认:
  • 设备身份和当前连接状态
  • 目标是 OAK 还是 SELF_HOSTED
  • 设备路径可用的能力
  • 网络详细信息是否解释了当前可达性状态
  • availableUpgrade 是否提供了支持的更新候选

从检查转向操作

在能够列出设备并检查目标设备后,下一步通常是对该状态采取操作,而不是直接跳入交互式浏览器会话。常见的后续任务包括:
  • 在设备上安装应用或检查已安装的应用状态
  • 启动或停止已安装的应用
  • availableUpgrade 存在时,触发支持的 OTA 或固件更新
  • 只有当目标是远程交互、日志或可视化(而非控制平面操作)时,才使用浏览器端会话
对于外部集成,请将写操作保留在后端,并遵循 集成架构 中描述的客户自有架构。

验证结果

当以下所有条件成立时,您就可以进行下一个工作流了:
  • 您可以调用 team.devices 并获得预期的设备群列表
  • 您可以使用返回的一个设备 ID 调用 team.device
  • 您可以判断设备是否在线、运行哪个版本,以及是否存在支持的更新数据
  • 您知道下一步是应用生命周期变更、更新流程还是交互式会话

后续步骤