C.1 HTTP API

C.1.0.1 Información básica

  • BASEURL: /api

C.1.0.2 Encabezado

  • iotbox-token: IOTBOX-TOKEN

C.1.0.3 Código de retorno

code 説明
200 Respuesta exitosa con contenido
204 Respuesta exitosa sin contenido
499 Error de recopilación
498 Error de lectura
497 Error de escritura
496 Archivo no encontrado
496 Error de restauración de configuración
494 Error de actualización
493 Error de contraseña
492 Usuario deshabilitado
491 Registro duplicado
490 Error de verificación de script
489 Error de formato JSON
450 Otro error
404 Recurso no encontrado
401 No ha iniciado sesión
400 Error de parámetro

C.1.1 Usuario

C.1.1.1 Iniciar sesión

Elemento Contenido Nota
URL /user/login
Method POST
  • Parámetros de solicitud
{
    "password":"password",
    "username":"admin"
}
  • Ejemplo de retorno
{
    "token":"12599b49f6ab6b3abec7d32b3922e9d9"
}

C.1.1.2 Cerrar sesión

Elemento Contenido Nota
URL /user/login
Method DELETE

C.1.1.3 Cerrar sesión

Elemento Contenido Nota
URL /user/login
Method DELETE

C.1.1.4 INFO

Elemento Contenido Nota
URL /user/info
Method GET
  • Ejemplo de retorno
{
    "fingerprint": "3f7d0134a560d0393008b984fef2b936",
    "hardware": "DEVDEVICE",
    "id": 2,
    "lisence": {
        "count": {
            "all": 11
        },
        "exp": 4100688000,
        "fingerprint": "3f7d0134a560d0393008b984fef2b936",
        "vpn": false
    },
    "role": 2,
    "software": "2.0.20220509",
    "username": "admin"
}

C.1.1.5 Cambiar contraseña

Elemento Contenido Nota
URL /user/change_password
Method PUT
  • Parámetros de solicitud
{
    "password":"password",
    "new_password":"new_password"
}

C.1.2 Dispositivo

C.1.2.1 Lista de dispositivos

Elemento Contenido Nota
URL /device
Method GET
Query keywords: Consultar dispositivo por nombre
  • Ejemplo de retorno

    [
        {
            "calc": "function calc(value)\n    for i, v in ipairs(value.cnc_alarm) do\n        value['cnc_alarm_' .. i .. '_msg'] = v.alarm_msg\n        value['cnc_alarm_' .. i .. '_no'] = v.alarm_no\n        value['cnc_alarm_' .. i .. '_type'] = v.alarm_type\n    end\n    value.cnc_alarm = nil\n    return value\nend",
            "config": {
                "host": "192.168.9.207",
                "port": 8193
            },
            "enable": true,
            "id": 1,
            "interval": 20,
            "model": "default",
            "name": "D001",
            "state": 0,
            "type": "fanuc"
        }
    ]

C.1.2.2 Agregar dispositivo

Elemento Contenido Nota
URL /device
Method POST
  • Parámetros de solicitud

    {
        "calc": "function calc(value)\n    for i, v in ipairs(value.cnc_alarm) do\n        value['cnc_alarm_' .. i .. '_msg'] = v.alarm_msg\n        value['cnc_alarm_' .. i .. '_no'] = v.alarm_no\n        value['cnc_alarm_' .. i .. '_type'] = v.alarm_type\n    end\n    value.cnc_alarm = nil\n    return value\nend",
        "config": {
            "host": "192.168.9.207",
            "port": 8193
        },
        "enable": true,
        "interval": 20,
        "model": "default",
        "name": "D001",
        "state": 0,
        "type": "fanuc"
    }
  • Ejemplo de retorno`

    {
        "calc": "function calc(value)\n    for i, v in ipairs(value.cnc_alarm) do\n        value['cnc_alarm_' .. i .. '_msg'] = v.alarm_msg\n        value['cnc_alarm_' .. i .. '_no'] = v.alarm_no\n        value['cnc_alarm_' .. i .. '_type'] = v.alarm_type\n    end\n    value.cnc_alarm = nil\n    return value\nend",
        "config": {
            "host": "192.168.9.207",
            "port": 8193
        },
        "enable": true,
        "id": 1,
        "interval": 20,
        "model": "default",
        "name": "D001",
        "state": 0,
        "type": "fanuc"
    }

C.1.2.3 Obtener dispositivo

Elemento Contenido Nota
URL /device/<id> id es el Id del dispositivo
Method GET
  • Ejemplo de retorno`

    {
        "calc": "function calc(value)\n    for i, v in ipairs(value.cnc_alarm) do\n        value['cnc_alarm_' .. i .. '_msg'] = v.alarm_msg\n        value['cnc_alarm_' .. i .. '_no'] = v.alarm_no\n        value['cnc_alarm_' .. i .. '_type'] = v.alarm_type\n    end\n    value.cnc_alarm = nil\n    return value\nend",
        "config": {
            "host": "192.168.9.207",
            "port": 8193
        },
        "enable": true,
        "id": 1,
        "interval": 20,
        "model": "default",
        "name": "D001",
        "type": "fanuc",
        "variables": [
            {
                "calc": "",
                "config": {
                    "builtin": true
                },
                "id": 8,
                "name": "cnc_type",
                "readable": true,
                "writable": false
            }
        ]
    }

C.1.2.4 Modificar dispositivo

Elemento Contenido Nota
URL /device/<id> id es el Id del dispositivo
Method PUT
  • Parámetros de solicitud`

    {
        "calc": "function calc(value)\n    for i, v in ipairs(value.cnc_alarm) do\n        value['cnc_alarm_' .. i .. '_msg'] = v.alarm_msg\n        value['cnc_alarm_' .. i .. '_no'] = v.alarm_no\n        value['cnc_alarm_' .. i .. '_type'] = v.alarm_type\n    end\n    value.cnc_alarm = nil\n    return value\nend",
        "config": {
            "host": "192.168.9.207",
            "port": 8193
        },
        "enable": true,
        "id": 1,
        "interval": 20,
        "model": "default",
        "name": "D001",
        "type": "fanuc",
        "variables": [
            {
                "calc": "",
                "config": {
                    "builtin": true
                },
                "id": 8,
                "name": "cnc_type",
                "readable": true,
                "writable": false
            }
        ]
    }
  • Ejemplo de retorno`

    {
        "calc": "function calc(value)\n    for i, v in ipairs(value.cnc_alarm) do\n        value['cnc_alarm_' .. i .. '_msg'] = v.alarm_msg\n        value['cnc_alarm_' .. i .. '_no'] = v.alarm_no\n        value['cnc_alarm_' .. i .. '_type'] = v.alarm_type\n    end\n    value.cnc_alarm = nil\n    return value\nend",
        "config": {
            "host": "192.168.9.207",
            "port": 8193
        },
        "enable": true,
        "id": 1,
        "interval": 20,
        "model": "default",
        "name": "D001",
        "type": "fanuc",
        "variables": [
            {
                "calc": "",
                "config": {
                    "builtin": true
                },
                "id": 8,
                "name": "cnc_type",
                "readable": true,
                "writable": false
            }
        ]
    }

C.1.2.5 Eliminar dispositivo

Elemento Contenido Nota
URL /device/<id> id es el Id del dispositivo
Method DELETE

C.1.2.6 Obtener datos del dispositivo OBJECT

Elemento Contenido Nota
URL /device/<id>/info Si la clave de consulta es code, id es el código del dispositivo, de lo contrario id es el id del dispositivo
Method GET
Query key:tipo de id
type: Seleccionar tipo de datos
    before_item_calc Antes del cálculo de variable
    before_device_calc Antes del cálculo de dispositivo
  • Ejemplo de retorno

    {
        "cnc_type": {
            "id": 8,
            "ts": 1652085617619,
            "value": "FANUC 0i MF"
        },
        "cnc_actfspeed": {
            "id": 27,
            "ts": 1652085617763,
            "value": 0
        },
    }

C.1.2.7 Obtener datos del dispositivo LIST

Elemento Contenido Nota
URL /device/<id>/info_array Si la clave de consulta es code, id es el código del dispositivo, de lo contrario id es el id del dispositivo
Method GET
Query key:tipo de id
type: Seleccionar tipo de datos
    before_item_calc Antes del cálculo de variable
    before_device_calc Antes del cálculo de dispositivo
  • Ejemplo de retorno`

    [
        {
            "id": 20,
            "name": "cnc_tooloffsetnum",
            "ts": 1652085597698,
            "value": 0
        },
        {
            "id": 8,
            "name": "cnc_type",
            "ts": 1652085597615,
            "value": "FANUC 0i MF"
        }
    ]

C.1.2.8 Verificar salud del dispositivo

Elemento Contenido Nota
URL /device/<id>/check_health id es el Id del dispositivo
Method GET
  • Ejemplo de retorno`

    [
        {
            "code": 90200,
            "important": false,
            "state": 0
        },
        {
            "code": 40000,
            "important": false,
            "state": 0
        },
        {
            "code": 10000,
            "important": false,
            "state": 0
        }
    ]

C.1.2.9 Obtener variable del dispositivo

Elemento Contenido Nota
URL /device/<id>/variable id es el Id del dispositivo
Method GET
Query start: Cantidad de desplazamiento de retorno
limit: Cantidad de retorno por solicitud
  • Ejemplo de retorno`

    [
        {
            "calc": "",
            "config": {
                "builtin": true
            },
            "id": 34,
            "name": "cnc_stemper",
            "readable": true,
            "writable": false
        }
    ]

C.1.2.10 Agregar variable de dispositivo

Elemento Contenido Nota
URL /device/<id>/variable id es el Id del dispositivo
Method POST
  • Parámetros de solicitud

    {
        "calc": "",
        "config": {
            "builtin": true
        },
        "name": "cnc_stemper",
        "readable": true,
        "writable": false
    }
  • Ejemplo de retorno`

    {
        "calc": "",
        "config": {
            "builtin": true
        },
        "id": 34,
        "name": "cnc_stemper",
        "readable": true,
        "writable": false
    }

C.1.2.11 Modificar variable

Elemento Contenido Nota
URL /variable/<id> id es el id de variable
Method PUT
  • Parámetros de solicitud`

    {
        "calc": "",
        "config": {
            "builtin": true
        },
        "name": "cnc_stemper",
        "readable": true,
        "writable": false
    }
  • Ejemplo de retorno`

    {
        "calc": "",
        "config": {
            "builtin": true
        },
        "id": 34,
        "name": "cnc_stemper",
        "readable": true,
        "writable": false
    }

C.1.2.12 Obtener variable

Elemento Contenido Nota
URL /variable/<id> id es el id de variable
Method GET
  • Ejemplo de retorno`

    {
        "calc": "",
        "config": {
            "builtin": true
        },
        "id": 34,
        "name": "cnc_stemper",
        "readable": true,
        "writable": false
    }

C.1.2.13 Eliminar variable

Elemento Contenido Nota
URL /variable/<id> id es el id de variable
Method DELETE

C.1.2.14 Obtener valor de variable

Elemento Descripción
URL /variable/<id>/value id es el id de variable
Method GET
  • Ejemplo de retorno`

    {
        "ts": 1652086215825,
        "value": 123
    }

C.1.2.15 Escribir valor de variable

Elemento Contenido Nota
URL /variable/<id>/value id es el id de variable
Method PUT
  • Ejemplo de solicitud

    {
        "value": 123
    }

C.1.2.16 Prueba de cálculo de borde del dispositivo

Elemento Contenido Nota
URL /device/<id>/edge_test id es el Id del dispositivo
Method PUT
  • Parámetros de solicitud`

    {
        "current": {
            "cnc_alarm": [
                {
                    "alarm_no": 1,
                    "alarm_type": "T01",
                    "alarm_msg": "待机中"
                },
                {
                    "alarm_no": 204,
                    "alarm_type": "XXX",
                    "alarm_msg": "急停"
                }
            ]
        },
        "last": "",
        "calc": "function calc(value)\n    for i, v in ipairs(value.cnc_alarm) do\n        value['cnc_alarm_' .. i .. '_msg'] = v.alarm_msg\n        value['cnc_alarm_' .. i .. '_no'] = v.alarm_no\n        value['cnc_alarm_' .. i .. '_type'] = v.alarm_type\n    end\n    value.cnc_alarm = nil\n    return value\nend"
    }
  • Ejemplo de retorno`

    {
        "cnc_alarm_1_msg": "待机中",
        "cnc_alarm_1_no": 1,
        "cnc_alarm_1_type": "T01",
        "cnc_alarm_2_msg": "急停",
        "cnc_alarm_2_no": 204,
        "cnc_alarm_2_type": "XXX"
    }

C.1.2.17 Prueba de cálculo de borde de variable

Elemento Contenido Nota
URL /variable/<id>/edge_test id es el id de variable
Method PUT
  • Parámetros de solicitud`

    {
        "current": "abc",
        "last": "def",
        "calc": "function calc(current,last)\n    current=current .. \"imok\"\n    return current\nend"
    }
  • Ejemplo de retorno`

    {
        "result": "abcimok"
    }

C.1.2.18 Prueba de cálculo de borde de variable

Elemento Contenido Nota
URL /variable/<id>/edge_test
Method PUT
  • Parámetros de solicitud`

    {
        "current": "abc",
        "last": "def",
        "calc": "function calc(current,last)\n    current=current .. \"imok\"\n    return current\nend"
    }
  • Ejemplo de retorno`

    {
        "result": "abcimok"
    }

C.1.2.19 Obtener valor por nombre de dispositivo y nombre de variable

Elemento Contenido Nota
URL /device/<device_name>/variable/<variable_name> device_name: nombre del dispositivo
variable_name:nombre de variable
Method GET
Query type: Seleccionar tipo de datos, opcional
    before_calc Antes del cálculo de variable
force: Forzar actualización de datos
  • Ejemplo de retorno`

    {
        "value":123,
        "ts": 1725878881541
    }

C.1.2.20 Escribir valor de variable por nombre de dispositivo y nombre de variable

Elemento Contenido Nota
URL /device/<device_name>/variable/<variable_name> device_name: nombre del dispositivo
variable_name:nombre de variable
Method PUT
  • Ejemplo de retorno`

    {
        "value":123,
    }

C.1.3 DNC

C.1.3.1 Obtener lista de programas en la nube

Elemento Contenido Nota
URL /device/<id>/dnc/cloudend Si la clave de consulta es code, id es el número del dispositivo, de lo contrario id es el id del dispositivo
Query key: tipo de id
path: Ruta padre, vacío para /
Method GET
  • Ejemplo de retorno

    [
        {
            "name": "O1234",
            "kind": 1, //1 es carpeta, 2 es archivo
            "time": "2019-08-29 20:13:14"
            "size": 0
        }
    ]

C.1.3.2 Eliminar programa en la nube

Elemento Contenido Nota
URL /device/<id>/dnc/cloudend Si la clave de consulta es code, id es el número del dispositivo, de lo contrario id es el id del dispositivo
Query key: tipo de id<br>path: Ruta del programa
Method DELETE

C.1.3.3 Obtener lista de programas de IoTBoX

Elemento Contenido Nota
URL /device/<id>/dnc/boxend Si la clave de consulta es code, id es el número del dispositivo, de lo contrario id es el id del dispositivo
Query key: tipo de id
Method GET
  • Ejemplo de retorno`

    [
        {
            "name": "O1234",
            "kind": 1, //1 es carpeta, 2 es archivo
            "time": "2019-08-29 20:13:14"
            "size": 0
        }
    ]

C.1.3.4 Subir programa de IoTBoX a la nube

Elemento Contenido Nota
URL /device/<id>/dnc/boxend Si la clave de consulta es code, id es el número del dispositivo, de lo contrario id es el id del dispositivo
Query key: tipo de id
Method PUT
  • Ejemplo de solicitud`

    {
        "src": "O1234", //Nombre de archivo local
        "dst": "/test/path/O1234.nc"  //Nombre de archivo en la nube
    }

C.1.3.5 Descargar programa de la nube a IoTBoX

Elemento Contenido Nota
URL /device/<id>/dnc/boxend Si la clave de consulta es code, id es el número del dispositivo, de lo contrario id es el id del dispositivo
Query key: tipo de id
Method POST
  • Ejemplo de solicitud`

    {
        "dst": "O1234", //Nombre de archivo local
        "src": "/test/path/O1234.nc"  //Nombre de archivo en la nube
    }

C.1.3.6 Eliminar programa de IoTBoX

Elemento Contenido Nota
URL /device/<id>/dnc/boxend Si la clave de consulta es code, id es el número del dispositivo, de lo contrario id es el id del dispositivo
Query key: tipo de id<br>path: Ruta del programa
Method DELETE

C.1.3.7 Obtener lista de programas de la máquina herramienta

Elemento Contenido Nota
URL /device/<id>/dnc/toolend Si la clave de consulta es code, id es el número del dispositivo, de lo contrario id es el id del dispositivo
Query key: tipo de id
path: Ruta padre, vacío para /
Method GET
  • Ejemplo de retorno`

    [
        {
            "name": "O1234",
            "kind": 1, //1 es carpeta, 2 es archivo
            "time": "2019-08-29 20:13:14"
            "size": 0
        }
    ]

C.1.3.8 Subir programa de máquina herramienta a IoTBoX

Elemento Contenido Nota
URL /device/<id>/dnc/toolend Si la clave de consulta es code, id es el número del dispositivo, de lo contrario id es el id del dispositivo
Query key: tipo de id
Method PUT
  • Ejemplo de solicitud`

    {
        "src": "/test/path/O1234", //Nombre de archivo de máquina herramienta
        "dst": "O1234"  //Nombre de archivo de **IoTBoX**
    }

C.1.3.9 Descargar programa de IoTBoX a máquina herramienta

Elemento Contenido Nota
URL /device/<id>/dnc/toolend Si la clave de consulta es code, id es el número del dispositivo, de lo contrario id es el id del dispositivo
Query key: tipo de id
Method POST
  • Ejemplo de solicitud`

    {
        "src": "O1234", //Nombre de archivo de **IoTBoX**
        "dst": "/test/path/O1234.nc"  //Nombre de archivo de máquina herramienta
    }

C.1.3.10 Eliminar programa de máquina herramienta

Elemento Contenido Nota
URL /device/<id>/dnc/toolend Si la clave de consulta es code, id es el número del dispositivo, de lo contrario id es el id del dispositivo
Query key: tipo de id<br>path: Ruta del programa
Method DELETE

C.1.4 Copia de seguridad

C.1.4.1 Exportar copia de seguridad

Elemento Contenido Nota
URL /system/backup
Method GET
  • Devolver archivo de copia de seguridad

C.1.4.2 Restaurar copia de seguridad

Elemento Contenido Nota
URL /system/backup
Method POST
Body Contenido del archivo

C.1.5 Configuración

C.1.5.1 Obtener lista de configuración

Elemento Contenido Nota
URL /manager/config
Method GET
Query keywords: Buscar por nombre
type: Buscar por tipo
start: Cantidad de desplazamiento de retorno
limit: Cantidad de retorno por solicitud
  • Ejemplo de retorno`

    [
        {
            "id": 1,
            "key": "test_key",
            "meta": {},
            "name": "测试key",
            "public": false,
            "type": "system",
            "value": "test"
        }
    ]

C.1.5.2 Agregar configuración

Elemento Contenido Nota
URL /manager/config
Method POST
  • Ejemplo de solicitud`

    {
        "key": "test_key",
        "meta": {},
        "name": "测试key",
        "public": false,
        "type": "system",
        "value": "test"
    }
  • Ejemplo de retorno`

    {
        "id": 1,
        "key": "test_key",
        "meta": {},
        "name": "测试key",
        "public": false,
        "type": "system",
        "value": "test"
    }

C.1.5.3 Obtener configuración única

Elemento Contenido Nota
URL /manager/config/<id> Si la clave de consulta es 1, id es el nombre de configuración, de lo contrario id es el id de configuración
Query key: Si usar clave para obtener configuración
Method GET
  • Ejemplo de retorno`

    {
        "key": "test_key",
        "meta": {},
        "name": "测试key",
        "public": false,
        "type": "system",
        "value": "test"
    }

C.1.5.4 Obtener configuración única (Configuración pública sin autenticación)

Elemento Contenido Nota
URL /public/config/<id> Si la clave de consulta es 1, id es el nombre de configuración, de lo contrario id es el id de configuración
Query key: Si usar clave para obtener configuración
Method GET
  • Ejemplo de retorno`

    {
        "key": "test_key",
        "meta": {},
        "name": "测试key",
        "public": false,
        "type": "system",
        "value": "test"
    }

C.1.5.5 Modificar configuración

Elemento Contenido Nota
URL /manager/config/<id> Si la clave de consulta es 1, id es el nombre de configuración, de lo contrario id es el id de configuración
Query key: Si usar clave para obtener configuración
Method PUT
  • Ejemplo de solicitud`

    {
        "key": "test_key",
        "meta": {},
        "name": "测试key",
        "public": false,
        "type": "system",
        "value": "test"
    }
  • Ejemplo de retorno`

    {
        "id": 1,
        "key": "test_key",
        "meta": {},
        "name": "测试key",
        "public": false,
        "type": "system",
        "value": "test"
    }

C.1.5.6 Eliminar configuración

Elemento Contenido Nota
URL /manager/config/<id> Si la clave de consulta es 1, id es el nombre de configuración, de lo contrario id es el id de configuración
Query key: Si usar clave para obtener configuración
Method DELETE

C.1.6 Depuración

C.1.6.1 Comando de depuración

Elemento Contenido Nota
URL /system/cmd
Method PUT
  • Parámetros de solicitud`

    {
        "cmd": "ping", //可选命令ping,getip,telnet,route,reboot,restart
        "parameter": "192.168.1.3", //命令为ping参数可为ip或域名,命令为telnet时,参数为host:port
        "interface": "192.168.1.3" //命令为ping参数为网口,可为空
    }

C.1.6.2 Registro del sistema

Elemento Contenido Nota
URL /log/debug
Method WEBSOCKET

C.1.7 Configuración de IoTBoX

C.1.7.1 Obtener información de IoTBoX

Elemento Contenido Nota
URL /gateway
Method GET
  • Ejemplo de retorno`

    {
        "fingerprint": "8ea29081b4c78e7bfa539622eb0038c4",
        "hardware": "WD1ECS",
        "id": "8ea29081b4c78e7bfa539622eb0038c4",
        "ports": [
        {
                "comment": "",
                "device": "eth0",
                "enable": true,
                "name": "Ethernet",
                "type": 3
            }, {
                "comment": "",
                "device": "/dev/ttyS1",
                "enable": true,
                "name": "COM1",
                "type": 2
            }
        ],
        "software": "2.0.09090429"
    }

C.1.7.2 Configurar información de IoTBoX

Elemento Contenido Nota
URL /gateway
Method PUT
  • Ejemplo de solicitud`

    {
        "id": "8ea29081b4c78e7bfa539622eb0038c4"
    }

C.1.7.3 Obtener información de almacenamiento en la nube

Elemento Contenido Nota
URL /dnc_config
Method GET
  • Ejemplo de retorno`

    {
    
        "enable": true,
        "interval": 1,
        "type": "aws_s3",
        "secret_key": "SECRET_KEY", // 此配置根据type同
        "access_key": "ACCESS_KEY", // 此配置根据type同
        "api": "https:://minio.woody.vip/api" // 此配置根据type同
    }

C.1.7.4 Enviar información de almacenamiento en la nube

Elemento Contenido Nota
URL /dnc_config
Method PUT
  • Ejemplo de solicitud`

    {
    
        "enable": true,
        "interval": 1,
        "type": "aws_s3",
        "secret_key": "SECRET_KEY", // 此配置根据type同
        "access_key": "ACCESS_KEY", // 此配置根据type同
        "api": "https:://minio.woody.vip/api" // 此配置根据type同
    }

C.1.8 Licencia de IoTBoX

C.1.8.1 Obtener información de licencia

Elemento Contenido Nota
URL /lisence
Method GET
Query type: temp es licencia temporal, de lo contrario es licencia formal
  • Ejemplo de retorno`

    {
        "count": {
            "fanuc": 3
        },
        "exp": 4100688000,
        "fingerprint": "8ea29081b4c78e7bfa539622eb0038c4",
        "vpn": true
    }

C.1.8.2 Enviar información de licencia

Elemento Contenido Nota
URL /lisence
Method PUT
Query type: temp es licencia temporal, de lo contrario es licencia formal
  • Ejemplo de solicitud`

    {
        "lisence": "xxxxx"
    }

C.1.9 Información de red

C.1.9.1 Obtener información de interfaz

Elemento Contenido Nota
URL /network/interface
Method GET
  • Ejemplo de retorno`

    [
        {
            "dhcp": 0,
            "gateway": "192.168.9.1",
            "id": 1,
            "ip": [
                "192.168.9.107/24"
            ],
            "name": "eth0",
            "password": "",
            "ssid": "",
            "type": 1
        }
    ]

C.1.9.2 Modificar información de interfaz

Elemento Contenido Nota
URL /network/interface
Method PUT
  • Ejemplo de solicitud`

    [
        {
            "dhcp": 0,
            "gateway": "192.168.9.1",
            "id": 1,
            "ip": [
                "192.168.9.107/24"
            ],
            "name": "eth0",
            "password": "",
            "ssid": "",
            "type": 1
        }
    ]

C.1.9.3 Agregar interfaz

Elemento Contenido Nota
URL /network/interface
Method POST
  • Ejemplo de solicitud`

    {
        "dhcp": 0,
        "gateway": "192.168.9.1",
        "id": 1,
        "ip": [
            "192.168.9.107/24"
        ],
        "name": "eth0",
        "password": "",
        "ssid": "",
        "type": 1
    }

C.1.9.4 Eliminar interfaz

Elemento Contenido Nota
URL /network/interface/<id> id es el id de interfaz
Method DELETE

C.1.9.5 Obtener información DNS

Elemento Contenido Nota
URL /network/dns
Method GET
  • Ejemplo de retorno`

    [
        "114.114.114.114",
        "8.8.8.8"
    ]

C.1.9.6 Modificar información DNS

Elemento Contenido Nota
URL /network/dns
Method PUT
  • Ejemplo de solicitud`

    [
        "114.114.114.114",
        "8.8.8.8"
    ]

C.1.9.7 Obtener configuración 4G

Elemento Contenido Nota
URL /network/4g
Method GET
  • Ejemplo de retorno`

    {
        "apn": "test_apn",
        "password": "pass",
        "pincode": "1234",
        "username": "testuser"
    }

C.1.9.8 Modificar configuración 4G

Elemento Contenido Nota
URL /network/4g
Method PUT
  • Ejemplo de solicitud`

    {
        "apn": "test_apn",
        "password": "pass",
        "pincode": "1234",
        "username": "testuser"
    }

C.1.9.9 Obtener estado de habilitación del enrutador

Elemento Contenido Nota
URL /network/router
Method GET
  • Ejemplo de retorno`

    {
        "enable": true
    }

C.1.9.10 Modificar estado de habilitación

Elemento Contenido Nota
URL /network/router
Method PUT
  • Ejemplo de solicitud`

    {
        "enable": true
    }

C.1.9.11 Obtener información de ruta

Elemento Contenido Nota
URL /network/custom_route
Method GET
  • Ejemplo de retorno`

    [
        {
            "net": "192.168.3.1/24",
            "via": "192.168.9.1"
        }
    ]

C.1.9.12 Modificar información de ruta

Elemento Contenido Nota
URL /network/custom_route
Method PUT
  • Ejemplo de solicitud`

    [
        {
            "net": "192.168.3.1/24",
            "via": "192.168.9.1"
        }
    ]

C.1.9.13 Obtener información de red de prueba

Elemento Contenido Nota
URL /network/test_resource
Method GET
  • Ejemplo de retorno`

    {
        "host": "www.jd.com",
        "ip": "114.114.114.114"
    }

C.1.9.14 Modificar información de red de prueba

Elemento Contenido Nota
URL /network/test_resource
Method PUT
  • Ejemplo de solicitud`

    {
        "host": "www.jd.com",
        "ip": "114.114.114.114"
    }

C.1.10 Reenvío de puertos

C.1.10.1 Obtener lista de reenvío de puertos

Elemento Contenido Nota
URL /proxy
Method GET
  • Ejemplo de retorno`

    [
        {
            "id": 1,
            "id_in_server": 24,
            "ip": "192.168.9.33",
            "name": "办公电脑",
            "port": 3389,
            "proxy_port": 9081,
            "type": ""
        }
    ]

C.1.10.2 Agregar reenvío de puertos

Elemento Contenido Nota
URL /proxy
Method POST
  • Ejemplo de solicitud`

    {
        "name": "办公电脑",
        "ip": "192.168.9.33",
        "port": 3389
    }

C.1.10.3 Obtener reenvío de puertos

Elemento Contenido Nota
URL /proxy/<id> id es el id de reenvío de puertos
Method GET
  • Ejemplo de retorno`

    {
        "id": 1,
        "id_in_server": 24,
        "ip": "192.168.9.33",
        "name": "办公电脑",
        "port": 3389,
        "proxy_port": 9081,
        "type": ""
    }

C.1.10.4 Modificar reenvío de puertos

Elemento Contenido Nota
URL /proxy/<id> id es el id de reenvío de puertos
Method PUT
  • Ejemplo de solicitud`

    {
        "name": "办公电脑",
        "ip": "192.168.9.33",
        "port": 3389
    }

C.1.10.5 Eliminar reenvío de puertos

Elemento Contenido Nota
URL /proxy/<id> id es el id de reenvío de puertos
Method DELETE

C.1.11 Configuración de push

C.1.11.1 Obtener lista de push

Elemento Contenido Nota
URL /publish
Method GET
  • Ejemplo de retorno`

    [
        {
            "config": {
                "host": "111",
                "port": 222,
                "publisher_ssl_enable": false,
                "publisher_ssl_version": "default",
                "version": "v2"
            },
            "enable": true,
            "enable_control": true,
            "enable_publish": true,
            "id": 1,
            "interval": 1,
            "name": "aaaa",
            "type": "mqtt_common"
        }
    ]

C.1.11.2 Agregar push

Elemento Contenido Nota
URL /publish
Method POST
  • Ejemplo de solicitud`

    {
        "type": "mqtt_common",
        "enable_publish": true,
        "enable_control": true,
        "offline_cache": false,
        "config": {
            "publisher_ssl_enable": false,
            "publisher_ssl_version": "default",
            "version": "v2",
            "host": "192.168.9.33",
            "port": 1883
        },
        "interval": 1,
        "offlineCache": true,
        "name": "aaaa"
    }

C.1.11.3 Obtener push

Elemento Contenido Nota
URL /publish/<id> id es el id de push
Method GET
  • Ejemplo de retorno`

    {
        "config": {
            "host": "111",
            "port": 222,
            "publisher_ssl_enable": false,
            "publisher_ssl_version": "default",
            "version": "v2"
        },
        "enable": true,
        "enable_control": true,
        "enable_publish": true,
        "id": 1,
        "interval": 1,
        "name": "aaaa",
        "type": "mqtt_common"
    }

C.1.11.4 Modificar push

Elemento Contenido Nota
URL /publish/<id> id es el id de push
Method PUT
  • Ejemplo de solicitud`

    {
        "config": {
            "host": "111",
            "port": 222,
            "publisher_ssl_enable": false,
            "publisher_ssl_version": "default",
            "version": "v2"
        },
        "enable": true,
        "enable_control": true,
        "enable_publish": true,
        "id": 1,
        "interval": 1,
        "name": "aaaa",
        "type": "mqtt_common"
    }

C.1.11.5 Eliminar push

Elemento Contenido Nota
URL /publish/<id> id es el id de push
Method DELETE

C.1.12 Plataforma de push personalizada

C.1.12.1 Obtener lista de plataformas de push

Elemento Contenido Nota
URL /publish_type
Method GET
  • Ejemplo de retorno`

    [
        {
            "id": 1,
            "builtin": 0,
            "rank": 100,
            "schema": "xxxx", 
            "script": ",
            "name": "通用MQTT V2"
        }
    ]

C.1.12.2 Agregar plataforma de push

Elemento Contenido Nota
URL /publish_type
Method POST
  • Ejemplo de solicitud`

    {
        "builtin": 0,
        "rank": 100,
        "schema": "xxxx", 
        "script": ",
        "name": "通用MQTT V2"
    }

C.1.12.3 Obtener plataforma de push

Elemento Contenido Nota
URL /publish_type/<id> id es el id de plataforma de push
Method GET
  • Ejemplo de retorno`

    {
        "id": 1,
        "builtin": 0,
        "rank": 100,
        "schema": "xxxx", 
        "script": ",
        "name": "通用MQTT V2"
    }

C.1.12.4 Modificar plataforma de push

Elemento Contenido Nota
URL /publish_type/<id> id es el id de plataforma de push
Method PUT
  • Ejemplo de solicitud`

    {
        "id": 1,
        "builtin": 0,
        "rank": 100,
        "schema": "xxxx", 
        "script": ",
        "name": "通用MQTT V2"
    }

C.1.12.5 Eliminar plataforma de push

Elemento Contenido Nota
URL /publish_type/<id> id es el id de plataforma de push
Method DELETE

C.1.12.6 Probar plataforma de push

Elemento Contenido Nota
URL /publish_type/<id>/test id es el id de push
Method PUT

C.1.13 Actualización del sistema

C.1.13.1 Verificar actualización

Elemento Contenido Nota
URL /system/update
Method GET
  • Ejemplo de retorno`

    {
        "id": 1,
        "builtin": 0,
        "rank": 100,
        "schema": "xxxx", 
        "script": ",
        "name": "通用MQTT V2"
    }

C.1.13.2 Confirmar actualización

Elemento Contenido Nota
URL /system/update
Method PUT
  • Ejemplo de solicitud`

    {
        "id": 1,
        "builtin": 0,
        "rank": 100,
        "schema": "xxxx", 
        "script": ",
        "name": "通用MQTT V2"
    }

C.1.13.3 Subir firmware de actualización

Elemento Contenido Nota
URL /system/update
Method POST

C.1.14 Configuración de VPN

C.1.14.1 Obtener información de VPN

Elemento Contenido Nota
URL /vpn
Method GET
  • Ejemplo de retorno`

    {
        "enable": true,
        "password": "woody",
        "type": 1,
        "username": "8ea29081b4c78e7bfa539622eb0038c4"
    }

C.1.14.2 Modificar información de VPN

Elemento Contenido Nota
URL /vpn
Method PUT
  • Ejemplo de solicitud`

    {
        "enable": true,
        "password": "woody",
        "type": 1,
        "username": "8ea29081b4c78e7bfa539622eb0038c4"
    }