Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
AWS IoTtâches, opérations d'API
AWS IoTL'API Jobs peut être utilisée pour l'une des catégories suivantes :
-
Tâches administratives telles que la gestion et le contrôle des tâches. C'est leplan de contrôle.
-
Appareils effectuant ces tâches. C'est leplan de données, qui vous permet d'envoyer et de recevoir des données.
La gestion et le contrôle des tâches utilisent une API de protocole HTTPS. Les appareils peuvent utiliser une API MQTT ou une API du protocole HTTPS. L'API du plan de contrôle est conçue pour un faible volume d'appels, comme c'est le cas lors de la création et du suivi de tâches. Elle ouvre généralement une connexion pour une seule demande, puis la ferme après réception de la réponse. Le plan de données HTTPS et l'API MQTT permettent des interrogations longues. Ces opérations d'API sont conçues pour des volumes de trafic importants pouvant atteindre des millions d'appareils.
ChaqueAWS IoTL'API HTTPS de Jobs possède une commande correspondante qui vous permet d'appeler l'API à partir duAWS Command Line Interface(AWS CLI). Les commandes sont en minuscules, avec un trait d'union entre les mots qui composent le nom de l'API. Par exemple, vous pouvez appeler l'API CreateJob
sur l'interface de ligne de commande en tapant :
aws iot create-job ...
Si une erreur se produit au cours d'une opération, vous recevez une réponse d'erreur contenant des informations sur l'erreur.
Contient les informations sur une erreur qui s'est produite au cours d'une opération du service AWS IoT Jobs.
L'exemple suivant montre la syntaxe de cette opération :
{ "code": "ErrorCode", "message": "string", "clientToken": "string", "timestamp": timestamp, "executionState": JobExecutionState }
Ce qui suit en est une descriptionErrorResponse
:
code
-
ErrorCodepeut être réglé sur :
- InvalidTopic
-
La demande a été envoyée vers une rubrique duAWS IoTEspace de noms de tâches qui ne correspond à aucune opération d'API.
- InvalidJson
-
Le contenu de la requête n'a pas pu être interprété comme un code JSON valide codé en UTF-8.
- InvalidRequest
-
Le contenu de la demande n'était pas valide. Par exemple, ce code est renvoyé lorsqu'une demande
UpdateJobExecution
contient des détails d'état non valides. Le message contient des détails sur l'erreur. - InvalidStateTransition
-
Une mise à jour a tenté de modifier l'exécution de la tâche vers un état qui n'est pas valide en raison de l'état actuel de l'exécution de la tâche. Par exemple, une tentative de modification de l'état SUCCESSED d'une requête en état IN_PROGRESS. Dans ce cas, le corps du message d'erreur contient aussi le champ
executionState
. - ResourceNotFound
-
Le
JobExecution
spécifié par le sujet de la demande n'existe pas. - VersionMismatch
-
La version attendue spécifiée dans la demande ne correspond pas à la version de l'exécution de la tâche dansAWS IoTService de l'emploi. Dans ce cas, le corps du message d'erreur contient aussi le champ
executionState
. - InternalError
-
Une erreur interne s'est produite pendant le traitement de la demande.
- RequestThrottled
-
La demande a été limitée.
- TerminalStateReached
-
Se produit quand une commande pour décrire une tâche est exécutée sur une tâche qui se trouve dans un état terminal.
message
-
Chaîne de message d'erreur.
clientToken
-
Chaîne arbitraire utilisée pour mettre en corrélation une demande et sa réponse.
timestamp
-
Nombre de secondes depuis la date epoch Unix.
executionState
-
Un objet
JobExecutionState
. Ce champ est inclus uniquement lorsque le champcode
a la valeurInvalidStateTransition
ouVersionMismatch
. Il est donc inutile dans ces cas-là d'effectuer une demandeDescribeJobExecution
distincte pour obtenir les données du statut d'exécution de tâche en cours.