EasyEdge 智能边缘控制台-多节点版 IECC API
概述
欢迎使用EasyEdge 智能边缘控制台-多节点版 IEC。 您可以使用本文档介绍的API对多节点版 IEC服务进行操作。
接口概览
多节点版 IEC API 提供下列接口类型:
| 接口类型 | 描述 |
|---|---|
| AI服务接口 | 接口包括查询、启动、停止等 |
| 摄像头设备接口 | 接口包括创建、查询、更新、删除、启动、停止等 |
| 物联网设备接口 | 接口包括创建、查询、更新、删除等 |
| 其他接口 | 包括生成鉴权用的Access Token等 |
通用说明
API调用遵循HTTP协议。 数据交换格式为JSON,所有request/response body内容均采用UTF-8编码。
API认证机制
所有API的安全认证一律采用Access Key与请求签名机制。 Access Key由Access Key ID和Secret Access Key组成,均为字符串。 对于每个HTTP请求,需先调用生成Access Token的接口生成认证字符串。提交认证字符串放在query里。服务端根据生成算法验证认证字符串的正确性。 当服务端接收到用户的请求后,系统将使用相同的SK和同样的认证机制生成认证字符串,并与用户请求中包含的认证字符串进行比对。如果认证字符串相同,系统认为用户拥有指定的操作权限,并执行相关操作;如果认证字符串不同,系统将忽略该操作并返回错误码。
通信协议
支持HTTP调用方式。
请求结构说明
数据交换格式为JSON,所有request/response body内容均采用UTF-8编码。 请求参数包括如下4种:
| 参数类型 | 说明 |
|---|---|
| URI | 通常用于指明操作类型,如:POST /iec/iapi/v{version}/{type}/{op} |
| Query参数 | URL中携带的请求参数,通常用来传入认证字符串 |
| HEADER | 通过HTTP头域传入 |
| RequestBody | 通过JSON格式组织的请求数据体 |
响应结构说明
响应值分为两种形式: | 响应内容 | 说明 | |---|---| | HTTP STATUS CODE | 如200,400,403,404等 | | ResponseBody | JSON格式组织的响应数据体 |
API版本号
| 参数 | 类型 | 参数位置 | 描述 | 是否必须 |
|---|---|---|---|---|
| version | String | URI参数 | API版本号,当前值为1 | 必须 |
日期与时间规范
日期与时间的表示有多种方式。为统一起见,除非是约定俗成或者有相应规范的,凡需要日期时间表示的地方一律采用UTC时间,遵循ISO 8601,并做以下约束:
- 表示日期一律采用
YYYY-MM-DD方式,例如2014-06-01表示2014年6月1日。 - 表示时间一律采用
hh:mm:ss方式,并在最后加一个大写字母Z表示UTC时间。例如23:00:10Z表示UTC时间23点0分10秒。 - 凡涉及日期和时间合并表示时,在两者中间加大写字母T,例如
2014-06-01T23:00:10Z表示UTC时间2014年6月1日23点0分10秒。
规范化字符串
通常一个字符串中可以包含任何Unicode字符。在编程中这种灵活性会带来不少困扰。因此引入“规范字符串”的概念。一个规范字符串只包含百分号编码字符以及URI(Uniform Resource Identifier)非保留字符(Unreserved Characters)。 RFC 3986规定URI非保留字符包括以下字符:字母(A-Z,a-z)、数字(0-9)、连字号(-)、点号(.)、下划线(_)、波浪线(~)。 将任意一个字符串转换为规范字符串的方式是:
- 将字符串转换成UTF-8编码的字节流。
- 保留所有URI非保留字符原样不变。
- 对其余字节做一次RFC 3986中规定的百分号编码(Percent-Encoding),即一个%后面跟着两个表示该字节值的十六进制字母。字母一律采用大写形式。
示例:
原字符串:
this is an example for 测试, 对应的规范字符串:this%20is%20an%20example%20for%20%E6%B5%8B%E8%AF%95。
服务域名
| 服务端点Endpoint | 协议 |
|---|---|
| {多节点版 IEC所在机器IP}:{多节点版 IEC监听端口,默认8702} | HTTP |
错误码
错误码格式
当用户访问API出现错误时,会返回给用户相应的错误码和错误信息,便于定位问题,并做出适当的处理。请求发生错误时通过Response Body返回详细错误信息,遵循如下格式:
| 参数名 | 类型 | 说明 |
|---|---|---|
| status | int | 表示具体错误类型。 |
| msg | String | 有关该错误的详细说明。 |
例如:
1{
2 "status": 170000,
3 "message": "发生错误. Error"
4}
公共请求参数
公共请求Query参数
当用户访问API时,需要通过query参数传入access_token,如 http://127.0.0.1:8702/iec/iapi/v1/camera/new?access_token={access_token}
获取生成Access Token用的AK、SK

获取Access Token
基本信息
Path: /auth/v1/token
Method: GET
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| grantType | string | 必须 | 固定传入client_credentials | ||
| clientId | string | 必须 | 设置-系统设置-AK | ||
| clientSecret | string | 必须 | 设置-系统设置-SK |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| msg | string | 非必须 | |||
| status | number | 必须 | |||
| data | object | 非必须 | |||
| ├─ expiresIn | number | 必须 | 过期时间戳,秒级 | ||
| ├─ accessToken | string | 必须 |
节点相关接口
节点列表
基本信息
Path: /iec/iapi/v1/node/list
Method: POST
接口描述:
节点的新增涉及到激活流程,需要在IEC控制中心页面操作。
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| filters | object | 非必须 | |||
| ├─ name | string | 非必须 | 搜索包含子串的节点 |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| data | object [] | 非必须 | item 类型: object | ||
| ├─ id | number | 必须 | |||
| ├─ uuid | string | 必须 | |||
| ├─ name | string | 非必须 | |||
| ├─ tag | object | 非必须 | |||
| ├─ remark | string | 非必须 | |||
| ├─ hostname | string | 非必须 | |||
| ├─ platform | string | 非必须 | 操作系统 | ||
| ├─ MACAddr | string | 非必须 | 节点的mac地址,逗号分割 | ||
| ├─ IPAddr | string | 非必须 | 节点的ip地址,逗号分割 | ||
| ├─ CPUArch | string | 非必须 | CPU架构 | ||
| ├─ CPUModel | string | 非必须 | CPU型号 | ||
| ├─ ASICModel | string | 非必须 | AI芯片的型号,逗号分割 | ||
| ├─ isActivated | boolean | 非必须 | 是否已经激活 | ||
| ├─ createAt | string | 非必须 | |||
| msg | string | 非必须 | |||
| status | number | 非必须 |
已添加的模型列表
基本信息
Path: /iec/iapi/v1/aimodel/list
Method: GET
接口描述:
请求参数
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| data | object [] | 非必须 | item 类型: object | ||
| ├─ id | number | 必须 | |||
| ├─ name | string | 必须 | |||
| ├─ modelProduct | string | 必须 | |||
| ├─ modelName | string | 必须 | |||
| ├─ modelType | number | 必须 | 1-分类, 2-检测 , 14-语义分割, 6-实例分割 |
||
| ├─ modelSoc | string | 必须 | |||
| ├─ modelThresholdRec | number | 必须 | |||
| ├─ platform | string | 必须 | |||
| ├─ form | string | 必须 | |||
| ├─ isEdgeKit | boolean | 必须 | |||
| ├─ createAt | string | 必须 | |||
| msg | string | 非必须 | |||
| status | number | 非必须 |
下发模型为服务
基本信息
Path: /iec/iapi/v1/aimodel/deploy
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| id | number | 必须 | 模型id,可以从aimode/list接口获得 | ||
| targetNodes | object [] | 必须 | item 类型: object | ||
| ├─ id | number | 必须 | 节点id,可以从node/list接口获得 |
||
| ├─ activationType | string | 必须 | ONLINE / OFFLINE | ||
| ├─ serialNum | string | 非必须 | ONLINE 激活时填入序列号 | ||
| ├─ licenseFileCont | string | 非必须 | OFFLINE 激活时填入离线激活的license内容 | ||
| ├─ host | string | 非必须 | 默认为0.0.0.0 | ||
| ├─ port | number | 非必须 | 默认为0,也即系统自动选择 | ||
| ├─ env | array [] | 非必须 | item 类型: array |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| data | object [] | 非必须 | item 类型: object | ||
| ├─ id | number | 非必须 | |||
| ├─ uuid | string | 非必须 | |||
| msg | string | 非必须 | |||
| status | number | 非必须 |
已下发的服务详情
基本信息
Path: /iec/iapi/v1/aiservice/detail
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| id | number | 非必须 |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| data | object | 非必须 | |||
| ├─ id | number | 必须 | |||
| ├─ name | string | 必须 | |||
| ├─ description | string | 必须 | |||
| ├─ uuid | string | 必须 | |||
| ├─ platform | string | 必须 | |||
| ├─ modelType | number | 必须 | |||
| ├─ isEdgeKit | boolean | 非必须 | |||
| ├─ soc | string | 非必须 | 支持的AI芯片 | ||
| ├─ modelName | string | 非必须 | |||
| ├─ nodeId | number | 必须 | |||
| ├─ nodeName | string | 非必须 | |||
| ├─ CPUArch | string | 非必须 | |||
| ├─ host | string | 必须 | |||
| ├─ port | number | 必须 | |||
| ├─ serviceStatus | string | 必须 | 枚举: ERROR,RUNNING,DEPLOYING,DEPLOY_FAILED,OVERDUE,PAUSED,ERROR | ||
| ├─ serviceTip | string | 必须 | |||
| ├─ isServiceOn | boolean | 非必须 | |||
| ├─ serviceType | string | 必须 | process / container | ||
| ├─ createAt | string | 非必须 | |||
| ├─ updateAt | string | 非必须 | |||
| msg | string | 非必须 | |||
| status | number | 非必须 |
启动服务
基本信息
Path: /iec/iapi/v1/aiservice/start
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| id | number | 必须 | 模型id |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|
已下发的服务列表
基本信息
Path: /iec/iapi/v1/aiservice/list
Method: POST
接口描述:
接口字段与 “已下发的服务详情” 一致
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| data | object [] | 非必须 | item 类型: object | ||
| ├─ id | number | 必须 | |||
| ├─ name | string | 必须 | |||
| ├─ description | string | 必须 | |||
| ├─ uuid | string | 必须 | |||
| ├─ platform | string | 必须 | |||
| ├─ modelType | number | 必须 | |||
| ├─ isEdgeKit | boolean | 必须 | |||
| ├─ soc | string | 必须 | |||
| ├─ modelName | string | 必须 | |||
| ├─ nodeId | number | 必须 | |||
| ├─ nodeName | string | 必须 | |||
| ├─ CPUArch | string | 必须 | |||
| ├─ host | string | 必须 | |||
| ├─ port | number | 必须 | |||
| ├─ serviceStatus | string | 必须 | |||
| ├─ serviceTip | string | 必须 | |||
| ├─ isServiceOn | boolean | 必须 | |||
| ├─ serviceType | string | 必须 | |||
| ├─ createAt | string | 必须 | |||
| ├─ updateAt | string | 必须 | |||
| msg | string | 非必须 | |||
| status | number | 非必须 |
停止服务
基本信息
Path: /iec/iapi/v1/aiservice/stop
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| id | number | 必须 |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|
删除服务
基本信息
Path: /iec/iapi/v1/aiservice/delete
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| id | number | 必须 |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|
更新服务
基本信息
Path: /iec/iapi/v1/aiservice/update
Method: POST
接口描述:
更新服务后,会自动触发服务重启
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| id | number | 必须 | |||
| host | string | 非必须 | |||
| port | number | 非必须 | |||
| env | array [] | 非必须 | item 类型: array |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|
服务请求校验
基本信息
Path: /iec/iapi/v1/aiservice/demo
Method: POST
接口描述: 单次请求下发的服务。 返回体 data 字段的内容即为原始服务的返回内容。可参考:https://ai.baidu.com/ai-doc/EASYDL/lk3qy99te#预测图像
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| id | number | 必须 | |||
| image | string | 必须 | 图像的base64编码 |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| data | object | 非必须 | |||
| ├─ error_code | number | 非必须 | |||
| ├─ cost_ms | number | 非必须 | |||
| ├─ results | object [] | 非必须 | item 类型: object | ||
| ├─ confidence | number | 必须 | |||
| ├─ index | number | 必须 | |||
| ├─ label | string | 必须 | |||
| ├─ x1 | number | 必须 | |||
| ├─ x2 | number | 必须 | |||
| ├─ y1 | number | 必须 | |||
| ├─ y2 | number | 必须 | |||
| msg | string | 非必须 | |||
| status | number | 非必须 |
摄像头设备相关接口
校验摄像头
基本信息
Path: /iec/iapi/v1/camera/check-validity
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| nodeId | number | 必须 | 节点ID | ||
| cameraAddr | string | 必须 | 摄像头地址 | ||
| cameraType | string | 必须 | 摄像头类型,IP表示网络摄像头,LOCAL表示本地摄像头 | 枚举: IP,LOCAL |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| status | number | 必须 | 状态码,0表示成功 | ||
| msg | string | 必须 | 错误信息,status不为0时有意义 | ||
| data | boolean | 必须 | 摄像头是否合法 |
新增摄像头
基本信息
Path: /iec/iapi/v1/camera/new
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| nodeId | number | 必须 | 节点ID | ||
| name | string | 必须 | 摄像头名称 | ||
| camAddr | string | 非必须 | 摄像头地址,IP或LOCAL时必填 | ||
| camType | string | 必须 | 摄像头类型,IP表示网络摄像头,LOCAL表示本地摄像头,ONVIF表示ONVIF摄像头,GB28181表示国标摄像头 | 枚举: LOCAL,IP,ONVIF,GB28181 | |
| onvifConfig | object | 非必须 | ONVIF时必填 | ||
| ├─ ip | string | 必须 | IP | ||
| ├─ port | number | 必须 | 端口 | ||
| ├─ username | string | 必须 | 用户名 | ||
| ├─ password | string | 必须 | 密码 | ||
| gb28181Config | object | 非必须 | GB28181时必填 | ||
| ├─ sipName | string | 必须 | 信令服务器用户名 | ||
| ├─ sipDeviceId | string | 必须 | 信令服务器设备ID | ||
| ├─ sipPassword | string | 必须 | 信令服务器密码 | ||
| remark | string | 必须 | 摄像头备注 | ||
| tag | array [] | 必须 | 标签 | item 类型: array | |
| ├─ | 非必须 | ||||
| ├─ | 非必须 | ||||
| timeRange | array [] | 必须 | 摄像头运行区间 | item 类型: array | |
| ├─ | 非必须 | ||||
| ├─ | 非必须 | 秒 | |||
| frameExtract | object | 必须 | 抽帧配置 | ||
| ├─ everySecond | number | 必须 | 每多少秒 | ||
| ├─ frames | number | 必须 | 抽多少帧 |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| status | number | 必须 | 状态码,0表示成功 | ||
| msg | string | 必须 | 错误信息,status不为0时有意义 | ||
| data | object | 必须 | |||
| ├─ id | number | 必须 | 当前节点唯一ID | ||
| ├─ uuid | string | 必须 | 全局唯一ID |
摄像头列表
基本信息
Path: /iec/iapi/v1/camera/list
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| pageNo | number | 非必须 | 页数 | ||
| pageSize | number | 非必须 | 每页数量 | ||
| nodeId | number | 非必须 | 节点ID | ||
| filters | object | 非必须 | 筛选项 | ||
| ├─ name | string | 非必须 | 按摄像头名称筛选 |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| status | number | 必须 | 状态码,0表示成功 | ||
| msg | string | 必须 | 错误信息,status不为0时有意义 | ||
| data | object [] | 必须 | item 类型: object | ||
| ├─ id | number | 必须 | 摄像头ID | ||
| ├─ uuid | string | 必须 | 摄像头全局唯一ID | ||
| ├─ nodeId | number | 必须 | 节点ID | ||
| ├─ name | string | 必须 | 摄像头名称 | ||
| ├─ remark | string | 必须 | 摄像头备注 | ||
| ├─ cameraType | string | 必须 | 摄像头类型 | 枚举: LCOAL,IP,ONVIF,GB28181 | |
| ├─ cameraStatus | string | 必须 | 摄像头状态 | 枚举: RUNNING,ERROR,STOPPED |
摄像头详情
基本信息
Path: /iec/iapi/v1/camera/get
Method: GET
接口描述:
请求参数
Query
| 参数名称 | 是否必须 | 示例 | 备注 |
|---|---|---|---|
| id | 是 | 摄像头ID |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| status | number | 必须 | 状态码,0表示成功 | ||
| msg | string | 必须 | 错误信息,status不为0时有意义 | ||
| data | object | 必须 | |||
| ├─ id | number | 必须 | 摄像头ID | ||
| ├─ uuid | string | 必须 | 摄像头全局唯一ID | ||
| ├─ nodeId | number | 必须 | 节点ID | ||
| ├─ name | string | 必须 | 摄像头名称 | ||
| ├─ remark | string | 必须 | 摄像头备注 | ||
| ├─ cameraType | string | 必须 | 摄像头类型 | 枚举: LCOAL,IP,ONVIF,GB28181 | |
| ├─ cameraAddr | string | 必须 | 摄像头地址,IP或LOCAL时有意义 | ||
| ├─ onvifConfig | object | 非必须 | |||
| ├─ ip | string | 必须 | IP | ||
| ├─ port | number | 必须 | 端口 | ||
| ├─ username | string | 必须 | 用户名 | ||
| ├─ password | string | 必须 | 密码 | ||
| ├─ gb28181Config | object | 非必须 | |||
| ├─ sipName | string | 必须 | 信令服务器用户名 | ||
| ├─ sipDeviceId | string | 必须 | 信令服务器设备ID | ||
| ├─ sipPassword | string | 必须 | 信令服务器密码 | ||
| ├─ frameExtractInterval | number | 必须 | 每多少秒 | ||
| ├─ frameExtractNum | number | 必须 | 抽多少帧 | ||
| ├─ onlineTime | array [] | 必须 | 摄像头运行区间 | item 类型: array | |
| ├─ | 非必须 | ||||
| ├─ | 非必须 | 秒 | |||
| ├─ cameraStatus | string | 必须 | 摄像头状态 | 枚举: RUNNING,ERROR,STOPPED |
更新摄像头
基本信息
Path: /iec/iapi/v1/camera/update
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| id | number | 必须 | 摄像头ID | ||
| name | string | 必须 | 摄像头名称 | ||
| camAddr | string | 非必须 | 摄像头地址,IP或LOCAL时必填 | ||
| camType | string | 必须 | 摄像头类型,IP表示网络摄像头,LOCAL表示本地摄像头,ONVIF表示ONVIF摄像头,GB28181表示国标摄像头 | 枚举: LOCAL,IP,ONVIF,GB28181 | |
| onvifConfig | object | 非必须 | ONVIF时必填 | ||
| ├─ ip | string | 必须 | IP | ||
| ├─ port | string | 必须 | 端口 | ||
| ├─ username | string | 必须 | 用户名 | ||
| ├─ password | string | 必须 | 密码 | ||
| gb28181Config | object | 非必须 | GB28181时必填 | ||
| ├─ sipName | string | 必须 | 信令服务器用户名 | ||
| ├─ sipDeviceId | string | 必须 | 信令服务器设备ID | ||
| ├─ sipPassword | string | 必须 | 信令服务器密码 | ||
| remark | string | 必须 | 摄像头备注 | ||
| tag | array [] | 必须 | 标签 | item 类型: array | |
| ├─ | 非必须 | ||||
| ├─ | 非必须 | ||||
| timeRange | array [] | 必须 | 摄像头运行区间 | item 类型: array | |
| ├─ | 非必须 | ||||
| ├─ | 非必须 | 秒 | |||
| frameExtract | object | 必须 | 抽帧配置 | ||
| ├─ everySecond | number | 必须 | 每多少秒 | ||
| ├─ frames | number | 必须 | 抽多少帧 |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| status | number | 必须 | 状态码,0表示成功 | ||
| msg | string | 必须 | 错误信息,status不为0时有意义 | ||
| data | boolean | 必须 | 修改是否成功 |
启动摄像头
基本信息
Path: /iec/iapi/v1/camera/start
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| id | number | 必须 | 摄像头ID |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| status | number | 必须 | 状态码,0表示成功 | ||
| msg | string | 必须 | 错误信息,status不为0时有意义 | ||
| data | boolean | 必须 | 开启摄像头是否成功 |
停止摄像头
基本信息
Path: /iec/iapi/v1/camera/stop
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| id | number | 必须 | 摄像头ID |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| status | number | 必须 | 状态码,0表示成功 | ||
| msg | string | 必须 | 错误信息,status不为0时有意义 | ||
| data | boolean | 必须 | 关闭摄像头是否成功 |
删除摄像头
基本信息
Path: /iec/iapi/v1/camera/delete
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| id | number | 必须 | 摄像头ID |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| status | number | 必须 | 状态码,0表示成功 | ||
| msg | string | 必须 | 错误信息,status不为0时有意义 | ||
| data | boolean | 必须 | 删除摄像头是否成功 |
物联网设备相关接口
新增设备
基本信息
Path: /iec/iapi/v1/plc/new
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| nodeId | number | 必须 | 节点ID | ||
| name | string | 必须 | 设备名称 | ||
| deviceType | string | 必须 | 设备类型 | 枚举: modbus,opcua | |
| modbus | object | 非必须 | modbus时必填 | ||
| ├─ protocol | string | 必须 | 协议类型 | 枚举: tcp,rtu | |
| ├─ rtu | object | 非必须 | rtu时必填 | ||
| ├─ port | string | 必须 | 端口 | ||
| ├─ baudrate | number | 必须 | 波特率 | ||
| ├─ databit | number | 必须 | 数据位 | 枚举: 5,6,7,8 | |
| ├─ stopbit | number | 必须 | 停止位 | 枚举: 1,2 | |
| ├─ parity | string | 必须 | 校验位 | 枚举: N,E,O | |
| ├─ tcp | object | 非必须 | tcp时必填 | ||
| ├─ address | string | 必须 | 连接地址 | ||
| ├─ port | number | 必须 | 端口 | ||
| ├─ slaveId | number | 必须 | 从站号 | ||
| ├─ interval | number | 必须 | 采样间隔 | ||
| opcua | object | 非必须 | opcua时必填 | ||
| ├─ endpoint | string | 必须 | 通道地址 | ||
| ├─ securityPolicy | string | 必须 | 安全策略 | 枚举: None,Basic256Sha256,Aes128Sha256RsaOaep,Aes256Sha256RsaPss | |
| ├─ securityMode | string | 必须 | 安全模式 | 枚举: None,Sign,SignAndEncrypt | |
| ├─ certificate | string | 非必须 | 数字证书 | ||
| ├─ privateKey | string | 非必须 | 密钥证书 | ||
| ├─ username | string | 非必须 | 用户名 | ||
| ├─ password | string | 非必须 | 密码 | ||
| ├─ timeout | number | 必须 | 连接超时时间 | ||
| ├─ interval | number | 必须 | 采样间隔 | ||
| remark | string | 必须 | 设备备注 | ||
| tag | array [] | 必须 | 标签 | item 类型: array | |
| ├─ | 非必须 | ||||
| ├─ | 非必须 | ||||
| attributes | object [] | 必须 | 属性 | item 类型: object | |
| ├─ id | string | 必须 | 标识符 | ||
| ├─ name | string | 必须 | 属性名 | ||
| ├─ type | string | 必须 | 类型 | 枚举: bool,int16,int32,int64,float32,float64,string | |
| ├─ defaultValue | string | 非必须 | 默认值 | ||
| ├─ unit | string | 必须 | 单位 | ||
| ├─ required | boolean | 必须 | 是否必填 | ||
| properties | object [] | 必须 | 测点 | item 类型: object | |
| ├─ id | string | 必须 | 标识符 | ||
| ├─ name | string | 必须 | 测点名 | ||
| ├─ type | string | 必须 | 类型 | 枚举: bool,int16,int32,int64,float32,float64,string | |
| ├─ mode | string | 必须 | 读写类型 | 枚举: ro,rw | |
| ├─ unit | string | 必须 | 单位 | ||
| ├─ modbus | object | 非必须 | modbus时必填 | ||
| ├─ func | number | 必须 | 寄存器类型:1.线圈寄存器 2.离散输入寄存器 3.保持寄存器 4.输入寄存器 | 枚举: 1,2,3,4 | |
| ├─ address | string | 必须 | 寄存器地址 | ||
| ├─ quantity | number | 必须 | 寄存器数量 | ||
| ├─ opcua | object | 非必须 | opcua时必填 | ||
| ├─ nodeid | string | 必须 | 节点ID |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| status | number | 必须 | 状态码,0表示成功 | ||
| msg | string | 必须 | 错误信息,status不为0时有意义 | ||
| data | object | 必须 | |||
| ├─ id | number | 必须 | 当前节点唯一ID | ||
| ├─ uuid | string | 必须 | 全局唯一ID |
设备列表
基本信息
Path: /iec/iapi/v1/plc/list
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| pageNo | number | 非必须 | 页数 | ||
| pageSize | number | 非必须 | 每页数量 | ||
| nodeId | number | 非必须 | 节点ID | ||
| filters | object | 非必须 | 筛选项 | ||
| ├─ name | string | 非必须 | 按名称筛选 |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| status | number | 必须 | 状态码,0表示成功 | ||
| msg | string | 必须 | 错误信息,status不为0时有意义 | ||
| data | object [] | 必须 | item 类型: object | ||
| ├─ id | number | 必须 | 设备ID | ||
| ├─ uuid | string | 必须 | 设备全局唯一ID | ||
| ├─ nodeId | number | 必须 | 节点ID | ||
| ├─ name | string | 必须 | 设备名称 | ||
| ├─ remark | string | 必须 | 设备备注 | ||
| ├─ deviceType | string | 必须 | 设备类型 | ||
| ├─ status | string | 必须 | 设备状态 | 枚举: RUNNING,ERROR,STOPPED |
设备详情
基本信息
Path: /iec/iapi/v1/plc/get
Method: GET
接口描述:
请求参数
Query
| 参数名称 | 是否必须 | 示例 | 备注 |
|---|---|---|---|
| id | 是 | 设备ID |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| status | number | 必须 | 状态码,0表示成功 | ||
| msg | string | 必须 | 错误信息,status不为0时有意义 | ||
| data | object | 必须 | |||
| ├─ id | number | 必须 | 设备ID | ||
| ├─ uuid | string | 必须 | 设备全局唯一ID | ||
| ├─ nodeId | number | 必须 | 节点ID | ||
| ├─ name | string | 必须 | 设备名称 | ||
| ├─ deviceType | string | 必须 | 设备类型 | 枚举: modbus,opcua | |
| ├─ modbus | object | 非必须 | modbus时必填 | ||
| ├─ protocol | string | 必须 | 协议类型 | 枚举: tcp,rtu | |
| ├─ rtu | object | 非必须 | rtu时必填 | ||
| ├─ port | string | 必须 | 端口 | ||
| ├─ baudrate | number | 必须 | 波特率 | ||
| ├─ databit | number | 必须 | 数据位 | 枚举: 5,6,7,8 | |
| ├─ stopbit | number | 必须 | 停止位 | 枚举: 1,2 | |
| ├─ parity | string | 必须 | 校验位 | 枚举: N,E,O | |
| ├─ tcp | object | 非必须 | tcp时必填 | ||
| ├─ address | string | 必须 | 连接地址 | ||
| ├─ port | number | 必须 | 端口 | ||
| ├─ slaveId | number | 必须 | 从站号 | ||
| ├─ interval | number | 必须 | 采样间隔 | ||
| ├─ opcua | object | 非必须 | opcua时必填 | ||
| ├─ endpoint | string | 必须 | 通道地址 | ||
| ├─ securityPolicy | string | 必须 | 安全策略 | ||
| ├─ securityMode | string | 必须 | 安全模式 | ||
| ├─ certificate | string | 非必须 | 数字证书 | ||
| ├─ privateKey | string | 非必须 | 密钥证书 | ||
| ├─ username | string | 非必须 | 用户名 | ||
| ├─ password | string | 非必须 | 密码 | ||
| ├─ timeout | number | 必须 | 连接超时时间 | ||
| ├─ interval | number | 必须 | 采样间隔 | ||
| ├─ remark | string | 必须 | 设备备注 | ||
| ├─ tag | array [] | 必须 | 标签 | item 类型: array | |
| ├─ | 非必须 | ||||
| ├─ | 非必须 | ||||
| ├─ attributes | object [] | 必须 | 属性 | item 类型: object | |
| ├─ id | string | 必须 | 标识符 | ||
| ├─ name | string | 必须 | 属性名 | ||
| ├─ type | string | 必须 | 类型 | 枚举: bool,int16,int32,int64,float32,float64,string | |
| ├─ defaultValue | string | 非必须 | 默认值 | ||
| ├─ unit | string | 必须 | 单位 | ||
| ├─ required | boolean | 必须 | 是否必填 | ||
| ├─ properties | object [] | 必须 | 测点 | item 类型: object | |
| ├─ id | string | 必须 | 标识符 | ||
| ├─ name | string | 必须 | 测点名 | ||
| ├─ type | string | 必须 | 类型 | 枚举: bool,int16,int32,int64,float32,float64,string | |
| ├─ mode | string | 必须 | 读写类型 | 枚举: ro,rw | |
| ├─ unit | string | 必须 | 单位 | ||
| ├─ modbus | object | 非必须 | modbus时必填 | ||
| ├─ func | number | 必须 | 寄存器类型:1.线圈寄存器 2.离散输入寄存器 3.保持寄存器 4.输入寄存器 | 枚举: 1,2,3,4 | |
| ├─ address | string | 必须 | 寄存器地址 | ||
| ├─ quantity | number | 必须 | 寄存器数量 | ||
| ├─ opcua | object | 非必须 | opcua时必填 | ||
| ├─ nodeid | string | 必须 | 节点ID | ||
| ├─ status | string | 必须 | 设备状态 | 枚举: RUNNING,ERROR,STOPPED | |
| ├─ url | string | 非必须 | 测点数据获取websocket连接地址 | ||
| ├─ realData | object | 非必须 | 当前测点数据 |
更新设备
基本信息
Path: /iec/iapi/v1/plc/update
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| id | number | 必须 | 设备ID | ||
| name | string | 必须 | 设备名称 | ||
| deviceType | string | 必须 | 设备类型 | 枚举: modbus,opcua | |
| modbus | object | 非必须 | modbus时必填 | ||
| ├─ protocol | string | 必须 | 协议类型 | 枚举: tcp,rtu | |
| ├─ rtu | object | 非必须 | rtu时必填 | ||
| ├─ port | string | 必须 | 端口 | ||
| ├─ baudrate | number | 必须 | 波特率 | ||
| ├─ databit | number | 必须 | 数据位 | 枚举: 5,6,7,8 | |
| ├─ stopbit | number | 必须 | 停止位 | 枚举: 1,2 | |
| ├─ parity | string | 必须 | 校验位 | 枚举: N,E,O | |
| ├─ tcp | object | 非必须 | tcp时必填 | ||
| ├─ address | string | 必须 | 连接地址 | ||
| ├─ port | number | 必须 | 端口 | ||
| ├─ slaveId | number | 必须 | 从站号 | ||
| ├─ interval | number | 必须 | 采样间隔 | ||
| opcua | object | 非必须 | opcua时必填 | ||
| ├─ endpoint | string | 必须 | 通道地址 | ||
| ├─ securityPolicy | string | 必须 | 安全策略 | 枚举: None,Basic256Sha256,Aes128Sha256RsaOaep,Aes256Sha256RsaPss | |
| ├─ securityMode | string | 非必须 | 安全模式 | 枚举: None,Sign,SignAndEncrypt | |
| ├─ certificate | string | 非必须 | 数字证书 | ||
| ├─ privateKey | string | 非必须 | 密钥证书 | ||
| ├─ username | string | 非必须 | 用户名 | ||
| ├─ password | string | 必须 | 密码 | ||
| ├─ timeout | number | 必须 | 连接超时时间 | ||
| ├─ interval | number | 必须 | 采样间隔 | ||
| remark | string | 必须 | 设备备注 | ||
| tag | array [] | 必须 | 标签 | item 类型: array | |
| ├─ | 非必须 | ||||
| ├─ | 非必须 | ||||
| attributes | object [] | 必须 | 属性 | item 类型: object | |
| ├─ id | string | 必须 | 标识符 | ||
| ├─ name | string | 必须 | 属性名 | ||
| ├─ type | string | 必须 | 类型 | 枚举: bool,int16,int32,int64,float32,float64,string | |
| ├─ defaultValue | string | 非必须 | 默认值 | ||
| ├─ unit | string | 必须 | 单位 | ||
| ├─ required | boolean | 必须 | 是否必填 | ||
| properties | object [] | 必须 | 测点 | item 类型: object | |
| ├─ id | string | 必须 | 标识符 | ||
| ├─ name | string | 必须 | 测点名 | ||
| ├─ type | string | 必须 | 类型 | 枚举: bool,int16,int32,int64,float32,float64,string | |
| ├─ mode | string | 必须 | 读写类型 | 枚举: ro,rw | |
| ├─ unit | string | 必须 | 单位 | ||
| ├─ modbus | object | 非必须 | modbus时必填 | ||
| ├─ func | number | 必须 | 寄存器类型:1.线圈寄存器 2.离散输入寄存器 3.保持寄存器 4.输入寄存器 | 枚举: 1,2,3,4 | |
| ├─ address | string | 必须 | 寄存器地址 | ||
| ├─ quantity | number | 必须 | 寄存器数量 | ||
| ├─ opcua | object | 非必须 | opcua时必填 | ||
| ├─ nodeid | string | 必须 | 节点ID |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| status | number | 必须 | 状态码,0表示成功 | ||
| msg | string | 必须 | 错误信息,status不为0时有意义 | ||
| data | boolean | 必须 | 修改是否成功 |
删除设备
基本信息
Path: /iec/iapi/v1/plc/delete
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| id | number | 必须 | 设备ID |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| status | number | 必须 | 状态码,0表示成功 | ||
| msg | string | 必须 | 错误信息,status不为0时有意义 | ||
| data | boolean | 必须 | 删除设备是否成功 |
写测点
基本信息
Path: /iec/iapi/v1/plc/property/write
Method: POST
接口描述:
请求参数
Headers
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
|---|---|---|---|---|
| Content-Type | application/json | 是 |
Body
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| id | number | 必须 | 设备ID | ||
| propertyId | string | 必须 | 测点标识符 | ||
| propertyValue | any | 必须 | 测点值 |
返回数据
| 名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
|---|---|---|---|---|---|
| status | number | 必须 | 状态码,0表示成功 | ||
| msg | string | 必须 | 错误信息,status不为0时有意义 | ||
| data | boolean | 必须 | 修改测点值是否成功 |
功能更新记录
| 时间 | 版本 | 说明 |
|---|---|---|
| 2023-05-25 | 1.0.0 | 第一版 |
