W76C 开发者API文档

概述

本文档描述了 W76C 智能门禁控制系统的云端 API 接口,开发者可通过这些接口实现设备注册、远程开门、设备控制等功能。

API基础地址: https://wdev.wmj.com.cn


错误码说明

错误码说明
0成功
1001网络超时
1002设备不在线
1003参数错误
1004设备未注册
1005设备已注册
1006认证失败

点击下面的序号展开
1.注册设备
  • 将设备和appid、appsecret绑定

请求URL
  • https://wdev.wmj.com.cn/deviceApi/register

请求方式
  • POST

请求格式
  • json

参数
{
    "app_id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "app_secret": "kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk",
    "device_sn": "W76C1234567"
}
参数名必选类型说明
app_idstring用户app_id
app_secretstring用户app_secret
device_snstring设备序列号
返回示例
{
    "code": 0,
    "msg": "注册成功"
}
{
    "code": 1005,
    "msg": "设备已注册"
}
返回参数说明
参数名类型说明
codeint错误码 0成功其他异常
msgstring描述
备注
  • 更多返回错误代码请看首页的错误代码描述

 

2.开门
  • 触发继电器开门

请求URL
  • https://wdev.wmj.com.cn/deviceApi/send

请求方式
  • POST

请求格式
  • json

参数
{
    "app_id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "app_secret": "kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk",
    "device_sn": "W76C0998927",
    "type": 1,
    "data": {
        "cmd_type": "open",
        "info": {
            "delay": 1200
        }
    }
}
参数名必选类型说明
app_idstring用户app_id
app_secretstring用户app_secret
device_snstring设备序列号
data.cmd_typestring命令类型:open
data.info.snstring一旦传入sn,设备将校验传入sn是否与设备本身sn一致,校验成功才能开门
data.info.delayint延迟上锁时间(毫秒)
返回示例
//成功
{
    "code": 0,
    "data": {
        "device_sn": "W76C0998927",
        "msg_id": 172,
        "type": 1,
        "cmd": "",
        "app_id": "",
        "cmd_type": "open",
        "info": {
            "code": 0,
            "msg": "OK"
        }
    }
}
//失败
{
    "code": 1002,
    "msg": "设备不在线"
}
返回参数说明
参数名类型说明
codeint调用接口错误码 0成功其他异常
data.info.codeint业务错误码,0成功其他异常
data.info.msgstring业务错误信息

 

3.重启设备
  • 远程重启设备

请求URL
  • https://wdev.wmj.com.cn/deviceApi/send

请求方式
  • POST

请求格式
  • json

参数
{
    "app_id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "app_secret": "kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk",
    "device_sn": "W76C0998927",
    "data": {
        "cmd_type": "restart",
        "info": {}
    }
}
参数名必选类型说明
app_idstring用户app_id
app_secretstring用户app_secret
device_snstring设备序列号
data.cmd_typestring命令类型:restart
data.infoobject暂未使用
返回示例
//成功
{
    "code": 0,
    "data": {
        "cmd_type": "restart",
        "info": {
            "code": 0,
            "msg": "OK"
        }
    }
}
//失败
{
    "code": 1001,
    "msg": "网络超时"
}
返回参数说明
参数名类型说明
codeint调用接口错误码 0成功其他异常
data.info.codeint业务错误码,0成功其他异常
data.info.msgstring业务错误信息

 

4.获取设备信息
  • 获取设备详细信息

请求URL
  • https://wdev.wmj.com.cn/deviceApi/send

请求方式
  • POST

请求格式
  • json

参数
{
    "app_id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "app_secret": "kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk",
    "device_sn": "W76C0998927",
    "data": {
        "cmd_type": "getdevinfo",
        "info": {}
    }
}
参数名必选类型说明
app_idstring用户app_id
app_secretstring用户app_secret
device_snstring设备序列号
data.cmd_typestring命令类型:getdevinfo
data.infoobject暂未使用
返回示例
//成功
{
    "code": 0,
    "data": {
        "device_sn": "W76C0998927",
        "msg_id": 175,
        "type": 1,
        "cmd_type": "getdevinfo",
        "info": {
            "sn": "W76C0998927",
            "model": "W76C",
            "hw": "1.0.0",
            "sw": "0.0.4",
            "rssi": -65,
            "doorstate": 0,
            "nonc": 0,
            "relay": 0,
            "code": 0,
            "msg": "OK"
        }
    }
}
//失败
{
    "code": 1002,
    "msg": "设备不在线"
}
返回参数说明
参数名类型说明
codeint调用接口错误码 0成功其他异常
data.info.snstring设备序列号
data.info.modelstring设备型号
data.info.hwstring硬件版本
data.info.swstring软件版本
data.info.rssiint信号强度(dBm)
data.info.doorstateint门状态:0=关闭,1=打开
data.info.noncint常开常闭模式:0=常闭,1=常开
data.info.relayint继电器状态:0=断开,1=闭合
data.info.codeint业务错误码,0成功其他异常
data.info.msgstring业务错误信息

 

5.获取门状态
  • 获取当前门磁状态

请求URL
  • https://wdev.wmj.com.cn/deviceApi/send

请求方式
  • POST

请求格式
  • json

参数
{
    "app_id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "app_secret": "kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk",
    "device_sn": "W76C0998927",
    "data": {
        "cmd_type": "getdoorstate",
        "info": {}
    }
}
参数名必选类型说明
app_idstring用户app_id
app_secretstring用户app_secret
device_snstring设备序列号
data.cmd_typestring命令类型:getdoorstate
data.infoobject暂未使用
返回示例
//成功
{
    "code": 0,
    "data": {
        "device_sn": "W76C0998927",
        "msg_id": 176,
        "type": 1,
        "cmd_type": "getdoorstate",
        "info": {
            "doorstate": 0,
            "code": 0,
            "msg": "OK"
        }
    }
}
//失败
{
    "code": 1002,
    "msg": "设备不在线"
}
返回参数说明
参数名类型说明
codeint调用接口错误码 0成功其他异常
data.info.doorstateint门状态:0=关闭,1=打开
data.info.codeint业务错误码,0成功其他异常
data.info.msgstring业务错误信息

 

6.设置常开常闭模式
  • 控制继电器常开或常闭模式

请求URL
  • https://wdev.wmj.com.cn/deviceApi/send

请求方式
  • POST

请求格式
  • json

参数
{
    "app_id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "app_secret": "kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk",
    "device_sn": "W76C0998927",
    "data": {
        "cmd_type": "set_nonc",
        "info": {
            "type": 1
        }
    }
}
参数名必选类型说明
app_idstring用户app_id
app_secretstring用户app_secret
device_snstring设备序列号
data.cmd_typestring命令类型:set_nonc
data.info.typeint模式设置:0=常闭模式,1=常开模式
返回示例
//成功
{
    "code": 0,
    "data": {
        "device_sn": "W76C0998927",
        "msg_id": 181,
        "type": 1,
        "cmd_type": "set_nonc",
        "info": {
            "nonc": 1,
            "code": 0,
            "msg": "OK"
        }
    }
}
//失败
{
    "code": 1001,
    "msg": "网络超时"
}
返回参数说明
参数名类型说明
codeint调用接口错误码 0成功其他异常
data.info.noncint当前模式:0=常闭,1=常开
data.info.codeint业务错误码,0成功其他异常
data.info.msgstring业务错误信息

 

7.OTA固件升级
  • 远程升级设备固件

请求URL
  • https://wdev.wmj.com.cn/deviceApi/send

请求方式
  • POST

请求格式
  • json

参数
{
    "app_id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "app_secret": "kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk",
    "device_sn": "W76C0998927",
    "data": {
        "cmd_type": "set_ota",
        "info": {
            "url": "http://ota.example.com/W76C_v0.0.5.bin"
        }
    }
}
参数名必选类型说明
app_idstring用户app_id
app_secretstring用户app_secret
device_snstring设备序列号
data.cmd_typestring命令类型:set_ota
data.info.urlstring固件下载地址
返回示例
//成功
{
    "code": 0,
    "data": {
        "device_sn": "W76C0998927",
        "msg_id": 182,
        "type": 1,
        "cmd_type": "set_ota",
        "info": {
            "code": 0,
            "msg": "OK"
        }
    }
}
//失败
{
    "code": 1002,
    "msg": "设备不在线"
}
返回参数说明
参数名类型说明
codeint调用接口错误码 0成功其他异常
data.info.codeint业务错误码,0成功其他异常
data.info.msgstring业务错误信息
备注
  • 固件URL必须是可公网访问的HTTP/HTTPS地址

  • 升级过程中设备会自动重启

  • 建议在设备空闲时执行升级操作

 

8.回调通知

通知数据将发送到用户注册的回调地址上

a. 门状态变化通知

当门磁状态发生变化时,设备会主动上报:

{
    "cmd_type": "door_state_notify",
    "device_sn": "W76Cxxxxxxxx",
    "info": {
        "doorstate": 0
    }
}
参数类型说明
cmd_typestringdoor_state_notify:门状态变化通知
device_snstring设备序列号
info.doorstateint门状态
0:关门状态
1:开门状态

b. 串口数据通知

当设备收到串口数据时,会上报到回调地址:

{
    "cmd_type": "uart_data",
    "device_sn": "W76Cxxxxxxxx",
    "info": {
        "data": "AABBCCDDEEFF"
    }
}
参数类型说明
cmd_typestringuart_data:串口数据通知
device_snstring设备序列号
info.datastring串口数据(HEX字符串格式)

c. 设备上线通知

当设备连接到服务器时,会发送上线通知:

{
    "cmd_type": "online",
    "device_sn": "W76Cxxxxxxxx",
    "info": {
        "model": "W76C",
        "sw": "0.0.4",
        "rssi": -65
    }
}
参数类型说明
cmd_typestringonline:设备上线通知
device_snstring设备序列号
info.modelstring设备型号
info.swstring软件版本
info.rssiint信号强度(dBm)

 

9.查询在线状态
  • 查询设备是否联网在线

请求URL
  • https://wdev.wmj.com.cn/deviceApi/getOnLine

请求方式
  • POST

请求格式
  • json

参数
{
    "app_id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "app_secret": "kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk",
    "device_sn": "W76C0998927"
}
参数名必选类型说明
app_idstring用户app_id
app_secretstring用户app_secret
device_snstring设备序列号
返回示例
//成功
{
    "code": 0,
    "data": {
        "on_line": 1
    },
    "msg": "查询成功"
}
返回参数说明
参数名类型说明
codeint错误码 0成功其他异常
data.on_lineint在线状态:0=离线,1=在线
msgstring描述信息

 

10.解绑设备
  • 解绑设备,将设备和appid解除绑定关系

请求URL
  • https://wdev.wmj.com.cn/deviceApi/logout

请求方式
  • POST

请求格式
  • json

参数
{
    "app_id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "app_secret": "kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk",
    "device_sn": "W76C1234567"
}
参数名必选类型说明
app_idstring用户app_id
app_secretstring用户app_secret
device_snstring设备序列号
返回示例
//成功
{
    "code": 0,
    "msg": "解绑成功"
}
//失败
{
    "code": 1004,
    "msg": "设备未注册"
}
返回参数说明
参数名类型说明
codeint错误码 0成功其他异常
msgstring描述信息

附录

设备序列号规则

W76C 设备序列号格式为:W76C + 7位数字

示例:W76C0998927

支持的命令类型汇总

cmd_type说明
open开门/触发继电器
restart重启设备
getdevinfo获取设备信息
getdoorstate获取门状态
set_nonc设置常开/常闭模式
set_otaOTA固件升级

回调通知类型汇总

cmd_type说明
door_state_notify门状态变化通知
uart_data串口数据通知
online设备上线通知

更新记录

版本日期说明
1.0.02025-12-16初始版本
作者:李汪  创建时间:2025-12-15 14:26
最后编辑:极客师傅  更新时间:2025-12-16 12:01
上一篇:
下一篇: