首页
产品
帮助文档
博客
控制台

互动直播服务接口

接口目录

创建互动直播

POST /interactive/api/create

JSON 参数

参数 描述 取值
rtmp_addr 推流地址 string

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg 空字符串或错误信息 string
id 互动直播 ID string
mrtc_addr MRTC 地址 string

返回示例:

{
	"errcode": 1000,
	"msg": "",
	"id": "17lok52y",
	"mrtc_addr": "mrtc://118.178.135.125:8081/17792332/0"
}

获取一页互动直播

GET /interactive/api/list

URL 参数

参数 描述 取值
page 页数,默认 1 int
limit 每页个数,默认 15 int

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg 空字符串或错误信息 string
count 互动直播总个数 int
interactive_list 互动直播列表 object array
interactive_list.id 互动直播 ID string
interactive_list.room_id 互动直播房间 ID string
interactive_list.switch_id 推拉流 ID string
interactive_list.mix_id 混流任务 ID int
interactive_list.rtmp_addr 混流推流地址 string
interactive_list.width 混流界面宽 int
interactive_list.height 混流界面高 int
interactive_list.video_bitrate 混流视频比特率 int
interactive_list.audio_bitrate 混流音频比特率 int
interactive_list.mix_count 混流个数 int
interactive_list.PushState 是否推流 bool

返回示例:

{
	"errcode": 1000,
	"msg": "",
	"count": 33,
	"interactive_list": [
		{
			"id": "17lok52y",
			"room_id": "1",
			"switch_id": "1",
			"mix_id": 1,
			"rtmp_addr": "1",
			"width": 1,
			"height": 1,
			"video_bitrate": 1,
			"audio_bitrate": 1,
			"mix_count": 1,
			"PushState": false
		}
	]
}

获取互动直播下的所有流信息

GET /interactive/api/get_streams_status

URL 参数

参数 描述 取值
interactive 互动直播 ID string

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg 空字符串或错误信息 string
stream_list 互动直播下的所有流信息 object array
stream_list.id 互动直播 ID string
stream_list.mrtc_addr MRTC 地址 string
stream_list.index 第几个流,从 0 开始 int
stream_list.live 是否正在直播 bool
stream_list.last_publish_time 最后推流结束时间 string
stream_list.mrtc_play_addr MRTC 播放地址 string

返回示例:

{
	"errcode": 1000,
	"msg": "",
	"stream_list": [
		{
			"id": "17lok52y",
			"mrtc_addr": "1",
			"index": 1,
			"live": false,
			"last_publish_time": "1",
			"mrtc_play_addr": "1"
		}
	]
}

查询混流状态

GET /interactive/api/get_mixswitch_status

URL 参数

参数 描述 取值
interactive 互动直播 ID string

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg 空字符串或错误信息 string
mix_status 混流状态 bool

返回示例:

{
	"errcode": 1000,
	"msg": "",
	"mix_status": true
}

修改混流推流地址

POST /interactive/api/modify_modify_rtmpaddr

URL 参数

参数 描述 取值
interactive 互动直播 ID string

JSON 参数

参数 描述 取值
rtmp_addr 推流地址 string

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg 空字符串或错误信息 string

返回示例:

{
	"errcode": 1000,
	"msg": ""
}

删除互动直播

POST /interactive/api/delete

URL 参数

参数 描述 取值
interactive 互动直播 ID string

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg 空字符串或错误信息 string

返回示例:

{
	"errcode": 1000,
	"msg": ""
}

创建并开始混流

POST /interactive/api/open_mixswitch

URL 参数

参数 描述 取值
interactive 互动直播 ID string

JSON 参数

参数 描述 取值
mix_count 混流个数 int
width (可选)混流宽,默认 1080 int
height (可选)混流高,默认 720 int
video_bitrate (可选)混流视频比特率,默认 1Mbps int
audio_bitrate (可选)混流音频比特率,默认 64Kbps int

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg 空字符串或错误信息 string

返回示例:

{
	"errcode": 1000,
	"msg": ""
}

停止混流

POST /interactive/api/stop_mixswitch

URL 参数

参数 描述 取值
interactive 互动直播 ID string

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg 空字符串或错误信息 string

返回示例:

{
	"errcode": 1000,
	"msg": ""
}

获取混流配置

GET /interactive/api/get_mix_config

URL 参数

参数 描述 取值
interactive 互动直播 ID string

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg 空字符串或错误信息 string
mix_parameter 混流配置 object array
mix_parameter.index 第几个流,从 0 开始 int
mix_parameter.address MRTC 地址 string
mix_parameter.width 视频宽 int
mix_parameter.height 视频高 int
mix_parameter.position_x 视频在混流中的水平位置 int
mix_parameter.position_y 视频在混流中的垂直位置 int
mix_parameter.position_z 视频在混流中的层级 int
mix_parameter.volume 视频音量 float
mix_parameter.opacity 视频透明度 float
mix_parameter.stretch_mode 是否拉伸 int

返回示例:

{
	"errcode": 1000,
	"msg": "",
	"mix_parameter": [
		{
			"index": 1,
			"address": "1",
			"width": 1,
			"height": 1,
			"position_x": 1,
			"position_y": 1,
			"position_z": 1,
			"volume": 1,
			"opacity": 1,
			"stretch_mode": 1
		}
	]
}

修改混流配置

POST /interactive/api/modify_mix_config

URL 参数

参数 描述 取值
interactive 互动直播 ID string

JSON 参数

需要传入一个数组,数组元素定义如下:

参数 描述 取值
index 第几个流,从 0 开始 int
address MRTC 地址 string
width 视频宽 int
height 视频高 int
position_x 视频在混流中的水平位置 int
position_y 视频在混流中的垂直位置 int
position_z 视频在混流中的层级 int
volume 视频音量 string
opacity 视频透明度 string
stretchMode 是否拉伸 int

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg 空字符串或错误信息 string

返回示例:

{
	"errcode": 1000,
	"msg": ""
}

错误码

错误代码 错误描述
1200 数据库操作失败
1201 Interactiv 不存在
1202 Stream 不存在
1203 hasd Encode 编码错误
1204 hasd IDDecode 编码错误
1205 hasd IDDecode 编码错误
1206 非法参数
1207 流数量错误
1220 混流停止失败
1221 RTMP设置失败
1222 混流已开启
1223 混流已关闭
1224 混流开启失败
1225 混流关闭失败
1226 获取节点失败
1227 获取混流锁失败
1227 获取混流锁失败
1229 混流服务错误,请检查混流服务
1260 获取混流列表失败
1261 达到混流数限制
1262 达到推拉流数限制
1263 达到MRTC流数限制
1264 获取配置错误
1265 混流个数出错
1266 统计推拉流个数出错
1267 统计流个数出错
1230 推拉流停止失败
1231 推拉流开启失败
1240 修改场景,index 参数不匹配