Udostępnij za pośrednictwem


Program

Program umożliwia kontrolowanie publikowania i przechowywania segmentów strumienia na żywo. Programy mogą być uruchamiane współbieżnie. Dzięki temu można publikować i archiwizować różne części zdarzenia zgodnie z potrzebami.

Możesz określić liczbę godzin, przez które chcesz zachować zarejestrowaną zawartość programu, ustawiając ArchiveWindowLength właściwość (do 25 godzin). Klienci mogą wyszukiwać za pośrednictwem zarchiwizowanej zawartości przez określoną liczbę godzin. Jeśli program działa dłużej niż określone ArchiwumWindowLength, starsza zawartość zostanie usunięta. Aby uzyskać więcej informacji, zobacz poniższą dokumentację ArchiveWindowLength .

Ten temat zawiera omówienie Program jednostki, a także pokazuje, jak wykonywać różne operacje za pomocą interfejsu API REST usługi Media Services.

Ważne

Podczas uzyskiwania dostępu do jednostek w usłudze Media Services należy ustawić określone pola nagłówka i wartości w żądaniach HTTP.
Aby uzyskać więcej informacji, zobacz Konfigurowanie tworzenia interfejsu API REST usługi Media Services i nawiązywanie połączenia z usługą Media Services przy użyciu interfejsu API REST usługi Media Services.

Właściwości jednostki programu

Jednostka Program zawiera następujące właściwości.

Właściwość Typ Opis
Id

Tylko do odczytu. Ustaw przez usługę Media Services.
Edm.String Identyfikator programu przypisany podczas tworzenia. Format to: nb:pgid:UUID:<GUID>.
Name Edm.String Nazwa programu. Maksymalna długość to 256 znaków i może składać się z dowolnych znaków angielskich i cyfr, w tym znaków "-" i ", o ile rozpoczyna się i kończy się znakami alfanumerycznymi.
AssetId Edm.String Identyfikator zasobu, który ma być używany do przetwarzania programu. Właściwość można zaktualizować tylko wtedy, gdy program jest w stanie Zatrzymany .

Nie można usunąć elementu zawartości, jeśli jest on używany przez program. Zasób można usunąć po usunięciu programu, który go używa.
Created

Tylko do odczytu. Ustaw przez usługę Media Services.
Edm.DateTime Wartość daty/godziny UTC wskazująca godzinę utworzenia.
Description Edm.String Opis podany przez użytkownika. Maksymalna długość to 256 znaków.
ArchiveWindowLength

Wymagane.
Edm.Time Liczba godzin, przez które chcesz zachować zarejestrowaną zawartość programu. Ta wartość musi mieścić się w zakresie od 5 minut do maksymalnie 25 godzin. Określa to również maksymalny czas, przez jaki klienci mogą szukać z powrotem w czasie z bieżącej pozycji na żywo. Programy mogą być transmitowane w określonym czasie, ale zawartość, która wykracza poza długość okna, jest stale odrzucana. Wartość tej właściwości określa również, jak długie mogą być manifesty na kliencie.

Aby usunąć zarchiwizowana zawartość, zatrzymaj i usuń program, a następnie usuń zasób skojarzony z programem.
LastModified

Tylko do odczytu. Ustaw przez usługę Media Services.
Edm.DateTime Data i godzina ostatniej modyfikacji.
ManifestName Edm.String Nazwa pliku manifestu bez rozszerzenia. Tę właściwość można zaktualizować tylko wtedy, gdy program jest w stanie Zatrzymany .
State

Tylko do odczytu. Ustaw przez usługę Media Services.
Edm.String Pobiera bieżący stan. Możliwe wartości to:

-Zatrzymany. Po utworzeniu programu jest on w stanie Zatrzymano . W tym stanie właściwości programu można zaktualizować, ale przesyłanie strumieniowe nie jest dozwolone. Program można uruchomić, zaktualizować lub usunąć z tego stanu.
-Zaczynając. Program jest uruchamiany. W tym stanie nie są dozwolone żadne aktualizacje ani przesyłanie strumieniowe.
-Uruchomiona. Program może przetwarzać i archiwizować strumienie na żywo.
-Zatrzymanie. Program jest zatrzymywany. W tym stanie nie są dozwolone żadne aktualizacje ani przesyłanie strumieniowe.
ChannelId

Tylko do odczytu. Ustaw przez usługę Media Services.
Edm.String Identyfikator nadrzędnego kanału programu.
Channel Kanał Kanał nadrzędny programu określony przez identyfikator ChannelId.

Tworzenie programów

Utwórz nowy program.

Metoda Identyfikator URI żądania Wersja protokołu HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/Programs> HTTP/1.1

Przykładowe żądanie

Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.

Aby uzyskać najnowszą wersję x-ms-version:, zobacz Media Services REST.

Nagłówki żądań:

POST https://testrest.cloudapp.net/api/Programs HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

Treść żądania:

{"Id":null,"Name":"testprogram001","Description":"","Created":"0001-01-01T00:00:00","LastModified":"0001-01-01T00:00:00","ChannelId":"nb:chid:UUID:83bb19de-7abf-4907-9578-abe90adfbabe","AssetId":"nb:cid:UUID:bc495364-5357-42a1-9a9d-be54689cfae2","ArchiveWindowLength":"PT1H","State":null,"ManifestName":null}  

W przypadku powodzenia kod stanu 202 Zaakceptowane jest zwracany wraz z reprezentacją utworzonej jednostki w treści odpowiedzi.

{"odata.metadata":"https://testrest.cloudapp.net/api/$metadata#Programs/@Element","Id":"nb:pgid:UUID:b870dd57-4b04-41b6-849d-b2470e50e7e6","Name":"testprogram001","Description":"","Created":"2014-08-11T18:12:27.8381256Z","LastModified":"2014-08-11T18:12:27.8381256Z","ChannelId":"nb:chid:UUID:83bb19de-7abf-4907-9578-abe90adfbabe","AssetId":"nb:cid:UUID:bc495364-5357-42a1-9a9d-be54689cfae2","ArchiveWindowLength":"PT1H","State":"Stopped","ManifestName":"f91329ec-26f5-4026-87f5-f5437d4da9e6"}  
  

Uwaga

Ta operacja jest wykonywana synchronicznie, dlatego nie ma identyfikatora operacji do śledzenia.

Uruchamianie programów

Uruchom program. Program można uruchomić tylko wtedy, gdy znajduje się w stanie Zatrzymano , a kanał znajduje się w stanie Uruchomiony .

Metoda Identyfikator URI żądania Wersja protokołu HTTP
Rozpocznij <https:// accountname.restv2>.<location.media.azure.net/api/Programs>('ProgramId')/Start HTTP/1.1

Przykładowe żądanie

Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.

Aby uzyskać najnowszą wersję x-ms-version:, zobacz Media Services REST.

Nagłówki żądań:

POST https://testrest.cloudapp.net/api/Programs('nb:pgid:UUID:0f9ceb51-50fe-4769-aaed-f8c19d76b9bc')/Start HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

W przypadku powodzenia zwracany jest kod stanu Zaakceptowane 202 . Akceptowany kod stanu 202 wskazuje operację asynchroniczną, w takim przypadku wartość nagłówka operation-id jest również udostępniana do sondowania i śledzenia stanu długotrwałych operacji, takich jak uruchamianie lub zatrzymywanie programu. Przekaż wartość nagłówka operation-id do jednostki operacji, aby pobrać stan. Aby uzyskać więcej informacji, zobacz Ręczne sondowanie Long-Running Operacje.

Zatrzymywanie programów

Zatrzymaj program. Program można zatrzymać tylko wtedy, gdy znajduje się w stanie Uruchomiony . To jest operacja asynchroniczna.

Metoda Identyfikator URI żądania Wersja protokołu HTTP
Stop <https:// accountname.restv2>.<location.media.azure.net/api/Programs>('ProgramId')/Stop HTTP/1.1

Przykładowe żądanie

Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.

Aby uzyskać najnowszą wersję x-ms-version:, zobacz Media Services REST.

Nagłówki żądań:

POST https://testrest.cloudapp.net/api/Programs('nb:pgid:UUID:0f9ceb51-50fe-4769-aaed-f8c19d76b9bc')/Stop HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

W przypadku powodzenia zwracany jest kod stanu Zaakceptowane 202 . Akceptowany kod stanu 202 wskazuje operację asynchroniczną, w takim przypadku wartość nagłówka operation-id jest również udostępniana do sondowania i śledzenia stanu długotrwałych operacji, takich jak uruchamianie lub zatrzymywanie programu. Przekaż wartość nagłówka operation-id do jednostki operacji, aby pobrać stan. Aby uzyskać więcej informacji, zobacz Ręczne sondowanie Long-Running Operacje.

Wyświetlanie listy programów

Programy są pobierane przy użyciu żądania HTTP GET.

Metoda Identyfikator URI żądania Wersja protokołu HTTP
GET Pobierz wszystkie programy na koncie usługi Media Services:

<https:// accountname.restv2>.<location.media.azure.net/api/Programs>

Pobierz określony program na koncie usługi Media Services:

<https:// accountname.restv2>.<location.media.azure.net/api/Programs>('ProgramId')

Pobierz wszystkie programy skojarzone z określonym kanałem:

<https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/Programy
HTTP/1.1

Przykładowe żądanie

Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.

Aby uzyskać najnowszą wersję x-ms-version:, zobacz Media Services REST.

Nagłówki żądań:

GET https://testrest.cloudapp.net/api/Programs HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

Jeśli operacja zakończy się pomyślnie, ta operacja zwróci kod stanu OK 200 OK i listę wszystkich programów utworzonych na koncie usługi Media Services.

Aktualizowanie programów

Aktualizowanie programu. Program musi być stan zatrzymany .

Metoda Identyfikator URI żądania Wersja protokołu HTTP
PATCH/PUT/MERGE

Aby uzyskać więcej informacji na temat tych operacji, zobacz PATCH/PUT/MERGE.
<https:// accountname.restv2>.<location.media.azure.net/api/Programs>('ProgramId') HTTP/1.1

Przykładowe żądanie

Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.

Aby uzyskać najnowszą wersję x-ms-version:, zobacz Media Services REST.

Nagłówki żądań:

PATCH https://testrest.cloudapp.net/api/Programs('nb:pgid:UUID:0f9ceb51-50fe-4769-aaed-f8c19d76b9bc') HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

Treść żądania:

{"ArchiveWindowLength":"PT3H"}  

Jeśli aktualizacja zostanie ukończona synchronicznie, zwraca kod stanu 204 Bez zawartości ; w przeciwnym razie zwraca kod stanu 202 Zaakceptowane . Akceptowany kod stanu 202 wskazuje operację asynchroniczną, w takim przypadku wartość nagłówka operation-id jest również udostępniana do sondowania i śledzenia stanu długotrwałych operacji, takich jak uruchamianie lub zatrzymywanie programu. Przekaż wartość nagłówka operation-id do jednostki operacji, aby pobrać stan. Aby uzyskać więcej informacji, zobacz Ręczne sondowanie Long-Running Operacje.

Usuwanie programów

Usuń program. Program można usunąć tylko wtedy, gdy znajduje się w stanie Zatrzymano .

Metoda Identyfikator URI żądania Wersja protokołu HTTP
DELETE <https:// accountname.restv2>.<location.media.azure.net/api/Programs>('ProgramId') HTTP/1.1

Przykładowe żądanie

Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.

Aby uzyskać najnowszą wersję x-ms-version:, zobacz Media Services REST.

Nagłówki żądań:

DELETE https://testrest.cloudapp.net/api/Programs('nb:pgid:UUID:0f9ceb51-50fe-4769-aaed-f8c19d76b9bc') HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

W przypadku powodzenia zwracany jest kod stanu zawartości 204.

Uwaga

Ta operacja jest wykonywana synchronicznie, dlatego nie ma identyfikatora operacji do śledzenia.

Zobacz też

Kanał