AWS IoT opérations de l'API jobs - AWS IoT Core

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 IoT opérations de l'API jobs

AWS IoT L'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 emplois. Voici le plan de contrôle.

  • Appareils effectuant ces tâches. Il s’agit du plan 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 du 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 lors de la création et du suivi des 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 de longues interrogations. Ces opérations d’API sont conçues pour d’importantes quantités de trafic qui peuvent mettre à l’échelle plusieurs millions d’appareils.)

Chaque API HTTPS AWS IoT Jobs possède une commande correspondante qui vous permet d'appeler l'API depuis le AWS 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 pendant une opération, vous obtenez 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 illustre la syntaxe de cette opération :

{ "code": "ErrorCode", "message": "string", "clientToken": "string", "timestamp": timestamp, "executionState": JobExecutionState }

Voici une description de ce ErrorResponse :

code

ErrorCode peut être réglé sur :

InvalidTopic

La demande a été envoyée à une rubrique de l'espace de noms AWS IoT Jobs qui ne correspond à aucune opération d'API.

InvalidJson

Le contenu de la demande n'a pas pu être interprété comme JSON codé en UTF-8 valide.

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 faire passer l’exécution de la tâche à un état non valide en raison de l’état actuel de l’exécution de la tâche. Par exemple, une tentative de modification d’une demande dont l’état est SUCCEDED par le statut IN_PROGRESS. Dans ce cas, le corps du message d'erreur contient aussi le champ executionState.

ResourceNotFound

La valeur JobExecution spécifiée par la rubrique 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 dans le service AWS IoT Jobs. 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 champ code a la valeur InvalidStateTransition ou VersionMismatch. Il est donc inutile dans ces cas-là d'effectuer une demande DescribeJobExecution distincte pour obtenir les données du statut d'exécution de tâche en cours.

La liste suivante répertorie les opérations et les types de données de l’API de tâches.