מצלמה.listFiles

מפרט את כל התמונות/כל הסרטונים/כל התמונות והסרטונים במצלמה. עשויות להידרש מספר בקשות לרישום כל הקבצים. הפקודה הזו נוספה ברמת API 2.

אם מצלמה לא תומכת בפרמטרים המבוקשים, המצלמה צריכה להחזיר את היכולת המקסימלית הזמינה לחומרה. לדוגמה, מקרה נדיר עשוי להיות הבקשה: {entryCount: 500, maxSize: 2000}. במקום להקפיץ הודעת שגיאה, התשובה צריכה להתבסס על הקיבולת המקסימלית שנתמכת במצלמה, למשל: {entryCount: 100, maxSize: 200}. שגיאת הרצה בכל שאר המקרים. לדוגמה, כשהבקשה היא {entryCount: 500, maxSize: -500}, היא אמורה להציג את הודעת השגיאה invalidParameterValue כי maxSize היא שלילית.

פרמטרים

  • fileType: סוג הקבצים שמיועדים לרשימה, צריך להיות כל אחד משלושת הרכיבים הבאים: "image", "video", "all".
  • startPosition: (אופציונלי) המיקום של הקובץ הראשון שצריך להחזיר ברשימה. אם לא צוין מיקום, נקודת ההתחלה היא 0, שמייצג את הקובץ הראשון. אם הוא גדול מהמיקום של הקובץ האחרון, מחזירים תשובה רגילה עם ערכים ריקים בתוצאות במקום תגובת שגיאה.
  • entryCount: מספר הרשומות שיוחזרו. אם הוא גדול ממספר הקבצים שנשארו, אפשר פשוט להחזיר תשובה רגילה עם הקבצים שנותרו, ולא רק הודעת שגיאה.
  • maxThumbSize: גודל מקסימלי של תמונות ממוזערות; max(thumbnail_width, picture_height). היא מוגדרת לערך null כשהלקוח רוצה להשמיט מהתוצאה תמונות ממוזערות.

תוצאות

  • ערכים:רשימת מאפייני התמונה. כל רשומה צריכה לכלול את השדות הבאים, מלבד קווי אורך ורוחב, שהם אופציונליים:
    • name:שם הקובץ.
    • fileUrl: כתובת ה-URL האבסולוטית של הקובץ, שניתן להשתמש בה כדי להוריד ישירות מהמצלמה.
    • size [מידה]: הגודל בבייטים של הקובץ.
    • dateTimeZone: התאריך, השעה ואזור הזמן של הקובץ, בפורמט: YYYY:MM:DD HH:MM:SS+(-)HH:MM. כדי לציין את השעה צריך להשתמש בפורמט של 24 שעות. התאריך והשעה מופרדים בתו ריק אחד. אזור הזמן שונה משעון UTC. שימו לב: המשמעות היא סיום הצילום של הסרטונים.
    • lat: (אופציונלי) קו הרוחב של המיקום בזמן צילום הקובץ.
    • lng: (אופציונלי) קו האורך של המיקום בזמן צילום הקובץ.
    • width: הרוחב של התמונה או כל פריים של סרטון.
    • height: גובה התמונה או כל פריים של סרטון.
    • תמונה ממוזערת: מחרוזת מקודדת מסוג Base64 לתמונה ממוזערת של הקובץ (כאשר maxThumbSize != null).
    • isProcessed: ערך בוליאני שמציין אם הקובץ מעובד (למשל, עבר עיבוד) או אם מדובר בתצוגה מקדימה בלבד. הערך הזה צריך להיות True כברירת מחדל, אלא אם המדיניות delayProcessing מוגדרת כ-True. אם קיימת תמונה מעובדת, אסור להציג את תמונת התצוגה המקדימה המתאימה גם אם היא קיימת. אחרת, צריך לציין את תמונת התצוגה המקדימה.
    • previewUrl: ברירת המחדל היא מחרוזת ריקה אם הערך delayProcessing לא נתמך, או כשהערך של isProcessed שווה ל-False או כשתמונת התצוגה המקדימה מעולם לא נוצרה כתוצאת ביניים. אחרת, זוהי כתובת ה-URL של תמונת התצוגה המקדימה שתואמת לתמונה הסופית. משמש ליצירת ההתאמה בין תמונת התצוגה המקדימה לתמונה הסופית.
  • totalEntries: המספר הכולל של הרשומות של fileType באחסון. למשל, אם fileType הוא "image", זהו המספר הכולל של התמונות באחסון.

שגיאות

  • missingParameter: כל פרמטר נדרש לא מצוין. לדוגמה, entryCount לא צוין.
  • legalParameterName: השם של פרמטר הקלט לא מזוהה.
  • legalParameterValue: השם של פרמטר הקלט מזוהה, אבל הערך שלו לא חוקי. לדוגמה, entryCount הוא שלילי או סוג הנתונים שגוי.

Command 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."
    }
}