注册远程录像文件上传
POST /strm/upload
本接口用于向媒体服务注册将要进行的远程录像上传。企业服务应在下发远程录像上传( 0x9206
)之令前调用本接口。
本接口返回FTP服务地址、FTP用户信息、上传目录等用于下发 0x9206
指令的参数。
回调地址
本接口接收一个cb
基地址,用于:
- 当上传状态发生变化时,如终端开始上传、终端上传结束,媒体服务将调用此地址上的
POST /upload
接口,告知新的状态及有关信息。 - 当终端上传到FTP时,每上传一定量的数据,媒体服务将调用此地址上的
POST /upload/progress
接口,告知文件的已上传字节数。
如,cb
为 https://strm:PaEWWGCeE3Az9Z7o@n11.gratour.info:9100/v1
,POST /upload
接口地址为:
https://n11.gratour.info:9100/v1/upload
。 POST /upload/progress
接口的接口地址类推。
上传活动的生存期
每个在媒体服务注册的远程录像文件上传活动最多只有2个小时。如果超过2小时上传仍未完成,代表此次活动的状态将变为超时,reqId
失效。
此时,集成接口 POST /upload
将被调用,st
为7
(超时)。
备注:
- 企业应用应自行进行录像文件上传活动的数据管理。
- 媒体服务最大的活动中远程录像上传数为 2000 个,达到或超过这个数量,新注册请求将返回错误码
-6
。
请求
POST https://n11.gratour.info:7011/strm/upload
Content-Type: application/json
Authorization: Basic YWRtaW46YWRtaW4
{
"simNo": "13320210317",
"startTm": "2021-03-21 00:00:00",
"sz": 3982099,
"cb": "https://strm:PaEWWGCeE3Az9Z7o@n11.gratour.info:9100/v1"
}
请求实体属性
属性 | 数据类型 | 必要 | 说明 |
---|---|---|---|
reqId | string | 远程录像文件上传请求ID。代表此次上传活动。可由调用者生成、提供。如果提供,则调用者应确保ID符合,并符合 请求ID(reqId)的格式要求 。如果不提供,则由服务产生,并通过返回。 | |
simNo | string | Y | 终端识别号。 |
startTm | string | Y | 录像文件的开始时间。格式:yyyy-MM-dd HH:mm:ss 或yyyy-mm-ddTHH:mm:ssZ 。使用前者格式时,时区默认为服务器时区。 |
sz | int | 远程录像文件的大小。如果确实无法提供此数据时,可不提供此属性。但如果不提供此属性,则媒体服务可能对上传状态误判。 | |
cb | string | Y | 远程录像文件上传相关的企业集成接口(SPI)的基地址。用于回调 POST /upload 和 POST /upload/progress 两个接口。此地址应使用https 协议,并可在此地址带上鉴权信息。如:https://strm:PaEWWGCeE3Az9Z7o@n11.gratour.info:9100/v1 鉴权信息在回调时以Basic Authorization方式在 Authorization Header中提供。 使用鉴权信息时,应产生短生命周期的随机密码,每隔一小段时间更换。但请求仍有效时,密码应保持有效。 多个打开请求可使用不同的用户名密码。媒体服务不会在请求的生存期之外缓存这些鉴权信息。 |
应答
{
"data": [
{
"reqId": "MPle4HuJnvMLDIJH",
"ip": "113.89.235.11",
"port": 2002,
"path": "/2021/03/13320210317/MPle4HuJnvMLDIJH",
"user": "av-upload-231",
"pwd": "3brflLNtjalw9BPq",
"urlPrefix": "https://n11.gratour.info:7011/strm/ftp/av-upload/2021/03/13320210317/MPle4HuJnvMLDIJH/"
}
],
"count": 1,
"errCode": 0,
"message": "成功。"
}
应答实体属性
属性 | 数据类型 | 必要 | 说明 |
---|---|---|---|
errCode | int | Y | 错误码。
|
message | string | Y | 错误信息。 |
data | array[RegisterAvUploadResult] | 返回的结果对象数组。元素为RegisterAvUploadResult类型,见下。 | |
count | int | 返回的记录数。 |
RegisterAvUploadResult
属性 | 数据类型 | 必要 | 说明 |
---|---|---|---|
reqId | string | Y | 远程录像文件上传请求ID。 |
ip | string | Y | FTP服务器的IP |
port | int | Y | FTP服务的端口号 |
path | string | Y | 分配给此次终端上传的FTP目录 |
user | string | Y | 用于本次上传的FTP用户名 |
pwd | string | Y | 用于本次上传的FTP用户的密码 |
urlPrefix | string | Y | 上传完成后用于访问此文件的URL的前部,须加上文件名(文件名在下载完成时通知,参见)才是完整的访问URL。此URL只能给企业内部应用访问,访问时,和API调用一样,需要基本身份认证,因此,外部不能直接访问此URL。 |