概要
ジョブまたは出力ファイルの完了後、いくつかの方法でそれについて調べることができます。
- 詳細を記載した HTTP POSTリクエストをアプリケーションに送信できます。
- 私たちはメールを送ることができます。
- ngrok などのサードパーティツールを使用して通知をリクエストできます。これは、ローカルで開発していて Zencoder が開発サーバーにアクセスできない場合に便利です。
- Zencoder ダッシュボードでジョブの状態を確認できます。
- ジョブのステータスを確認するには、Job show API リクエストを使用します。
最初の 2 つ(発信 HTTPまたは電子メール通知)は、ジョブ作成 API リクエストに通知オプションを追加することによってトリガーされます。
注意:
通知
notifications:Array
API バージョン:V1、V2
有効な値:通知文字列 (有効な電子メールアドレスまたは URL) の配列、または URL と形式のハッシュ。
互換性のあるジョブタイプ:すべて
説明:
ジョブまたは出力が完了したときに Webhook で通知する HTTP URL または E メールアドレスを指定します。
HTTP 通知の場合、通知 API リクエストは Zencoder から通知 URL POST
にとしてサーバーに送信され、2 つまたは 3 つの値を含む JSON または XML のいずれかになります。1 つ目はジョブ ID です。この ID は、最初のジョブリクエストを送信したときに受け取った ID と一致します。2つ目はステータスです。「完了」、「失敗」、または「キャンセル」のいずれかです。ジョブに複数の出力が含まれている場合、この通知には、ジョブの最初の作成時に指定した出力ラベルも含まれます。
HTTP 通知は JSON または XML を送信します ( 要求された形式によって異なります )。
通知の内容は、使用する API のバージョンによって異なります。
通知の送信時に Zencoder がターゲットサーバーに正常に接続できない場合、通知はキューに入れられて再試行されます。再試行スケジュールについては、通知ガイドで説明しています。
承認とセキュリティ
認証された HTTP 通知の場合は、次の構文を使用して、通知 URL にユーザ名とパスワードを含めます。https://username:password@www.example.com/path/to/notification/action
HTTPS の場合は、を使用してhttps://
URL を指定するだけで、SSL を使用して通知が安全に送信されます。
注:API V1 では、ジョブ通知ではなく、出力通知のみがサポートされます。
{
"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 バージョン:V1、V2
親:通知
有効な値:通知する有効な HTTP または HTTPS URL(オプションで HTTP 認証資格情報を含む)
互換性のあるジョブタイプ:すべて
例:
- https:// username:password@example.com/notification/path
- http://example.com/notification-handler.php
説明:
使用URL指定時のオプション通知ハッシュとして、フォーマット。形式を指定する必要がない場合は、通知配列の項目としてURLを含めるだけです。
認証された HTTP 通知の場合は、https://username:password@www.example.com/path/to/notification/action という構文を使用して、通知 URL にユーザ名とパスワードを含めます。
HTTPS の場合は、を使用して URL を指定するだけでhttps://
、SSL を使用して通知が安全に送信されます。
通知の内容は、使用する API のバージョンによって異なります。
通知の送信時に Zencoder がターゲットサーバーに正常に接続できない場合、通知はキューに入れられて再試行されます。通知は最大20回試行され、試行間の遅延は毎回倍増します。
承認とセキュリティ
認証された HTTP 通知の場合は、次の構文を使用して、通知 URL にユーザ名とパスワードを含めます。https://username:password@www.example.com/path/to/notification/action
HTTPS の場合は、を使用してhttps://
URL を指定するだけで、SSL を使用して通知が安全に送信されます。
注意:API V1 では、ジョブ通知ではなく、出力通知のみがサポートされます。
{
"input": "s3://zencodertesting/test.mov",
"notifications": [
{
"url": "https://example.com/notifications.html"
}
],
"outputs": [
{
"notifications": [
{
"url": "https://example.com/notifications.html"
}
]
}
]
}
形式
format:String
API バージョン:V1、V2
親:通知
有効な値:json
またはxml
互換性のあるジョブタイプ:すべて
例:json
説明:
デフォルトでは、HTTP 通知は JSON で、HTTP コンテンツタイプはですapplication/json
。
XML 通知の場合は、フォーマットを「xml」に設定します。これにより、HTTP Content-Type がの通知を XML 形式で返しますapplication/xml
。
注:API V1 通知には、形式を指定しない限り、HTTP コンテンツタイプは含まれません。
{
"input": "s3://zencodertesting/test.mov",
"notifications": [
{
"format": "xml",
"url": "https://example.com/notifications.html"
}
],
"outputs": [
{
"notifications": [
{
"format": "xml",
"url": "https://example.com/notifications.html"
}
]
}
]
}
ヘッダー
headers:Hash
API バージョン:V2
親:通知
有効な値:キーは文字で始まる必要があり、文字、数字、および-を含めることができます。値には任意の文字列を含めることができます。
各通知ヘッダーには 100 文字という制限があります。
互換性のあるジョブタイプ:すべて
例:{'Accept': 'application/json', 'Internal-Id': '12345'}
説明:
デフォルトでは、HTTP 通知はユーザーエージェントとともに HTTP コンテンツタイプとともに送信されます。アプリケーションで追加のヘッダーが必要な場合は、ここで指定できます。
ヘッダーはハッシュのキーとして設定され、その値はハッシュの値です。
{
"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"
}
}
]
}
]
}
イベント
event:String
API バージョン:V2
親:通知
有効な値:first_segment_uploaded
, seamless_playback
互換性のあるジョブタイプ:すべて
例:{'event': 'seamless_playback'}
説明:
ライブ出力には、ファイルの進行状況に対応する追加の通知イベントがあります。
通知は、ライブ出力の最初のセグメントがアップロードされ、シームレスな再生を可能にするために十分なセグメントがアップロードされたときに送信できます。
イベントは、通常のジョブ通知と出力通知には適用されません。ライブ出力の通知にのみ適用されます。
{
"input": "s3://zencodertesting/test.mov",
"outputs": [
{
"live_stream": true,
"type": "segmented",
"notifications": [
{
"url": "http://zencoderfetcher/notifications.html",
"event": "seamless_playback"
}
]
}
]
}