6

をストリーミングしているかどうかを確認するにはどうすればYouTubeチャンネルが実際にストリーミングされているかどうかをチェックするための任意の情報を見つけることができません。 ツイッチではチャンネル名が必要です。APIを使用すると、ライブがあるかどうかを確認できます。私はOAuthのを使用したくないYouTubeチャンネルがライブ

は、通常、公開APIキーは十分にあります。チャンネルの動画をチェックするのと同様に、チャンネルがストリーミングしているかどうかを知りたい

答えて

15

search.listを使用し、チャネルIDを指定し、タイプをvideoに設定し、eventTypeをliveに設定すると、これを行うことができます。例えば

私が探したときに、:

https://www.googleapis.com/youtube/v3/search?part=snippet&channelId=UCXswCcAMb5bvEUIDEzXFGYg&type=video&eventType=live&key=[API_KEY]

私は次のように得た:

{ 
"kind": "youtube#searchListResponse", 
"etag": "\"sGDdEsjSJ_SnACpEvVQ6MtTzkrI/gE5P_aKHWIIc6YSpRcOE57lf9oE\"", 
"pageInfo": { 
    "totalResults": 1, 
    "resultsPerPage": 5 
}, 
"items": [ 
    { 
    "kind": "youtube#searchResult", 
    "etag": "\"sGDdEsjSJ_SnACpEvVQ6MtTzkrI/H-6Tm7-JewZC0-CW4ALwOiq9wjs\"", 
    "id": { 
    "kind": "youtube#video", 
    "videoId": "W4HL6h-ZSws" 
    }, 
    "snippet": { 
    "publishedAt": "2015-09-08T11:46:23.000Z", 
    "channelId": "UCXswCcAMb5bvEUIDEzXFGYg", 
    "title": "Borussia Dortmund vs St. Pauli 1-0 Live Stream", 
    "description": "Borussia Dortmund vs St. Pauli Live Stream Friendly Match.", 
    "thumbnails": { 
    "default": { 
     "url": "https://i.ytimg.com/vi/W4HL6h-ZSws/default.jpg" 
    }, 
    "medium": { 
     "url": "https://i.ytimg.com/vi/W4HL6h-ZSws/mqdefault.jpg" 
    }, 
    "high": { 
     "url": "https://i.ytimg.com/vi/W4HL6h-ZSws/hqdefault.jpg" 
    } 
    }, 
    "channelTitle": "", 
    "liveBroadcastContent": "live" 
    } 
    } 
] 
} 
+1

が、我々はビデオ蒸気のIDを持つことができますか? – mpgn

+2

'items' resource - >' id' - > 'videoId'を見ればIDを見つけることができます。上に掲げた例では、ビデオストリームのIDは 'W4HL6h-ZSws'です。 –

+0

ありがとうございます。 – PaulELI

4

私は、これは古いです知っているが、私はPHPで自分自身をそれを考え出しました。

$API_KEY = 'your api3 key'; 
$ChannelID = 'the users channel id'; 

$channelInfo = 'https://www.googleapis.com/youtube/v3/search?part=snippet&channelId='.$ChannelID.'&type=video&eventType=live&key='.$API_KEY; 

$extractInfo = file_get_contents($channelInfo); 
$extractInfo = str_replace('},]',"}]",$extractInfo); 
$showInfo = json_decode($extractInfo, true); 

if($showInfo['pageInfo']['totalResults'] === 0){ 

echo 'Users channel is Offline'; 

}else{ 

echo 'Users channel is LIVE!'; 

} 
関連する問題