全部产品
云市场
云游戏

主调接口

更新时间:2020-09-04 15:02:04

Connect

请求参数 类型 描述
config_param {} config_param 是一个结构体, 里面包含如下字段:
  • uid:int 类型,必填,用户唯一标识, 由客户端透传而来。
  • room_server_url:String 类型,必填,房间服务器地址。
  • biz_name:String 类型,必填,业务标识。
  • sub_biz:String 类型,必填,业务标识。
  • 回调接口异步返回
    • OnConnectOK()
    • OnConnectFailed(err_code, err_msg)

Disconnect

  • 说明
    断开连接。调用 Disconnect() 接口,会触发离开房间,离开房间之前会关闭发布和订阅的流。即:断开连接 > 离开房间 > 关闭房间所有流
  • 参数
    无。
  • 回调接口异步返回
    • OnConnectClose()

InitRoomConfig

  • 说明
    初始化房间。

    请求参数 类型 描述
    config_param {} autopublish_subscribe:int 类型,必填,发布订阅模式
      1:自动订阅。
      2:自动发布。
      3:自动订阅 + 自动发布。
      4:均不自动,由业务自己操作。
    third_id:String 类型,业务关联 id,默认为空。
    need_volume_analyser:boolean 类型,默认为 false,是否需要实时音量值。
    transport
    :String 类型,传输方式,可选为 all/relay,默认为 all。
    defaultTurnServer:String 类型,自定义中转服务器。
    liveUrl:String 类型,非必填(直播模式必填),直播地址。
    publish_type:int 类型,非必填(直播模式必填)。
    • 2:RTC 模式
    • 3:直播模式
    defaultRecord:boolean 类型,非必填,服务端是否默认录制,默认为 false。
    recordStrongDepend:boolean 类型,是否强依赖录制,默认为 true。若为 true,则录制如果没启动成功,音视频通话也不能成功。
    record_third_id:String 类型,录制三方 ID,用于业务方区分调用批次,在启动成功/失败的回调中返回,非必传。
    recordParam:json 类型,录制参数,非必填。
      silentRecord:boolean 类型,静默录制,默认为 false   width:int 类型,宽度,默认为 640
      height:int 类型,高度,默认为 360
      fps:int 类型,帧率,默认为 20
      sampleRate:int 类型,音频采样率,默认为 48000
      channels:int 类型,声道,默认为 1
      audioCodeRate:int 类型,音频码率,默认为 32000
      startTimeout:int 类型,录制开启超时时间,默认为 10s
      recordTotalStream:int 类型,最小成功开启录制流的条数,默认为 0
      splitType:int 类型
        0:音视频(默认)
        1:纯音频 + 音视频
        2:纯视频 + 音视频
      splitFilePath:String 类型,分离文件的存储路径,默认为空
      recordFormat:int 类型,录制类型
        1:mp4
        2:flv
      layoutMode:布局类型
        0:双人模式
        1:画中画模式(双人)
        2:多人录制模式
      multiModeType:多人录制模板类型
        1:默认是奇特殊偶平分(横版)
        2:奇特殊偶平分(竖版)
      rtWatermark:int 类型,实时时间水印,0 表示不设置,1/2/3/4 表示设置位置分别为左上角,右上角,左下角,右下角,默认为 1
      waterMark:int 类型,图片水印,0 表示不设置,1/2/3/4 表示设置位置分别为左上角,右上角,左下角,右下角,默认为 1
      waterMarkUrl:图片水印 URL,用于下载
      textWatermark:int 类型,文字水印,0 表示不设置,1/2/3/4 表示设置位置分别为左上角,右上角,左下角,右下角,默认为 0
      text:String 类型,文字水印文字内容
      tagFilter:String 类型,匹配上发布端的 tag 前缀才能订阅录制;默认为空,表示全匹配
      tagPosition:String 类型,指定 TAG 的布局位置
    filePath:String 类型,非必填,服务端录制路径(若指定 filePath,则需指定 defaultRecord 为 true)
    若 auto_publish_subscribe=1,需要以下参数:
    initSubscribe:Array 类型,订阅参数。
    subscribe_video_id:必填,订阅视频控制标签 ID,用于展示视频流。
    例如:<video id="video1" width="auto" height="auto"> video</video>
    subscribe_audio_id:必填,用于展示订阅音频流。
    例如:<audio id="audio1" autoplay>音频</audio>
    feedId_id:必填,label 标签,用于展示 feedId。
    例如:<label id="feedId" type="text"></label>
    subscribe_streamId_id:必填,label 标签,用于展示 streamId。
    例如:<label id="streamId" type="text"></label>
    例如:
    initSubscribe = [
    {
    subscribe_video_id: “video1”,
    subscribe_audio_id: “audio1”,
    subscribe_streamId_id: “streamId”,
    feedId_id: “feedId”
    },{},{}];


    若 auto_publish_subscribe=2,需要以下参数:
    media_type:int 类型,必填,音视频类型。
      1:音视频;
      2:纯音频;
      3:纯视频。
    publish_bitrate:int 类型,选填,发布最大码率,默认为 600 Kbps
    publish_device:int 类型,必填,发布类型。
      1:摄像头;
      2:共享桌面
      3:发布文件(图片和视频)
      4:发布自定义页面区域

    当 publish_device=1 时:
    videoSource:String 类型,可选,摄像头的 deviceId,用于发布指定摄像头。
    audioSource:String 类型,可选,麦克风的 deviceId,用于发布指定麦克风。
    aspectRatioStrongDepend:boolean 类型,默认为 false,是否强制指定横纵比。
    aspectRatio:String 类型,可选(当 aspectRatioStrongDepend=true 时必填)
      1:4:3
      2:16:9

    video_profile_type:int 类型,可选,本地视频清晰度档位。
      1:720p(HD), 1280x720, 16:9
      2:VGA, 640x480, 4:3
      3:360p(nHD), 640x360, 16:9
      4:CIF, 352x288, 4:3
    initPublish:Array 类型,必填,发布参数。
    publish_video_id:根据 media_type 选填,发布视频控制标签,用于展示视频流。
    publish_streamId_id:必填,label 标签,用于展示 streamId。
    publish_tag:必填,业务自定义。
    initPublish = [
        {publish_video_id: “publish_video1”, publish_streamId_id: “publish_streamId1”, publish_tag: “tag1”},
        {publish_video_id: “publish_video2”, publish_streamId_id: “publish_streamId2”, publish_tag: “tag2”},
        {publish_video_id: “publish_video3”, publish_streamId_id: “publish_streamId3”, publish_tag: “tag3”}
    ];


    若 auto_publish_subscribe=3,需要以下参数:
    media_type:int 类型,必填,音视频类型。
      1:音视频;
      2:纯音频;
      3:纯视频。
    publish_bitrate:int 类型,选填,发布最大码率,默认为 600 Kbps
    publish_device:int 类型,必填,发布类型。
      1:摄像头
      2:共享桌面
      3:发布文件(图片和视频)
      4:发布自定义页面区域
    video_profile_type:int 类型,可选,本地视频清晰度档位。
      1:720p(HD), 1280x720, 16:9
      2:VGA, 640x480, 4:3
      3:360p(nHD), 640x360, 16:9
      4: CIF, 352x288, 4:3
    initPublish:Array 类型,必填,发布参数。
      publish_video_id:根据 media_type 选填,发布视频控制标签,用于展示视频流。
      publish_streamId_id:必填,label 标签,用于展示 streamId。
      publish_tag:必填,业务自定义。
    例如:
    initPublish = [
               {publish_video_id: “publish_video1”, publish_streamId_id: “publish_streamId1”, publish_tag: “tag1”},
               {publish_video_id: “publish_video2”, publish_streamId_id: “publish_streamId2”, publish_tag: “tag2”},
               {publish_video_id: “publish_video3”, publish_streamId_id: “publish_streamId3”, publish_tag: “tag3”}
           ];


    initSubscribe:Array 类型,订阅参数。
      subscribe_video_id:必填,订阅视频控制标签,用于展示视频流。
      subscribe_audio_id:必填,用于展示订阅音频流
      feedId_id:必填,label 标签,用于展示 feedId。
      subscribe_streamId_id:必填,label 标签,用于展示 streamId。
    例如:
    initSubscribe = [
        {
          subscribe_video_id: “video1”,
          subscribe_audio_id: “audio1”,
          subscribe_streamId_id: “subscribe_streamId1”,
          feedId_id: “feedId1”
        },{},{}];
    bizName String 业务名
    subBiz String 子业务
    uid String 用户 ID
  • 回调接口异步返回

    • OnInitRoomConfigOK()
    • OnInitRoomConfigFail(err_code, err_msg)

CreateRoom

  • 说明
    创建房间。
  • 参数
    无。
  • 回调接口异步返回
    • OnCreateRoomSucc(room_id, rtoken)
    • OnCreateRoomFailed()

JoinRoom

  • 说明
    加入房间。
  • 参数
请求参数 类型 描述
room_id String 房间 ID
rtoken String 房间 token,相当于房间密码
engine int 0:alipay,为默认值
1:aliyun
  • 回调接口异步返回
    • OnJoinRoomSucc()
    • OnJoinRoomFailed(err_code, err_msg)

Invite

  • 说明
    邀请加入房间。
  • 参数
请求参数 类型 描述
invitee String 被邀请方 uid
channelType int 推送渠道
0:WEB
1:ALIPAY
extra String 业务透传字段
  • 回调接口异步返回
    • OnInviteOK()
    • OnInviteFail(err_code, err_msg)

ReplyInvite

  • 说明
    回复邀请加入房间。
  • 参数
请求参数 类型 描述
roomId String 房间 ID
inviter String 邀请方 uid
reply int 0:接听
2:拒绝
  • 回调接口异步返回
    • OnReplyInviteOK()
    • OnReplyInviteFail(err_code, err_msg)

LeaveRoom

  • 说明
    退出房间。
  • 参数
    无。
  • 回调接口异步返回
    • OnLeaveRoom()

Publish

  • 说明
    发布媒体流。
  • 参数
请求参数 类型 描述
config_param {} media_type:int 类型,必填,音视频类型。
1:音视频。
2:纯音频。
3:纯视频。
publish_bitrate:int 类型,选填,发布最大码率,默认为 600 Kbps。
publish_device:int 类型,必填,发布类型。
1:摄像头;
2:共享桌面。
3:发布文件(图片和视频)
4:发布自定义页面区域。
video_profile_type:int 类型,可选,本地视频清晰度档位。
1:720p(HD), 1280x720, 16:9
2:VGA, 640x480, 4:3
3:360p(nHD), 640x360, 16:9
local_video_id:String 类型,根据 media_type 选填,发布视频控制标签,用于展示视频流。
publish_streamId_id:String 类型,必填,label 标签,用于展示 streamId。
publish_tag:String 类型,业务指定 tag。
need_volume_analyser:boolean 类型,默认为 false,是否需要实时音量值。
file:file,可选(publish_device=3 时必填),图片或视频文件。
例如:let file = document.getElementById('file').files[0];
part_of_screen_id:String 类型,可选(publish_device=4 时必填),需要共享区域的 div 的 id 值。
例如:<div id="part_of_screen_id"></div>
publish_device=1 时:
videoSource:String 类型,可选,摄像头的 deviceId,用于发布指定摄像头。
audioSource:String 类型,可选,麦克风的 deviceId, 用于发布指定麦克风。
aspectRatioStrongDepend:boolean 类型,可选,默认为 false,是否强制指定横纵比
aspectRatio:String 类型,可选(aspectRatioStrongDepend=true 时必填):
1:4:3
2:16:9
publish_bitrate:int 类型,选填,发布最大码率,默认 600 Kbps。
  • 调接口异步返回
    • OnPublishSucc(sid)
    • OnPublishFailed(sid,err_code, err_msg)

Subscribe

  • 说明
    订阅某路媒体流。
  • 参数
请求参数 类型 描述
config_param {} subscribe_video_id:String 类型,必填,订阅视频控制标签, 用于展示视频流。
subscribe_audio_id:String 类型,必填,用于展示订阅音频流。
subscribe_streamId_id:String 类型,必填,label 标签,用于展示 streamId。
feedId_id:String 类型,必填,label 标签,用于展示 feedId。
feedId:订阅的流 id。
need_volume_analyser:boolean 类型,默认为 false,是否需要实时音量值。
  • 回调接口异步返回
    • OnSubscribeSucc(feedId,sid)
    • OnSubscribeFailed(sid,err_code, err_msg)

SetLocalAudioEnable

  • 说明
    开启/关闭本地麦克风。
  • 参数
请求参数 类型 描述
enabled int 1:开
0:关
sid int 流 id

SetLocalVideoEnable

  • 说明
    开启/关闭本地摄像头。
  • 参数
请求参数 类型 描述
enabled int
1:开
0:关
sid int 流 id

SetLocalCodecType

  • 说明
    设置视频编码格式。
  • 参数
请求参数 类型 描述
type String
H264
VP8

3.1.14 SetLocalProtoType

  • 说明
    设置音视频传输协议。
  • 参数
请求参数 类型 描述
type String
all
tcp
udp

TakePicture

  • 说明
    截图。
  • 参数
请求参数 类型 描述
type int
0:表示截取本地端
1:表示截取远端图像
width int 图像宽度
height int 图像高度
sid int 流 id
picture_type int 输出图片格式:
1:png
2:jpeg/jpg

StopRecord

  • 说明
    停止浏览器录制,与 StartBrowserRecord 接口配合使用。
    离开房间之前需要调用此接口,否则无法获取 blob 数据。
  • 参数
请求参数 类型 描述
clientRecordId String 浏览器录制 id
  • 回调接口异步返回
    • OnClientStopRecordSuccess(videoURL, clientRecordBlob, clientRecordId)
    • OnClientStopRecordFailed(clientRecordId, code, msg)

PauseRecord

  • 说明
    暂停浏览器录制,与 ResumeRecord 接口配合使用。
  • 参数
请求参数 类型 描述
clientRecordId String 浏览器录制 id
  • 回调接口异步返回
    • OnClientPauseRecordSuccess(clientRecordId)
    • OnClientPauseRecordFailed(clientRecordId, code, msg)

ResumeRecord

  • 说明
    继续浏览器录制,与 PauseRecord 接口配合使用。
  • 参数
请求参数 类型 描述
clientRecordId String 浏览器录制 id
  • 回调接口异步返回
    • OnClientResumeRecordSuccess(clientRecordId)
    • OnClientResumeRecordFailed(clientRecordId, code, msg)

DownloadRecord

  • 说明
    下载浏览器录制音视频,需要在离开房间之前下载。
  • 参数
请求参数 类型 描述
clientRecordId String 浏览器录制 id
fileName String 指定文件名
  • 回调接口异步返回
    • OnClientDownloadRecordSuccess(clientRecordId)
    • OnClientDownloadRecordFailed(clientRecordId, code, msg)

StartRemoteRecord

请求参数 类型 描述
file_path String 选填,服务端录制路径
record_param json 录制参数,非必填
silentRecord:boolean 类型,静默录制,默认为 false
width:int 类型,宽度,默认为 640
height:int 类型,高度,默认为 360
fps:int 类型,帧率,默认为 20
sampleRate:int 类型,音频采样率,默认为 48000
channels:int 类型,声道,默认为 1
audioCodeRate:int 类型,音频码率,默认为 32000
startTimeout:int 类型,录制开启超时时间,默认为 10s
recordTotalStream:int 类型,最小成功开启录制流的条数,默认为 0
splitType:int 类型
    0:音视频(默认)
    1:纯音频 + 音视频
    2:纯视频 + 音视频
splitFilePath:String 类型,分离文件的存储路径,默认为空
recordFormat:int 类型,录制类型
    1:mp4
    2:flv
layoutMode:布局类型
    0:双人模式
    1:画中画模式(双人)
    2:多人录制模式
multiModeType:多人录制模板类型
    1:默认是奇特殊偶平分(横版)
    2:奇特殊偶平分(竖版)
rtWatermark:实时时间水印,0 表示不设置,1/2/3/4 表示设置位置分别为左上角,右上角,左下角,右下角,默认为 1
waterMark:图片水印,0 表示不设置,1/2/3/4 表示设置位置分别为左上角,右上角,左下角,右下角,默认为 1
waterMarkUrl:图片水印 URL 用于下载
textWatermark:int 类型,文字水印,0 表示不设置,1/2/3/4 表示设置位置分别为左上角,右上角,左下角,右下角,默认为 0
text:String 类型,文字水印文字内容
tagFilter:String 类型,匹配发布端的 tag 前缀才能订阅录制;默认为空,表示全匹配
tagPosition:String 类型,指定 TAG 的布局位置
record_third_id String 录制三方 id,用于业务方区分调用批次,在启动成功/失败的回调中返回,非必传。
  • 回调接口异步返回
    • OnInitRemoteRecordSucc(record_id, record_third_id):服务端录制初始化成功。
    • OnStartRemoteRecordSucc(record_id, record_third_id):服务端录制启动成功,晚于 OnInitRemoteRecordSucc
    • OnStartRemoteRecordFailed(record_id, err_code, err_msg, record_third_id):服务端录制启动失败。

StopRemoteRecord

请求参数 类型 描述
record_id String 服务端录制 id
  • 回调接口异步返回
    • OnStopRecordSucc(recordId)
    • OnStopRecordFailed(recordId,err_code, err_msg)

GetRecordInfo

  • 说明
    获取服务端录制结果。调用此接口会回调 OnGetSign(bizName,subBiz,record_id) 来获取签名,同时 OnGetSign 中的 uid 会替换为此处的 record_id
  • 参数
请求参数 类型 描述
record_id String 服务端录制 id
room_id String 房间号
media_type int 文件内容类型:
0:音视频(默认)
1:纯音频
2:纯视频
  • 回调接口异步返回
    • OnRecordInfoSucc(recordInfo)
    • OnRecordInfoFailed(recordId,err_code, err_msg)

UnPublish

  • 说明
    取消发布媒体流。
  • 参数
请求参数 类型 描述
sid int 流 id
  • 回调接口异步返回
    • OnUnPublishSucc(sid)

UnSubscribe

  • 说明
    取消订阅某路媒体流。
  • 参数
请求参数 类型 描述
sid int 流 id
  • 回调接口异步返回
    • OnUnSubscribeSucc(sid)

SendTextMsg

  • 说明
    发送文本消息。
  • 参数
请求参数 类型 描述
msg String 消息文本
participants Array 发送目标 id(为空则发给与会其他所有人)

SetPublishWeakBitrateLimit

请求参数 类型 描述
weak_bitrate int 发布弱网码率告警下限:
音频 + 视频:默认为 200
单独音频:默认为 20-25

SetSubscribeWeakBitrateLimit

请求参数 类型 描述
weak_bitrate int 订阅弱网码率告警下限
弱网码率告警下限
音频+视频:默认为 200
单独音频:默认为 20-25

StartAsr(config)

  • 说明
    开始语音识别。
  • 参数
请求参数 类型 描述
config json
sid:int 类型,流 id
idleTime:int 类型,间隔多少时间没收到 asr 识别返回就通知上层业务,默认 0 表示不通知,单位为秒
procType:proc 引擎类型,默认为 8
tag:String 类型, 业务透传字段

StopAsr(sid)

  • 说明
    停止语音识别。
  • 参数
请求参数 类型 描述
sid int 流 id

StartVod(vodParams)

  • 说明
    开始语音点播。
  • 参数
请求参数 类型 描述
vodParams json vodFile:点播文件名
vodStartTimeout:开启点播超时时间(单位为秒,默认为 5s)
  • 回调接口异步返回
    • OnStartVodSuccess(file, vod_id)
    • OnStartVodFail(file, vod_id, err_code, err_msg)

StopVod(vod_id)

  • 说明
    停止语音点播。
  • 参数
请求参数 类型 描述
vod_id String 点播 id
  • 回调接口异步返回
    • OnStopVodSuccess(vod_id)
    • OnStopVodFail(vod_id, err_code, err_msg)

DownloadLog()

  • 说明
    日志上报,调用此接口可下载控制台日志到 PC 本机(默认最长 10000 行日志)。
  • 参数
    无。

StartTts(config)

  • 说明
    开始语音合成。
  • 参数
    无。
请求参数 类型 样例 说明
config json {
“output”: {
“tone”: 0,
“sampling_rate”: 48000,
“code_rate”: 64,
“volume”: 100,
“speaker”: 1,
“speed”: 0,
“format”: 2 },
“text_body”: “斯蒂芬”,
“resultType”: “1”
}
config 下主要有三个节点:
output:合成语音文件的要求。
text_body:需要合成语音文件的文字。
resultType:合成结果访问方式,默认为 1,即 文件方式
output 节点下参数说明:
tone:音调,默认为 0。
sampling_rate:采样率,默认为 48000。
code_rate:码率,默认为 64,单位为 k。
volume:音量,默认为 100。
speaker:人声,默认为 1。
    0:支付宝标准女声,仅支持中文
    1:小琳,甜美女声,支持中英文
    100:思悦,温柔女声,支持中英文
    101:思佳,标准女声,支持中英文
    102:思琪,温柔女声,支持中英文
    103:思彤,童声,支持中英文
    104:小贝,萝莉女声,仅支持中文
speed:语速,默认为 0。
format:输出格式,默认为 2,即 wav 格式
  • 回调接口异步返回
    • OnStartTtsSuccess(sessionId)
    • OnStartTtsFailed(err_code, err_msg)

StopTts()

  • 说明
    停止语音合成。
  • 参数
    无。

ChangeMediaStream()

  • 说明
    自定义切流。
  • 参数
请求参数 类型 描述
config json publish_device:必填,发布类型。
publish_bitrate:int 类型,选填,发布最大码率,默认为 600 Kbps
media_type:必填,音视频类型。
sid:必填,已发布流 id。
publish_device=1
    video_profile_type:选填,分辨率。
    videoSource:String 类型,可选,摄像头的 deviceId,用于切换指定摄像头。
    audioSource:String 类型,可选,麦克风的 deviceId,用于切换指定麦克风。
    aspectRatioStrongDepend:boolean 类型,默认为 false,是否强制指定横纵比。
    aspectRatio:String 类型,可选(aspectRatioStrongDepend=true 时必填)
        1:4:3
        2:16:9
file:选填,图片或视频文件,publish_device=3 时必填。
part_of_screen_id:选填,需要发布的自定义区域,publish_device=4 时必填。
  • 回调接口异步返回
    • OnChangeMediaStreamSuccess(sid)
    • OnChangeMediaStreamFailed(sid,code, msg)

ChangeProfile()

  • 说明
    动态切换(分辨率、摄像头麦克风、横纵比)
  • 参数
请求参数 类型 描述
config json
sid:必填,已发布流 id。
video_profile_type:选填,分辨率。
local_video_width:选填,宽度。
local_video_height:选填,高度。
videoSource:String 类型,可选,摄像头的 deviceId,用于切换指定摄像头。
audioSource:String 类型,可选,麦克风的 deviceId,用于切换指定麦克风。
aspectRatioStrongDepend:boolean 类型,默认为 false,是否强制指定横纵比。
aspectRatio:String 类型,可选(aspectRatioStrongDependtrue 时必填)。
    1:4:3
    2:16:9
  • 回调接口异步返回
    • OnChangeMediaStreamSuccess(sid)
    • OnChangeMediaStreamFailed(sid,code, msg)

GetDevices()

  • 说明
    获取设备信息。
  • 参数
    无。
  • 回调接口异步返回
    • OnGetDevicesSuccess(devicesInfo)
    • OnGetDevicesFailed(code, msg)

StartBrowserRecord

  • 说明
    开启浏览器录制(近端录制),指基于浏览器的 native 录制能力进行录制。目前只支持录制两条流,不支持录制点播机器人。
  • 参数
请求参数 类型 描述
clientRecordId String 浏览器录制 id
stream_list array 流 id(sid)
record_config json media_type:int 类型,录制选项
    1:音视频
    2:纯音频
    3:纯视频
record_type:int 类型,录制分离
    1:多端合并
    2:本地
    3:远端
time_slice:int 类型,录制 blob 通知间隔时间,默认为 30,单位为 min
video_profile:json 类型
    videoCodec:String 类型,视频编码格式,h264/vp8/vp9
    frameRate:int 类型,帧率
  • 回调接口异步返回
    • OnClientStartRecordSuccess(clientRecordId)
    • OnClientStartRecordFailed(clientRecordId, code, msg)

PauseRemoteRecord

请求参数 类型 描述
record_id String 服务端录制 id
  • 回调接口异步返回
    • OnPauseRemoteRecordSucc(record_id)
    • OnPauseRemoteRecordFailed(record_id, err_code, err_msg)

ResumeRemoteRecord

请求参数 类型 描述
record_id String 服务端录制 id
  • 回调接口异步返回
    • OnResumeRemoteRecordSucc(record_id)
    • OnResumeRemoteRecordFailed(record_id, err_code, err_msg)