Sie können direkt Live Streaming API - LiveStreams:list
verwenden, LiveStreams: list gibt eine Liste von Videostreams zurück, die den API-Anforderungsparametern entsprechen.
HTTP-Anfrage:
GET https://www.googleapis.com/youtube/v3/liveStreams
Beachten Sie, dass in jeder Anforderung Zugriff auf provate Benutzerdaten benötigt die Genehmigung. Sie müssen OAuth 2.0 implementieren.
Fügen Sie den Parameter onBehalfOfContentOwner
hinzu. Dieser Parameter ist für YouTube-Inhaltspartner gedacht, die viele verschiedene YouTube-Kanäle besitzen und verwalten. Es ermöglicht Inhaltseigentümern, sich einmal zu authentifizieren und Zugriff auf alle ihre Video- und Kanaldaten zu erhalten, ohne für jeden einzelnen Kanal Authentifizierungsinformationen angeben zu müssen.
HTTP-Antwort:
{
"kind": "youtube#liveStreamListResponse",
"etag": etag,
"nextPageToken": string,
"prevPageToken": string,
"pageInfo": {
"totalResults": integer,
"resultsPerPage": integer
},
"items": [
liveStream Resource
]
}
Hier ist ein Beispielcode-Snippet wie Live-Stream Ressourcen anfordern:
// This object is used to make YouTube Data API requests.
youtube = new YouTube.Builder(Auth.HTTP_TRANSPORT, Auth.JSON_FACTORY, credential)
.setApplicationName("youtube-cmdline-liststreams-sample")
.build();
// Create a request to list liveStream resources.
YouTube.LiveStreams.List livestreamRequest = youtube.liveStreams().list("id,snippet");
// Modify results to only return the user's streams.
livestreamRequest.setMine(true);
// Execute the API request and return the list of streams.
LiveStreamListResponse returnedListResponse = livestreamRequest.execute();
List<LiveStream> returnedList = returnedListResponse.getItems();
// Print information from the API response.
System.out.println("\n================== Returned Streams ==================\n");
for (LiveStream stream : returnedList) {
System.out.println(" - Id: " + stream.getId());
System.out.println(" - Title: " + stream.getSnippet().getTitle());
System.out.println(" - Description: " + stream.getSnippet().getDescription());
System.out.println(" - Published At: " + stream.getSnippet().getPublishedAt());
System.out.println("\n-------------------------------------------------------------\n");
}
Ich denke, das api Verfahren für Fälle ist, wenn Strom durch Konto gehört, der sendet anfordern. In meinem Fall versuche ich nur herauszufinden, wenn einige meiner "Abonnements" neues Live-Video streamen. – SergeyK