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 probe — แต่ละ IP ในช่วงจะถูกทดสอบด้วยการหมดเวลาการเชื่อมต่อ TCP 1 วินาที (พร้อมกัน)
- เชื่อมต่อ ADB — สำหรับแต่ละ IP ที่ตอบสนอง จะพยายาม
adb connect <ip>:<port>(สูงสุด 2 ครั้ง) - รวมผลลัพธ์ — ผลลัพธ์ทั้งหมดต่อ IP จะถูกรวบรวมและส่งคืน
หลังจากสแกนสำเร็จ อุปกรณ์ที่เชื่อมต่อจะปรากฏใน TikMatrix โดยอัตโนมัติ