# 设备信息同步查询接口 ## 基本信息 | 属性 | 值 | |------|-----| | 接口路径 | `POST /v1/iot/openApi/device/sync-info` | | 请求方式 | POST | | Content-Type | application/json | | 认证方式 | appId + sign 签名验证 | ## 接口说明 同步查询设备信息,直接返回设备完整数据。与异步接口 `/device/info` 的区别: | | 异步 `/device/info` | 同步 `/device/sync-info` | |---|---|---| | 返回方式 | 立即返回 `requestId`,结果通过 `callbackUrl` 回调 | 直接返回设备信息 | | `callbackUrl` | 必传 | 不需要 | | 响应字段 | 部分字段(经 v1 映射) | 全量字段 | ## 请求参数 ### 请求体 ```json { "appId": "your_app_id", "sign": "签名字符串", "timestamp": "时间戳", "data": "加密后的业务数据" } ``` ### data 解密后结构 ```json { "params": { "cardNo": "设备标识" } } ``` ### cardNo 说明 | 长度 | 类型 | 示例 | |------|------|------| | > 15 位 | ICCID | `89860624590014720038` | | 15 位 | IMEI(设备号) | `868347081100410` | | 11 位 | SN(序列号) | `90001473913` | ## 响应参数 ### 响应结构 ```json { "code": 200, "msg": "success", "data": { ... }, "trace_id": "请求追踪ID" } ``` ### data 字段说明 | 字段 | 类型 | 说明 | |------|------|------| | `device_id` | string | 设备ID(IMEI/SN) | | `device_name` | string | 设备名称 | | `imei` | string | IMEI号 | | `imsi` | string | IMSI用户标识码 | | `current_iccid` | string | 当前使用的ICCID | | `device_type` | string | 设备类型:`1`=诺行,`2`=玺龙,`3`=迎势达 | | `software_version` | string | 软件版本号 | | `mac_address` | string | MAC地址 | | `ip_address` | string | IP地址 | | `ssid` | string | WiFi热点名称 | | `wifi_password` | string | WiFi密码 | | `wifi_enabled` | bool | WiFi开关状态 | | `max_clients` | int | 最大连接客户端数 | | `limit_speed` | int | 限速速率(KB/s) | | `sync_interval` | int | 信息上报周期(秒) | | `switch_mode` | string | 切卡模式:`0`=自动,`1`=手动 | | `ul_stats` | string | 本次开机上传流量(字节) | | `dl_stats` | string | 本次开机下载流量(字节) | | `daily_usage` | string | 日使用流量(字节) | | `rsrp` | int | 参考信号接收功率(dBm) | | `rsrq` | int | 参考信号接收质量(dB) | | `sinr` | int | 信噪比(dB) | | `rssi` | string | 接收信号强度 | | `lan_ip` | string | 局域网网关IP地址 | | `wan_ip` | string | 基站分配IPv4地址 | | `run_time` | string | 设备本次开机运行时间(秒) | | `connect_time` | string | 设备本次联网时间(秒) | | `battery_level` | int | 电池电量百分比 | | `online_status` | int | 在线状态:`1`=在线,`2`=离线 | | `status` | int | 设备状态:`1`=正常,`0`=禁用 | | `last_update_time` | string | 设备信息最后更新时间(ISO 8601) | | `last_online_time` | string | 设备最后在线时间(ISO 8601) | | `created_at` | int | 创建时间(Unix时间戳) | | `updated_at` | int | 更新时间(Unix时间戳) | > 所有字段均可能为 `null`,表示该字段暂无数据。 ## 响应示例 ### 成功响应 ```json { "code": 200, "msg": "success", "data": { "device_id": "90001473913", "device_name": "868347081100410", "imei": "868347081100410", "imsi": null, "current_iccid": "89860865192590302917", "device_type": "3", "software_version": "TZ103W_CN1_YSDPTZ12_TH_P42U28_U_17_PRO_20260121", "mac_address": "00904D8486DE", "ip_address": null, "ssid": "ZJ-8486DE", "wifi_password": null, "wifi_enabled": true, "max_clients": null, "limit_speed": 0, "sync_interval": 600, "switch_mode": "0", "ul_stats": null, "dl_stats": null, "daily_usage": "150980", "rsrp": null, "rsrq": null, "sinr": null, "rssi": "-72", "lan_ip": null, "wan_ip": null, "run_time": "2099", "connect_time": null, "battery_level": null, "online_status": 2, "status": 1, "last_update_time": "2026-03-23T16:53:18+08:00", "last_online_time": "2026-03-23T16:53:18+08:00", "created_at": null, "updated_at": null }, "trace_id": "trace_xxx" } ``` ### 错误响应 **cardNo 为空:** ```json { "code": 401, "msg": "cardNo nil", "data": null } ``` **设备不存在:** ```json { "code": 401, "msg": "获取设备信息错误,无效设备号", "data": null } ``` **服务调用失败:** ```json { "code": 500, "msg": "服务调用失败", "data": null } ``` ## 数据来源说明 接口数据按以下优先级获取: 1. **Redis 缓存**(设备最近一次上报的实时数据,TTL 10 分钟) 2. **数据库**(缓存过期后 fallback,字段可能不完整) 设备在线时优先返回缓存中的实时上报数据;设备离线后缓存过期,返回数据库中最后一次同步的数据。部分字段(如 `wifi_password`、`battery_level` 等)在离线 fallback 场景下可能为 `null`。