camera.takePicture

Capture une image équirectangulaire et enregistre les coordonnées de latitude et de longitude au format EXIF (si votre appareil photo possède son propre GPS ou son propre GPS est activé sur les téléphones mobiles). Appeler le camera.setOptions avant cet appel de commande, si nécessaire. Cette commande a été modifiée au niveau d'API 2.

Paramètres

  • sessionId::identifiant de session unique obtenu à partir du camera.startSession . Ce champ a été abandonné dans le niveau d'API 2.

Résultats

  • Niveau d'API 1 <ph type="x-smartling-placeholder">
      </ph>
    • fileUri::URI de l'image capturée. Fabricants décider d'utiliser des URI absolus ou relatifs ; Exemple : &quot;http://android.com/robots.txt&quot; est un un URI absolu alors que le fichier "robots.txt" est un URI relatif. Les clients peuvent traiter comme identifiant opaque.
  • Niveau d'API 2 <ph type="x-smartling-placeholder">
      </ph>
    • fileUrl::URL absolue de l'image capturée, qui peut être utilisé pour télécharger des images directement depuis le serveur HTTP de l'appareil photo. Veuillez notez que cette commande ne renvoie pas fileUrl immédiatement, car la commande (y compris l'assemblage via l'appareil photo) prend généralement un certain temps (varie de secondes à minutes). La progression de la commande est obtenue interroge régulièrement la caméra à l'aide de l'API /osc/commands/status et fileUrl est le résultat renvoyé à la fin de la commande. Quand ? delayProcessing a la valeur "true", il s'agit de l'URL absolue de l'aperçu. image, qui peut être utilisée comme entrée dans processPicture pour traiter l'image, sinon il s'agit de l'URL absolue de l'image finale traitée.

Erreurs

  • missingParameter:sessionId est manquant. Ce code d'erreur a été abandonné dans le niveau d'API 2.
  • invalidParameterName:le nom du paramètre n'est pas reconnu, par exemple sessionId n'est pas reconnu dans le niveau d'API 2.
  • invalidParameterValue::le nom du paramètre d'entrée est reconnu. mais que sa valeur est incorrecte ; par exemple, sessionId n'existe pas, n'est plus actif ou son type de données est incorrect. Ce code d'erreur a été abandonné dans le niveau d'API 2.
  • disableCommand:la commande est actuellement désactivée. Exemple : la caméra est en mode de prise de vue vidéo. Ce code d'erreur a été ajouté au niveau d'API 2.

E/S de commande

Entrée de commande (niveau d'API 1)
{
    "parameters": {
        "sessionId": "12ABC3"
    }
}
Résultat de la commande (niveau d'API 1)
{
    "results": {
        "fileUri": "file URI"
    }
}
Résultat de la commande (erreur) (niveau d'API 1)
{
    "error": {
        "code": "invalidParameterValue",
        "message": "Parameter sessionId doesn't exist."
    }
}
Saisie de commande (niveau d'API 2)
none
Résultat de la commande (niveau d'API 2)
{
    "results": {
        "fileUrl": "Absolute file URL"
    }
}
Résultat de la commande (erreur) (niveau d'API 2)
{
    "error": {
        "code": "disabledCommand",
        "message": "Command is currently disabled."
    }
}