Playback Sercice
1、查询录制视频
描述
查询录制视频
接口地址(仅做说明使用):https://api.polyv.net/live/v2/channels/%s/recordFiles
调用约束
1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看
单元测试
@Test
public void testGetRecordInfo() throws IOException, NoSuchAlgorithmException {
SeminarGetRecordInfoRequest seminarGetRecordInfoRequest = new SeminarGetRecordInfoRequest();
List<SeminarGetRecordInfoResponse> seminarGetRecordInfoResponse;
try {
String channelId = super.getChannelId();
seminarGetRecordInfoRequest.setChannelId(channelId)
.setStartDate(super.getDate(1643163720000L))
.setEndDate(super.getDate(1643163780000L));
seminarGetRecordInfoResponse = new SeminarPlaybackServiceImpl().getRecordInfo(seminarGetRecordInfoRequest);
Assert.assertNotNull(seminarGetRecordInfoResponse);
if (seminarGetRecordInfoResponse != null) {
//to do something ......
log.debug("测试查询录制视频成功 {}", JSON.toJSONString(seminarGetRecordInfoResponse));
}
} catch (PloyvSdkException e) {
//参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
log.error(e.getMessage(), e);
// 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
throw e;
} catch (Exception e) {
log.error("SDK调用异常", e);
throw e;
}
}
单元测试说明
1、请求正确,返回SeminarGetRecordInfoResponse对象,B端依据此对象处理业务逻辑;
2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]
3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]
请求入参描述
channelId
true
String
频道号
userId
true
String
POLYV用户ID,和保利威官网一致,获取路径:官网->登录->直播(开发设置)
startDate
false
Date
开始日期,格式:yyyy-MM-dd
endDate
false
Date
结束日期,格式:yyyy-MM-dd
sessionId
false
String
直播的场次ID
返回对象描述
返回对象是List<SeminarGetRecordInfoResponse>,SeminarGetRecordInfoResponse具体元素内容如下:
channelId
String
频道号
fileId
String
录制文件ID
url
String
录制文件地址,优先返回MP4,若没有MP4会返回M3U8
startTime
String
开始录制时间,格式为:yyyyMMddHHmmss
endTime
String
结束录制时间,格式为:yyyyMMddHHmmss
fileSize
Long
录制文件大小(单位:字节)
duration
Integer
时长(单位:秒)
bitrate
Integer
录制文件码率(单位:字节)
resolution
String
分辨率,示例:1280x720
channelSessionId
String
直播的场次ID
fileName
String
录制文件名称
daysLeft
Integer
录制文件剩余天数,大于0:剩余天数,-1:永久,不会返回过期的录制文件记录
origin
String
录制文件来源 manual:手动录制 auto:自动录制
originSessionId
String
原始直播场次ID 当该录制文件为手动录制或自动录制时就等于当前直播场次ID
recordFileType
String
录制文件类型 complete:完整回放,part:自动录制_片段,merge:手动合并,clip:裁剪
2、删除录制视频
描述
删除频道视频库中直播暂存的录制视频
接口地址(仅做说明使用):https://api.polyv.net/live/v2/channel/recordFile/%s/delete-record
调用约束
1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看
2、请求参数sessionId和startTime不能同时为空,必须单独提交某一参数
单元测试
@Test
public void testDeleteRecord() throws IOException, NoSuchAlgorithmException {
SeminarDeleteRecordRequest seminarDeleteRecordRequest = new SeminarDeleteRecordRequest();
Boolean seminarDeleteRecordResponse;
try {
String channelId = super.getChannelId();
seminarDeleteRecordRequest.setChannelId(channelId).setStartTime(super.getDate(1643163515000L));
seminarDeleteRecordResponse = new SeminarPlaybackServiceImpl().deleteRecord(seminarDeleteRecordRequest);
Assert.assertTrue(seminarDeleteRecordResponse);
if (seminarDeleteRecordResponse) {
//to do something ......
log.debug("测试删除录制视频成功");
}
} catch (PloyvSdkException e) {
//参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
log.error(e.getMessage(), e);
// 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
throw e;
} catch (Exception e) {
log.error("SDK调用异常", e);
throw e;
}
}
}
单元测试说明
1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;
2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.LivexxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]
3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]
请求入参描述
channelId
true
String
频道号
sessionId
false
String
录制视频的场次ID
startTime
false
Date
录制视频的开始录制时间,格式为:yyyyMMddHHmmss,如:20210317181043【可通过查询频道录制视频信息获取】
返回对象描述
删除录制视频返回实体
Last updated
Was this helpful?