Перейти до основного вмісту

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_ipstringНіПочаткова IPv4-адреса (напр. "192.168.1.2"). За замовчуванням — збережені налаштування застосунку.
end_ipstringНіКінцева IPv4-адреса (напр. "192.168.1.254"). За замовчуванням — збережені налаштування застосунку.
portintegerНі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.totalintegerЗагальна кількість IP, що відповіли на TCP-порт
data.successintegerIP, успішно підключені через ADB
data.failedintegerIP, для яких підключення ADB не вдалося
data.detailsarrayСписок результатів по IP
data.details[].ipstringСканована IP-адреса
data.details[].successbooleantrue якщо підключення ADB успішне
data.details[].messagestringВивід ADB або повідомлення про помилку

Відповіді про помилки

HTTP-статусКодОпис
403403Доступ до API потребує тарифу Pro+

Як це працює

  1. TCP-зонд — Кожен IP у діапазоні тестується з 1-секундним таймаутом TCP-підключення (паралельно).
  2. Підключення ADB — Для кожного IP, що відповідає, виконується спроба adb connect <ip>:<port> (до 2 повторних спроб).
  3. Агрегація результатів — Всі результати по IP збираються і повертаються.

Після успішного сканування підключені пристрої автоматично з'являються в TikMatrix.