최신 업데이트:2025-08-18 15:32:53
이 섹션에서는 업로드 토큰에 persistentOps 지시어가 포함되어 파일 업로드 전처리 작업이 수행될 때 알림(Notify) 메커니즘의 전반적인 개요를 설명합니다.
오브젝트 스토리지는 알림 요청의 헤더에 Authorization 필드를 추가합니다.
형식
<Accesskey>:<Urlsafe_Base64_Encode(hmac_sha1(NotifyUrl+"\n"+Response,SecretKey))>
참고 사항:
- Response는 알림으로 수신한 컨텐츠입니다.
- 오브젝트 스토리지는 사용자 계정 내 유효한 AK와 SK 중 임의 한 세트를 선택하여
authentication헤더 Authorization 값을 생성합니다. 인증 과정에서 모든 AK·SK 쌍을 기록하고, 정확히 일치하는 키 세트 중 하나로 헤더 인증을 수행해야 합니다.
NotifyUrl을 설정한 후, 해당 주소로 URL-Safe Base64 Encoded된 JSON 포맷의 Response 메시지가 전달됩니다. 이 메시지는 단순히 영구적 처리 결과를 의미합니다.
주의:
전처리 결과 알림을 받을 NotifyUrl은 반드시 외부 네트워크에서 접속 가능한 HTTP/1.1 200 OK로 정상 응답 가능한 URL이어야 합니다. 공간( ) 등 특수문자가 있을 경우엔 URL 인코딩이 필요합니다.
형식 예시:
{
"id": "<id string>",
"code": "<code int>",
"desc": "<desc string>",
"separate":"<separate int>",
"inputkey":"<inputkey string>",
"inputbucket":"<inputbucket string>",
"inputfsize":"<inputfsize int>",
"items": [
{
"cmd": "<cmd string>",
"code": "<code string>",
"costTime": "<costTime int>",
"desc": "<desc string>",
"error": "<error string>",
"fsize": "<fsize int>",
"hash": "<hash string>",
"key": "<key string>",
"url": "<url string>",
"duration": "<duration double>",
"bit_rate": "<bit_rate string>",
"resolution": "<resolution string>",
"detail": [
{
"fsize": "<fsize int>",
"hash": "<hash string>",
"key": "<key string>",
"url": "<url string>",
"duration": "<duration double>",
"bit_rate": "<bit_rate string>",
"resolution": "<resolution string>"
}
]
}
]
}
필드 설명:
| 필드명 | 타입 | 설명 |
|---|---|---|
| id | string | 업로드 전처리 또는 트리거된 영구 처리 인터페이스가 반환하는 persistentId |
| code | int | 알림 진행 상태 코드 1: 별도 알림, 작업 처리 중 2: 별도 알림, 작업 처리 실패 3: 알림 성공 |
| desc | string | 상태 코드에 대한 상세 설명 |
| separate | string | 분리(notify) 알림 옵션, 0: 일괄 알림, 1: 별도 알림 |
| inputkey | string | 원본 파일명 |
| inputbucket | string | 원본 파일이 속한 버킷명 |
| inputfsize | int | 원본 파일 크기 |
| items | array | 각 작업(Operation)별 상태 정보. 여러 작업이 포함된 경우 개별 메시지 배열 |
| cmd | string | 작업 명령(ops) |
| code | string | 처리 결과 상태 코드 2: 처리 실패 3: 처리 성공 |
| costTime | int | 트랜스코딩 등 특수 작업 시 걸린 시간(일반적으로는 0) |
| desc | string | 상태 코드 상세 설명 |
| error | string | 처리 실패 시 원인 정보 |
| fsize | int | 처리 결과 파일 크기 |
| hash | string | 처리 결과 hash 값 |
| key | string | 처리 결과 key 값 |
| url | string | 자원(리소스) 접근 경로 |
| duration | double | 트랜스코딩 시 출력된 비디오 재생 시간 |
| bit_rate | string | 트랜스코딩된 비디오 비트레이트 |
| resolution | string | 트랜스코딩된 비디오 해상도 |
| detail | array | 여러 데이터 파일이 출력된 경우 각각의 파일별 상세 정보 |
| fsize | int | 처리된 파일의 크기 |
| hash | string | 처리 결과의 hash 값 |
| key | string | 처리 결과의 key 값 |
| url | string | 자원 접근 경로 |
| duration | double | 트랜스코딩된 비디오 재생 시간 |
| bit_rate | string | 트랜스코딩된 비디오 비트레이트 |
| resolution | string | 트랜스코딩된 비디오 해상도 |
{
"id":"2c90802745ee87870145ef1430f90006",
"code":3,
"desc": "operate [\"avthumb/flv\"] is finish",
"separate":0,
"inputkey":"aaa.flv",
"inputbucket":"chenqltesttwo",
"inputfsize":20000,
"items":[
{
"cmd":"avthumb/flv",
"code":"3",
"costTime": 0,
"desc":"finish",
"error":null,
"fsize":20000,
"hash":"FlWvHsc-CK6miygKCcLjCaQ5csNO",
"key":"chenqltesttwo:aaa.flv",
"url":"http://chenqltesttwo.com/aaa.flv",
"duration": 198.083,
"bit_rate": "1288025",
"resolution": "1280X720",
"detail": [
{
"fsize": 20000,
"hash": "FlWvHsc-CK6miygKCcLjCaQ5csNO",
"key": "chenqltesttwo:aaa.flv",
"url": "http://chenqltesttwo.com/aaa.flv",
"duration": 198.083,
"bit_rate": "1288025",
"resolution": "1280X720"
}
]
}
]
}