4G/5G执法记录仪FTP文件上传
4G记录仪与平台对接说明
1. 引言
本接口协议规定了XX市4G执法仪厂家之间互联互通的接口规范,对接的范围包括实时图像、实时位置、告警上报和文件上传四部分。各厂商执法仪和平台必须遵从本接口规范进行相关工作。
2. 接口定义
2.1. 实时图像
对接方式:采用GB/T28181-2016标准接入,具体接入方式请参考相关标准文档。
2.2. 实时位置
对接方式:采用GB/T28181-2016标准接入,具体接入方式请参考相关标准文档。
2.3. 告警上报
对接方式:采用GB/T28181-2016标准接入,具体接入方式请参考相关标准文档。
2.4. 录像文件上传
2.4.1总体业务流程
4G执法仪与4G平台文件上传流程如下:
1、4G执法仪向4G平台的“FTP信息获取接口”请求上传目标FTP相关信息
2、4G平台反馈FTP相关信息
3、4G执法仪通过FTP协议向指定FTP服务器上传文件
4、FTP服务器返回文件上传状态
5、文件上传成功后,4G执法仪调用4G平台“文件信息写入接口”,写入文件信息
6、4G平台反馈4G执法仪写入结果
2.4.2 FTP信息获取接口
接口功能:向4G执法仪提供上传目标FTP相关信息
接口URL:http://IP:Port/OpenApi/GETFTPINFO
HTTP方法: GET
输入参数:
|
参数 |
名称 |
类型 |
长度 |
是否必须 |
说明 |
|
cpxh |
产品序号 |
varchar |
20 |
是 |
20位国标编号 |
|
authKey |
认证秘钥 |
varchar |
32 |
是 |
MD5加密,平台提供 |
输出参数:
|
参数 |
名称 |
类型 |
长度 |
是否必须 |
说明 |
|
ftpinfo |
ftp相关信息 |
varchar |
500 |
是 |
ftp相关信息AES加密结果串,例: {"ip": "192.168.1.100", "port": "21", "user": "root", "pwd": "*****", "path": "/"}的AES加密 说明: ip: FTP服务器IP地址 port:FTP服务器端口号 user:账号 pwd:密码 path:上传的目标文件路径 例:”/usr/files/”,根目录则返回“/” |
|
请求示例 |
请求 |
http://IP:Port/OpenApi/GETFTPINFO?cpxh=14030100901917040001&authKey=382079fe37276384090715877d812e9e |
|||
|
返回 |
{ "msg": "OK", "code": 200, "data": "tv+oAZnhLeymG+5AZOuR3OpjhC37pRZsX+Dhwut2I6FpjiYY3OiCz7GwojsGoVQ/bil0a2gzAFDvQDlzy4QapVqRDoRjBkRLAtIpEEWTGqwOzAvoq7zDrMP3Pt63gxQJ3EUo9AWF0hFzqAc92ADkMVZrq19oWk824Sg6jW3IQAzFklslAwg9Tyxsl/smdway" }
|
||||
1、记录仪APP界面功能设计:
2、操作流程:
①点击“FTP设置”,弹出FTP信息设置界面,点击“获取”按钮调用“2.4.2 FTP信息获取接口”获取FTP信息,然后点击“保存”。
②支持手动修改FTP信息,如果修改FTP信息之后,再次点击“获取”按钮,重置已修改的内容,然后点击“保存”。
注意事项:接口请求地址:http://IP:Port/,IP使用MCP登录28181的IP,Port不能使用28181登录的信令端口,看在那个地方增加一个可以设置这个数据端口比较合适?
2.4.3 FTP文件写入标准
①目录结构定义
文件路径/警员编号(6位)/拍摄日期(10位)/文件类型编码(2位)/
上传文件时需要逐层判断服务器对应的目录是否存在,如果不存在,则新创建。
②文件名命名
设备编号(20位国标编号)_警员编号(6位)_录制时间(14位,YYYYMMDDhhmmss)_文件序号(7位)_警情编号_重要标记.mp4
注意事项:如果记录仪拍摄时关联了警情,则文件名称需要追加警情编号,如果文件标记为重要,则文件名称需要追加重要标记。
③示例
服务器根目录/
101011/
20230906/
01/
14080000001310987542_100001_20230906102630_0000001_警情编号_IMP.mp4
2.4.3文件信息写入接口
接口功能:文件上传信息写入
协议标准:GA/T 947.4-2015 执法记录仪信息上传接口
接口URL:http://IP:Port/OpenApi/WRITEDSJINFO
HTTP方法: POST
写入字段说明如下:
|
参数 |
名称 |
类型 |
长度 |
是否必须 |
说明 |
|
wjbh |
文件编号 |
varchar |
100 |
是 |
参见附注:文件编号命名规则 |
|
wjbm |
文件别名 |
varchar |
100 |
是 |
上传平台文件别名: 文件编号+文件后缀名 |
|
wjmc |
文件名称 |
varchar |
100 |
是 |
记录仪上的文件原始名 |
|
pssj |
拍摄时间 |
datetime |
200 |
是 |
YYYY-MM-DD hh:mm:ss |
|
wjdx |
文件大小 |
varchar |
255 |
否 |
单位:字节 |
|
wjlx |
文件类型 |
varchar |
10 |
是 |
01视频、02图片、03音频,04-99预留 |
|
wjly |
文件来源 |
varchar |
10 |
是 |
文件来源 0-采集站;1-文件服务器;2-非现场录入;3-指挥调度;4-记录仪;5-待定..... |
|
jy_xm |
警员姓名 |
varchar |
50 |
否 |
GA/T 543.1-2011:数据元DE00002 |
|
jybh |
警员编号 |
varchar |
6 |
是 |
GA/T 543.7-2015:数据元DE00893 |
|
cpxh |
产品序号 |
varchar |
20 |
是 |
20位国标编号 |
|
jgdm |
单位编号 |
varchar |
12 |
否 |
GA/T 543.1-2011:数据元DE00060 |
|
dwmc |
单位名称 |
varchar |
100 |
否 |
GA/T 543.1-2011:数据元DE00065 |
|
ccfwq |
存储服务器 |
varchar |
100 |
是 |
存储服务器FTP IP |
|
ccwz |
存储位置 |
varchar |
200 |
是 |
文件相对路径,例:”/101011/20230906/14080000001310987542_100001_20230809102630_0000001.mp4” |
|
bfwz |
播放位置 |
varchar |
200 |
否 |
此处4G上传不用传递该字段 |
|
wlwz |
物理位置 |
varchar |
200 |
否 |
此处4G上传不用传递该字段 |
|
gzz_xh |
执法数据采集设备产品编码 |
varchar |
12 |
否 |
此处4G上传不用传递该字段 |
|
scsj |
上传时间 |
varchar |
200 |
是 |
YYYY-MM-DD hh:mm:ss |
|
bzlx |
标注类型 |
varchar |
100 |
否 |
0-普通 1-重要 |
|
authKey |
认证秘钥 |
varchar |
32 |
是 |
MD5加密 |
|
请求示例 |
请求 |
http://IP:Port/OpenApi/WRITEDSJINFO?cpxh=14030100901917040001&authKey=382079fe37276384090715877d812e9e |
|||
|
返回 |
{ "msg": "OK", "code": 200, "data": { "wjbh": "12367", "wjbm": "menu", "wjmc": "你是谁", "pssj": "2023-12-14 11:11:11", "wjdx": "", "wjlx": "01", "jy_xm": "", "jybh": "", "cpxh": "23030200491180000008", "jgdm": "10000000", "dwmc": "", "ccfwq": "120.78.66.85", "ccwz": "/var/ftp/test/7e53b102542afc3fd423a6bfabe90c26.mp4", "bfwz": "http://172.18.128.235:9091/var/ftp/test/7e53b102542afc3fd423a6bfabe90c26.mp4", "wlwz": "", "gzz_xh": "", "scsj": "2023-12-14 11:11:11", "bzlx": "0", "wjly": "5", "authKey": "9c1148dfd10800ba66645bb1834ace1f" } }
|
||||
返回结果字段说明如下:
|
参数 |
名称 |
类型 |
长度 |
是否必须 |
说明 |
|
code |
标记 |
char |
1 |
否 |
0-失败,1-成功 |
|
message |
描述信息 |
varchar |
100 |
否 |
|
1、FTP文件写入和FTP文件信息写入,需考虑上传失败情况、重新上传和断点续传等问题。
2、记录仪需要支持4G自动上传,要求增加开关控制仅WiFi上传,且每1小时自动检测当日未上传数据,并自动上传FTP服务器存储;
3、记录仪默认开启自动上传和循环删除功能,已上传数据可以被自动循环删除,未上传数据不允许删除;
附注
文件编号命名规则
文件编号由以下几部分组成
设备编号(20位国标编号)_警员编号(6位)_录制时间(14位,YYYYMMDDhhmmss)_文件序号(7位)_警情编号_重要标记.mp4
|
码段 |
码位 |
说明 |
|
设备编码 |
1-20 |
GA/T 28181 20位编码,同各接口定义的“cpxh”字段 |
|
警员编号 |
21-26 |
警员编号(6位),同各接口定义的“jybh”字段 |
|
时间编码 |
27-40 |
拍摄时间,YYYYMMDDhhmmss,同接口中的“pssj”值,但格式有区别 |
|
序号 |
41-47 |
录制文件序列号,同一时间段录制的文件序号从“000001”开始叠加 |
|
警情编号 |
不定长 |
按实际情况 |
|
重要标记 |
不定长 |
按实际情况 |
