6

YouTube kanalının gerçekte olup olmadığını kontrol edemiyorum. Twitch ile sadece kanal ismine ihtiyacınız var ve API ile canlı olup olmadığını kontrol edebilirsiniz.YouTube kanalının yayının canlı olup olmadığını nasıl kontrol edebilirim?

OAuth'u kullanmak istemiyorum, genellikle bir genel API anahtarı yeterlidir. Kanalın videolarını kontrol etmek gibi, kanalın yayınlanıp yayınlanmadığını bilmek istiyorum.

cevap

15

Bunu search.list kullanarak ve kanal kimliğini belirterek, türünü video olarak ayarlayarak ve eventType öğesini live olarak ayarlayarak yapabilirsiniz. Ben aradığında

Örneğin

:

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

aşağıdaki var:

{ 
"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

Ancak video buharının id'ini alabilir miyiz? – mpgn

+2

"Öğeler" kaynağına -> "id" -> "videoId" 'e bakarsanız kimliği bulabilirsiniz. Yukarıda yayınladığım örnekte, video akışının kimliği "W4HL6h-ZSws" dır. –

+0

Çok teşekkür ederim. – PaulELI

4

Bu eski olduğunu biliyorum ama php ile kendim çözdüm.

$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!'; 

} 
İlgili konular