|
@@ -0,0 +1,1027 @@
|
|
|
|
|
+# 文档
|
|
|
|
|
+
|
|
|
|
|
+## 管理后台
|
|
|
|
|
+
|
|
|
|
|
+## 摄像头扫描管理
|
|
|
|
|
+
|
|
|
|
|
+### 触发 ONVIF 设备扫描
|
|
|
|
|
+
|
|
|
|
|
+维护人:TG Live
|
|
|
|
|
+
|
|
|
|
|
+#### URL
|
|
|
|
|
+
|
|
|
|
|
+- 本地开发环境: `POST` http://localhost:10050/api/admin/lss/{lssId}/scan
|
|
|
|
|
+- 开发环境: `POST` https://tg-live-game.pwtk.cc/api/admin/lss/{lssId}/scan
|
|
|
|
|
+
|
|
|
|
|
+描述:触发 ONVIF 设备扫描
|
|
|
|
|
+
|
|
|
|
|
+ContentType:`application/x-www-form-urlencoded;charset=UTF-8`
|
|
|
|
|
+
|
|
|
|
|
+#### Path 参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 必填 | 描述 | 示例值 |
|
|
|
|
|
+| ----- | ---- | ----------- | ------ |
|
|
|
|
|
+| lssId | 是 | LSS 节点 ID | |
|
|
|
|
|
+
|
|
|
|
|
+#### 请求参数
|
|
|
|
|
+
|
|
|
|
|
+#### 响应参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| --- | --- | --- | --- | --- | --- |
|
|
|
|
|
+| success | Boolean | 否 | - | 请求是否成功 | true |
|
|
|
|
|
+| errCode | String | 否 | - | 错误码(失败时返回) | |
|
|
|
|
|
+| errMessage | String | 否 | - | 错误信息(失败时返回) | |
|
|
|
|
|
+| data | object | 否 | | 响应数据 (ActualType: ScanResultDTO) | |
|
|
|
|
|
+| └ taskId | String | 否 | - | 扫描任务 ID | scan_abc12345 |
|
|
|
|
|
+| └ lssId | String | 否 | - | LSS 节点 ID | lss_001 |
|
|
|
|
|
+| └ status | String | 否 | - | 扫描状态: SCANNING / COMPLETED / FAILED | SCANNING |
|
|
|
|
|
+| └ discoveredCount | Integer | 否 | - | 发现的设备数量 | 5 |
|
|
|
|
|
+| └ newCount | Integer | 否 | - | 新发现的设备数量 | 3 |
|
|
|
|
|
+| └ devices | List<DiscoveredCameraDTO> | 否 | | 发现的设备列表 (ActualType: DiscoveredCameraDTO) | |
|
|
|
|
|
+| └ id | Long | 否 | - | ID | 1 |
|
|
|
|
|
+| └ lssId | String | 否 | - | LSS 节点 ID | lss_001 |
|
|
|
|
|
+| └ ip | String | 否 | - | IP 地址 | 192.168.1.100 |
|
|
|
|
|
+| └ port | Integer | 否 | - | 端口 | 80 |
|
|
|
|
|
+| └ uuid | String | 否 | - | 设备 UUID | uuid-1234-5678 |
|
|
|
|
|
+| └ deviceName | String | 否 | - | 设备名称 | IP Camera |
|
|
|
|
|
+| └ vendor | String | 否 | - | 厂商 | HIKVISION |
|
|
|
|
|
+| └ model | String | 否 | - | 型号 | DS-2CD2T45FWD |
|
|
|
|
|
+| └ serialNumber | String | 否 | - | 序列号 | SN123456789 |
|
|
|
|
|
+| └ rtspUrl | String | 否 | - | RTSP URL | rtsp://admin:12345@192.168.1.100:554/stream1 |
|
|
|
|
|
+| └ matchStatus | String | 否 | - | 匹配状态: PENDING / MATCHING / MATCHED / UNMATCHED | PENDING |
|
|
|
|
|
+| └ matchedCredentialId | Long | 否 | - | 匹配成功的凭证 ID | 1 |
|
|
|
|
|
+| └ matchAttempts | Integer | 否 | - | 匹配尝试次数 | 0 |
|
|
|
|
|
+| └ lastMatchAttempt | LocalDateTime | 否 | - | 最后匹配时间 | 2026-01-27T10:00:00 |
|
|
|
|
|
+| └ matchError | String | 否 | - | 匹配错误信息 | Authentication failed |
|
|
|
|
|
+| └ deviceInfo | String | 否 | - | 设备详细信息 JSON | {manufacturer:HIKVISION,model:DS-2CD2T45FWD,firmwareVersion:V5.6.5} |
|
|
|
|
|
+| └ bound | Boolean | 否 | - | 是否已绑定到 camera_info | false |
|
|
|
|
|
+| └ boundCameraId | Long | 否 | - | 绑定的 camera_info.id | 1 |
|
|
|
|
|
+| └ canMatch | Boolean | 否 | - | 是否可以匹配(未超过 3 次或已过 24 小时冷却期) | true |
|
|
|
|
|
+| └ discoveredAt | LocalDateTime | 否 | - | 发现时间 | 2026-01-27T10:00:00 |
|
|
|
|
|
+| └ error | String | 否 | - | 错误信息 | |
|
|
|
|
|
+
|
|
|
|
|
+#### 响应示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "success": true,
|
|
|
|
|
+ "errCode": "string",
|
|
|
|
|
+ "errMessage": "string",
|
|
|
|
|
+ "data": {
|
|
|
|
|
+ "taskId": "scan_abc12345",
|
|
|
|
|
+ "lssId": "lss_001",
|
|
|
|
|
+ "status": "SCANNING",
|
|
|
|
|
+ "discoveredCount": 5,
|
|
|
|
|
+ "newCount": 3,
|
|
|
|
|
+ "devices": [
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 1,
|
|
|
|
|
+ "lssId": "lss_001",
|
|
|
|
|
+ "ip": "192.168.1.100",
|
|
|
|
|
+ "port": 80,
|
|
|
|
|
+ "uuid": "uuid-1234-5678",
|
|
|
|
|
+ "deviceName": "IP Camera",
|
|
|
|
|
+ "vendor": "HIKVISION",
|
|
|
|
|
+ "model": "DS-2CD2T45FWD",
|
|
|
|
|
+ "serialNumber": "SN123456789",
|
|
|
|
|
+ "rtspUrl": "rtsp://admin:12345@192.168.1.100:554/stream1",
|
|
|
|
|
+ "matchStatus": "PENDING",
|
|
|
|
|
+ "matchedCredentialId": 1,
|
|
|
|
|
+ "matchAttempts": 0,
|
|
|
|
|
+ "lastMatchAttempt": "2026-01-27T10:00:00",
|
|
|
|
|
+ "matchError": "Authentication failed",
|
|
|
|
|
+ "deviceInfo": "{manufacturer:HIKVISION,model:DS-2CD2T45FWD,firmwareVersion:V5.6.5}",
|
|
|
|
|
+ "bound": false,
|
|
|
|
|
+ "boundCameraId": 1,
|
|
|
|
|
+ "canMatch": true,
|
|
|
|
|
+ "discoveredAt": "2026-01-27T10:00:00"
|
|
|
|
|
+ }
|
|
|
|
|
+ ],
|
|
|
|
|
+ "error": "string"
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 错误码
|
|
|
|
|
+
|
|
|
|
|
+无
|
|
|
|
|
+
|
|
|
|
|
+### 获取发现的设备列表
|
|
|
|
|
+
|
|
|
|
|
+维护人:TG Live
|
|
|
|
|
+
|
|
|
|
|
+#### URL
|
|
|
|
|
+
|
|
|
|
|
+- 本地开发环境: `GET` http://localhost:10050/api/admin/lss/{lssId}/discovered
|
|
|
|
|
+- 开发环境: `GET` https://tg-live-game.pwtk.cc/api/admin/lss/{lssId}/discovered
|
|
|
|
|
+
|
|
|
|
|
+描述:获取发现的设备列表
|
|
|
|
|
+
|
|
|
|
|
+ContentType:`application/x-www-form-urlencoded;charset=UTF-8`
|
|
|
|
|
+
|
|
|
|
|
+#### Path 参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 必填 | 描述 | 示例值 |
|
|
|
|
|
+| ----- | ---- | ----------- | ------ |
|
|
|
|
|
+| lssId | 是 | LSS 节点 ID | |
|
|
|
|
|
+
|
|
|
|
|
+#### 请求参数
|
|
|
|
|
+
|
|
|
|
|
+#### 响应参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| --- | --- | --- | --- | --- | --- |
|
|
|
|
|
+| success | Boolean | 否 | - | 请求是否成功 | true |
|
|
|
|
|
+| errCode | String | 否 | - | 错误码(失败时返回) | |
|
|
|
|
|
+| errMessage | String | 否 | - | 错误信息(失败时返回) | |
|
|
|
|
|
+| data | array | 否 | | 响应数据 (ActualType: List) | |
|
|
|
|
|
+| └ id | Long | 否 | - | ID | 1 |
|
|
|
|
|
+| └ lssId | String | 否 | - | LSS 节点 ID | lss_001 |
|
|
|
|
|
+| └ ip | String | 否 | - | IP 地址 | 192.168.1.100 |
|
|
|
|
|
+| └ port | Integer | 否 | - | 端口 | 80 |
|
|
|
|
|
+| └ uuid | String | 否 | - | 设备 UUID | uuid-1234-5678 |
|
|
|
|
|
+| └ deviceName | String | 否 | - | 设备名称 | IP Camera |
|
|
|
|
|
+| └ vendor | String | 否 | - | 厂商 | HIKVISION |
|
|
|
|
|
+| └ model | String | 否 | - | 型号 | DS-2CD2T45FWD |
|
|
|
|
|
+| └ serialNumber | String | 否 | - | 序列号 | SN123456789 |
|
|
|
|
|
+| └ rtspUrl | String | 否 | - | RTSP URL | rtsp://admin:12345@192.168.1.100:554/stream1 |
|
|
|
|
|
+| └ matchStatus | String | 否 | - | 匹配状态: PENDING / MATCHING / MATCHED / UNMATCHED | PENDING |
|
|
|
|
|
+| └ matchedCredentialId | Long | 否 | - | 匹配成功的凭证 ID | 1 |
|
|
|
|
|
+| └ matchAttempts | Integer | 否 | - | 匹配尝试次数 | 0 |
|
|
|
|
|
+| └ lastMatchAttempt | LocalDateTime | 否 | - | 最后匹配时间 | 2026-01-27T10:00:00 |
|
|
|
|
|
+| └ matchError | String | 否 | - | 匹配错误信息 | Authentication failed |
|
|
|
|
|
+| └ deviceInfo | String | 否 | - | 设备详细信息 JSON | {manufacturer:HIKVISION,model:DS-2CD2T45FWD,firmwareVersion:V5.6.5} |
|
|
|
|
|
+| └ bound | Boolean | 否 | - | 是否已绑定到 camera_info | false |
|
|
|
|
|
+| └ boundCameraId | Long | 否 | - | 绑定的 camera_info.id | 1 |
|
|
|
|
|
+| └ canMatch | Boolean | 否 | - | 是否可以匹配(未超过 3 次或已过 24 小时冷却期) | true |
|
|
|
|
|
+| └ discoveredAt | LocalDateTime | 否 | - | 发现时间 | 2026-01-27T10:00:00 |
|
|
|
|
|
+
|
|
|
|
|
+#### 响应示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "success": true,
|
|
|
|
|
+ "errCode": "string",
|
|
|
|
|
+ "errMessage": "string",
|
|
|
|
|
+ "data": [
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 1,
|
|
|
|
|
+ "lssId": "lss_001",
|
|
|
|
|
+ "ip": "192.168.1.100",
|
|
|
|
|
+ "port": 80,
|
|
|
|
|
+ "uuid": "uuid-1234-5678",
|
|
|
|
|
+ "deviceName": "IP Camera",
|
|
|
|
|
+ "vendor": "HIKVISION",
|
|
|
|
|
+ "model": "DS-2CD2T45FWD",
|
|
|
|
|
+ "serialNumber": "SN123456789",
|
|
|
|
|
+ "rtspUrl": "rtsp://admin:12345@192.168.1.100:554/stream1",
|
|
|
|
|
+ "matchStatus": "PENDING",
|
|
|
|
|
+ "matchedCredentialId": 1,
|
|
|
|
|
+ "matchAttempts": 0,
|
|
|
|
|
+ "lastMatchAttempt": "2026-01-27T10:00:00",
|
|
|
|
|
+ "matchError": "Authentication failed",
|
|
|
|
|
+ "deviceInfo": "{manufacturer:HIKVISION,model:DS-2CD2T45FWD,firmwareVersion:V5.6.5}",
|
|
|
|
|
+ "bound": false,
|
|
|
|
|
+ "boundCameraId": 1,
|
|
|
|
|
+ "canMatch": true,
|
|
|
|
|
+ "discoveredAt": "2026-01-27T10:00:00"
|
|
|
|
|
+ }
|
|
|
|
|
+ ]
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 错误码
|
|
|
|
|
+
|
|
|
|
|
+无
|
|
|
|
|
+
|
|
|
|
|
+### 获取发现设备详情
|
|
|
|
|
+
|
|
|
|
|
+维护人:TG Live
|
|
|
|
|
+
|
|
|
|
|
+#### URL
|
|
|
|
|
+
|
|
|
|
|
+- 本地开发环境: `GET` http://localhost:10050/api/admin/discovered/{id}
|
|
|
|
|
+- 开发环境: `GET` https://tg-live-game.pwtk.cc/api/admin/discovered/{id}
|
|
|
|
|
+
|
|
|
|
|
+描述:获取发现设备详情
|
|
|
|
|
+
|
|
|
|
|
+ContentType:`application/x-www-form-urlencoded;charset=UTF-8`
|
|
|
|
|
+
|
|
|
|
|
+#### Path 参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 必填 | 描述 | 示例值 |
|
|
|
|
|
+| ---- | ---- | ----------- | ------ |
|
|
|
|
|
+| id | 是 | 发现设备 ID | 0 |
|
|
|
|
|
+
|
|
|
|
|
+#### 请求参数
|
|
|
|
|
+
|
|
|
|
|
+#### 响应参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| --- | --- | --- | --- | --- | --- |
|
|
|
|
|
+| success | Boolean | 否 | - | 请求是否成功 | true |
|
|
|
|
|
+| errCode | String | 否 | - | 错误码(失败时返回) | |
|
|
|
|
|
+| errMessage | String | 否 | - | 错误信息(失败时返回) | |
|
|
|
|
|
+| data | object | 否 | | 响应数据 (ActualType: DiscoveredCameraDTO) | |
|
|
|
|
|
+| └ id | Long | 否 | - | ID | 1 |
|
|
|
|
|
+| └ lssId | String | 否 | - | LSS 节点 ID | lss_001 |
|
|
|
|
|
+| └ ip | String | 否 | - | IP 地址 | 192.168.1.100 |
|
|
|
|
|
+| └ port | Integer | 否 | - | 端口 | 80 |
|
|
|
|
|
+| └ uuid | String | 否 | - | 设备 UUID | uuid-1234-5678 |
|
|
|
|
|
+| └ deviceName | String | 否 | - | 设备名称 | IP Camera |
|
|
|
|
|
+| └ vendor | String | 否 | - | 厂商 | HIKVISION |
|
|
|
|
|
+| └ model | String | 否 | - | 型号 | DS-2CD2T45FWD |
|
|
|
|
|
+| └ serialNumber | String | 否 | - | 序列号 | SN123456789 |
|
|
|
|
|
+| └ rtspUrl | String | 否 | - | RTSP URL | rtsp://admin:12345@192.168.1.100:554/stream1 |
|
|
|
|
|
+| └ matchStatus | String | 否 | - | 匹配状态: PENDING / MATCHING / MATCHED / UNMATCHED | PENDING |
|
|
|
|
|
+| └ matchedCredentialId | Long | 否 | - | 匹配成功的凭证 ID | 1 |
|
|
|
|
|
+| └ matchAttempts | Integer | 否 | - | 匹配尝试次数 | 0 |
|
|
|
|
|
+| └ lastMatchAttempt | LocalDateTime | 否 | - | 最后匹配时间 | 2026-01-27T10:00:00 |
|
|
|
|
|
+| └ matchError | String | 否 | - | 匹配错误信息 | Authentication failed |
|
|
|
|
|
+| └ deviceInfo | String | 否 | - | 设备详细信息 JSON | {manufacturer:HIKVISION,model:DS-2CD2T45FWD,firmwareVersion:V5.6.5} |
|
|
|
|
|
+| └ bound | Boolean | 否 | - | 是否已绑定到 camera_info | false |
|
|
|
|
|
+| └ boundCameraId | Long | 否 | - | 绑定的 camera_info.id | 1 |
|
|
|
|
|
+| └ canMatch | Boolean | 否 | - | 是否可以匹配(未超过 3 次或已过 24 小时冷却期) | true |
|
|
|
|
|
+| └ discoveredAt | LocalDateTime | 否 | - | 发现时间 | 2026-01-27T10:00:00 |
|
|
|
|
|
+
|
|
|
|
|
+#### 响应示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "success": true,
|
|
|
|
|
+ "errCode": "string",
|
|
|
|
|
+ "errMessage": "string",
|
|
|
|
|
+ "data": {
|
|
|
|
|
+ "id": 1,
|
|
|
|
|
+ "lssId": "lss_001",
|
|
|
|
|
+ "ip": "192.168.1.100",
|
|
|
|
|
+ "port": 80,
|
|
|
|
|
+ "uuid": "uuid-1234-5678",
|
|
|
|
|
+ "deviceName": "IP Camera",
|
|
|
|
|
+ "vendor": "HIKVISION",
|
|
|
|
|
+ "model": "DS-2CD2T45FWD",
|
|
|
|
|
+ "serialNumber": "SN123456789",
|
|
|
|
|
+ "rtspUrl": "rtsp://admin:12345@192.168.1.100:554/stream1",
|
|
|
|
|
+ "matchStatus": "PENDING",
|
|
|
|
|
+ "matchedCredentialId": 1,
|
|
|
|
|
+ "matchAttempts": 0,
|
|
|
|
|
+ "lastMatchAttempt": "2026-01-27T10:00:00",
|
|
|
|
|
+ "matchError": "Authentication failed",
|
|
|
|
|
+ "deviceInfo": "{manufacturer:HIKVISION,model:DS-2CD2T45FWD,firmwareVersion:V5.6.5}",
|
|
|
|
|
+ "bound": false,
|
|
|
|
|
+ "boundCameraId": 1,
|
|
|
|
|
+ "canMatch": true,
|
|
|
|
|
+ "discoveredAt": "2026-01-27T10:00:00"
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 错误码
|
|
|
|
|
+
|
|
|
|
|
+无
|
|
|
|
|
+
|
|
|
|
|
+### 删除发现设备
|
|
|
|
|
+
|
|
|
|
|
+维护人:TG Live
|
|
|
|
|
+
|
|
|
|
|
+#### URL
|
|
|
|
|
+
|
|
|
|
|
+- 本地开发环境: `POST` http://localhost:10050/api/admin/discovered/{id}/delete
|
|
|
|
|
+- 开发环境: `POST` https://tg-live-game.pwtk.cc/api/admin/discovered/{id}/delete
|
|
|
|
|
+
|
|
|
|
|
+描述:删除发现设备
|
|
|
|
|
+
|
|
|
|
|
+ContentType:`application/x-www-form-urlencoded;charset=UTF-8`
|
|
|
|
|
+
|
|
|
|
|
+#### Path 参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 必填 | 描述 | 示例值 |
|
|
|
|
|
+| ---- | ---- | ----------- | ------ |
|
|
|
|
|
+| id | 是 | 发现设备 ID | 0 |
|
|
|
|
|
+
|
|
|
|
|
+#### 请求参数
|
|
|
|
|
+
|
|
|
|
|
+#### 响应参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| ---------- | ------- | ---- | -------- | --------------------------- | ------ |
|
|
|
|
|
+| success | Boolean | 否 | - | 请求是否成功 | true |
|
|
|
|
|
+| errCode | String | 否 | - | 错误码(失败时返回) | |
|
|
|
|
|
+| errMessage | String | 否 | - | 错误信息(失败时返回) | |
|
|
|
|
|
+| data | object | 否 | - | 响应数据 (ActualType: Void) | |
|
|
|
|
|
+
|
|
|
|
|
+#### 响应示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "success": true,
|
|
|
|
|
+ "errCode": "string",
|
|
|
|
|
+ "errMessage": "string",
|
|
|
|
|
+ "data": {}
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 错误码
|
|
|
|
|
+
|
|
|
|
|
+无
|
|
|
|
|
+
|
|
|
|
|
+### 触发凭证匹配
|
|
|
|
|
+
|
|
|
|
|
+维护人:TG Live
|
|
|
|
|
+
|
|
|
|
|
+#### URL
|
|
|
|
|
+
|
|
|
|
|
+- 本地开发环境: `POST` http://localhost:10050/api/admin/lss/{lssId}/match
|
|
|
|
|
+- 开发环境: `POST` https://tg-live-game.pwtk.cc/api/admin/lss/{lssId}/match
|
|
|
|
|
+
|
|
|
|
|
+描述:触发凭证匹配
|
|
|
|
|
+
|
|
|
|
|
+ContentType:`application/json`
|
|
|
|
|
+
|
|
|
|
|
+#### Path 参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 必填 | 描述 | 示例值 |
|
|
|
|
|
+| ----- | ---- | ----------- | ------ |
|
|
|
|
|
+| lssId | 是 | LSS 节点 ID | |
|
|
|
|
|
+
|
|
|
|
|
+#### 请求参数
|
|
|
|
|
+
|
|
|
|
|
+##### Body Parameter
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| --- | --- | --- | --- | --- | --- |
|
|
|
|
|
+| deviceIds | List<Long> | 否 | - | 要匹配的设备 ID 列表(可选,空表示全部 PENDING 设备) (ActualType: Long) | [1, 2, 3] |
|
|
|
|
|
+| credentialIds | List<Long> | 否 | - | 要使用的凭证 ID 列表(可选,空表示使用所有启用的凭证) (ActualType: Long) | [1, 2] |
|
|
|
|
|
+| maxRetry | Integer | 否 | - | 最大重试次数 | 3 |
|
|
|
|
|
+
|
|
|
|
|
+#### 请求示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "deviceIds": [
|
|
|
|
|
+ 1,
|
|
|
|
|
+ 2,
|
|
|
|
|
+ 3
|
|
|
|
|
+ ],
|
|
|
|
|
+ "credentialIds": [
|
|
|
|
|
+ 1,
|
|
|
|
|
+ 2
|
|
|
|
|
+ ],
|
|
|
|
|
+ "maxRetry": 3
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 响应参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| -------------- | ------- | ---- | -------- | --------------------------------------- | -------------- |
|
|
|
|
|
+| success | Boolean | 否 | - | 请求是否成功 | true |
|
|
|
|
|
+| errCode | String | 否 | - | 错误码(失败时返回) | |
|
|
|
|
|
+| errMessage | String | 否 | - | 错误信息(失败时返回) | |
|
|
|
|
|
+| data | object | 否 | | 响应数据 (ActualType: MatchResultDTO) | |
|
|
|
|
|
+| └ taskId | String | 否 | - | 匹配任务 ID | match_abc12345 |
|
|
|
|
|
+| └ lssId | String | 否 | - | LSS 节点 ID | lss_001 |
|
|
|
|
|
+| └ status | String | 否 | - | 匹配状态: MATCHING / COMPLETED / FAILED | MATCHING |
|
|
|
|
|
+| └ totalCount | Integer | 否 | - | 匹配的设备数量 | 5 |
|
|
|
|
|
+| └ successCount | Integer | 否 | - | 成功匹配数量 | 3 |
|
|
|
|
|
+| └ failCount | Integer | 否 | - | 失败数量 | 2 |
|
|
|
|
|
+| └ error | String | 否 | - | 错误信息 | |
|
|
|
|
|
+
|
|
|
|
|
+#### 响应示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "success": true,
|
|
|
|
|
+ "errCode": "string",
|
|
|
|
|
+ "errMessage": "string",
|
|
|
|
|
+ "data": {
|
|
|
|
|
+ "taskId": "match_abc12345",
|
|
|
|
|
+ "lssId": "lss_001",
|
|
|
|
|
+ "status": "MATCHING",
|
|
|
|
|
+ "totalCount": 5,
|
|
|
|
|
+ "successCount": 3,
|
|
|
|
|
+ "failCount": 2,
|
|
|
|
|
+ "error": "string"
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 错误码
|
|
|
|
|
+
|
|
|
|
|
+无
|
|
|
|
|
+
|
|
|
|
|
+### 重新匹配单个设备
|
|
|
|
|
+
|
|
|
|
|
+维护人:TG Live
|
|
|
|
|
+
|
|
|
|
|
+#### URL
|
|
|
|
|
+
|
|
|
|
|
+- 本地开发环境: `POST` http://localhost:10050/api/admin/discovered/{id}/retry
|
|
|
|
|
+- 开发环境: `POST` https://tg-live-game.pwtk.cc/api/admin/discovered/{id}/retry
|
|
|
|
|
+
|
|
|
|
|
+描述:重新匹配单个设备
|
|
|
|
|
+
|
|
|
|
|
+ContentType:`application/x-www-form-urlencoded;charset=UTF-8`
|
|
|
|
|
+
|
|
|
|
|
+#### Path 参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 必填 | 描述 | 示例值 |
|
|
|
|
|
+| ---- | ---- | ----------- | ------ |
|
|
|
|
|
+| id | 是 | 发现设备 ID | 0 |
|
|
|
|
|
+
|
|
|
|
|
+#### 请求参数
|
|
|
|
|
+
|
|
|
|
|
+#### 响应参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| -------------- | ------- | ---- | -------- | --------------------------------------- | -------------- |
|
|
|
|
|
+| success | Boolean | 否 | - | 请求是否成功 | true |
|
|
|
|
|
+| errCode | String | 否 | - | 错误码(失败时返回) | |
|
|
|
|
|
+| errMessage | String | 否 | - | 错误信息(失败时返回) | |
|
|
|
|
|
+| data | object | 否 | | 响应数据 (ActualType: MatchResultDTO) | |
|
|
|
|
|
+| └ taskId | String | 否 | - | 匹配任务 ID | match_abc12345 |
|
|
|
|
|
+| └ lssId | String | 否 | - | LSS 节点 ID | lss_001 |
|
|
|
|
|
+| └ status | String | 否 | - | 匹配状态: MATCHING / COMPLETED / FAILED | MATCHING |
|
|
|
|
|
+| └ totalCount | Integer | 否 | - | 匹配的设备数量 | 5 |
|
|
|
|
|
+| └ successCount | Integer | 否 | - | 成功匹配数量 | 3 |
|
|
|
|
|
+| └ failCount | Integer | 否 | - | 失败数量 | 2 |
|
|
|
|
|
+| └ error | String | 否 | - | 错误信息 | |
|
|
|
|
|
+
|
|
|
|
|
+#### 响应示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "success": true,
|
|
|
|
|
+ "errCode": "string",
|
|
|
|
|
+ "errMessage": "string",
|
|
|
|
|
+ "data": {
|
|
|
|
|
+ "taskId": "match_abc12345",
|
|
|
|
|
+ "lssId": "lss_001",
|
|
|
|
|
+ "status": "MATCHING",
|
|
|
|
|
+ "totalCount": 5,
|
|
|
|
|
+ "successCount": 3,
|
|
|
|
|
+ "failCount": 2,
|
|
|
|
|
+ "error": "string"
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 错误码
|
|
|
|
|
+
|
|
|
|
|
+无
|
|
|
|
|
+
|
|
|
|
|
+### 绑定发现设备到已有摄像头
|
|
|
|
|
+
|
|
|
|
|
+维护人:TG Live
|
|
|
|
|
+
|
|
|
|
|
+#### URL
|
|
|
|
|
+
|
|
|
|
|
+- 本地开发环境: `POST` http://localhost:10050/api/admin/scan/bind
|
|
|
|
|
+- 开发环境: `POST` https://tg-live-game.pwtk.cc/api/admin/scan/bind
|
|
|
|
|
+
|
|
|
|
|
+描述:绑定发现设备到已有摄像头
|
|
|
|
|
+
|
|
|
|
|
+ContentType:`application/json`
|
|
|
|
|
+
|
|
|
|
|
+#### 请求参数
|
|
|
|
|
+
|
|
|
|
|
+##### Body Parameter
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| ------------ | ---- | ---- | -------- | ----------------------------------- | ------ |
|
|
|
|
|
+| discoveredId | Long | 是 | - | 发现设备 ID | 1 |
|
|
|
|
|
+| cameraId | Long | 是 | - | 要绑定的摄像头 ID(camera_info.id) | 1 |
|
|
|
|
|
+
|
|
|
|
|
+#### 请求示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "discoveredId": 1,
|
|
|
|
|
+ "cameraId": 1
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 响应参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| --- | --- | --- | --- | --- | --- |
|
|
|
|
|
+| success | Boolean | 否 | - | 请求是否成功 | true |
|
|
|
|
|
+| errCode | String | 否 | - | 错误码(失败时返回) | |
|
|
|
|
|
+| errMessage | String | 否 | - | 错误信息(失败时返回) | |
|
|
|
|
|
+| data | object | 否 | | 响应数据 (ActualType: CameraInfoDTO) | |
|
|
|
|
|
+| └ id | Long | 否 | - | 主键 ID | 1 |
|
|
|
|
|
+| └ cameraId | String | 否 | - | 摄像头 ID | cam_001 |
|
|
|
|
|
+| └ cameraName | String | 否 | - | 设备名称 | 主摄像头 |
|
|
|
|
|
+| └ ip | String | 否 | - | IP 地址 | 192.168.1.100 |
|
|
|
|
|
+| └ port | Integer | 否 | - | 端口 | 80 |
|
|
|
|
|
+| └ username | String | 否 | - | 用户名 | admin |
|
|
|
|
|
+| └ vendorName | String | 否 | - | 厂商名称 | 海康威视 |
|
|
|
|
|
+| └ brand | String | 否 | - | 品牌(兼容旧数据) | hikvision |
|
|
|
|
|
+| └ capability | String | 否 | - | 能力: switch_only, ptz_enabled | ptz_enabled |
|
|
|
|
|
+| └ status | String | 否 | - | 心跳状态: active, hold, dead | active |
|
|
|
|
|
+| └ lssId | String | 否 | - | 绑定的 LSS 节点 ID | lss_001 |
|
|
|
|
|
+| └ model | String | 否 | - | 摄像头型号 | DS-2CD2T47G2-LSU/SL |
|
|
|
|
|
+| └ rtspUrl | String | 否 | - | RTSP 推流地址 | rtsp://admin:password@192.168.1.100:554/stream1 |
|
|
|
|
|
+| └ channelNo | String | 否 | - | 通道号 | 1 |
|
|
|
|
|
+| └ remark | String | 否 | - | 备注 | |
|
|
|
|
|
+| └ paramConfig | String | 否 | - | 参数配置 (JSON 格式,包含 ip, port, username, password 等) | {ip:192.168.1.100,port:80,username:admin,password:123456} |
|
|
|
|
|
+| └ runtimeParams | String | 否 | - | 设备运行参数 (JSON 格式,通过 ONVIF 获取的摄像头参数)<br><br>现阶段:手动输入<br>TODO: 后续改为通过 ONVIF 协议扫描自动获取 | {resolution:1920x1080,fps:25,codec:H.264} |
|
|
|
|
|
+| └ enabled | Boolean | 否 | - | 是否启用 | true |
|
|
|
|
|
+| └ createdAt | LocalDateTime | 否 | - | 创建时间 | 2026-01-07T10:00:00 |
|
|
|
|
|
+| └ updatedAt | LocalDateTime | 否 | - | 更新时间 | 2026-01-07T10:00:00 |
|
|
|
|
|
+| └ streamSn | String | 否 | - | 关联的推流任务流水号 | stream_e1d710b7b8a8 |
|
|
|
|
|
+| └ streamStatus | String | 否 | - | 推流状态: idle, streaming, stopped, error | streaming |
|
|
|
|
|
+| └ playbackUrl | String | 否 | - | 播放地址(WHEP) | https://customer-xxx.cloudflarestream.com/xxx/webRTC/play |
|
|
|
|
|
+
|
|
|
|
|
+#### 响应示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "success": true,
|
|
|
|
|
+ "errCode": "string",
|
|
|
|
|
+ "errMessage": "string",
|
|
|
|
|
+ "data": {
|
|
|
|
|
+ "id": 1,
|
|
|
|
|
+ "cameraId": "cam_001",
|
|
|
|
|
+ "cameraName": "主摄像头",
|
|
|
|
|
+ "ip": "192.168.1.100",
|
|
|
|
|
+ "port": 80,
|
|
|
|
|
+ "username": "admin",
|
|
|
|
|
+ "vendorName": "海康威视",
|
|
|
|
|
+ "brand": "hikvision",
|
|
|
|
|
+ "capability": "ptz_enabled",
|
|
|
|
|
+ "status": "active",
|
|
|
|
|
+ "lssId": "lss_001",
|
|
|
|
|
+ "model": "DS-2CD2T47G2-LSU/SL",
|
|
|
|
|
+ "rtspUrl": "rtsp://admin:password@192.168.1.100:554/stream1",
|
|
|
|
|
+ "channelNo": "1",
|
|
|
|
|
+ "remark": "string",
|
|
|
|
|
+ "paramConfig": "{ip:192.168.1.100,port:80,username:admin,password:123456}",
|
|
|
|
|
+ "runtimeParams": "{resolution:1920x1080,fps:25,codec:H.264}",
|
|
|
|
|
+ "enabled": true,
|
|
|
|
|
+ "createdAt": "2026-01-07T10:00:00",
|
|
|
|
|
+ "updatedAt": "2026-01-07T10:00:00",
|
|
|
|
|
+ "streamSn": "stream_e1d710b7b8a8",
|
|
|
|
|
+ "streamStatus": "streaming",
|
|
|
|
|
+ "playbackUrl": "https://customer-xxx.cloudflarestream.com/xxx/webRTC/play"
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 错误码
|
|
|
|
|
+
|
|
|
|
|
+无
|
|
|
|
|
+
|
|
|
|
|
+### 从发现设备创建摄像头(已废弃)
|
|
|
|
|
+
|
|
|
|
|
+维护人:TG Live
|
|
|
|
|
+
|
|
|
|
|
+#### URL
|
|
|
|
|
+
|
|
|
|
|
+- 本地开发环境: `POST` http://localhost:10050/api/admin/discovered/create-camera
|
|
|
|
|
+- 开发环境: `POST` https://tg-live-game.pwtk.cc/api/admin/discovered/create-camera
|
|
|
|
|
+
|
|
|
|
|
+描述:从发现设备创建摄像头(已废弃)
|
|
|
|
|
+
|
|
|
|
|
+ContentType:`application/json`
|
|
|
|
|
+
|
|
|
|
|
+#### 请求参数
|
|
|
|
|
+
|
|
|
|
|
+##### Body Parameter
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| ------------ | ------ | ---- | -------- | ------------------------------------ | ------------ |
|
|
|
|
|
+| discoveredId | Long | 是 | - | 发现设备 ID | 1 |
|
|
|
|
|
+| name | String | 否 | - | 摄像头名称(可选,默认使用设备名称) | 前门摄像头 |
|
|
|
|
|
+| remark | String | 否 | - | 备注 | 大门入口监控 |
|
|
|
|
|
+
|
|
|
|
|
+#### 请求示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "discoveredId": 1,
|
|
|
|
|
+ "name": "前门摄像头",
|
|
|
|
|
+ "remark": "大门入口监控"
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 响应参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| --- | --- | --- | --- | --- | --- |
|
|
|
|
|
+| success | Boolean | 否 | - | 请求是否成功 | true |
|
|
|
|
|
+| errCode | String | 否 | - | 错误码(失败时返回) | |
|
|
|
|
|
+| errMessage | String | 否 | - | 错误信息(失败时返回) | |
|
|
|
|
|
+| data | object | 否 | | 响应数据 (ActualType: CameraInfoDTO) | |
|
|
|
|
|
+| └ id | Long | 否 | - | 主键 ID | 1 |
|
|
|
|
|
+| └ cameraId | String | 否 | - | 摄像头 ID | cam_001 |
|
|
|
|
|
+| └ cameraName | String | 否 | - | 设备名称 | 主摄像头 |
|
|
|
|
|
+| └ ip | String | 否 | - | IP 地址 | 192.168.1.100 |
|
|
|
|
|
+| └ port | Integer | 否 | - | 端口 | 80 |
|
|
|
|
|
+| └ username | String | 否 | - | 用户名 | admin |
|
|
|
|
|
+| └ vendorName | String | 否 | - | 厂商名称 | 海康威视 |
|
|
|
|
|
+| └ brand | String | 否 | - | 品牌(兼容旧数据) | hikvision |
|
|
|
|
|
+| └ capability | String | 否 | - | 能力: switch_only, ptz_enabled | ptz_enabled |
|
|
|
|
|
+| └ status | String | 否 | - | 心跳状态: active, hold, dead | active |
|
|
|
|
|
+| └ lssId | String | 否 | - | 绑定的 LSS 节点 ID | lss_001 |
|
|
|
|
|
+| └ model | String | 否 | - | 摄像头型号 | DS-2CD2T47G2-LSU/SL |
|
|
|
|
|
+| └ rtspUrl | String | 否 | - | RTSP 推流地址 | rtsp://admin:password@192.168.1.100:554/stream1 |
|
|
|
|
|
+| └ channelNo | String | 否 | - | 通道号 | 1 |
|
|
|
|
|
+| └ remark | String | 否 | - | 备注 | |
|
|
|
|
|
+| └ paramConfig | String | 否 | - | 参数配置 (JSON 格式,包含 ip, port, username, password 等) | {ip:192.168.1.100,port:80,username:admin,password:123456} |
|
|
|
|
|
+| └ runtimeParams | String | 否 | - | 设备运行参数 (JSON 格式,通过 ONVIF 获取的摄像头参数)<br><br>现阶段:手动输入<br>TODO: 后续改为通过 ONVIF 协议扫描自动获取 | {resolution:1920x1080,fps:25,codec:H.264} |
|
|
|
|
|
+| └ enabled | Boolean | 否 | - | 是否启用 | true |
|
|
|
|
|
+| └ createdAt | LocalDateTime | 否 | - | 创建时间 | 2026-01-07T10:00:00 |
|
|
|
|
|
+| └ updatedAt | LocalDateTime | 否 | - | 更新时间 | 2026-01-07T10:00:00 |
|
|
|
|
|
+| └ streamSn | String | 否 | - | 关联的推流任务流水号 | stream_e1d710b7b8a8 |
|
|
|
|
|
+| └ streamStatus | String | 否 | - | 推流状态: idle, streaming, stopped, error | streaming |
|
|
|
|
|
+| └ playbackUrl | String | 否 | - | 播放地址(WHEP) | https://customer-xxx.cloudflarestream.com/xxx/webRTC/play |
|
|
|
|
|
+
|
|
|
|
|
+#### 响应示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "success": true,
|
|
|
|
|
+ "errCode": "string",
|
|
|
|
|
+ "errMessage": "string",
|
|
|
|
|
+ "data": {
|
|
|
|
|
+ "id": 1,
|
|
|
|
|
+ "cameraId": "cam_001",
|
|
|
|
|
+ "cameraName": "主摄像头",
|
|
|
|
|
+ "ip": "192.168.1.100",
|
|
|
|
|
+ "port": 80,
|
|
|
|
|
+ "username": "admin",
|
|
|
|
|
+ "vendorName": "海康威视",
|
|
|
|
|
+ "brand": "hikvision",
|
|
|
|
|
+ "capability": "ptz_enabled",
|
|
|
|
|
+ "status": "active",
|
|
|
|
|
+ "lssId": "lss_001",
|
|
|
|
|
+ "model": "DS-2CD2T47G2-LSU/SL",
|
|
|
|
|
+ "rtspUrl": "rtsp://admin:password@192.168.1.100:554/stream1",
|
|
|
|
|
+ "channelNo": "1",
|
|
|
|
|
+ "remark": "string",
|
|
|
|
|
+ "paramConfig": "{ip:192.168.1.100,port:80,username:admin,password:123456}",
|
|
|
|
|
+ "runtimeParams": "{resolution:1920x1080,fps:25,codec:H.264}",
|
|
|
|
|
+ "enabled": true,
|
|
|
|
|
+ "createdAt": "2026-01-07T10:00:00",
|
|
|
|
|
+ "updatedAt": "2026-01-07T10:00:00",
|
|
|
|
|
+ "streamSn": "stream_e1d710b7b8a8",
|
|
|
|
|
+ "streamStatus": "streaming",
|
|
|
|
|
+ "playbackUrl": "https://customer-xxx.cloudflarestream.com/xxx/webRTC/play"
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 错误码
|
|
|
|
|
+
|
|
|
|
|
+无
|
|
|
|
|
+
|
|
|
|
|
+### 批量创建摄像头(已废弃)
|
|
|
|
|
+
|
|
|
|
|
+维护人:TG Live
|
|
|
|
|
+
|
|
|
|
|
+#### URL
|
|
|
|
|
+
|
|
|
|
|
+- 本地开发环境: `POST` http://localhost:10050/api/admin/discovered/batch-create
|
|
|
|
|
+- 开发环境: `POST` https://tg-live-game.pwtk.cc/api/admin/discovered/batch-create
|
|
|
|
|
+
|
|
|
|
|
+描述:批量创建摄像头(已废弃)
|
|
|
|
|
+
|
|
|
|
|
+ContentType:`application/json`
|
|
|
|
|
+
|
|
|
|
|
+#### 请求参数
|
|
|
|
|
+
|
|
|
|
|
+##### Body Parameter
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| ------------- | ----- | ---- | -------- | --------------------------------- | ------ |
|
|
|
|
|
+| discoveredIds | array | 否 | - | 发现设备 ID 列表,[array of int64] | 0,0 |
|
|
|
|
|
+
|
|
|
|
|
+#### 请求示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "discoveredIds": [
|
|
|
|
|
+ 0,
|
|
|
|
|
+ 0
|
|
|
|
|
+ ]
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 响应参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| ---------- | ------- | ---- | -------- | ------------------------------ | ------ |
|
|
|
|
|
+| success | Boolean | 否 | - | 请求是否成功 | true |
|
|
|
|
|
+| errCode | String | 否 | - | 错误码(失败时返回) | |
|
|
|
|
|
+| errMessage | String | 否 | - | 错误信息(失败时返回) | |
|
|
|
|
|
+| data | int32 | 否 | - | 响应数据 (ActualType: Integer) | |
|
|
|
|
|
+
|
|
|
|
|
+#### 响应示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "success": true,
|
|
|
|
|
+ "errCode": "string",
|
|
|
|
|
+ "errMessage": "string",
|
|
|
|
|
+ "data": 0
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 错误码
|
|
|
|
|
+
|
|
|
|
|
+无
|
|
|
|
|
+
|
|
|
|
|
+### 获取凭证列表
|
|
|
|
|
+
|
|
|
|
|
+维护人:TG Live
|
|
|
|
|
+
|
|
|
|
|
+#### URL
|
|
|
|
|
+
|
|
|
|
|
+- 本地开发环境: `GET` http://localhost:10050/api/admin/credentials
|
|
|
|
|
+- 开发环境: `GET` https://tg-live-game.pwtk.cc/api/admin/credentials
|
|
|
|
|
+
|
|
|
|
|
+描述:获取凭证列表
|
|
|
|
|
+
|
|
|
|
|
+ContentType:`application/x-www-form-urlencoded;charset=UTF-8`
|
|
|
|
|
+
|
|
|
|
|
+#### 请求参数
|
|
|
|
|
+
|
|
|
|
|
+#### 响应参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| -------------- | ------------- | ---- | -------- | --------------------------- | ------------------- |
|
|
|
|
|
+| success | Boolean | 否 | - | 请求是否成功 | true |
|
|
|
|
|
+| errCode | String | 否 | - | 错误码(失败时返回) | |
|
|
|
|
|
+| errMessage | String | 否 | - | 错误信息(失败时返回) | |
|
|
|
|
|
+| data | array | 否 | | 响应数据 (ActualType: List) | |
|
|
|
|
|
+| └ id | Long | 否 | - | ID | 1 |
|
|
|
|
|
+| └ name | String | 否 | - | 凭证名称 | 默认凭证 |
|
|
|
|
|
+| └ username | String | 否 | - | 用户名 | admin |
|
|
|
|
|
+| └ password | String | 否 | - | 密码(列表时可能隐藏) | 12345 |
|
|
|
|
|
+| └ vendor | String | 否 | - | 适用厂商(空表示通用) | HIKVISION |
|
|
|
|
|
+| └ priority | Integer | 否 | - | 优先级 | 100 |
|
|
|
|
|
+| └ enabled | Boolean | 否 | - | 是否启用 | true |
|
|
|
|
|
+| └ remark | String | 否 | - | 备注 | 海康威视默认凭证 |
|
|
|
|
|
+| └ successCount | Integer | 否 | - | 成功匹配次数 | 10 |
|
|
|
|
|
+| └ failCount | Integer | 否 | - | 失败匹配次数 | 5 |
|
|
|
|
|
+| └ createdAt | LocalDateTime | 否 | - | 创建时间 | 2026-01-27T10:00:00 |
|
|
|
|
|
+| └ updatedAt | LocalDateTime | 否 | - | 更新时间 | 2026-01-27T10:00:00 |
|
|
|
|
|
+
|
|
|
|
|
+#### 响应示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "success": true,
|
|
|
|
|
+ "errCode": "string",
|
|
|
|
|
+ "errMessage": "string",
|
|
|
|
|
+ "data": [
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 1,
|
|
|
|
|
+ "name": "默认凭证",
|
|
|
|
|
+ "username": "admin",
|
|
|
|
|
+ "password": "12345",
|
|
|
|
|
+ "vendor": "HIKVISION",
|
|
|
|
|
+ "priority": 100,
|
|
|
|
|
+ "enabled": true,
|
|
|
|
|
+ "remark": "海康威视默认凭证",
|
|
|
|
|
+ "successCount": 10,
|
|
|
|
|
+ "failCount": 5,
|
|
|
|
|
+ "createdAt": "2026-01-27T10:00:00",
|
|
|
|
|
+ "updatedAt": "2026-01-27T10:00:00"
|
|
|
|
|
+ }
|
|
|
|
|
+ ]
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 错误码
|
|
|
|
|
+
|
|
|
|
|
+无
|
|
|
|
|
+
|
|
|
|
|
+### 添加凭证
|
|
|
|
|
+
|
|
|
|
|
+维护人:TG Live
|
|
|
|
|
+
|
|
|
|
|
+#### URL
|
|
|
|
|
+
|
|
|
|
|
+- 本地开发环境: `POST` http://localhost:10050/api/admin/credentials
|
|
|
|
|
+- 开发环境: `POST` https://tg-live-game.pwtk.cc/api/admin/credentials
|
|
|
|
|
+
|
|
|
|
|
+描述:添加凭证
|
|
|
|
|
+
|
|
|
|
|
+ContentType:`application/json`
|
|
|
|
|
+
|
|
|
|
|
+#### 请求参数
|
|
|
|
|
+
|
|
|
|
|
+##### Body Parameter
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| -------- | ------- | ---- | -------- | ---------------------------- | ---------------- |
|
|
|
|
|
+| name | String | 是 | - | 凭证名称 | 默认凭证 |
|
|
|
|
|
+| username | String | 是 | - | 用户名 | admin |
|
|
|
|
|
+| password | String | 是 | - | 密码 | 12345 |
|
|
|
|
|
+| vendor | String | 否 | - | 适用厂商(空表示通用) | HIKVISION |
|
|
|
|
|
+| priority | Integer | 否 | - | 优先级(数字越小优先级越高) | 100 |
|
|
|
|
|
+| enabled | Boolean | 否 | - | 是否启用 | true |
|
|
|
|
|
+| remark | String | 否 | - | 备注 | 海康威视默认凭证 |
|
|
|
|
|
+
|
|
|
|
|
+#### 请求示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "name": "默认凭证",
|
|
|
|
|
+ "username": "admin",
|
|
|
|
|
+ "password": "12345",
|
|
|
|
|
+ "vendor": "HIKVISION",
|
|
|
|
|
+ "priority": 100,
|
|
|
|
|
+ "enabled": true,
|
|
|
|
|
+ "remark": "海康威视默认凭证"
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 响应参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| -------------- | ------------- | ---- | -------- | ------------------------------------------ | ------------------- |
|
|
|
|
|
+| success | Boolean | 否 | - | 请求是否成功 | true |
|
|
|
|
|
+| errCode | String | 否 | - | 错误码(失败时返回) | |
|
|
|
|
|
+| errMessage | String | 否 | - | 错误信息(失败时返回) | |
|
|
|
|
|
+| data | object | 否 | | 响应数据 (ActualType: CameraCredentialDTO) | |
|
|
|
|
|
+| └ id | Long | 否 | - | ID | 1 |
|
|
|
|
|
+| └ name | String | 否 | - | 凭证名称 | 默认凭证 |
|
|
|
|
|
+| └ username | String | 否 | - | 用户名 | admin |
|
|
|
|
|
+| └ password | String | 否 | - | 密码(列表时可能隐藏) | 12345 |
|
|
|
|
|
+| └ vendor | String | 否 | - | 适用厂商(空表示通用) | HIKVISION |
|
|
|
|
|
+| └ priority | Integer | 否 | - | 优先级 | 100 |
|
|
|
|
|
+| └ enabled | Boolean | 否 | - | 是否启用 | true |
|
|
|
|
|
+| └ remark | String | 否 | - | 备注 | 海康威视默认凭证 |
|
|
|
|
|
+| └ successCount | Integer | 否 | - | 成功匹配次数 | 10 |
|
|
|
|
|
+| └ failCount | Integer | 否 | - | 失败匹配次数 | 5 |
|
|
|
|
|
+| └ createdAt | LocalDateTime | 否 | - | 创建时间 | 2026-01-27T10:00:00 |
|
|
|
|
|
+| └ updatedAt | LocalDateTime | 否 | - | 更新时间 | 2026-01-27T10:00:00 |
|
|
|
|
|
+
|
|
|
|
|
+#### 响应示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "success": true,
|
|
|
|
|
+ "errCode": "string",
|
|
|
|
|
+ "errMessage": "string",
|
|
|
|
|
+ "data": {
|
|
|
|
|
+ "id": 1,
|
|
|
|
|
+ "name": "默认凭证",
|
|
|
|
|
+ "username": "admin",
|
|
|
|
|
+ "password": "12345",
|
|
|
|
|
+ "vendor": "HIKVISION",
|
|
|
|
|
+ "priority": 100,
|
|
|
|
|
+ "enabled": true,
|
|
|
|
|
+ "remark": "海康威视默认凭证",
|
|
|
|
|
+ "successCount": 10,
|
|
|
|
|
+ "failCount": 5,
|
|
|
|
|
+ "createdAt": "2026-01-27T10:00:00",
|
|
|
|
|
+ "updatedAt": "2026-01-27T10:00:00"
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 错误码
|
|
|
|
|
+
|
|
|
|
|
+无
|
|
|
|
|
+
|
|
|
|
|
+### 更新凭证
|
|
|
|
|
+
|
|
|
|
|
+维护人:TG Live
|
|
|
|
|
+
|
|
|
|
|
+#### URL
|
|
|
|
|
+
|
|
|
|
|
+- 本地开发环境: `POST` http://localhost:10050/api/admin/credentials/update
|
|
|
|
|
+- 开发环境: `POST` https://tg-live-game.pwtk.cc/api/admin/credentials/update
|
|
|
|
|
+
|
|
|
|
|
+描述:更新凭证
|
|
|
|
|
+
|
|
|
|
|
+ContentType:`application/json`
|
|
|
|
|
+
|
|
|
|
|
+#### 请求参数
|
|
|
|
|
+
|
|
|
|
|
+##### Body Parameter
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| -------- | ------- | ---- | -------- | -------- | ---------------- |
|
|
|
|
|
+| id | Long | 是 | - | 凭证 ID | 1 |
|
|
|
|
|
+| name | String | 否 | - | 凭证名称 | 默认凭证 |
|
|
|
|
|
+| username | String | 否 | - | 用户名 | admin |
|
|
|
|
|
+| password | String | 否 | - | 密码 | 12345 |
|
|
|
|
|
+| vendor | String | 否 | - | 适用厂商 | HIKVISION |
|
|
|
|
|
+| priority | Integer | 否 | - | 优先级 | 100 |
|
|
|
|
|
+| enabled | Boolean | 否 | - | 是否启用 | true |
|
|
|
|
|
+| remark | String | 否 | - | 备注 | 海康威视默认凭证 |
|
|
|
|
|
+
|
|
|
|
|
+#### 请求示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "id": 1,
|
|
|
|
|
+ "name": "默认凭证",
|
|
|
|
|
+ "username": "admin",
|
|
|
|
|
+ "password": "12345",
|
|
|
|
|
+ "vendor": "HIKVISION",
|
|
|
|
|
+ "priority": 100,
|
|
|
|
|
+ "enabled": true,
|
|
|
|
|
+ "remark": "海康威视默认凭证"
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 响应参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| -------------- | ------------- | ---- | -------- | ------------------------------------------ | ------------------- |
|
|
|
|
|
+| success | Boolean | 否 | - | 请求是否成功 | true |
|
|
|
|
|
+| errCode | String | 否 | - | 错误码(失败时返回) | |
|
|
|
|
|
+| errMessage | String | 否 | - | 错误信息(失败时返回) | |
|
|
|
|
|
+| data | object | 否 | | 响应数据 (ActualType: CameraCredentialDTO) | |
|
|
|
|
|
+| └ id | Long | 否 | - | ID | 1 |
|
|
|
|
|
+| └ name | String | 否 | - | 凭证名称 | 默认凭证 |
|
|
|
|
|
+| └ username | String | 否 | - | 用户名 | admin |
|
|
|
|
|
+| └ password | String | 否 | - | 密码(列表时可能隐藏) | 12345 |
|
|
|
|
|
+| └ vendor | String | 否 | - | 适用厂商(空表示通用) | HIKVISION |
|
|
|
|
|
+| └ priority | Integer | 否 | - | 优先级 | 100 |
|
|
|
|
|
+| └ enabled | Boolean | 否 | - | 是否启用 | true |
|
|
|
|
|
+| └ remark | String | 否 | - | 备注 | 海康威视默认凭证 |
|
|
|
|
|
+| └ successCount | Integer | 否 | - | 成功匹配次数 | 10 |
|
|
|
|
|
+| └ failCount | Integer | 否 | - | 失败匹配次数 | 5 |
|
|
|
|
|
+| └ createdAt | LocalDateTime | 否 | - | 创建时间 | 2026-01-27T10:00:00 |
|
|
|
|
|
+| └ updatedAt | LocalDateTime | 否 | - | 更新时间 | 2026-01-27T10:00:00 |
|
|
|
|
|
+
|
|
|
|
|
+#### 响应示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "success": true,
|
|
|
|
|
+ "errCode": "string",
|
|
|
|
|
+ "errMessage": "string",
|
|
|
|
|
+ "data": {
|
|
|
|
|
+ "id": 1,
|
|
|
|
|
+ "name": "默认凭证",
|
|
|
|
|
+ "username": "admin",
|
|
|
|
|
+ "password": "12345",
|
|
|
|
|
+ "vendor": "HIKVISION",
|
|
|
|
|
+ "priority": 100,
|
|
|
|
|
+ "enabled": true,
|
|
|
|
|
+ "remark": "海康威视默认凭证",
|
|
|
|
|
+ "successCount": 10,
|
|
|
|
|
+ "failCount": 5,
|
|
|
|
|
+ "createdAt": "2026-01-27T10:00:00",
|
|
|
|
|
+ "updatedAt": "2026-01-27T10:00:00"
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 错误码
|
|
|
|
|
+
|
|
|
|
|
+无
|
|
|
|
|
+
|
|
|
|
|
+### 删除凭证
|
|
|
|
|
+
|
|
|
|
|
+维护人:TG Live
|
|
|
|
|
+
|
|
|
|
|
+#### URL
|
|
|
|
|
+
|
|
|
|
|
+- 本地开发环境: `POST` http://localhost:10050/api/admin/credentials/{id}/delete
|
|
|
|
|
+- 开发环境: `POST` https://tg-live-game.pwtk.cc/api/admin/credentials/{id}/delete
|
|
|
|
|
+
|
|
|
|
|
+描述:删除凭证
|
|
|
|
|
+
|
|
|
|
|
+ContentType:`application/x-www-form-urlencoded;charset=UTF-8`
|
|
|
|
|
+
|
|
|
|
|
+#### Path 参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 必填 | 描述 | 示例值 |
|
|
|
|
|
+| ---- | ---- | ------- | ------ |
|
|
|
|
|
+| id | 是 | 凭证 ID | 0 |
|
|
|
|
|
+
|
|
|
|
|
+#### 请求参数
|
|
|
|
|
+
|
|
|
|
|
+#### 响应参数
|
|
|
|
|
+
|
|
|
|
|
+| 名称 | 类型 | 必填 | 最大长度 | 描述 | 示例值 |
|
|
|
|
|
+| ---------- | ------- | ---- | -------- | --------------------------- | ------ |
|
|
|
|
|
+| success | Boolean | 否 | - | 请求是否成功 | true |
|
|
|
|
|
+| errCode | String | 否 | - | 错误码(失败时返回) | |
|
|
|
|
|
+| errMessage | String | 否 | - | 错误信息(失败时返回) | |
|
|
|
|
|
+| data | object | 否 | - | 响应数据 (ActualType: Void) | |
|
|
|
|
|
+
|
|
|
|
|
+#### 响应示例
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+{
|
|
|
|
|
+ "success": true,
|
|
|
|
|
+ "errCode": "string",
|
|
|
|
|
+ "errMessage": "string",
|
|
|
|
|
+ "data": {}
|
|
|
|
|
+}
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+#### 错误码
|
|
|
|
|
+
|
|
|
|
|
+无
|