Überblick
Nachdem ein Auftrag oder eine Ausgabedatei abgeschlossen wurde, können Sie dies auf verschiedene Arten herausfinden.
- Wir können eine senden HTTP-POST-Anfrage zu Ihrer Bewerbung mit den Details.
- Wir können eine E-Mail senden.
- Sie können Ihre Benachrichtigungen mit einem Drittanbieter-Tool wie z ngrok. Dies ist nützlich, wenn Sie lokal entwickeln und Zencoder Ihren Entwicklungsserver nicht erreichen kann.
- Sie können das Zencoder-Dashboard auf den Auftragsstatus überprüfen.
- Sie können den Jobstatus über eine Job Show API-Anforderung überprüfen.
Die ersten beiden - ausgehend HTTP oder E-Mail-Benachrichtigungen - werden ausgelöst, indem Sie Ihrer API-Anforderung zum Erstellen von Jobs Benachrichtigungsoptionen hinzufügen.
Hinweise:
- Benachrichtigungen sind auf 5 pro Ausgabe und Auftrag begrenzt. Ausgabemeldungen werden nicht auf die Auftragssumme angerechnet. Kontaktiere uns wenn du mehr brauchst.
- Benachrichtigungsnutzdaten können Benachrichtigungen für Jobs wiederholen. Sie sollten den Nutzlastkörper nach Job-ID analysieren und dann angeben.
- Benachrichtigungshandler auf Servern, die auf HTTP2 basieren, werden derzeit nicht unterstützt. Benachrichtigungen, die an HTTP2-Server gesendet werden, werden möglicherweise nicht ohne Rückgabe eines Fehlers zugestellt.
Benachrichtigungen
notifications:Array
API-Versionen: V2
Gültige Werte: Ein Array von Benachrichtigungszeichenfolgen (gültige E-Mail-Adressen oder URLs) oder Hashes von url und format.
Kompatible Auftragstypen: VOD
Beschreibung:
Geben Sie eine oder mehrere HTTP-URLs oder E-Mail-Adressen an, um mit einem Webhook zu benachrichtigen, wenn ein Auftrag oder eine Ausgabe abgeschlossen ist.
Bei HTTP-Benachrichtigungen wird die Benachrichtigungs-API-Anforderung von Zencoder als an Ihren Server gesendet POST
an die Benachrichtigungs-URL und ist entweder JSON oder XML mit zwei oder drei Werten. Die erste ist eine Job-ID. Diese ID stimmt mit der ID überein, die Sie erhalten haben, als Sie die erste Jobanfrage gesendet haben. Zweitens ist ein Status - entweder "beendet", "fehlgeschlagen" oder "abgebrochen". Wenn ein Job mehrere Ausgaben enthält, enthält diese Benachrichtigung auch die Ausgabebezeichnung, die Sie beim erstmaligen Erstellen des Jobs angegeben haben.
HTTP-Benachrichtigungen senden JSON oder XML (je nach Anforderung format).
Benachrichtigungsinhalt variieren je nach Verwendete API-Version.
Wenn Zencoder beim Senden einer Benachrichtigung keine erfolgreiche Verbindung zum Zielserver herstellen kann, wird die Benachrichtigung in die Warteschlange gestellt, um es erneut zu versuchen. Der Wiederholungsplan wird in der behandelt Benachrichtigungshandbuch.
Autorisierung und Sicherheit
Fügen Sie für authentifizierte HTTP-Benachrichtigungen einen Benutzernamen und ein Kennwort mit der folgenden Syntax in die Benachrichtigungs-URL ein: https: // Benutzername: password@www.example.com/path/to/notification/action
Geben Sie für HTTPS einfach eine URL mit an https://
erzwingt das sichere Senden der Benachrichtigung über SSL.
Hinweis: API V1 unterstützt nur Ausgabemeldungen, keine Jobbenachrichtigungen.
{
"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
API-Versionen: V2
Elternteil: notifications
Gültige Werte: Eine gültige zu benachrichtigende HTTP- oder HTTPS-URL, optional einschließlich HTTP-Authentifizierungsdaten
Kompatible Auftragstypen: VOD
Beispiele:
- https://username:password@example.com/notification/path
- http://example.com/notification-handler.php
Beschreibung:
Eine URL zu benachrichtigen wenn ein Auftrag abgeschlossen ist.
Verwenden Sie die url Option bei der Angabe notifications als Hash, einschließlich a format. Wenn Sie kein Format angeben müssen, können Sie die URL einfach als Element in das Benachrichtigungsarray aufnehmen.
Fügen Sie für authentifizierte HTTP-Benachrichtigungen einen Benutzernamen und ein Kennwort mit der folgenden Syntax in die Benachrichtigungs-URL ein: https: // Benutzername: password@www.example.com/path/to/notification/action.
Geben Sie für HTTPS einfach eine URL mit an https://
Daher wird eine Benachrichtigung sicher über SSL gesendet.
Benachrichtigungsinhalt variieren je nach Verwendete API-Version.
Wenn Zencoder beim Senden einer Benachrichtigung keine erfolgreiche Verbindung zum Zielserver herstellen kann, wird die Benachrichtigung in die Warteschlange gestellt, um es erneut zu versuchen. Die Benachrichtigung wird bis zu 20 Mal versucht, wobei sich die Verzögerung zwischen den Versuchen jedes Mal verdoppelt.
Autorisierung und Sicherheit
Fügen Sie für authentifizierte HTTP-Benachrichtigungen einen Benutzernamen und ein Kennwort mit der folgenden Syntax in die Benachrichtigungs-URL ein: https: // Benutzername: password@www.example.com/path/to/notification/action
Geben Sie für HTTPS einfach eine URL mit an https://
erzwingt das sichere Senden der Benachrichtigung über SSL.
Hinweise: API V1 unterstützt nur Ausgabemeldungen, keine Jobbenachrichtigungen.
{
"input": "s3://zencodertesting/test.mov",
"notifications": [
{
"url": "https://example.com/notifications.html"
}
],
"outputs": [
{
"notifications": [
{
"url": "https://example.com/notifications.html"
}
]
}
]
}
Siehe auch: notifications , format , und headers
Format
format:String
API-Versionen: V2
Elternteil: notifications
Gültige Werte: json
oder xml
Kompatible Auftragstypen: VOD
Beispiel: json
Beschreibung:
Ein Format und ein Inhaltstyp für notifications.
Standardmäßig befinden sich HTTP-Benachrichtigungen in JSON mit einem HTTP-Inhaltstyp von application/json
.
Setzen Sie für XML-Benachrichtigungen das Format auf 'xml'. Dies gibt Benachrichtigungen im XML-Format mit einem HTTP-Inhaltstyp von zurück application/xml
.
Hinweis: API V1-Benachrichtigungen enthalten keinen HTTP-Inhaltstyp, es sei denn, Sie geben ein Format an.
{
"input": "s3://zencodertesting/test.mov",
"notifications": [
{
"format": "xml",
"url": "https://example.com/notifications.html"
}
],
"outputs": [
{
"notifications": [
{
"format": "xml",
"url": "https://example.com/notifications.html"
}
]
}
]
}
Siehe auch: notifications , format , und headers
Kopfzeilen
headers:Hash
API-Versionen: V2
Elternteil: notifications
Gültige Werte: Schlüssel müssen mit einem Buchstaben beginnen und können Buchstaben, Zahlen und - enthalten. Werte können eine beliebige Zeichenfolge enthalten.
Für jeden Benachrichtigungsheader gibt es eine Längenbeschränkung von 100 Zeichen.
Kompatible Auftragstypen: VOD
Beispiel: {'Accept': 'application/json', 'Internal-Id': '12345'}
Beschreibung:
Standardmäßig werden HTTP-Benachrichtigungen zusammen mit einem User-Agent mit einem HTTP-Inhaltstyp gesendet. Wenn für Ihre Anwendung zusätzliche Header erforderlich sind, können diese hier angegeben werden.
Der Header wird als Schlüssel des Hashs festgelegt, und sein Wert ist der Wert des Hashs.
{
"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"
}
}
]
}
]
}
Siehe auch: notifications , url , und format
Ereignis
event:String
API-Versionen: V2
Elternteil: notifications
Gültige Werte: first_segment_uploaded
, seamless_playback
Kompatible Auftragstypen: VOD
Beispiel: {'event': 'seamless_playback'}
Beschreibung:
Live-Ausgaben haben zusätzliche Benachrichtigungsereignisse, die dem Fortschritt der Datei entsprechen.
Benachrichtigungen können gesendet werden, wenn das erste Segment einer Live-Ausgabe hochgeladen wurde und wenn genügend Segmente hochgeladen wurden, um eine nahtlose Wiedergabe zu ermöglichen.
Das Ereignis gilt nicht für reguläre Job- und Ausgabemeldungen, sondern nur für Live-Ausgaben.
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"live_stream": true,
"type": "segmented",
"notifications": [
{
"url": "http://zencoderfetcher/notifications.html",
"event": "seamless_playback"
}
]
}
]
}
Siehe auch: notifications , url , und format