Przejdź do głównej zawartości

API skanowania TCP

API skanowania TCP skanuje zakres adresów IPv4 pod kątem łączności TCP i automatycznie łączy osiągalne urządzenia Android przez ADB w sieci. Jest przydatny do wykrywania i łączenia bezprzewodowych urządzeń Android bez ręcznych poleceń adb connect.

Endpoint

POST /api/v1/device/tcp-scan

Wymagania

Wymaganie Licencji

Ten API wymaga planu Pro, Team lub Business. Plan Starter nie ma dostępu.

Treść Żądania

Wszystkie pola są opcjonalne. Gdy pominięte, aplikacja używa zakresu IP i portu skonfigurowanego w Ustawieniach.

PoleTypWymaganeOpis
start_ipstringNiePoczątkowy adres IPv4 (np. "192.168.1.2"). Domyślnie zapisane ustawienia aplikacji.
end_ipstringNieKońcowy adres IPv4 (np. "192.168.1.254"). Domyślnie zapisane ustawienia aplikacji.
portintegerNiePort TCP do skanowania (np. 5555). Domyślnie zapisany scan_port (domyślnie: 5555).
Ograniczenie podsieci

Skanowanie jest ograniczone do pojedynczej podsieci /24. Jeśli start_ip i end_ip należą do różnych podsieci /24, zakres jest automatycznie skracany do start_ip.x.x.255.

Przykłady

Użyj ustawień aplikacji (zalecane)

Wyślij puste ciało, aby użyć zakresu IP i portu skonfigurowanego w aplikacji:

curl -X POST http://localhost:50809/api/v1/device/tcp-scan \
-H "Content-Type: application/json" \
-d '{}'

Niestandardowy zakres 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
}'

Odpowiedź

{
"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"
}
]
}
}

Pola Odpowiedzi

PoleTypOpis
data.totalintegerŁączna liczba IP, które odpowiedziały na porcie TCP
data.successintegerIP połączone pomyślnie przez ADB
data.failedintegerIP, dla których połączenie ADB nie powiodło się
data.detailsarrayLista wyników na IP
data.details[].ipstringSkanowany adres IP
data.details[].successbooleantrue jeśli połączenie ADB powiodło się
data.details[].messagestringWynik ADB lub komunikat o błędzie

Odpowiedzi Błędów

Status HTTPKodOpis
403403Dostęp do API wymaga planu Pro+

Jak to działa

  1. Sonda TCP — Każdy IP w zakresie jest testowany z 1-sekundowym limitem czasu połączenia TCP (jednocześnie).
  2. Połączenie ADB — Dla każdego IP, który odpowiada, próbowane jest adb connect <ip>:<port> (do 2 ponownych prób).
  3. Agregacja wyników — Wszystkie wyniki na IP są zbierane i zwracane.

Po udanym skanowaniu podłączone urządzenia pojawiają się automatycznie w TikMatrix.