camera.listFiles

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

카메라의 모든 이미지/모든 동영상/모든 이미지 및 동영상을 나열합니다. 모든 파일을 나열하기 위해 몇 번의 요청이 필요할 수 있습니다. 이 명령어는 API 수준 2에 추가되었습니다.

카메라가 요청된 매개변수를 지원하지 않는 경우 카메라는 하드웨어에 사용 가능한 최대 기능을 반환해야 합니다. 예를 들어 {entryCount: 500, maxSize: 2000} 요청이 드물게 있을 수 있습니다. 오류는 발생하지 않고 카메라에서 지원하는 최대 기능(예: {entryCount: 100, maxSize: 200})을 기반으로 해야 합니다. 다른 모든 경우에는 오류를 발생시키세요. 예를 들어 요청이 {entryCount: 500, maxSize: -500}인 경우 maxSize이 음수이므로 invalidParameterValue 오류가 발생합니다.

매개변수

  • fileType: 나열할 파일 유형으로, 'image', 'video', 'all' 중 하나여야 합니다.
  • startPosition: (선택사항) 목록에서 반환될 첫 번째 파일의 위치입니다. 생략하면 시작 위치는 0으로, 첫 번째 파일을 나타냅니다. 마지막 파일의 위치보다 크면 오류 응답이 아닌 결과에 빈 항목이 있는 일반 응답을 반환합니다.
  • entryCount: 반환할 항목의 수입니다. 나머지 파일 수보다 많은 경우 오류 응답 대신 실제 파일이 남아 있는 일반 응답을 반환하기만 하면 됩니다.
  • maxThumbSize: 썸네일 이미지의 최대 크기이며 max(썸네_너비, 썸네일_높이)입니다. 클라이언트가 결과에서 썸네일 이미지를 생략하려고 할 때 null로 설정됩니다.

결과

  • items: 이미지 속성 목록입니다. 각 항목에는 위도와 경도를 제외한 다음 필드가 포함되어야 합니다.
    • name: 파일 이름
    • fileUrl: 파일의 절대 URL로, 카메라에서 직접 다운로드하는 데 사용할 수 있습니다.
    • size: 파일의 크기(바이트)입니다.
    • dateTimeZone: YYYY:MM:DD HH:MM:SS+(-)HH:MM 형식의 파일 날짜, 시간, 시간대입니다. 시간 형식으로 24시간 형식을 사용합니다. 날짜 및 시간은 하나의 빈 문자로 구분됩니다. 시간대가 UTC 시간과 오프셋됩니다. 이는 동영상 캡처의 끝을 나타냅니다.
    • lat: (선택사항) 파일을 캡처할 때 위치의 위도
    • lng: (선택사항) 파일 캡처 시점의 위치 경도.
    • width: 이미지 또는 각 동영상 프레임의 너비입니다.
    • height: 이미지 또는 각 동영상 프레임의 높이입니다.
    • 썸네일: 파일의 썸네일 이미지를 위한 Base64로 인코딩된 문자열입니다 (maxThumbSize != null인 경우).
    • isProcessed: 파일이 처리되었는지 (예: 병합됨) 또는 미리보기 전용인지 여부를 나타내는 부울 값입니다. delayProcessing가 true로 설정되지 않는 한 기본적으로 true입니다. 처리된 이미지가 있는 경우 해당 미리보기 이미지가 있어도 나열하면 안 됩니다. 없으면 미리보기 이미지를 나열합니다.
    • previewUrl: delayProcessing이 지원되지 않거나 isProcessed이 false이거나 미리보기 이미지가 중간 결과로 생성되지 않은 경우 빈 문자열로 기본 설정됩니다. 그렇지 않으면 최종 이미지에 해당하는 미리보기 이미지의 URL입니다. 미리보기 이미지와 최종 이미지 간의 대응 관계를 구축하는 데 사용됩니다.
  • totalEntries: 스토리지에 있는 fileType의 총 항목 수입니다. 예를 들어 fileType이 "image"인 경우 스토리지에 있는 총 이미지 수입니다.

오류

  • missingParameter: 필수 매개변수가 지정되지 않았습니다. 예를 들어 entryCount이 지정되지 않았습니다.
  • invalidParameterName: 입력 매개변수 이름을 인식할 수 없습니다.
  • invalidParameterValue: 입력 매개변수 이름이 인식되지만 값이 잘못되었습니다. 예를 들어 entryCount이 음수이거나 데이터 유형이 잘못되었습니다.

명령어 I/O

명령어 입력
{
    "parameters": {
        "entryCount": 50,
        "maxThumbSize": 100
    }
}
명령어 결과
{
    "results": {
        "entries": [
            {
                "name": "abc",
                "fileUrl": "file URL",
                "size":  file size, # of bytes,
                "dateTimeZone": "2014:12:27 08:00:00+08:00",
                "lat": 50.5324,
                "lng": -120.2332,
                "width": 2000,
                "height": 1000,
                "thumbnail": "ENCODEDSTRING",
                "isProcessed": true,
                "previewUrl": ""
            }
            ...
            {
                ...
            }
        ],
        "totalEntries": 250
    }
}
명령어 출력 (오류)
{
    "error": {
        "code": "invalidParameterValue",
        "message": "Parameter entryCount is negative."
    }
}