logo
实时音视频
服务端 API
场景服务接口
当前页

RTMPDispatchV2

GET

https://rtc-api.zego.im/

调用本接口可以发起 RTMP 推拉流调度,支持 "pull" 和 "push" 两种调度模式。

当您需要自行通过 RTMP 协议,从 ZEGO 音视频云进行直播流的推流或拉流时,可以通过本接口获取 RTMP 的推流或拉流节点。开发者在客户端传入流 ID(StreamId)、调度模式(Type)、客户端 IP(ClientIP)和序列号(Sequence)后,ZEGO 媒体服务器(RTC 服务)返回调度结果集,供客户推拉流。

例如,当通过 OBS 等第三方推流工具进行 RTMP 推流时,需要进行推流调度;当需要第三方播放器拉 RTMP 流进行播放时,需要进行拉流调度。

注意

首次使用本接口,需要联系 ZEGO 技术支持进行配置。

调用频率限制
同一个 AppID 下:40 次/秒

旧版接口使用说明

说明

RTMPDispatchV2(推荐)RTMPDispatch 的区别是,访问 ZEGO 服务端时:

  • 使用的是 RTMPDispatchV2,ZEGO 服务端返回的 Data 数据为 URL 形式。
  • 使用的是 RTMPDispatch,ZEGO 服务端返回的 Data 数据为 IP Port 形式。

请求地址:https://rtc-api.zego.im/?Action=RTMPDispatch

响应示例:

{
    "Code":0,
    "Message":"ok",
    "RequestId":"5094436160208407316",
    "Data":[
        "81.69.49.115:1935"
    ]
}

说明

测试环境下(详见 IsTest 公共参数说明),流 ID 需要加上 "zegotest-AppId-" 前缀。例如,流 ID 为 "test",在 AppId 为 "123456789" 的测试环境下,流 ID 应为 "zegotest-123456789-test"。

Request

Query Parameters

    Action stringrequired

    Possible values: [RTMPDispatchV2]

    接口原型参数

    https://rtc-api.zego.im?Action=RTMPDispatchV2

    AppId uint32required

    💡公共参数。AppId,ZEGO 分配的用户唯一凭证。

    SignatureNonce stringrequired

    💡公共参数。随机字符串。

    Timestamp int64required

    💡公共参数。Unix 时间戳,单位为秒。最多允许 10 分钟的误差。

    Signature stringrequired

    💡公共参数。签名,用于验证请求的合法性。

    SignatureVersion stringrequired

    Possible values: [2.0]

    Default value: 2.0

    💡公共参数。签名版本号。

    IsTest string

    Possible values: [true, false]

    Default value: false

    💡公共参数。是否为测试环境。设为 true 表示使用测试环境。2021-11-16 及之前在 ZEGO 控制台创建的项目默认是测试环境,可根据业务需求设置此参数;而之后创建的项目默认是正式环境。

    StreamId stringrequired

    流 ID,长度不超过 256 的字符串。

    • 流 ID 由您自己定义。
    • 在推流时,需要在整个 AppID 内全局唯一,若出现在同一个 AppID 内,不同的用户各推了一条流且流名相同,将会导致后推流的用户推流失败。
    • 仅支持数字,英文字符 和 '-', '_'。
    Sequence Int64required

    请求序列号;仅用于请求对帐,推荐使用时间戳(毫秒级别)。

    Type stringrequired

    调度模式:

    • pull:获取 RTMP 的拉流节点
    • push:获取 RTMP 的推流节点
    ClientIP string

    非必选,如有,则传入客户端 IP 地址,例如:119.23.242.129。

    注意

    当前不支持 IPv6 格式的 IP 地址。

Responses

成功
Schema
    Code number

    返回码。 以下仅列出了接口业务逻辑相关的部分返回码,完整返回码请参考 全局返回码

    返回码说明处理建议
    1010、30002接口调用频率过高。请降低接口请求频率。
    1001调度失败。请联系 ZEGO 技术支持处理。
    1002推流节点为空。请联系 ZEGO 技术支持处理。
    1003拉流节点为空。请联系 ZEGO 技术支持处理。
    1005App 不在线。请联系 ZEGO 技术支持处理。
    1006无效参数。请联系 ZEGO 技术支持处理。
    30003内部错误。请联系 ZEGO 技术支持处理。
    30004参数 isTest 错误。请检查公共请求参数 isTest 是否正确。
    30005无效的 AppId。请检查 AppId 是否正确。
    30009无效的 StreamId,流名不规范。请检查 StreamId 是否符合流名编码规范。
    30010无效的调度动作。请检查 Type 是否正确。
    30011无效的客户端 IP 地址。请检查 ClientIP 是否正确。
    Message string

    操作结果描述

    RequestId string

    请求 ID

    Data object

    RTMP 推流或拉流节点。

    说明

    获取此节点后,请在 2 小时内发起推流或拉流,否则可能导致节点被占用或下线。因此,建议每次进行 RTMP 推拉流时,都调用本接口获得最新的节点。


Request
Collapse all
Base URL
https://rtc-api.zego.im
统一接入地址(不区分区域)
Parameters
queryrequired
queryrequired
queryrequired
queryrequired
queryrequired
queryrequired
queryrequired
queryrequired
queryrequired
query
query
RESPONSEClear

Click the "Send" button above and see the response here!

Previous

清空旁路推流

Next

RTC 流状态查询

当前页

返回到顶部