LiveBroadcasts: transition

Zmienia stan transmisji na żywo w YouTube i inicjuje procesy powiązane z nowym stanem. Gdy na przykład zmienisz stan transmisji na testing, YouTube zacznie przesyłać obraz do strumienia monitora tej transmisji. Zanim wywołasz tę metodę, sprawdź, czy wartość właściwości status.streamStatus strumienia powiązanego z transmisją to active.

Częste zastosowania

Żądanie

Żądanie HTTP

POST https://www.googleapis.com/youtube/v3/liveBroadcasts/transition

Autoryzacja

To żądanie wymaga autoryzacji z użyciem co najmniej jednego z tych zakresów. Więcej informacji o uwierzytelnianiu i autoryzacji znajdziesz w artykule Implementowanie uwierzytelniania OAuth 2.0.

Zakres
https://www.googleapis.com/auth/youtube
https://www.googleapis.com/auth/youtube.force-ssl

Parametry

W tabeli poniżej znajdziesz parametry obsługiwane przez to zapytanie. Wszystkie wymienione parametry to parametry zapytania.

Parametry
Parametry wymagane
broadcastStatus string
Parametr broadcastStatus określa stan, na który ma się zmienić transmisja. Pamiętaj, że aby zmienić stan transmisji na testing lub live, wartość status.streamStatus strumienia powiązanego z transmisją musi być równa active.

Dozwolone wartości:
  • complete – transmisja się skończyła. YouTube przestaje przesyłać obraz.
  • live – transmisja jest widoczna dla odbiorców. YouTube przesyła obraz do strumienia monitora i strumienia transmisji.
  • testing – rozpocznij testowanie transmisji. YouTube przesyła obraz do strumienia monitora. Pamiętaj, że stan transmisji możesz zmienić na testing tylko wtedy, gdy właściwość contentDetails.monitorStream.enableMonitorStream ma wartość true.
id string
Parametr id określa unikalny identyfikator transmisji, której stan ma się zmienić.
part string
Parametr part określa rozdzieloną przecinkami listę co najmniej 1 właściwości zasobu liveBroadcast, które mają być uwzględnione w odpowiedzi interfejsu API. Nazwy part części, które możesz uwzględnić w wartości parametru, to id, snippet, contentDetails i status.
Parametry opcjonalne
onBehalfOfContentOwner string
Ten parametr można używać tylko w prawidłowo autoryzowanym żądaniu.

Uwaga: ten parametr jest przeznaczony wyłącznie dla partnerów YouTube zajmujących się treściami.

Parametr onBehalfOfContentOwner wskazuje, że dane uwierzytelniające żądania identyfikują użytkownika systemu YouTube CMS, który działa w imieniu właściciela treści określonego w wartości parametru. Ten parametr jest przeznaczony dla partnerów YouTube zajmujących się treściami, którzy są właścicielami wielu różnych kanałów YouTube i nimi zarządzają. Umożliwia on właścicielom treści jednorazowe uwierzytelnienie i uzyskanie dostępu do wszystkich danych o filmach i kanałach bez konieczności podawania danych uwierzytelniających dla każdego kanału. Konto CMS, za pomocą którego uwierzytelnia się użytkownik, musi być połączone z określonym właścicielem treści w YouTube.
onBehalfOfContentOwnerChannel string
Ten parametr można używać tylko w prawidłowo autoryzowanym żądaniu.

Uwaga: ten parametr jest przeznaczony wyłącznie dla partnerów YouTube zajmujących się treściami.

Parametr onBehalfOfContentOwnerChannel określa identyfikator kanału YouTube, do którego dodawany jest film. Ten parametr jest wymagany, gdy żądanie określa wartość parametru onBehalfOfContentOwner, i można go używać tylko w połączeniu z tym parametrem. Ponadto żądanie musi być autoryzowane za pomocą konta CMS połączonego z właścicielem treści określonym w parametrze onBehalfOfContentOwner. Na koniec kanał określony w wartości parametru onBehalfOfContentOwnerChannel musi być połączony z właścicielem treści określonym w parametrze onBehalfOfContentOwner.

Ten parametr jest przeznaczony dla partnerów YouTube zajmujących się treściami, którzy są właścicielami wielu różnych kanałów YouTube i nimi zarządzają. Umożliwia on właścicielom treści jednorazowe uwierzytelnienie i wykonywanie działań w imieniu kanału określonego w wartości parametru bez konieczności podawania danych uwierzytelniających dla każdego kanału.

Treść żądania

Podczas wywoływania tej metody nie podawaj treści żądania.

Odpowiedź

Jeśli operacja się uda, ta metoda zwróci w treści odpowiedzi zasób liveBroadcast.

Błędy

W tabeli poniżej znajdziesz komunikaty o błędach, które interfejs API może zwrócić w odpowiedzi na wywołanie tej metody. Więcej informacji znajdziesz w artykule Interfejs API transmisji na żywo w YouTube – błędy.

Typ błędu Szczegóły błędu Opis
backendError errorExecutingTransition Podczas zmiany stanu transmisji wystąpił błąd.
forbidden (403) errorStreamInactive Żądana zmiana stanu jest niedozwolona, gdy strumień powiązany z transmisją jest nieaktywny.
forbidden (403) invalidTransition Nie można zmienić stanu transmisji na żywo z bieżącego na żądany.
forbidden (403) redundantTransition Transmisja na żywo jest już w żądanym stanie lub jest w trakcie przechodzenia do niego.
insufficientPermissions insufficientLivePermissions Żądanie nie ma uprawnień do zmiany stanu transmisji na żywo.
insufficientPermissions livePermissionBlocked Użytkownik, który autoryzował żądanie, nie może obecnie transmitować na żywo w YouTube. Szczegółowe informacje o tym, dlaczego użytkownik nie może transmitować na żywo, znajdziesz w ustawieniach kanału użytkownika w sekcji Dostęp do funkcji.
insufficientPermissions liveStreamingNotEnabled Użytkownik, który autoryzował żądanie, nie ma uprawnień do transmitowania na żywo w YouTube. Więcej informacji znajdziesz w sekcji Dostęp do funkcji.
notFound (404) liveBroadcastNotFound Transmisja określona w parametrze id nie istnieje.
rateLimitExceeded (403) userRequestsExceedRateLimit Użytkownik wysłał zbyt wiele żądań w danym okresie.
rateLimitExceeded (403) concurrentBroadcastsExceedLimit Kanał ma już maksymalną liczbę równoczesnych transmisji na żywo. Zanim na kanale będzie można rozpocząć kolejną transmisję, trzeba zatrzymać co najmniej jedną z już trwających transmisji.
rateLimitExceeded (403) sharedIngestionBroadcastsExceedLimit Kanał ma już maksymalną liczbę transmisji na żywo korzystających z tego samego źródła. Aby rozpocząć żądaną transmisję, trzeba zatrzymać co najmniej jedną z tych transmisji.
required (400) idRequired Wymagany parametr id musi identyfikować transmisję, której stan chcesz zmienić.
required (400) statusRequired Żądanie do interfejsu API musi zawierać wartość parametru status.

Wypróbuj

Aby wywołać ten interfejs API i zobaczyć żądanie do interfejsu API oraz odpowiedź, użyj APIs Explorer.