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.