API TCP-сканування
API TCP-сканування сканує діапазон IPv4-адрес на предмет TCP-підключення і автоматично підключає доступні Android-пристрої через ADB у мережі. Це корисно для виявлення та підключення бездротових Android-пристроїв без ручних команд adb connect.
Endpoint
POST /api/v1/device/tcp-scan
Вимоги
Цей API потребує тарифу Pro, Team або Business. Тариф Starter не має доступу.
Тіло запиту
Всі поля необов'язкові. За їх відсутності застосунок використовує діапазон IP і порт, налаштовані в Налаштуваннях.
| Поле | Тип | Обов'язково | Опис |
|---|---|---|---|
| start_ip | string | Ні | Початкова IPv4-адреса (напр. "192.168.1.2"). За замовчуванням — збережені налаштування застосунку. |
| end_ip | string | Ні | Кінцева IPv4-адреса (напр. "192.168.1.254"). За замовчуванням — збережені налаштування застосунку. |
| port | integer | Ні | TCP-порт для сканування (напр. 5555). За замовчуванням — збережений scan_port (за замовчуванням: 5555). |
Сканування обмежено однією підмережею /24. Якщо start_ip і end_ip належать до різних підмереж /24, діапазон автоматично усікається до start_ip.x.x.255.
Приклади
Використання налаштувань застосунку (ре комендовано)
Надішліть порожнє тіло для використання діапазону IP і порту, налаштованих у застосунку:
curl -X POST http://localhost:50809/api/v1/device/tcp-scan \
-H "Content-Type: application/json" \
-d '{}'
Користувацький діапазон IP
curl -X POST http://localhost:50809/api/v1/device/tcp-scan \
-H "Content-Type: application/json" \
-d '{
"start_ip": "192.168.1.2",
"end_ip": "192.168.1.254",
"port": 5555
}'
Відповідь
{
"code": 0,
"message": "success",
"data": {
"total": 3,
"success": 2,
"failed": 1,
"details": [
{
"ip": "192.168.1.100",
"success": true,
"message": "already connected to 192.168.1.100:5555"
},
{
"ip": "192.168.1.101",
"success": true,
"message": "connected to 192.168.1.101:5555"
},
{
"ip": "192.168.1.102",
"success": false,
"message": "failed to connect to 192.168.1.102:5555"
}
]
}
}
Поля відповіді
| Поле | Тип | Опис |
|---|---|---|
| data.total | integer | Загальна кількість IP, що відповіли на TCP-порт |
| data.success | integer | IP, успішно підключені через ADB |
| data.failed | integer | IP, для яких підключення ADB не вдалося |
| data.details | array | Список результатів по IP |
| data.details[].ip | string | Сканована IP-адреса |
| data.details[].success | boolean | true якщо підключення ADB успішне |
| data.details[].message | string | Вивід ADB або повідомлення про помилку |
Відповіді про помилки
| HTTP-статус | Код | Опис |
|---|---|---|
| 403 | 403 | Доступ до API потребує тарифу Pro+ |
Як це працює
- TCP-зонд — Кожен IP у діапазоні тестується з 1-секундним таймаутом TCP-підключення (паралельно).
- Підключення ADB — Для кожного IP, що відповідає, виконується спроба
adb connect <ip>:<port>(до 2 повторних спроб). - Агрегація результатів — Всі результати по IP збираються і повертаються.
Після успішного сканування підключені пристрої автоматично з'являються в TikMatrix.