Miku 直播

  • Miku 直播 > API 文档 > Pub转推API >创建任务

    创建任务

    最近更新时间: 2025-12-25 11:39:11

    描述

    在服务端创建一个 pub 转推任务。

    接口信息

    • 请求方法: POST
    • 请求地址: pub-manager.mikudns.com
    • 请求路径: /tasks

    请求参数

    Header 参数

    参数名称 类型 必填 示例值 描述
    Host string pub-manager.mikudns.com 服务域名
    Authorization string <QiniuToken> 管理凭证 QiniuToken,生成规则

    Body 参数 (application/json)

    参数名称 类型 必填 描述
    name string 任务名称,1-20 个数字或字母,单用户内唯一
    desc string 任务描述
    sourceUrls array 源地址列表,长度需 >= 1;长度 > 1 时为播单模式,数组对象字段可见 sourceUrls
    runType string 任务类型,normal 普通转推,seek seek 转推
    forwardUrls array 转推地址列表,长度需 >= 1,数组对象字段可见 forwardUrls
    filter object 转推机器筛选(area/isp/ips),对象字段可见 filter
    loopTimes integer 循环次数,默认 0 不循环,-1 无限循环
    retryTime integer 总断流重试时间,pub 任务转推中断后会在断流重试时间内不断进行重新连接,直至重连成功或者达到设定的总断流重试时间。在单位:s,必须大于等于60。注:任务中断(正常结束或者失败)重试后,运行时间超过 1 分钟,认为重连成功,会重置 retryTime。(不适合点播流,存在无限循环的可能)
    deliverStartTime integer 定时开始时间(毫秒),需大于当前时间且小于定时结束时间
    deliverStopTime integer 定时结束时间(毫秒),需大于当前时间且大于定时开始时间
    sustain boolean 循环转推不中断,true 单进程循环,false 每次循环重启进程
    preload object 预加载配置,enable/preloadTime,对象字段可见 preload
    statusCallback object 任务状态回调配置,对象字段可见 statusCallback

    sourceUrls

    字段 类型 必填 取值范围 描述
    url string - 源地址
    isp string 电信,联通,移动 运营商,用于指定推拉流运营商ip,如果填写即为默认
    seek integer - 起播偏移(秒)
    videoType integer 0: 直播 1: 点播 推流地址视频类型
    rtspType integer 0: rtsp udp, 1: rtsp tcp 拉流 rtsp 的传输类型,0 表示 udp 传输类型的 rtsp 流;1 表示 tcp 传输类型的 rtsp 流,默认参数为 0

    forwardUrls

    字段 类型 必填 取值范围 描述
    url string - 转推地址
    isp string 电信,联通,移动 运营商

    filter

    字段 类型 必填 取值范围 说明
    area string 东北, 华北, 华中, 华东, 华南, 西北, 西南, 其它 地域,用于指定该地址的实例,执行任务
    isp string 电信,联通,移动 运营商,过滤包含该运营商的实例
    ips string[] pub 对外 ip 地址 ip 地址列表,过滤包含该 ip 地址的实例

    preload

    字段 类型 必填 取值范围 说明
    enable boolean - 是否开启预加载
    preloadTime integer 大于当前时间 预加载开始时间,ms,默认为定时任务开始时间前 5 min 开始

    statusCallback

    字段 类型 必填 取值范围 说明
    type string GET、FORM、JSON 请求类型,为空表示不回调通知
    url string - 用户自定义回调通知地址
    vars object - 自定义配置回调参数,支持魔法变量(详见下方 系统内置参数

    系统内置参数

    参数 Value 说明
    $(taskID) pub 任务 id
    $(status) pub 任务状态
    $(startTime) 最新一次 pub 任务开始时间
    $(stopTime) 最新一次 pub 任务结束时间
    $(params) pub 任务运行参数

    请求示例

    POST /tasks HTTP/1.1
    Host: pub-manager.mikudns.com 
    Authorization: <QiniuToken>
    Content-Type: application/json
    
    {
      "name": "task-001",
      "desc": "demo task",
      "sourceUrls": [
        {
          "url": "rtmp://example.com/live/stream",
          "isp": "",
          "seek": 0,
          "videoType": 0,
          "rtspType": 0
        }
      ],
      "runType": "seek",
      "forwardUrls": [
        {
          "url": "rtmp://push.example.com/app/stream",
          "isp": ""
        }
      ],
      "filter": {
        "ips": [],
        "area": "",
        "isp": ""
      },
      "loopTimes": 0,
      "retryTime": 60,
      "deliverStartTime": 1784947040000,
      "deliverStopTime": 1796390400000,
      "sustain": false,
      "preload": {
        "enable": true,
        "preloadTime": 1766390400000
      },
      "statusCallback": {
        "type": "JSON",
        "url": "https://callback.example.com",
        "vars": {
          "taskid": "$(taskID)",
          "status": "$(status)",
          "startTime": "$(startTime)",
          "stopTime": "$(stopTime)"
        }
      }
    }
    

    返回响应

    响应状态码

    响应示例

    {
      "taskID": "taskID"
    }
    

    响应参数

    参数名称 类型 说明
    taskID string 任务 id
    以上内容是否对您有帮助?