Partilhar via


Programa

Um programa permite-lhe controlar a publicação e o armazenamento de segmentos numa transmissão em fluxo em direto. Os programas podem ser executados em simultâneo. Isto permite-lhe publicar e arquivar diferentes partes do evento, conforme necessário.

Pode especificar o número de horas que pretende manter o conteúdo gravado para o programa ao definir a ArchiveWindowLength propriedade (até 25 horas). Os clientes podem procurar através do conteúdo arquivado durante o número de horas especificado. Se o programa for executado por mais tempo do que o ArchiveWindowLength especificado, o conteúdo mais antigo é removido. Para obter mais informações, veja a ArchiveWindowLength documentação abaixo.

Este tópico fornece uma descrição geral da Program entidade e também demonstra como executar várias operações com a API REST dos Serviços de Multimédia.

Importante

Ao aceder a entidades nos Serviços de Multimédia, tem de definir campos e valores de cabeçalho específicos nos seus pedidos HTTP.
Para obter mais informações, veja Setup for Media Services REST API Development and Connecting to Media Services with the Media Services REST API (Configurar o Desenvolvimento da API REST dos Serviços de Multimédia e Ligar aos Serviços de Multimédia com a API REST dos Serviços de Multimédia).

Propriedades da Entidade do Programa

A entidade Programa contém as seguintes propriedades.

Propriedade Tipo Description
Id

Só de leitura. Definido pelos Serviços de Multimédia.
Edm.String O ID do Programa, atribuído após a criação. O formato é: nb:pgid:UUID:<GUID>.
Name Edm.String O nome do Programa. O comprimento máximo é de 256 carateres e pode consistir em todos os carateres e números em inglês, incluindo "-" e " " desde que comece e termine com carateres alfanuméricos.
AssetId Edm.String O ID do Recurso a ser utilizado para Processamento de programas. A propriedade só pode ser atualizada quando o Programa estiver no estado Parado .

Um recurso não pode ser eliminado se for utilizado por um programa. Pode eliminar um recurso depois de eliminar o programa que o utiliza.
Created

Só de leitura. Definido pelos Serviços de Multimédia.
Edm.DateTime Um valor de data/hora UTC que indica a hora da criação.
Description Edm.String Descrição fornecida pelo utilizador. O comprimento máximo é de 256 carateres.
ArchiveWindowLength

Obrigatório.
Edm.Time O número de horas que pretende manter o conteúdo gravado do programa. Este valor pode ser definido a partir de um mínimo de 5 minutos até um máximo de 25 horas. Isto também dita a quantidade máxima de tempo que os clientes podem procurar no tempo a partir da posição atual em direto. Os programas podem ser executados durante o período de tempo especificado, mas o conteúdo que se situe atrás da duração da janela é continuamente descartado. O valor desta propriedade também determina durante quanto tempo os manifestos dos clientes podem aumentar.

Para eliminar conteúdo arquivado, pare e elimine o programa e, em seguida, elimine o elemento associado ao programa.
LastModified

Só de leitura. Definido pelos Serviços de Multimédia.
Edm.DateTime A data e hora da última modificação.
ManifestName Edm.String O nome do ficheiro de manifesto, sem extensão. Esta propriedade só pode ser atualizada quando o Programa estiver no estado Parado .
State

Só de leitura. Definido pelos Serviços de Multimédia.
Edm.String Obtém o estado atual. Valores possíveis incluem:

- Parado. Depois de criar um Programa, este encontra-se no estado Parado . Neste estado, as propriedades do Programa podem ser atualizadas, mas a transmissão em fluxo não é permitida. O Programa pode ser iniciado, atualizado ou eliminado deste estado.
- A começar. O programa está a ser iniciado. Não são permitidas atualizações ou transmissões em fluxo durante este estado.
- Em execução. O programa é capaz de processar e arquivar transmissões em direto.
- A parar. O programa está a ser parado. Não são permitidas atualizações ou transmissões em fluxo durante este estado.
ChannelId

Só de leitura. Definido pelos Serviços de Multimédia.
Edm.String O ID do Canal principal do Programa.
Channel Canal O canal principal do Programa especificado pelo ChannelId.

Criar Programas

Criar um novo Programa.

Método URI do pedido Versão HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/Programs> HTTP/1.1

Pedido de Amostra

Pode experimentar o seguinte exemplo no separador Compositor do Fiddler.

Para obter a versão mais recente x-ms-version:, consulte REST dos Serviços de Multimédia.

Cabeçalhos de pedido:

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>  
  

Corpo do pedido:

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

Se for bem-sucedido, é devolvido um código de estado 202 Aceite juntamente com uma representação da entidade criada no corpo da resposta.

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

Nota

Esta operação é concluída de forma síncrona, pelo que não existe nenhum ID de operação para controlar.

Iniciar Programas

Iniciar um Programa. Um Programa só pode ser iniciado quando está no estado Parado e o canal está no estado Em execução .

Método URI do pedido Versão HTTP
Iniciar <https:// accountname.restv2>.<location.media.azure.net/api/Programs>('ProgramId')/Iniciar HTTP/1.1

Pedido de Amostra

Pode experimentar o seguinte exemplo no separador Compositor do Fiddler.

Para obter as versões mais recentes x-ms-version:, veja Serviços de Multimédia REST.

Cabeçalhos de pedido:

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>  
  

Se for bem-sucedido, é devolvido um código de estado 202 Aceite . O código de estado 202 Aceite indica uma operação assíncrona, caso em que o valor do cabeçalho operation-id também é fornecido para utilização na consulta e controlo do estado das operações de execução prolongada, como iniciar ou parar um Programa. Transmita o valor do cabeçalho operation-id para a Entidade de Operação para obter o estado. Para obter mais informações, consulte Consulta Manual Long-Running Operações.

Parar Programas

Parar um Programa. Um Programa só pode ser parado quando está no estado Em execução . Esta é uma operação assíncrona.

Método URI do pedido Versão HTTP
Parar <https:// accountname.restv2>.<location.media.azure.net/api/Programs>('ProgramId')/Stop HTTP/1.1

Pedido de Amostra

Pode experimentar o seguinte exemplo no separador Compositor do Fiddler.

Para obter as versões mais recentes x-ms-version:, veja Serviços de Multimédia REST.

Cabeçalhos de pedido:

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>  
  

Se for bem-sucedido, é devolvido um código de estado 202 Aceite . O código de estado 202 Aceite indica uma operação assíncrona, caso em que o valor do cabeçalho operation-id também é fornecido para utilização na consulta e controlo do estado das operações de execução prolongada, como iniciar ou parar um Programa. Transmita o valor do cabeçalho operation-id para a Entidade de Operação para obter o estado. Para obter mais informações, consulte Consulta Manual Long-Running Operações.

Listar Programas

Os programas são obtidos com um pedido GET HTTP.

Método URI do pedido Versão HTTP
GET Obtenha todos os Programas na conta dos Serviços de Multimédia:

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

Obtenha um Programa especificado na conta dos Serviços de Multimédia:

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

Obtenha todos os Programas associados a um Canal especificado:

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

Pedido de Amostra

Pode experimentar o seguinte exemplo no separador Compositor do Fiddler.

Para obter as versões mais recentes x-ms-version:, veja Serviços de Multimédia REST.

Cabeçalhos de pedido:

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>  
  

Se for bem-sucedida, esta operação devolve um código de estado 200 OK e uma lista de todos os Programas criados na sua conta dos Serviços de Multimédia.

Atualizar Programas

Atualizar um Programa. O Programa tem de ser o estado Parado .

Método URI do pedido Versão HTTP
PATCH/PUT/MERGE

Para obter mais informações sobre estas operações, consulte PATCH/PUT/MERGE.
<https:// accountname.restv2>.<location.media.azure.net/api/Programs>('ProgramId') HTTP/1.1

Pedido de Amostra

Pode experimentar o seguinte exemplo no separador Compositor do Fiddler.

Para obter as versões mais recentes x-ms-version:, veja Serviços de Multimédia REST.

Cabeçalhos de pedido:

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>  
  

Corpo do pedido:

{"ArchiveWindowLength":"PT3H"}  

Se a atualização for concluída de forma síncrona, devolve um código de estado 204 Sem Conteúdo ; caso contrário, devolve um código de estado 202 Aceite . O código de estado 202 Aceite indica uma operação assíncrona, caso em que o valor do cabeçalho operation-id também é fornecido para utilização na consulta e controlo do estado das operações de execução prolongada, como iniciar ou parar um Programa. Transmita o valor do cabeçalho operation-id para a Entidade de Operação para obter o estado. Para obter mais informações, consulte Consulta Manual Long-Running Operações.

Eliminar Programas

Eliminar um Programa. Um Programa só pode ser eliminado quando está no estado Parado .

Método URI do pedido Versão HTTP
DELETE <https:// accountname.restv2>.<location.media.azure.net/api/Programs>('ProgramId') HTTP/1.1

Pedido de Amostra

Pode experimentar o seguinte exemplo no separador Compositor do Fiddler.

Para obter as versões mais recentes x-ms-version:, veja Serviços de Multimédia REST.

Cabeçalhos de pedido:

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>  
  

Se for bem-sucedido, é devolvido um código de estado 204 Sem Conteúdo .

Nota

Esta operação é concluída de forma síncrona, pelo que não existe nenhum ID de operação para controlar.

Consulte também

Canal