Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- $user = "Moskitgp";
- $yt_api_key = "**************";
- echo "Zaczynamy\n";
- echo "Nazwa kanału: {$user}\n";
- $channel_id = json_decode(file_get_contents("https://www.googleapis.com/youtube/v3/channels?part=id&forUsername={$user}&key={$yt_api_key}"), true)["items"][0]["id"];
- echo "ID kanału: {$channel_id}\n";
- // To można wykorzystać jak będziemy robić jakieś wyświetlanie filmów na stronie usera albo coś
- //$uploads_playlist_id = json_decode(file_get_contents("https://www.googleapis.com/youtube/v3/channels?part=contentDetails&forUsername={$user}&key=${yt_api_key}"), true)["items"][0]["contentDetails"]["relatedPlaylists"]["uploads"];
- //echo "ID playlisty przesłanych filmów: ${uploads_playlist_id}\n";
- // Teraz można odpytywać API playlists o przesłane filmy
- $channel_id = "UC8boIawSmpWzjNU474HdJcg"; // Jakiś randomowy co akurat streamował
- $streams = json_decode(file_get_contents("https://www.googleapis.com/youtube/v3/search?eventType=live&part=snippet&channelId={$channel_id}&type=video&key={$yt_api_key}"), true);
- $youtube_is_online = count($streams["items"]) > 0;
- if($youtube_is_online) {
- $stream = $streams["items"][0];
- $stream_video_id = $stream["id"]["videoId"];
- $stream_title = $stream["snippet"]["title"];
- $stream_description = $stream["snippet"]["description"];
- $stream_thumbnail = $stream["snippet"]["thumbnails"]["high"]["url"]; // rozmiar miniaturki moze byc: default / medium / high
- // API search może zwrócić tylko "snippet", więc znając już ID pytamy jeszcze raz, tym razem API videos o "statistics", "player" i "liveStreamingDetails"
- $videos = json_decode(file_get_contents("https://www.googleapis.com/youtube/v3/videos?part=statistics,player,liveStreamingDetails&id={$stream_video_id}&key={$yt_api_key}"), true);
- $video = $videos["items"][0];
- $stream_statistics = $video["statistics"]; // łapki w górę, łapki w dół, wyświetlenia, dodania do ulubionych i ilość komentarzy (== całkowita ilość wiadomości na chacie pod tym streamem)
- $stream_player_embed = $video["player"]["embedHtml"]; // w zasadzie można to wpisać na stałe i wywalić z zapytania, mamy przecież już video id (quota cost za "player" jest 0 więc właściwie bez różnicy)
- $stream_viewers = $video["liveStreamingDetails"]["concurrentViewers"];
- echo "\nStream ONLINE\n";
- echo "Video ID: {$stream_video_id}\n";
- echo "Tytuł filmu: {$stream_title}\n";
- echo "Opis filmu:\n";
- echo $stream_description."\n";
- echo "Oglądający: {$stream_viewers}\n";
- echo "Miniaturka: {$stream_thumbnail}\n";
- echo "Statystyki: \n";
- foreach($stream_statistics as $key => $value) echo " {$key} => {$value}\n";
- echo "Kod do embeda:\n";
- echo $stream_player_embed."\n";
- } else {
- echo "\nStream OFFLINE\n";
- }
- ?>
Add Comment
Please, Sign In to add comment