연락처 지원 | 시스템 상태
페이지 내용
    --- title: '동적 수집 알림' description: '이 주제에서는 수집 작업의 진행 상황에 대한 정보를 제공하는 동적 수집 알림에 대해 알아봅니다. 이 문서는 레거시 수집 시스템에만 적용됩니다. Dynamic Delivery의 경우동적 수집에 대한 알림' parent: 'General Information' grandparent: Dynamic Ingest API레거시 레이아웃: 스테이징 ---

    Dynamic Ingest API 알림

    수집 프로세스의 결과에 대한 알림을 수신하기 위해 하나 이상의 콜백 URL을 지정할 수 있습니다. 지정하는 URL은 POST 요청을 수락할 수 있는 앱용이어야 합니다. 알림은 JSON 형식으로 전송됩니다.

    설정

    여기 예가 있습니다.

    • pub id가 57838016001인 사용자
    • Dynamic Ingest를 사용하여 https://s3.amazonaws.com/bucket/mysourcevideo.mp4에 있는 소스 비디오 파일을 업로드하려고 합니다.
    • 비디오 ID가 5199670523001인 카탈로그의 기존 제목을 업로드하려고 합니다.
    • 고해상도 프로필 사용
    • 각각 http://host1/path1 및 http://host2/path2에 있는 두 끝점에서 콜백을 수신하려고 합니다.

    DI 요청은 다음과 같습니다.

    POST 요청

    요청 본문

    샘플 알림

    알림은 JSON으로 요청 본문의 알림과 함께 POST 요청으로 전송됩니다. [1] . 다음은 몇 가지 샘플 알림입니다.

        {
            "accountId": "57838016001",
            "entityType": "ASSET",
            "version": "1",
            "status": "SUCCESS",
            "videoId": "5199670523001",
            "entity": "5199679295001",
            "action": "CREATE",
            "jobId": "699db2e5-aeb7-4765-a4a7-2cc68c7360bd"
        }
        {
            "action": "CREATE",
            "status": "SUCCESS",
            "entityType": "DIGITAL_MASTER",
            "videoId": "5199670523001",
            "entity": "5199670523001",
            "accountId": "57838016001",
            "version": "1",
            "jobId": "699db2e5-aeb7-4765-a4a7-2cc68c7360bd"
        }
        {
            "entityType": "ASSET",
            "status": "SUCCESS",
            "action": "CREATE",
            "entity": "5199680423001",
            "profileRefId": "ts7",
            "version": "1",
            "accountId": "57838016001",
            "videoId": "5199670523001",
            "jobId": "699db2e5-aeb7-4765-a4a7-2cc68c7360bd"
        }
        {
            "jobId": "699db2e5-aeb7-4765-a4a7-2cc68c7360bd",
            "accountId": "57838016001",
            "version": "1",
            "status": "SUCCESS",
            "entityType": "TITLE",
            "entity": "5199670523001",
            "videoId": "5199670523001",
            "action": "CREATE"
        }

    노트

    • [1] 예외: DRM 패키지 콘텐츠에 대한 모든 알림은 키/값 쌍으로 반환됩니다. 이 경우, Content-Type헤더는application/x-www-form-urlencoded . 그렇지 않으면Content-Type될거야application/json

    알림 필드

    안건 설명
    status 될거야FAILED변환의 수집 또는 생성이 성공하지 못한 경우SUCCESS요청이 성공한 경우
    accountId 계정 아이디
    videoId 비디오 아이디
    jobId Dynamic Ingest 요청의 작업 ID
    profileRefId

    비디오 변환의 경우 이것은reference id수집 프로필에서 변환에 대해 지정했습니다.

    매니페스트의 경우profileRefId매니페스트 유형을 나타냅니다.

    • HlsManifest HLS NG 매니페스트의 경우
    • HdsManifest HDS 매니페스트의 경우
    • DashManifest DASH 매니페스트의 경우(2 - 매니페스트 자산 중 하나는 MAPI에서 사용하는 데 사용되고 다른 하나는 CMS API에서 사용하는 데 사용됨)
    • SmoothIsmManifest부드러운 매니페스트의 경우(2 - 매니페스트 자산 중 하나는 MAPI에서 사용하는 데 사용되고 다른 하나는 CMS API에서 사용하는 데 사용됨)
    entity 존재하는 경우 수집되거나 실패한 자산의 Video Cloud ID(비디오 객체가 Video Cloud에서 성공적으로 생성된 경우)
    entityType 보고된 자산의 종류 - 예: TITLE(비디오), DIGITAL_MASTER, ASSET(변환, 캡션 파일 또는 이미지)
    errorMessage 수집이 실패한 경우 수집에 실패한 이유에 대한 설명
    version 항상 같은 문자열"1"
    action 발생한 작업(예: CREATE)

    알림 해석

    다음을 포함하는 알림"action": "CREATE"그리고"status": "SUCCESS"프로세스의 완료를 나타냅니다.

    • 만약entityType ~이다TITLE , 인제스트된 동영상 처리가 완료됩니다.
    • 만약entityType ~이다ASSET , 변환, 이미지, 매니페스트 또는 WebVTT 파일이 비디오에 성공적으로 추가되었습니다.

    참고: "status": "SUCCESS"제목처리가 완료되었음을 나타내지만 반드시 모든 변환이 성공적으로 생성되었음을 의미하지는 않습니다. 비디오의 동적 수집이 성공했는지 확인하려면 다음을 참조하십시오. 동적 수집 요청 상태 가져오기

    기본 샘플 앱

    아래는 간단한 로깅 앱의 코드입니다. Dynamic Ingest API공고. 이 앱은 PHP로 작성되었지만 앱에 공개 URL이 있고 http(s) POST 요청을 처리할 수 있는 한 모든 언어를 사용할 수 있습니다.

    이 앱이 생성하는 로그 파일을 볼 수 있습니다여기.

    참고: 이 앱을 직접 구현하려는 경우 앱에 로그 파일에 쓸 수 있는 권한이 있는지 확인해야 합니다. 또한 로그 파일은 빠르게 커질 수 있음을 기억하십시오. 아마도 정기적으로 비우고 싶을 것입니다.

        <?php // POST는 JSON 데이터에 대해 작동하지 않습니다. $problem = "오류 없음"; 노력하다{ $json = file_get_contents('php://input'); $decoded = json_decode($json, true); }잡기(예외 $e) { $problem = $e->getMessage(); } // 알림을 예쁜 인쇄된 JSON으로 변환 $notification = json_encode($decoded, JSON_PRETTY_PRINT); $logEntry = $알림. "\\n알림 수신 오류: ".$problem. "\\n---
    ------
    ------
    ------
    ------
    ----\\n"; // 마지막으로, 로그 파일을 찾을 수 있는 위치를 PHP에 알려주고 PHP에 이 파일을 열고 // 이전에 생성한 문자열을 추가합니다. $logFileLocation = "di-log.txt"; $fileHandle = fopen($logFileLocation, 'a') 또는 die("-1"); fwrite($fileHandle, $logEntry); fclose($fileHandle); // 앱을 직접 탐색하면 아래 줄이 표시됩니다. echo "Dynamic Ingest callback app is running"; ?>

    페이지 마지막 업데이트 날짜16 Oct 2022