我想要实现的目标
我想在youtube上将cuepoints插入到直播中。 您可以管理登录的(youtube.com/my_live_events)。 文档可在此处找到: http://developers.google.com/youtube/v3/live/docs/liveCuepoints/insert
我是如何做到这一点的:
1经过身份验证
我将我的服务器添加到api控制台并创建了api密钥。 这很有效,我得到了“未经验证的错误”
2刷新访问令牌
使用刷新令牌。 (我每次都这样做,php代码以防万一):
$account = gauth_account_load(1,false);
if ($account['is_authenticated']) {
$json = json_decode($account['access_token']);
$access_token = $json->access_token;
$client = gauth_client_get(1,FALSE);
if ($client->isAccessTokenExpired()) {
$client->refreshToken($json->refresh_token);
$account['access_token'] = $client->getAccessToken();
$json = json_decode($account['access_token']);
$access_token = $json->access_token;
gauth_account_save($account);
}
}
当令牌超时时,这样可以解决“无效凭据”错误。
3构建URI
如上面链接中所述,这是要使用的URL: {HTTPS://} www.googleapis.com/youtube/partner/v1/liveCuepoints?channelId=UC%&key=AI%
我添加了大括号,因为只允许添加1个真实链接
其中 UC%是我的频道ID(在http://www.youtube.com/account_advanced中找到),AI%是我的服务器API KEY。 (来自api控制台)
POST请求中的内容是以下json
{
"id":"cqOZjdltLMk",
"broadcastId":"cqOZjdltLMk",
"kind":"youtubePartner#liveCuepoint",
"settings":
{
"offsetTimeMs":0,
"cueType":"ad",
"durationSecs":10
}
}
现在我不确定id和broadcastId(这应该是唯一的电影/直播ID)吗?这就是我在那里添加的内容。
4结果
这是我从请求中得到的: 代码:403
{
"domain": "usageLimits",
"reason": "accessNotConfigured",
"message": "Access Not Configured"
}
Google搜索“accessNotConfigured”导致了很多不同的api内容,但没有一个与cuepoints相关。
帮助
我做错了什么? 非常欢迎有用的链接!
答案 0 :(得分:0)
LiveCuepoint实际上是在一个不同的API中。为了能够使用cuePoint,您必须使用YouTube合作伙伴,并且还可以访问Content ID API。