Aperçu
Une fois qu'un travail ou un fichier de sortie est terminé, vous pouvez en savoir plus de plusieurs manières.
- Nous pouvons envoyer un Requête HTTP POST à votre application avec les détails.
- Nous pouvons envoyer un e-mail.
- Vous pouvez demander vos notifications à l'aide d'un outil tiers tel que ngrok. Ceci est utile lorsque vous développez localement et que Zencoder ne peut pas atteindre votre serveur de développement.
- Vous pouvez consulter le tableau de bord Zencoder pour connaître l'état de la tâche.
- Vous pouvez vérifier l'état du travail via une demande d'API Job show.
Les deux premières notifications HTTP ou par e-mail sortantes sont déclenchées par l'ajout d'options de notification à votre demande d'API Job Create.
Remarques:
- Les notifications sont limitées à 5 par sortie et travail. Les notifications de sortie ne comptent pas dans le total du travail. Nous contacter si vous avez besoin de plus.
- Les charges utiles de notification peuvent répéter les notifications pour les travaux. Vous devez analyser le corps de la charge utile par ID de tâche puis par état.
- Les gestionnaires de notifications sur les serveurs construits sur HTTP2 ne sont actuellement pas pris en charge. Les notifications envoyées aux serveurs HTTP2 peuvent ne pas être délivrées sans renvoyer d'erreur.
notifications
notifications:Array
Versions de l'API : V2
Valeurs valides : Un tableau de chaînes de notification (adresses e-mail ou URL valides), ou des hachages de url et format.
Types de tâches compatibles : VOD
Description :
Spécifiez une ou plusieurs URL HTTP ou adresses e-mail à notifier avec un webhook lorsqu'une tâche ou une sortie est terminée.
Pour les notifications HTTP, la demande de l'API de notification est envoyée de Zencoder à votre serveur en tant que POST
à l'URL de notification, et est soit JSON ou XML contenant deux ou trois valeurs. Le premier est un ID de tâche. Cet ID correspond à l'ID que vous avez reçu lorsque vous avez soumis la demande de travail initiale. Le second est un statut : soit « terminé », « échoué », soit « annulé ». Si un travail contient plusieurs sorties, cette notification contient également l'étiquette de sortie que vous avez fournie lors de la création initiale du travail.
Les notifications HTTP enverront JSON ou XML (selon le format).
Contenu de la notification varient en fonction du Version API utilisée.
Si Zencoder ne parvient pas à se connecter avec succès au serveur cible lors de l'envoi d'une notification, la notification sera mise en file d'attente pour réessayer. Le calendrier des tentatives est couvert dans le guide des notifications.
Autorisation et sécurité
Pour les notifications HTTP authentifiées, incluez un nom d'utilisateur et un mot de passe dans l'URL de notification à l'aide de la syntaxe suivante : https://username:password@www.example.com/path/to/notification/action
Pour HTTPS, spécifiez simplement une URL en utilisant https://
forcera la notification à être envoyée en toute sécurité en utilisant SSL.
Remarque : L'API V1 ne prend en charge que les notifications de sortie, pas les notifications de tâches.
{
"input": "s3://zencodertesting/test.mov",
"notifications": [
"dev@example.com",
"http://user:pass@example.com/path/to/notification/action",
{
"format": "xml",
"url": "https://example.com/notifications.html"
}
],
"outputs": [
{
"notifications": [
"dev@example.com",
"http://user:pass@example.com/path/to/notification/action",
{
"format": "xml",
"url": "https://example.com/notifications.html"
}
]
}
]
}
url
url:String
Versions de l'API : V2
Parent: notifications
Valeurs valides : Une URL HTTP ou HTTPS valide à notifier, comprenant éventuellement des informations d'identification d'authentification HTTP
Types de tâches compatibles : VOD
Exemples :
- https://username:password@example.com/notification/path
- http://example.com/notification-handler.php
Description :
Une URL vers notifier lorsqu'un travail est terminé.
Utilisez le url option lors de la spécification notifications sous forme de hachage, y compris un format. Si vous n'avez pas besoin de spécifier un format, vous pouvez simplement inclure l'URL en tant qu'élément dans le tableau des notifications.
Pour les notifications HTTP authentifiées, incluez un nom d'utilisateur et un mot de passe dans l'URL de notification à l'aide de la syntaxe suivante : https://username:password@www.example.com/path/to/notification/action.
Pour HTTPS, spécifiez simplement une URL en utilisant https://
une notification serait donc envoyée en toute sécurité en utilisant SSL.
Contenu de la notification varient en fonction du Version API utilisée.
Si Zencoder ne parvient pas à se connecter avec succès au serveur cible lors de l'envoi d'une notification, la notification sera mise en file d'attente pour réessayer. La notification sera tentée jusqu'à 20 fois, le délai entre les tentatives doublant à chaque fois.
Autorisation et sécurité
Pour les notifications HTTP authentifiées, incluez un nom d'utilisateur et un mot de passe dans l'URL de notification à l'aide de la syntaxe suivante : https://username:password@www.example.com/path/to/notification/action
Pour HTTPS, spécifiez simplement une URL en utilisant https://
forcera la notification à être envoyée en toute sécurité en utilisant SSL.
Remarques: L'API V1 ne prend en charge que les notifications de sortie, pas les notifications de tâches.
{
"input": "s3://zencodertesting/test.mov",
"notifications": [
{
"url": "https://example.com/notifications.html"
}
],
"outputs": [
{
"notifications": [
{
"url": "https://example.com/notifications.html"
}
]
}
]
}
Voir également: notifications , format , et headers
format
format:String
Versions de l'API : V2
Parent: notifications
Valeurs valides : json
ou xml
Types de tâches compatibles : VOD
Exemple : json
Description :
Un format et un type de contenu pour notifications.
Par défaut, les notifications HTTP sont en JSON, avec un type de contenu HTTP de application/json
.
Pour les notifications XML, définissez le format sur « XML ». Cela renverra des notifications au format XML, avec un type de contenu HTTP de application/xml
.
Remarque : Les notifications API V1 n'incluent pas de type de contenu HTTP, sauf si vous spécifiez un format.
{
"input": "s3://zencodertesting/test.mov",
"notifications": [
{
"format": "xml",
"url": "https://example.com/notifications.html"
}
],
"outputs": [
{
"notifications": [
{
"format": "xml",
"url": "https://example.com/notifications.html"
}
]
}
]
}
Voir également: notifications , format , et headers
en-têtes
headers:Hash
Versions de l'API : V2
Parent: notifications
Valeurs valides : Les clés doivent commencer par une lettre et peuvent contenir des lettres, des chiffres et -. Les valeurs peuvent contenir n'importe quelle chaîne.
Il existe une limite de longueur de 100 caractères pour chaque en-tête de notification.
Types de tâches compatibles : VOD
Exemple : {'Accept': 'application/json', 'Internal-Id': '12345'}
Description :
Par défaut, les notifications HTTP sont envoyées avec un type de contenu HTTP, avec un agent utilisateur. Si votre application nécessite des en-têtes supplémentaires, ils peuvent être spécifiés ici.
L'en-tête est défini comme la clé du hachage et sa valeur est la valeur du hachage.
{
"input": "s3://zencodertesting/test.mov",
"notifications": [
{
"format": "json",
"url": "https://example.com/notifications.html",
"headers": {
"Accept": "application/json",
"Internal-Id": "12345"
}
}
],
"outputs": [
{
"notifications": [
{
"format": "json",
"url": "https://example.com/notifications.html",
"headers": {
"Accept": "application/json",
"Internal-Id": "12345"
}
}
]
}
]
}
Voir également: notifications , url , et format
événement
event:String
Versions de l'API : V2
Parent: notifications
Valeurs valides : first_segment_uploaded
, seamless_playback
Types de tâches compatibles : VOD
Exemple : {'event': 'seamless_playback'}
Description :
Les sorties en direct ont des événements de notification supplémentaires correspondant à la progression du fichier.
Les notifications peuvent être envoyées lorsque le premier segment d'une sortie en direct a été téléchargé et lorsque suffisamment de segments ont été téléchargés pour permettre une lecture transparente.
L'événement ne s'applique pas aux notifications de travail et de sortie normales, uniquement à celles des sorties en direct.
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"live_stream": true,
"type": "segmented",
"notifications": [
{
"url": "http://zencoderfetcher/notifications.html",
"event": "seamless_playback"
}
]
}
]
}
Voir également: notifications , url , et format