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