Partager via


Programme

Un programme vous permet de contrôler la publication et le stockage des segments dans un flux temps réel. Des programmes peuvent s'exécuter simultanément. Ceci vous permet de publier et d'archiver différentes parties de l'événement en fonction des besoins.

Vous pouvez spécifier le nombre d’heures pendant lesquelles vous souhaitez conserver le contenu enregistré pour le programme en définissant la ArchiveWindowLength propriété (jusqu’à 25 heures). Les clients peuvent effectuer des recherches dans le contenu archivé pour le nombre d'heures spécifié. Si le programme s'exécute plus longtemps que la valeur spécifiée pour ArchiveWindowLength, le contenu plus ancien est supprimé. ArchiveWindowLength’informations, consultez la documentation ci-dessous.

Cette rubrique offre une vue d'ensemble de l'entité Program, et montre comment exécuter diverses opérations avec l'API REST Media Services.

Important

Lors de l’accès aux entités dans Media Services, vous devez définir les valeurs et les champs d’en-tête spécifiques dans vos requêtes HTTP.
Pour plus d’informations, consultez Configuration du développement d’API REST Media Services et Connexion à Media Services avec l’API REST Media Services.

Propriétés de l'entité Program

L'entité Program contient les propriétés suivantes.

Propriété Type Description
Id

Lecture seule. Défini par Media Services.
Edm.String ID de programme, affecté lors de la création. Le format est : nb:pgid:UUID:<GUID>.
Name Edm.String Nom du programme. La longueur maximale est de 256 caractères. Il peut être composé des caractères de l'alphabet anglais et de chiffres, y compris le tiret (« - ») et l'espace, dès lors qu'il commence et se termine par un caractère alphanumérique.
AssetId Edm.String ID de ressource à utiliser pour le traitement du programme. La propriété peut être mise à jour seulement quand le programme est dans l'état Arrêté.

Une ressource ne peut pas être supprimée si elle est utilisée par un programme. Vous pouvez supprimer une ressource après avoir supprimé le programme qui l'utilise.
Created

Lecture seule. Défini par Media Services.
Edm.DateTime Valeur de date/heure UTC qui indique le moment de la création.
Description Edm.String Description fournie par l'utilisateur. La longueur maximale est de 256 caractères.
ArchiveWindowLength

Obligatoire.
Edm.Time Le nombre d'heures pendant lesquelles vous voulez conserver le contenu enregistré pour le programme. Cette valeur peut être comprise entre 5 minutes et 25 heures. Ceci indique également la plage maximale de temps dans laquelle les clients peuvent effectuer des recherches à partir de la position dynamique actuelle. Les programmes peuvent durer davantage que le laps de temps spécifié, mais le contenu qui se situe en dehors de la longueur de fenêtre est ignoré en permanence. La valeur de cette propriété détermine également la longueur maximale que les manifestes de client peuvent atteindre.

Pour supprimer du contenu archivé, arrêtez et supprimez le programme, puis supprimez la ressource associée au programme.
LastModified

Lecture seule. Défini par Media Services.
Edm.DateTime La date et l'heure de la dernière modification.
ManifestName Edm.String Le nom du fichier manifeste, sans extension. Cette propriété peut être mise à jour seulement quand le programme est dans l'état Arrêté.
State

Lecture seule. Défini par Media Services.
Edm.String Obtient l'état actuel. Les valeurs possibles incluent :

- Arrêté. Une fois qu'un programme est créé, il est dans l'état Arrêté. Dans cet état, les propriétés du programme peuvent être mises à jour, mais la diffusion en continu n'est pas autorisée. Le programme ne peut pas être démarré, mis à jour ou supprimé quand il est dans cet état.
- Démarrage en cours. Le programme est en cours de démarrage. Aucune mise à jour ni aucun streaming ne sont autorisés durant cet état.
- Exécution en cours. Le programme est en mesure de traiter et d'archiver des flux dynamiques.
- Arrêt en cours. Le programme est en cours d'arrêt. Aucune mise à jour ni aucun streaming ne sont autorisés durant cet état.
ChannelId

Lecture seule. Défini par Media Services.
Edm.String L'ID du canal parent du programme.
Channel Channel Le canal parent du programme spécifié par l'ID de canal.

Créer des programmes

Créer un programme.

Méthode URI de demande Version HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/Programs> HTTP/1.1

Exemple de demande

Vous pouvez essayer l’exemple suivant dans l’onglet Compositeur de Fiddler.

Pour obtenir la dernière version x-ms-version:, consultez REST Media Services.

En-têtes de requête :

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>  
  

Corps de la requête :

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

En cas de succès, un code d'état 202 Accepté est renvoyé avec une représentation de l'entité créée dans le corps de la réponse.

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

Notes

Cette opération s'effectue de façon synchrone, si bien qu'aucun ID d'opération n'est à suivre.

Démarrer des programmes

Démarrer un programme. Un programme peut être démarré seulement quand il est dans l'état Arrêté et que le canal est dans l'état En cours d'exécution.

Méthode URI de demande Version HTTP
Démarrer <https:// accountname.restv2>.<location.media.azure.net/api/Programs>('ProgramId')/Start HTTP/1.1

Exemple de demande

Vous pouvez essayer l’exemple suivant dans l’onglet Compositeur de Fiddler.

Pour obtenir la dernière version x-ms-version:, consultez REST Media Services.

En-têtes de requête :

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>  
  

En cas de succès, un code d'état 202 Accepté est renvoyé. Le code d'état 202 Accepté indique une opération asynchrone, auquel cas la valeur d'en-tête de l'ID d'opération est également fournie pour être utilisée dans l'interrogation et le suivi de l'état des opérations de longue durée, comme le démarrage ou l'arrêt d'un programme. Transmettez la valeur de l'en-tête d'ID d'opération dans l'entité Operation pour récupérer l'état. Pour plus d’informations, consultez Interrogation manuelle des opérations Long-Running.

Arrêt de programmes

Arrêtez un programme. Un programme peut être arrêté seulement quand il est dans l'état En cours d'exécution. S'agissant d'une opération asynchrone,

Méthode URI de demande Version HTTP
Arrêter <https:// accountname.restv2>.<location.media.azure.net/api/Programs>('ProgramId')/Stop HTTP/1.1

Exemple de demande

Vous pouvez essayer l’exemple suivant dans l’onglet Compositeur de Fiddler.

Pour obtenir la dernière version x-ms-version:, consultez REST Media Services.

En-têtes de requête :

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>  
  

En cas de succès, un code d'état 202 Accepté est renvoyé. Le code d'état 202 Accepté indique une opération asynchrone, auquel cas la valeur d'en-tête de l'ID d'opération est également fournie pour être utilisée dans l'interrogation et le suivi de l'état des opérations de longue durée, comme le démarrage ou l'arrêt d'un programme. Transmettez la valeur de l'en-tête d'ID d'opération dans l'entité Operation pour récupérer l'état. Pour plus d’informations, consultez Interrogation manuelle des opérations Long-Running.

Répertorier les programmes

Les programmes sont récupérés à l'aide d'une requête HTTP GET.

Méthode URI de demande Version HTTP
GET Obtenir tous les programmes du compte Media Services :

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

Obtenir un programme spécifié du compte Media Services :

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

Obtenir tous les programmes associés à un canal spécifié :

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

Exemple de demande

Vous pouvez essayer l’exemple suivant dans l’onglet Compositeur de Fiddler.

Pour obtenir la dernière version x-ms-version:, consultez REST Media Services.

En-têtes de requête :

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>  
  

Si elle réussit, cette opération retourne un code 200 OK status et une liste de tous les programmes créés dans votre compte Media Services.

Mettre à jour des programmes

Mettre à jour un programme. Le programme doit être dans l'état Arrêté.

Méthode URI de demande Version HTTP
PATCH/PUT/MERGE

Pour plus d’informations sur ces opérations, consultez PATCH/PUT/MERGE.
<https:// accountname.restv2>.<location.media.azure.net/api/Programs>('ProgramId') HTTP/1.1

Exemple de demande

Vous pouvez essayer l’exemple suivant dans l’onglet Compositeur de Fiddler.

Pour obtenir la dernière version x-ms-version:, consultez REST Media Services.

En-têtes de requête :

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>  
  

Corps de la requête :

{"ArchiveWindowLength":"PT3H"}  

Si la mise à jour s'effectue de manière synchrone, elle renvoie le code d'état 204 Pas de contenu. Autrement, elle renvoie le code d'état 202 Accepté. Le code d'état 202 Accepté indique une opération asynchrone, auquel cas la valeur d'en-tête de l'ID d'opération est également fournie pour être utilisée dans l'interrogation et le suivi de l'état des opérations de longue durée, comme le démarrage ou l'arrêt d'un programme. Transmettez la valeur de l'en-tête d'ID d'opération dans l'entité Operation pour récupérer l'état. Pour plus d’informations, consultez Interrogation manuelle des opérations Long-Running.

Suppression de programmes

Supprimez un programme. Un programme peut être supprimé seulement quand il est dans l'état Arrêté.

Méthode URI de demande Version HTTP
Suppression <https:// accountname.restv2>.<location.media.azure.net/api/Programs>('ProgramId') HTTP/1.1

Exemple de demande

Vous pouvez essayer l’exemple suivant dans l’onglet Compositeur de Fiddler.

Pour obtenir la dernière version x-ms-version:, consultez REST Media Services.

En-têtes de requête :

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>  
  

En cas de réussite, un code d'état 204 Absence de contenu est renvoyé.

Notes

Cette opération s'effectue de façon synchrone, si bien qu'aucun ID d'opération n'est à suivre.

Voir aussi

Channel