Skip to content

获取设备列表 ​

接口说明 ​

查询当前应用下的玩具车设备列表,支持分页查询。返回设备基本信息、状态和使用情况。

请求 ​

http
GET /device/openList

请求参数 ​

名称位置类型必选说明
tokenheaderstring是授权token,通过 /app/token 接口获取
pagequeryinteger否页码,从1开始,默认1
pageSizequeryinteger否每页数量,默认10
namequerystring否设备名称,模糊搜索
statusquerystring否设备状态,ONLINE-在线/OFFLINE-离线
snquerystring否设备序列号

请求示例 ​

bash
curl -X GET "http://182.254.182.254:9090/device/openList?page=1&pageSize=10&status=ONLINE" \
  -H "token: <your_access_token>"
javascript
const response = await fetch(
  'http://182.254.182.254:9090/device/openList?page=1&pageSize=10&status=ONLINE',
  {
    method: 'GET',
    headers: {
      'token': '<your_access_token>'
    }
  }
);

const data = await response.json();

响应 ​

成功响应 ​

状态码:200

json
{
  "status": 200,
  "desc": "操作成功!",
  "time": 1640995200,
  "data": {
    "items": [
      {
        "id": 12345,
        "name": "玩具车001",
        "userId": 1001,
        "sn": "TOY_CAR_001",
        "appName": "我的应用",
        "appId": "RC_APP25090001",
        "deviceType": "智能玩具车",
        "status": "ONLINE",
        "useStatus": "IDLE",
        "bindTime": 1640995200000,
        "createTime": 1640995200000
      }
    ],
    "pager": {
      "page": 1,
      "pageSize": 10,
      "total": 100,
      "totalPages": 10
    }
  }
}

响应字段 ​

名称类型必选说明
statusinteger是响应状态:200-成功,401-需要重新授权,404-接口不存在,500-错误信息
descstring是响应描述
timeinteger是响应时间戳
dataobject是响应数据
data.itemsarray是设备列表
data.items[].idinteger是设备ID
data.items[].namestring是设备名称
data.items[].userIdinteger是绑定的用户ID
data.items[].snstring是设备序列号
data.items[].appNamestring是应用名称
data.items[].appIdstring是应用ID
data.items[].deviceTypestring是设备类型名称
data.items[].statusstring是设备状态:ONLINE-在线/OFFLINE-离线
data.items[].useStatusstring是使用状态:IDLE-空闲中/USING-使用中
data.items[].bindTimeinteger是绑定时间
data.items[].createTimeinteger是创建时间
data.pagerobject是分页信息
data.pager.pageinteger是当前页码
data.pager.pageSizeinteger是每页数量
data.pager.totalinteger是总记录数
data.pager.totalPagesinteger是总页数

业务场景 ​

  • 设备管理:查看应用中所有已绑定的玩具车设备
  • 状态监控:实时了解设备的在线状态和使用状态
  • 设备筛选:根据设备类型、状态等条件筛选设备
  • 控制准备:在发起控制前查询设备是否空闲可用

关键字段说明 ​

status(设备状态) ​

  • ONLINE:设备已连接,可以控制
  • OFFLINE:设备未连接,无法控制

useStatus(使用状态) ​

  • IDLE:设备未被使用,可以立即控制
  • USING:设备正在被控制,无法同时被其他用户控制

推荐做法

在调用 /device/ctrlUrl 接口之前,先调用此接口查询设备的 useStatus 状态,选择 useStatus 为"IDLE"的设备进行控制。

使用建议 ​

  1. 根据 status 筛选在线设备(status=ONLINE)
  2. 在返回结果中筛选 useStatus 为 "IDLE" 的空闲设备
  3. 使用分页参数优化查询性能
  4. 定期刷新列表以获取最新状态

OMI