camera.listFiles

Elenca tutte le immagini, tutti i video, tutte le immagini e i video presenti nella fotocamera. Potrebbero essere necessarie diverse richieste per elencare tutti i file. Questo comando è stato aggiunto nel livello API 2.

Se una videocamera non supporta i parametri richiesti, deve restituire la capacità massima disponibile per l'hardware. Ad esempio, un caso raro potrebbe essere la richiesta: {entryCount: 500, maxSize: 2000}. Invece di generare un errore, la risposta dovrebbe essere basata sulla capacità massima supportata dalla fotocamera, ad esempio: {entryCount: 100, maxSize: 200}. Genera errori per tutti gli altri casi; ad esempio, quando la richiesta è {entryCount: 500, maxSize: -500}, dovrebbe generare l'errore invalidParameterValue poiché maxSize è negativo.

Parametri

  • fileType: il tipo di file da elencare. Deve essere uno dei tre: "image", "video", "all".
  • startPosition: (facoltativo) la posizione del primo file da restituire nell'elenco. Se omessa, la posizione iniziale è 0, che rappresenta il primo file. Se è superiore alla posizione dell'ultimo file, restituisci una risposta normale con voci vuote nei risultati anziché una risposta di errore.
  • entryCount: il numero desiderato di voci da restituire. Se è superiore al numero di file rimanenti, restituisci una risposta normale con i file effettivi rimanenti anziché una risposta di errore.
  • maxThumbSize: dimensione massima delle immagini in miniatura; max(thumbnail_width, thumbnail_height). È impostato su null quando il client vuole omettere dal risultato le miniature.

Risultati

  • entries:un elenco di proprietà delle immagini. Ogni voce deve contenere i seguenti campi, ad eccezione di latitudine e longitudine, che sono facoltativi:
    • name: il nome del file.
    • fileUrl: l'URL assoluto del file, che può essere utilizzato per il download direttamente dalla fotocamera.
    • size: le dimensioni del file in byte.
    • dateTimeZone: data, ora e fuso orario del file nel formato YYYY:MM:DD HH:MM:SS+(-)HH:MM. Utilizza il formato 24 ore per l'ora. Data e ora sono separate da un carattere vuoto. Il fuso orario è offset dall'ora UTC. Tieni presente che rappresenta la fine dell'acquisizione dei video.
    • lat: (facoltativo) latitudine della posizione al momento dell'acquisizione del file.
    • lng: (facoltativo) la longitudine della posizione al momento dell'acquisizione del file.
    • width: larghezza dell'immagine o di ogni frame video.
    • height: l'altezza dell'immagine o di ogni frame video.
    • thumbnail: stringa codificata Base64 per l'immagine in miniatura del file (quando maxThumbSize != null).
    • isProcessed: un valore booleano che indica se il file è stato elaborato (ad esempio lo è stato unito) o se si tratta solo di un'anteprima. Questo dovrebbe essere vero per impostazione predefinita, a meno che delayProcessing non sia impostato su true. Se esiste un'immagine di anteprima, l'immagine di anteprima corrispondente non dovrebbe essere elencata anche se esiste. In caso contrario, indica l'immagine di anteprima.
    • previewUrl: il valore predefinito è una stringa vuota se delayProcessing non è supportato o quando isProcessed è uguale a false o se l'immagine di anteprima non è mai stata generata come risultato intermedio, altrimenti è l'URL dell'immagine di anteprima corrispondente all'immagine finale. per creare la corrispondenza tra l'immagine di anteprima e l'immagine finale.
  • totalEntry: numero totale di voci fileType nello spazio di archiviazione, ad esempio se fileType è "image", è il numero totale di immagini nello spazio di archiviazione.

Errori

  • missingParameter: qualsiasi parametro richiesto non è specificato; ad esempio, entryCount non è specificato.
  • invalidParameterName: il nome del parametro di input non è riconosciuto.
  • invalidParameterValue: il nome del parametro di input è stato riconosciuto, ma il relativo valore non è valido. Ad esempio, entryCount è negativo oppure il tipo di dati non è corretto.

I/O comando

Input dei comandi
{
    "parameters": {
        "entryCount": 50,
        "maxThumbSize": 100
    }
}
Output comando
{
    "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
    }
}
Output comando (errore)
{
    "error": {
        "code": "invalidParameterValue",
        "message": "Parameter entryCount is negative."
    }
}