Live/thirdapi

跳转到: 导航, 搜索
(第三方提供回调接口)
(第三方直播源接入流程)
 
(未显示1个用户的4个中间版本)
第1行: 第1行:
 
=直播服务第三方接入=
 
=直播服务第三方接入=
 
==第三方直播源接入流程==
 
==第三方直播源接入流程==
适用有自有的直播CDN服务的第三方接入:
+
这种接入方式适用于已有直播服务的开发者。
 +
开发者将包含其直播间页面URL的博文,通过微博平台接口分享至微博,微博会识别开发者的URL域名,然后回调其提供的直播信息接口,获取该URL的直播信息,最后带有该直播URL的微博会以直播的形式展现给用户。
  
第一步:第三方申请微博开发者,获取平台分配的应用appkey [http://open.weibo.com/wiki/%E6%96%B0%E6%89%8B%E6%8C%87%E5%8D%97 详见新手指南]
+
开发者接入步骤如下:
  
第二步:第三方提供分享到微博的直播播放落地页url
+
第一步:申请成为微博平台开发者。[http://open.weibo.com/wiki/%E6%96%B0%E6%89%8B%E6%8C%87%E5%8D%97 详见新手指南]
  
第三步:第三方提供回调接口,平台提供domainid,详见下文
+
第二步:提供直播页面的URL域名。
  
第四步:平台配置分享url第三方回调,解析直播播放card
+
第三步:提供直播信息回调接口。 详见下文
+
回调触发机制:新的url分享到微博默认回调,平台永久缓存对应的直播对象信息,之后除非触发某种更新机制,会再次回调
+
  
第五步:平台申请直播业务bizid,配置客户端和PC端的直播card解析
+
第四步:直播信息若有变动(如直播开始和结束),需要主动调用微博接口更新该直播信息。 详见下文
  
第六步:第三方主动更新直播信息,平台分配加密秘钥,详见下文
+
第五步:开发联调,测试上线。
  
 
==第三方提供回调接口==
 
==第三方提供回调接口==
第335行: 第334行:
 
{{rdes_args|code|string|错误代码,0 请求正常,其他错误详见下文的错误代码说明}}
 
{{rdes_args|code|string|错误代码,0 请求正常,其他错误详见下文的错误代码说明}}
 
{{rdes_args|msg|string|错误信息}}
 
{{rdes_args|msg|string|错误信息}}
{{rdes_args|data|string|如果请求正常,返回直播对象信息}}
+
{{rdes_args|data|string|如果请求正常,返回空数组}}
 
|}
 
|}
  
 
示例:
 
示例:
  
<pre>
+
<pre class="brush:js">
 
{
 
{
+
    "code": 0,
 +
    "msg": "OK",
 +
    "data": [ ]
 
}
 
}
 
</pre>
 
</pre>
第358行: 第359行:
 
!width="40%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|错误msg
 
!width="40%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|错误msg
 
!width="45%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|描述
 
!width="45%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|描述
{{rdes_args|10000|sign_error|sign值错误}}
+
{{rdes_args|100000|sign_error|sign值错误}}
{{rdes_args|10001|id_error|直播id不存在}}
+
{{rdes_args|100001|id_error|直播id不存在}}
{{rdes_args|10002|field_empty|字段为空}}
+
{{rdes_args|100002|field_empty|字段为空}}
{{rdes_args|10004|object_empty|直播id内容为空}}
+
{{rdes_args|100004|object_empty|直播id内容为空}}
{{rdes_args|10005|uid_error|uid错误}}
+
{{rdes_args|100005|uid_error|uid错误}}
{{rdes_args|10007|wesync_error|消息下发错误}}
+
{{rdes_args|100006|force_update_error|直播信息更新错误}}
 +
{{rdes_args|100007|wesync_error|消息下发错误}}
 +
{{rdes_args|100016|liveim_error|互动下发错误}}
 
|}
 
|}

2016年9月7日 (三) 20:21的最后版本

目录

直播服务第三方接入

第三方直播源接入流程

这种接入方式适用于已有直播服务的开发者。 开发者将包含其直播间页面URL的博文,通过微博平台接口分享至微博,微博会识别开发者的URL域名,然后回调其提供的直播信息接口,获取该URL的直播信息,最后带有该直播URL的微博会以直播的形式展现给用户。

开发者接入步骤如下:

第一步:申请成为微博平台开发者。详见新手指南

第二步:提供直播页面的URL域名。

第三步:提供直播信息回调接口。 详见下文

第四步:直播信息若有变动(如直播开始和结束),需要主动调用微博接口更新该直播信息。 详见下文

第五步:开发联调,测试上线。

第三方提供回调接口

URL : http://***.com/***?url=***

说明:由第三方提供该回调接口,返回完整的JSON格式的直播对象信息,参数url为透传第三方分享到微博的链接地址url

参数说明:

直播对象一级字段 二级字段 字段说明
summary - 微博文本内容,分享到微博的文本内容,如没有默认空
urls live_flv_hd 直播高清地址-flv格式,如没有默认空
live_flv_ld 直播标清地址-flv格式,如没有默认空
rtmp_hd 直播高清地址-rtmp格式,如没有默认空
rtmp_ld 直播标清地址-rtmp格式,如没有默认空
live_hd 直播高清地址-hls格式,如没有默认空
live_ld 直播标清地址-hls格式,如没有默认空,以上格式必须提供一种,如果没有分高标清,赋值成相同的地址
replay_hd 直播回放高清地址,如没有默认空
replay_ld 直播回放标清地址,如没有默认空
image width 封面图宽
height 封面图高
url 直播封面图地址
author id 直播主播对应的微博用户id(uid),如果第三方没有对应的微博UID,第三方回调接口请直接返回错误提示
object_type 直播主播类型,默认person
display_name 直播主播微博昵称,如没有默认空
live width 直播流宽,直播流原始分辨率,根据这个宽高比信息自适应直播播放器显示横屏竖屏
height 直播流高
bitrate 直播流码率
id - 直播对象ID,一般默认规则(domainid:md5(url)),冒号之前为微博平台分配的域名ID,冒号之后保证唯一值
object_type - 直播对象类型,填写live
object_type_detail - 直播对象详情,默认微博直播“weibolive”,第三方协商命名
mid - 直播主播分享的原创微博mid,目前第三方接入微博sdk的方式分享到微博无法获取到mid,只有通过服务层调用平台分享微博接口才能获取到mid,如没有默认空,影响互动打通等直播功能
display_name - 直播短链标题,默认“微博直播”,第三方协商命名
title - 直播标题
status - 直播实时状态(0 未开始,1 直播中,2 直播删除, 3 直播结束)
stime - 直播开始时间
etime - 直播结束时间
updated_at - 直播创建时间
duration - 直播持续时长
url - 第三方直播播放落地页地址
target_url - 第三方直播播放落地页地址,同url
share_text - 直播分享文案,如没有默认空
embed_code - 直播flash播放地址,如没有默认空,影响PC端展示解析
scheme_app_ios - 呼起第三方直播ios  app地址,默认空
scheme_app_android - 呼起第三方直播android app地址,默认空
app_ios_url - 呼起第三方直播ios app下载地址,默认空
app_android_url - 呼起第三方直播android app下载地址,默认空

示例:


{
    "summary": "【暴雨袭击江西南昌 央视记者正在直播】江西省南昌市昨晚迎来强降雨,27个站点降雨量超过100毫米,气象部门不断升级暴雨预警。今天,南昌市区多个路段出现积水,记者所在的立交桥积水深度超过1.5米,有车辆陷入积水中。央视新闻记者正在现场直播。(央视记者王舒畅)", 
    "stream": {
        "hd_url": "http://***", 
        "format": "m3u8", 
        "url": "http://***"
    }, 
    "app_android_url": "", 
    "stime": "2016-06-02 11:24:46", 
    "id": "1042097:5d9361da897dfe7c7d1f343b74bee53d", 
    "object_type": "live", 
    "author": {
        "id": "2656274875", 
        "object_type": "person", 
        "display_name": "央视新闻"
    }, 
    "title": "暴雨袭击南昌 央视记者正在直播", 
    "scheme_app_android": "", 
    "app_ios_url": "", 
    "scheme_app_ios": "", 
    "disable_replay": 0, 
    "share_text": "@央视新闻 正在直播中,场面异常火爆,小伙伴们速来围观... http://live.weibo.com/show?id=1042097:5d9361da897dfe7c7d1f343b74bee53d", 
    "live": {
        "height": "450", 
        "width": "800", 
        "bitrate": "500"
    }, 
    "status": 3, 
    "urls": {
        "live_ld": "http://***", 
        "replay_ld": "http://***", 
        "rtmp_ld": "rtmp://***", 
        "live_flv_ld": "http://***.flv", 
        "live_hd": "http://***", 
        "replay_hd": "http://***", 
        "rtmp_hd": "rtmp://***", 
        "live_flv_hd": "http://***.flv"
    }, 
    "object_type_detail": "weibolive", 
    "image": {
        "height": "450", 
        "width": "800", 
        "url": "http://ww3.sinaimg.cn/large/941f7a2fjw1f4gptlnkh0j20fk08rgo7.jpg"
    }, 
    "url": "http://live.weibo.com/show?id=1042097:5d9361da897dfe7c7d1f343b74bee53d", 
    "background_url": "", 
    "display_name": "微博直播", 
    "duration": 1218.599, 
    "updated_at": "2016-06-02", 
    "etime": "2016-06-02 12:01:01", 
    "embed_code": "http://****/v.swf", 
    "mid": "3981885077804051", 
    "target_url": "http://live.weibo.com/show?id=1042097:5d9361da897dfe7c7d1f343b74bee53d"
}

第三方主动更新直播信息接口

URL : http://live.weibo.com/proxy/updatestatus [POST]

说明:第三方直播对象的任何信息发生变更,需要调用该接口同步微博,比如直播状态变更、播放地址更新、回放地址生成、直播时长更新、封面图更新等等

参数:

参数字段 字段必选 字段类型 字段说明
source true string 直播来源,即appkey
uid true string 直播主播的微博uid
liveid true string 直播ID,即直播对象中的id
status true string 直播状态,0:未直播 1:直播中 2:删除或举报 3:直播结束 4:直播延迟
url true string 第三方直播落地页,即直播对象中的url
sign true string 签名校验,具体的加密算法见下文
useragent false string 用户ua信息

返回:

参数字段 字段必选 字段说明
code string 错误代码,0 请求正常,其他错误详见下文的错误代码说明
msg string 错误信息
data string 如果请求正常,返回空数组

示例:

{
    "code": 0, 
    "msg": "OK", 
    "data": [ ]
}

接口签名校验

每个接入的第三方会分配一个秘钥,根据微博提供的加密算法进行接口校验,加密算法微博平台单独文档提供

错误代码

错误码

错误码 错误msg 描述
100000 sign_error sign值错误
100001 id_error 直播id不存在
100002 field_empty 字段为空
100004 object_empty 直播id内容为空
100005 uid_error uid错误
100006 force_update_error 直播信息更新错误
100007 wesync_error 消息下发错误
100016 liveim_error 互动下发错误
文档更新时间: 2016-09-07