【问题标题】:Youtube default LiveBroadcast being created without a bound stream ID在没有绑定流 ID 的情况下创建 Youtube 默认 LiveBroadcast
【发布时间】:2019-10-03 01:56:51
【问题描述】:
作为我们应用程序流程的一部分,我们也创建了默认的直播供用户流式传输。对于我们的大多数用户而言,默认直播会自动绑定到默认直播,但少数用户的默认直播不会自动绑定。
我尝试绑定到非默认 LiveStream(因为似乎无法找到默认 LiveStream),但我收到了带有错误消息 liveBroadcastBindingNotAllowed: The binding is not allowed 的 403。
由于没有流绑定,我们无法流式传输到该 LiveBroadcast,并且我们的用户遇到了错误。有什么解决方法或解决方法吗?
【问题讨论】:
标签:
youtube
youtube-api
youtube-data-api
youtube-livestreaming-api
【解决方案1】:
我也遇到过类似的问题。通过以下方式列出所有广播时:
curl \
'https://www.googleapis.com/youtube/v3/liveBroadcasts?part=id%2Csnippet%2CcontentDetails%2Cstatus&broadcastType=all&mine=true&key=[YOUR_API_KEY]' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--compressed
我们的一些用户收到了不止一个广播,其中snippet.defaultBroadcast 是true,但这些持久广播中只有一个实际上具有有效的contentDetails.boundStreamId,其他用户只是省略了该属性。对于我的个人帐户,如果我将广播类型从all 更改为persistent,那么我只能获得一个具有有效contentDetails.boundStreamId 的真正默认广播。这是一个示例请求:
curl \
'https://www.googleapis.com/youtube/v3/liveBroadcasts?part=id%2Csnippet%2CcontentDetails%2Cstatus&broadcastType=persistent&mine=true&key=[YOUR_API_KEY]' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--compressed
我还不确定它是否碰巧选择了正确的持久广播。我将联系我们的一些用户来帮助我解决这个问题,我知道一个在来自 API 的响应中至少有 3 个持久广播。