W33(遥控摄像头)API
点击下面的序号展开
--------------接入方式一:常规接入---------------
1.注册设备
将设备和appid、appsecret绑定
请求URL
https://wdev.wmj.com.cn/deviceApi/register
请求方式
POST
请求格式
json
参数
{
"app_id": "",
"app_secret": "",
"device_sn": ""
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| app_id | 是 | string | 用户app_id |
| app_secret | 是 | string | 用户app_secret |
| device_sn | 是 | string | 设备序列号 |
返回示例
{
"code": 0,
"msg": "注册成功"
}
{
"code": 1005,
"msg": "设备已注册"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 错误码 0成功其他异常 |
| msg | int | 描述 |
备注
更多返回错误代码请看首页的错误代码描述
2.用户获取拉流token
请求URL
https://wdev.wmj.com.cn/deviceApi/kgCameraApi/getUserToken
请求方式
POST
请求格式
json
参数
{
"app_id":"",
"app_secret":"",
"device_sn": "设备序列号",
"data": {
"user_id":1,
"channel_name":"设备序列号"
}
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| app_id | 是 | string | 用户app_id |
| app_secret | 是 | string | 用户app_secret |
| device_sn | 是 | string | 设备序列号 |
| data.user_id | 是 | int | 用户id |
| data.channel_name | 是 | string | 直播频道名,直播使用的是设备SN作为频道名 |
返回示例
//成功
{
"code": 0,
"data": {
"channel_name": "W330BD0A959",
"token":"007eJxSYKgtvq2x4Y/6hrikpNIzDHPvlP57X+n0Pjuw5oNcpH3yWkUFhjQjM4tEo1TT1LQ0cxPT5JSkRBPT1EQDg9RkCwOzNLPkM1+uZugwMjCsktrAyMgAgRFMDAzcDOHGxgZOLgaOlqaWzAxmhuaAAAAA//8WOCJk",
"uid": 617
},
"msg": "获取成功"
}
//失败
{
"code": 1001,
"msg": "网络超时"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 调用接口错误码 0成功其他异常 |
| data.info.code | int | 业务错误码,0成功其他异常 |
| data.info.msg | string | 业务错误信息 |
3.获取设备token
请求URL
https://wdev.wmj.com.cn/deviceApi/kgCameraApi/getDevToken
请求方式
POST
请求格式
json
参数
{
"app_id":"",
"app_secret":"",
"device_sn": "设备序列号",
"data": {
"channel_name":"频道名称"
}
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| app_id | 是 | string | 用户app_id |
| app_secret | 是 | string | 用户app_secret |
| device_sn | 是 | string | 设备序列号 |
| data.channel_name | 是 | string | 直播频道名,直播使用的是设备SN作为频道名,回放使用:replay_设备序列号_用户id |
返回示例
//成功
{
"code": 0,
"data": {
"channel_name": "W330BD0A959",
"token":"007eJxSYKgtvq2x4Y/6hrikpNIzDHPvlP57X+n0Pjuw5oNcpH3yWkUFhjQjM4tEo1TT1LQ0cxPT5JSkRBPT1EQDg9RkCwOzNLPkM1+uZugwMjCsktrAyMgAgRFMDAzcDOHGxgZOLgaOlqaWzAxmhuaAAAAA//8WOCJk",
"uid": 617 //设备uid
},
"msg": "获取成功"
}
//失败
{
"code": 1001,
"msg": "网络超时"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 调用接口错误码 0成功其他异常 |
| data.info.code | int | 业务错误码,0成功其他异常 |
| data.info.msg | string | 业务错误信息 |
4.设备推流
请求URL
https://wdev.wmj.com.cn/deviceApi/send
请求方式
POST
请求格式
json
参数
{
"app_id":"",
"app_secret":"",
"device_sn": "设备序列号",
"data": {
"cmd_type":"rtsp_start",
"info":{
"token": token,
"channel": 频道名称,
"user_id": 设备uid,
"out_time": 600,
}
}
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| app_id | 是 | string | 用户app_id |
| app_secret | 是 | string | 用户app_secret |
| device_sn | 是 | string | 设备序列号 |
| data.info.token | 是 | 设备的直播token | |
| data.info.channel | 是 | string | 直播频道名,直播使用的是设备SN作为频道名 |
| data.info.user_id | 是 | string | 设备uid |
返回示例
//成功
{
"code": 0,
"data": {
"channel": "W330BD0A959",
"uid": 617
},
"msg": "获取成功"
}
//失败
{
"code": 1001,
"msg": "网络超时"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 调用接口错误码 0成功其他异常 |
| data.info.code | int | 业务错误码,0成功其他异常 |
| data.info.msg | string | 业务错误信息 |
5.重启设备
重启设备
请求URL
https://wdev.wmj.com.cn/deviceApi/send
请求方式
POST
请求格式
json
参数
{
"app_id":"",
"app_secret":"",
"device_sn": "W7612345678",
"data": {
"cmd_type":"restart",
"info":{}
}
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| app_id | 是 | string | 用户app_id |
| app_secret | 是 | string | 用户app_secret |
| device_sn | 是 | string | 设备序列号 |
| data.cmd_type | 是 | string | 开锁标识cmd_type |
| data.info | 是 | object | 暂未使用 |
返回示例
//成功
{
"code": 0,
"data": {
"cmd_type": "restart",
"info": {
"code": 0,
"msg": ""
}
}
}
//失败
{
"code": 1001,
"msg": "网络超时"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 调用接口错误码 0成功其他异常 |
| data.info.code | int | 业务错误码,0成功其他异常 |
| data.info.msg | string | 业务错误信息 |
6.设置夜视
设置夜视
请求URL
https://wdev.wmj.com.cn/deviceApi/send
请求方式
POST
请求格式
json
参数
{
"app_id":"",
"app_secret":"",
"device_sn": "设备序列号",
"data": {
"cmd_type": "set_night",
"info": {
"is_night":1,
}
}
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| app_id | 是 | string | 用户app_id |
| app_secret | 是 | string | 用户app_secret |
| device_sn | 是 | string | 设备序列号 |
| data.cmd_type | 是 | string | 设置夜视命令set_night |
| data.info.is_night | 是 | int | 1-夜间模式 0-白昼模式 |
返回示例
//成功
{
"code": 0,
"data": {
"cmd_type": "set_night",
"info": {
"code": 0,
"msg": ""
}
}
}
//失败
{
"code": 1001,
"msg": "网络超时"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 调用接口错误码 0成功其他异常 |
| data.info.code | int | 业务错误码,0成功其他异常 |
| data.info.msg | string | 业务错误信息 |
7.设置视频旋转
设置视频旋转
请求URL
https://wdev.wmj.com.cn/deviceApi/send
请求方式
POST
请求格式
json
参数
{
"app_id":"",
"app_secret":"",
"device_sn": "设备序列号",
"data": {
"cmd_type": "set_rot",
"info": {
"rot":1,
}
}
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| app_id | 是 | string | 用户app_id |
| app_secret | 是 | string | 用户app_secret |
| device_sn | 是 | string | 设备序列号 |
| data.cmd_type | 是 | string | 设置画面旋转set_rot |
| data.info.rot | 是 | int | 设置视频旋转 0-180 |
返回示例
//成功
{
"code": 0,
"data": {
"cmd_type": "set_rot",
"info": {
"code": 0,
"msg": ""
}
}
}
//失败
{
"code": 1001,
"msg": "网络超时"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 调用接口错误码 0成功其他异常 |
| data.info.code | int | 业务错误码,0成功其他异常 |
| data.info.msg | string | 业务错误信息 |
8.遥控器学习
遥控器学习
请求URL
https://wdev.wmj.com.cn/deviceApi/send
请求方式
POST
请求格式
json
参数
{
"app_id":"",
"app_secret":"",
"device_sn": "设备序列号",
"data": {
"cmd_type": "rmt_learn",
"info": {}
}
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| app_id | 是 | string | 用户app_id |
| app_secret | 是 | string | 用户app_secret |
| device_sn | 是 | string | 设备序列号 |
| data.cmd_type | 是 | string | 遥控器学习rmt_learn |
返回示例
//成功
{
"code": 0,
"data": {
"cmd_type": "open",
"info": {
"rmt_code":""
"code": 0,
"msg": ""
}
}
}
//失败
{
"code": 1001,
"msg": "网络超时"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 调用接口错误码 0成功其他异常 |
| data.info.code | int | 业务错误码,0成功其他异常 |
| data.info.msg | string | 业务错误信息 |
9.控制RMT
控制rmt
请求URL
https://wdev.wmj.com.cn/deviceApi/send
请求方式
POST
请求格式
json
参数
{
"app_id":"",
"app_secret":"",
"device_sn": "设备序列号",
"data": {
"cmd_type": "rmt",
"info": {
"rmt_code":""
}
}
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| app_id | 是 | string | 用户app_id |
| app_secret | 是 | string | 用户app_secret |
| device_sn | 是 | string | 设备序列号 |
| data.cmd_type | 是 | string | 控制指令rmt |
| data.info.rmt_code | 是 | string | 遥控编码 |
返回示例
//成功
{
"code": 0,
"data": {
"cmd_type": "rmt",
"info": {
"code": 0,
"msg": ""
}
}
}
//失败
{
"code": 1001,
"msg": "网络超时"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 调用接口错误码 0成功其他异常 |
| data.info.code | int | 业务错误码,0成功其他异常 |
| data.info.msg | string | 业务错误信息 |
10.获取回放可用时长(按年月获取有录像的日期)
获取回放可用时长(按年月获取有录像的日期)
请求URL
https://wdev.wmj.com.cn/deviceApi/send
请求方式
POST
请求格式
json
参数
{
"app_id":"",
"app_secret":"",
"device_sn": "设备序列号",
"data": {
"cmd_type": "get_replay_date",
"info": {
"month":"2025-10"
}
}
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| app_id | 是 | string | 用户app_id |
| app_secret | 是 | string | 用户app_secret |
| device_sn | 是 | string | 设备序列号 |
| data.cmd_type | 是 | string | 获取指令get_replay_date |
| data.info.month | 是 | string | 年月 |
返回示例
//成功
{
"code": 0,
"data": {
"cmd_type": "get_replay_date",
"info": {
"dates": ["2024-09-01","2024-09-02"]
"code": 0,
"msg": ""
}
}
}
//失败
{
"code": 1001,
"msg": "网络超时"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 调用接口错误码 0成功其他异常 |
| data.info.code | int | 业务错误码,0成功其他异常 |
| data.info.msg | string | 业务错误信息 |
11.获取回放可用时长
获取回放可用时长
请求URL
https://wdev.wmj.com.cn/deviceApi/send
请求方式
POST
请求格式
json
参数
{
"app_id":"",
"app_secret":"",
"device_sn": "设备序列号",
"data": {
"cmd_type": "get_replay_time",
"info": {
"date":"2025-10-10"
}
}
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| app_id | 是 | string | 用户app_id |
| app_secret | 是 | string | 用户app_secret |
| device_sn | 是 | string | 设备序列号 |
| data.cmd_type | 是 | string | 获取指令get_replay_time |
| data.info.date | 是 | string | 时间日期 |
返回示例
//成功
{
"code": 0,
"data": {
"cmd_type": "get_replay_time",
"info": {
"recording_intervals": [
{"start": "2025-10-10 11:08:43", "end": "2025-10-10 12:08:43"},
{"start": "2025-10-10 12:10:43", "end": "2025-10-10 15:08:43"}
],
"code": 0,
"msg": ""
}
}
}
//失败
{
"code": 1001,
"msg": "网络超时"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 调用接口错误码 0成功其他异常 |
| data.info.code | int | 业务错误码,0成功其他异常 |
| data.info.msg | string | 业务错误信息 |
12.格式化SD卡
获取回放可用时长
请求URL
https://wdev.wmj.com.cn/deviceApi/send
请求方式
POST
请求格式
json
参数
{
"app_id":"",
"app_secret":"",
"device_sn": "设备序列号",
"data": {
"cmd_type": "set_sd_format",
"info": {}
}
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| app_id | 是 | string | 用户app_id |
| app_secret | 是 | string | 用户app_secret |
| device_sn | 是 | string | 设备序列号 |
| data.cmd_type | 是 | string | 格式化指令set_sd_format |
返回示例
//成功
{
"code": 0,
"data": {
"cmd_type": "set_sd_format",
"info": {
"code": 0,
"msg": ""
}
}
}
//失败
{
"code": 1001,
"msg": "网络超时"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 调用接口错误码 0成功其他异常 |
| data.info.code | int | 业务错误码,0成功其他异常 |
| data.info.msg | string | 业务错误信息 |
13.设备回放推流
请求URL
https://wdev.wmj.com.cn/deviceApi/send
请求方式
POST
请求格式
json
参数
{
"app_id":"",
"app_secret":"",
"device_sn": "设备序列号",
"data": {
"cmd_type":"rtsp_replay",
"info":{
"token": "回放token",
"channel": replay_设备序列号_user_id,
"timestamp":1760011012,
"user_id":设备uid,
"out_time": 600,
}
}
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| app_id | 是 | string | 用户app_id |
| app_secret | 是 | string | 用户app_secret |
| device_sn | 是 | string | 设备序列号 |
| data.info.token | 是 | string | 获取设备的token |
| data.info.channel | 是 | string | replay_设备序列号_user_id,user_id是用户的uid |
| data.info.timestamp | 是 | string | 回放的时间点 |
| data.info.user_id | 是 | string | 设备uid |
返回示例
//成功
{
"code": 0,
"data": {
"cmd_type": "rtsp_replay",
"info": {
"code": 0,
"msg": ""
}
},
"msg": "获取成功"
}
//失败
{
"code": 1001,
"msg": "网络超时"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 调用接口错误码 0成功其他异常 |
| data.info.code | int | 业务错误码,0成功其他异常 |
| data.info.msg | string | 业务错误信息 |
14.获取renew_token
请求URL
https://wdev.wmj.com.cn/deviceApi/send
请求方式
POST
请求格式
json
参数
{
"app_id":"",
"app_secret":"",
"device_sn": "设备序列号",
"data": {
"cmd_type":"renew_token",
"info":{
"token": "token",
"channel": "频道名称", //直播和回放的频道名称
"user_id":设备uid,
}
}
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| app_id | 是 | string | 用户app_id |
| app_secret | 是 | string | 用户app_secret |
| device_sn | 是 | string | 设备序列号 |
| data.info.token | 是 | string | 获取设备的token |
| data.info.channel | 是 | string | 直播和回放的频道名称 |
| data.info.user_id | 是 | string | 设备uid |
返回示例
//成功
{
"code": 0,
"data": {
"cmd_type": "renew_token",
"info": {
"code": 0,
"msg": ""
}
},
"msg": "获取成功"
}
//失败
{
"code": 1001,
"msg": "网络超时"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 调用接口错误码 0成功其他异常 |
| data.info.code | int | 业务错误码,0成功其他异常 |
| data.info.msg | string | 业务错误信息 |
15.PTZ上下左右控制
请求URL
https://wdev.wmj.com.cn/deviceApi/send
请求方式
POST
请求格式
json
参数
{
"app_id":"",
"app_secret":"",
"device_sn": "设备序列号",
"data": {
"cmd_type":"set_ptz",
"info":{
"axis": 1,
"direction": 3,
"step": 1
}
}
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| app_id | 是 | string | 用户app_id |
| app_secret | 是 | string | 用户app_secret |
| device_sn | 是 | string | 设备序列号 |
| data.info.axis | 是 | int | 轴:1:x轴 2:y轴 3:焦距 |
| data.info.direction | 是 | int | 方向:1:x轴向左 2:x轴向右 3:y轴向上 4:y轴向下 5:焦距增长 6:焦距缩短 |
| data.info.step | 是 | int | 步数,默认或缺省为一步 |
返回示例
//成功
{
"code": 0,
"data": {
"cmd_type": "set_ptz",
"info": {
"code": 0,
"msg": ""
}
},
"msg": "获取成功"
}
//失败
{
"code": 1001,
"msg": "网络超时"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 调用接口错误码 0成功其他异常 |
| data.info.code | int | 业务错误码,0成功其他异常 |
| data.info.msg | string | 业务错误信息 |
--------------回调通知----------------
通知数据将发送到用户注册的回调地址上
16.设备上线回调
17.设备离线回调
18.获取License
19. 获取renew_token
--------------接入方式二:WebView快速接入----------------
用户可以减少对接服务接口,快速接入摄像头
1.授权绑定
说明:添加设备之前先授权绑定并获取授权码。授权码请保存好,访问摄像拉流时需要带入,否则不能正常访问
请求URL
https://cam-web-api.kgiot.cc/api/device.Device/AuthorizeBind
请求方式
POST
请求格式
json
参数
{
"device_sn": "设备序列号",
}
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| device_sn | 是 | string | 设备序列号 |
返回示例
//成功
{
"data": {
"device_sn": "设备序列号",
"authorize_code": "b2d27083680c799ddecae77ee92fefba" //授权码
},
"code": 0,
"msg": "操作成功"
}
//失败
{
"code": 1001,
"msg": "网络超时"
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 调用接口错误码 0成功其他异常 |
| data.msg | string | 业务错误信息 |
2.直播
说明:本链接可以嵌入到微信小程序的webview页面,获取根据业务需求自行嵌入
访问URL
https://cam-web-api.kgiot.cc/CameraWeb/#/?device_sn={device_sn}&authorize_code={authorize_code}&r=0.5977496971306898
请求方式
GET
参数
"device_sn" = "设备序列号",
"authorize_code" = "授权码"
"r" = "任意随机数"
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| device_sn | 是 | string | 设备序列号 |
| authorize_code | 是 | string | 授权码 |
| r | 否 | string | 防止缓存可以带一个随机数 |
3.回放
说明:本链接可以嵌入到微信小程序的webview页面,获取根据业务需求自行嵌入
访问URL
https://cam-web-api.kgiot.cc/CameraWeb/#/playback?device_sn={device_sn}&authorize_code={authorize_code}&r=0.5977496971306898
请求方式
GET
参数
"device_sn" = "设备序列号",
"authorize_code" = "授权码"
"r" = "任意随机数"
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| device_sn | 是 | string | 设备序列号 |
| authorize_code | 是 | string | 授权码 |
| r | 否 | string | 防止缓存可以带一个随机数 |
最后编辑:极客师傅 更新时间:2025-11-16 00:56