GenRouter hướng dẫn cài đặt
  • Bắt đầu với Gen-Router
    • Giới thiệu về GenRouter
    • Hướng dẫn cài đặt và sử dụng
  • How to Use?
    • Các tính năng
    • Cài đặt chung cho Router
    • Tính năng tạo proxy từ mạng Lan
    • Quản lí tạo Wi-Fi
    • API tích hợp
    • Sử dụng với giả lập
      • NOX PLAYER
      • LD PLAYER
      • BLUESTACK
      • MEMU
  • Ghi chú phát hành
  • Hướng dẫn fix lỗi cơ bản
  • Group 1
    • Các câu hỏi thường gặp
    • Chính sách & hỗ trợ
      • Chính sách bảo hành & đổi trả
    • Vận chuyển & thanh toán
Powered by GitBook
On this page
  • Tài liệu API Router
  • Lưu ý chung
  1. How to Use?

API tích hợp

Tài liệu API Router

API này cung cấp các điểm cuối cho nhà phát triển tương tác và mở rộng chức năng của router. Dưới đây là các điểm cuối chính cùng với ví dụ cURL, định dạng yêu cầu/phản hồi và mô tả chi tiết.

  1. Cập nhật Proxy

  • Điểm cuối: /api/update_proxy

  • Phương thức: POST

  • Mô tả: Cập nhật cấu hình proxy cho các địa chỉ IP được chỉ định.

Yêu cầu

  • Headers: Content-Type: application/json

  • Body: Một đối tượng JSON, trong đó các khóa là địa chỉ IP và các giá trị chứa cấu hình proxy:

    • type: Loại proxy (ví dụ: socks5)

    • server: Địa chỉ máy chủ proxy

    • port: Cổng kết nối

    • username: Tên đằng nhập

    • password: Mật khẩu đăng nhập

    Ví dụ:

curl --location 'http://192.168.5.1:9000/api/update_proxy' \
--header 'Content-Type: application/json' \
--data '{
    "192.168.4.253": {
        "type": "socks5",
        "server": "179.60.183.234",
        "port": 50101,
        "username": "genrouter",
        "password": "MDoFXVw5s8"
    },
    "192.168.5.104": {
        "type": "socks5",
        "server": "179.60.183.234",
        "port": 50101,
        "username": "genrouter",
        "password": "MDoFXVw5s8"
    }
}'

Phản hồi mẫu

{"success": true}
  1. Lấy danh sách thiết bị

  • Điểm cuối: /api/devices

  • Phương thức: GET

  • Mô tả: Lấy danh sách các thiết bị đang kết nối với router cùng với các thông tin chi tiết như địa chỉ IP, MAC, tên máy (hostname), trạng thái kết nối và cấu hình proxy (nếu có). Ví dụ

curl 'http://192.168.8.1:9000/api/devices'

Phản hồi mẫu

{
    "data": [
        {
            "ip": "192.168.8.101",
            "mac": "40:c2:ba:89:c1:51",
            "hostname": "akatsuki",
            "connected": true
        },
        {
            "ip": "192.168.8.102",
            "mac": "",
            "hostname": "",
            "proxy": {
                "type": "socks5",
                "server": "179.60.183.234",
                "port": 50101,
                "username": "genrouter",
                "password": "MDoFXVw5s8",
                "udp": true
            },
            "connected": false
        }
    ]
}
  1. Thông tin hệ thống

  • Điểm cuối: /api/system/info

  • Phương thức: GET

  • Mô tả: Lấy thông tin hệ thống như phiên bản build, commit git, thời gian kiểm tra phiên bản cuối cùng, và trạng thái có cần khởi động lại hay không. Ví dụ

curl 'http://192.168.8.1:9000/api/system/info' --insecure

Phản hồi mẫu

{
    "build_version": "20250401",
    "current_version": "424319ff5b9e",
    "git_commit": "810f2d0",
    "last_version_check_time": "2025-04-01T08:14:18.39529544Z",
    "need_reboot": false,
    "newest_version": "424319ff5b9e",
    "success": true
}
  1. Thông tin Router

  • Điểm cuối: /api/router/info

  • Phương thức: GET

  • Mô tả: Lấy cấu hình của router, bao gồm các thiết lập LAN và mạng không dây. Ví dụ

curl 'http://192.168.8.1:9000/api/router/info' --insecure

Phản hồi mẫu

{
    "data": {
        "lan": {
            "networks": [
                {
                    "ip": "192.168.8.1",
                    "prefix_length": 24,
                    "dhcp_start": 100,
                    "dhcp_limit": 150,
                    "dhcp_lease_time": 0,
                    "device": "br-lan",
                    "ports": [
                        "eth0"
                    ],
                    "id": "lan",
                    "mac": "",
                    "country": "",
                    "brand": ""
                }
            ]
        },
        "wireless": {
            "radios": [
                {
                    "id": "radio0",
                    "band": "2g",
                    "mode": "speed",
                    "channel_id": "1",
                    "channels": [
                        {
                            "value": "auto",
                            "label": "auto"
                        },
                        {
                            "value": "1",
                            "label": "1 (2412 Mhz)"
                        },
                        {
                            "value": "2",
                            "label": "2 (2417 Mhz)"
                        },
                        {
                            "value": "3",
                            "label": "3 (2422 Mhz)"
                        },
                        {
                            "value": "4",
                            "label": "4 (2427 Mhz)"
                        },
                        {
                            "value": "5",
                            "label": "5 (2432 Mhz)"
                        },
                        {
                            "value": "6",
                            "label": "6 (2437 Mhz)"
                        },
                        {
                            "value": "7",
                            "label": "7 (2442 Mhz)"
                        },
                        {
                            "value": "8",
                            "label": "8 (2447 Mhz)"
                        },
                        {
                            "value": "9",
                            "label": "9 (2452 Mhz)"
                        },
                        {
                            "value": "10",
                            "label": "10 (2457 Mhz)"
                        },
                        {
                            "value": "11",
                            "label": "11 (2462 Mhz)"
                        }
                    ],
                    "ssids": [
                        {
                            "id": "gr_radio0_0",
                            "ssid": "GenRouter H3000",
                            "password": "",
                            "mac": "",
                            "brand": "",
                            "country": "",
                            "hidden": "",
                            "disabled": "0"
                        }
                    ]
                },
                {
                    "id": "radio1",
                    "band": "5g",
                    "mode": "speed",
                    "channel_id": "36",
                    "channels": [
                        {
                            "value": "auto",
                            "label": "auto"
                        },
                        {
                            "value": "36",
                            "label": "36 (5180 Mhz)"
                        },
                        {
                            "value": "40",
                            "label": "40 (5200 Mhz)"
                        },
                        {
                            "value": "44",
                            "label": "44 (5220 Mhz)"
                        },
                        {
                            "value": "48",
                            "label": "48 (5240 Mhz)"
                        },
                        {
                            "value": "52",
                            "label": "52 (5260 Mhz)"
                        },
                        {
                            "value": "56",
                            "label": "56 (5280 Mhz)"
                        },
                        {
                            "value": "60",
                            "label": "60 (5300 Mhz)"
                        },
                        {
                            "value": "64",
                            "label": "64 (5320 Mhz)"
                        },
                        {
                            "value": "100",
                            "label": "100 (5500 Mhz)"
                        },
                        {
                            "value": "104",
                            "label": "104 (5520 Mhz)"
                        },
                        {
                            "value": "108",
                            "label": "108 (5540 Mhz)"
                        },
                        {
                            "value": "112",
                            "label": "112 (5560 Mhz)"
                        },
                        {
                            "value": "116",
                            "label": "116 (5580 Mhz)"
                        },
                        {
                            "value": "120",
                            "label": "120 (5600 Mhz)"
                        },
                        {
                            "value": "124",
                            "label": "124 (5620 Mhz)"
                        },
                        {
                            "value": "128",
                            "label": "128 (5640 Mhz)"
                        },
                        {
                            "value": "132",
                            "label": "132 (5660 Mhz)"
                        },
                        {
                            "value": "136",
                            "label": "136 (5680 Mhz)"
                        },
                        {
                            "value": "140",
                            "label": "140 (5700 Mhz)"
                        },
                        {
                            "value": "144",
                            "label": "144 (5720 Mhz)"
                        },
                        {
                            "value": "149",
                            "label": "149 (5745 Mhz)"
                        },
                        {
                            "value": "153",
                            "label": "153 (5765 Mhz)"
                        },
                        {
                            "value": "157",
                            "label": "157 (5785 Mhz)"
                        },
                        {
                            "value": "161",
                            "label": "161 (5805 Mhz)"
                        }
                    ],
                    "ssids": null
                }
            ]
        }
    },
    "success": true
}
  1. Lấy cấu hình hệ thống

  • Điểm cuối: /api/system/config

  • Phương thức: GET

  • Mô tả: Lấy cấu hình hệ thống của router, bao gồm các chế độ như WebRTC và cài đặt proxy toàn cầu. Ví dụ

curl 'http://192.168.8.1:9000/api/system/config' \
  --insecure

Phản hồi mẫu

{
    "data": {
        "webrtcMode": 1,
        "globalProxyMode": 0,
        "globalProxy": null
    },
    "success": true
}
  1. Kiểm tra kết nối mạng

  • Điểm cuối: /api/system/network

  • Phương thức: GET

  • Mô tả: Kiểm tra kết nối mạng của router. Phản hồi với "success": true cho biết router đang kết nối với mạng.

Ví dụ

curl 'http://192.168.8.1:9000/api/system/network' \
  --insecure

Phản hồi mẫu

{"success": true}
  1. Kiểm tra cập nhật hệ thống

  • Điểm cuối: /api/system/check_for_update

  • Phương thức: GET

  • Mô tả: Kiểm tra xem có bản cập nhật hệ thống mới hay không và cung cấp các thông tin chi tiết như phiên bản build, commit git, ID bản cập nhật, và nhật ký thay đổi (changelog).

curl http://192.168.8.1:9000/api/system/check_for_update

Phản hồi mẫu

{
    "data": {
        "build_version": "20250401",
        "git_commit": "810f2d0",
        "update_id": "424319ff5b9e",
        "changelog": ""
    },
    "success": true
}
  1. Tạo mạng wiffi

Điểm cuối /api/router/create_wifi Phương thức: POST Mô tả: Tạo hoặc cấu hình mạng WiFi trên router. Dữ liệu gửi kèm yêu cầu bao gồm thông tin về sóng radio và các SSID sẽ được cấu hình.

Yêu cầu

  • Body: Một đối tượng JSON với khóa data chứa một mảng các đối tượng cấu hình. Mỗi đối tượng bao gồm:

    • id: ID sóng radio (ví dụ: radio0)

    • ssids: Một mảng các đối tượng cấu hình SSID, mỗi đối tượng bao gồm:

      • ssid: Tên mạng WiFi

      • password: Mật khẩu (có thể để null nếu không sử dụng)

      • hidden: Giá trị boolean cho biết SSID có bị ẩn hay không

      • disabled: Giá trị boolean cho biết SSID có bị vô hiệu hóa hay không

      • mac, brand: Các trường bổ sung nếu có

Ví dụ

curl 'http://192.168.8.1:9000/api/router/create_wifi' \
  --data-raw '{"data":[{"id":"radio0","ssids":[{"ssid":"GenRouter H3000","password":null,"hidden":false,"disabled":false,"mac":"","brand":""},{"ssid":"Cahaahaah","password":"aassasas","hidden":true,"disabled":false,"mac":"","brand":"viettel"}]}]}' \
  --insecure

Phản hồi mẫu

{"success": true}

Lưu ý chung

  • Các điểm cuối liên quan đến hệ thống và router (ví dụ: /api/system/info, /api/router/info, /api/system/config, /api/system/network, /api/system/check_for_update, /api/router/create_wifi) có thể cần sử dụng tùy chọn --insecure với cURL nếu hệ thống đang sử dụng chứng chỉ SSL không hợp lệ.

  • Các ví dụ được cung cấp có thể điều chỉnh dựa trên môi trường cụ thể của bạn (địa chỉ IP, cổng, thông tin xác thực, v.v.).

PreviousQuản lí tạo Wi-FiNextSử dụng với giả lập

Last updated 10 days ago