Included XML files for the "pay to new number" and "pay to old number" features in the Ozon platform.
112 lines
2.6 KiB
Markdown
112 lines
2.6 KiB
Markdown
# Device & Desktop API
|
||
|
||
[← Главная](../index.md)
|
||
|
||
Управление десктопами (установками приложения) и устройствами (подключёнными Android телефонами).
|
||
|
||
---
|
||
|
||
## Desktop
|
||
|
||
Desktop — это одна установка ARCDeskProject. Каждый desktop содержит список устройств.
|
||
|
||
### GET `/api/v1/desktop/` 🔒
|
||
|
||
Получить все десктопы профиля.
|
||
|
||
### POST `/api/v1/desktop/` 🔒
|
||
|
||
Зарегистрировать новый десктоп.
|
||
|
||
**Тело запроса:**
|
||
```json
|
||
{
|
||
"blue_token": "string",
|
||
"name": "Мой компьютер",
|
||
"contact": "string",
|
||
"app_version": "1.0.0"
|
||
}
|
||
```
|
||
|
||
**Ответ** содержит `id` (UUID) и `unique_name`.
|
||
|
||
### PATCH `/api/v1/desktop/{desktop_id}` 🔒
|
||
|
||
Обновить данные десктопа (версию, session_time и т.д.).
|
||
|
||
---
|
||
|
||
## Device
|
||
|
||
Device — физическое Android-устройство, подключённое к десктопу через ADB.
|
||
|
||
### GET `/api/v1/device/{desktop_id}` 🔒
|
||
|
||
Получить все устройства десктопа.
|
||
|
||
### POST `/api/v1/device/` 🔒
|
||
|
||
Зарегистрировать новое устройство.
|
||
|
||
**Тело запроса:**
|
||
```json
|
||
{
|
||
"desktop_id": "uuid",
|
||
"status": "ONLINE",
|
||
"name": "Pixel 6",
|
||
"screen_width": 1080,
|
||
"screen_height": 2400,
|
||
"battery": 85
|
||
}
|
||
```
|
||
|
||
**`DeviceStatus`:** `"ONLINE"` | `"OFFLINE"`
|
||
|
||
**Ответ** содержит `id` (UUID) — сохраняется как `api_id` в таблице `devices`.
|
||
|
||
### PATCH `/api/v1/device/{device_id}` 🔒
|
||
|
||
Обновить статус, battery, update_time устройства.
|
||
|
||
```json
|
||
{
|
||
"status": "ONLINE",
|
||
"battery": 72,
|
||
"update_time": 1700000000
|
||
}
|
||
```
|
||
|
||
### POST `/api/v1/device/add_screenshot/{device_id}` 🔒
|
||
|
||
Загрузить скриншот экрана устройства.
|
||
|
||
**Тип запроса:** `multipart/form-data`
|
||
|
||
| Поле | Тип | Описание |
|
||
|------|-----|----------|
|
||
| `file` | binary | JPEG-скриншот |
|
||
|
||
**Ответ:**
|
||
```json
|
||
{
|
||
"success": true,
|
||
"data": {
|
||
"id": "uuid",
|
||
"device_id": "uuid",
|
||
"screenshot_url": "https://...",
|
||
"taken_at": "2024-01-01T12:00:00"
|
||
}
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
## Связь с кодом проекта
|
||
|
||
| API | Метод в коде |
|
||
|-----|-------------|
|
||
| `POST /api/v1/desktop/` | `NetworkService::loginAndSetup()` |
|
||
| `POST /api/v1/device/` | `NetworkService::createDevice()` |
|
||
| `PATCH /api/v1/device/{id}` | `NetworkService::updateDevice()` |
|
||
| `POST /api/v1/device/add_screenshot/{id}` | `NetworkService::postDeviceScreenshot()` |
|