AWS IoT Things Graph exemples utilisant AWS CLI - AWS Command Line Interface

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 Things Graph exemples utilisant AWS CLI

Les exemples de code suivants vous montrent comment effectuer des actions et implémenter des scénarios courants à l'aide du AWS Command Line Interface with AWS IoT Things Graph.

Les actions sont des extraits de code de programmes plus larges et doivent être exécutées dans leur contexte. Alors que les actions vous indiquent comment appeler des fonctions de service individuelles, vous pouvez les voir en contexte dans leurs scénarios associés.

Chaque exemple inclut un lien vers le code source complet, où vous trouverez des instructions sur la configuration et l’exécution du code en contexte.

Rubriques

Actions

L'exemple de code suivant montre comment utiliserassociate-entity-to-thing.

AWS CLI

Pour associer un objet à un appareil

L’exemple associate-entity-to-thing suivant associe un objet à un appareil. L’exemple utilise un détecteur de mouvement qui se trouve dans l’espace de noms public.

aws iotthingsgraph associate-entity-to-thing \ --thing-name "MotionSensorName" \ --entity-id "urn:tdm:aws/examples:Device:HCSR501MotionSensor"

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Création et chargement de modèles dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous AssociateEntityToThingà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisercreate-flow-template.

AWS CLI

Pour créer un flux

L’exemple create-flow-template suivant crée un flux (flux de travail). La valeur de MyFlowDefinition est le GraphQL qui modélise le flux.

aws iotthingsgraph create-flow-template \ --definition language=GRAPHQL,text="MyFlowDefinition"

Sortie :

{ "summary": { "createdAt": 1559248067.545, "id": "urn:tdm:us-west-2/123456789012/default:Workflow:MyFlow", "revisionNumber": 1 } }

Pour plus d’informations, consultez Gestion des flux dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous CreateFlowTemplateà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisercreate-system-instance.

AWS CLI

Pour créer une instance de système

L’exemple create-system-instance suivant crée une instance de système. La valeur de MySystemInstanceDefinition est le GraphQL qui modélise l’instance de système.

aws iotthingsgraph create-system-instance -\ -definition language=GRAPHQL,text="MySystemInstanceDefinition" \ --target CLOUD \ --flow-actions-role-arn myRoleARN

Sortie :

{ "summary": { "id": "urn:tdm:us-west-2/123456789012/default:Deployment:Room218", "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:Deployment/default/Room218", "status": "NOT_DEPLOYED", "target": "CLOUD", "createdAt": 1559249315.208, "updatedAt": 1559249315.208 } }

Pour plus d’informations, consultez Utilisation de configurations système et de configurations de flux dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous CreateSystemInstanceà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisercreate-system-template.

AWS CLI

Pour créer un système

L’exemple create-system-template suivant crée un système. La valeur de MySystemDefinition est le GraphQL qui modélise le système.

aws iotthingsgraph create-system-template \ --definition language=GRAPHQL,text="MySystemDefinition"

Sortie :

{ "summary": { "createdAt": 1559249776.254, "id": "urn:tdm:us-west-2/123456789012/default:System:MySystem", "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:System/default/MySystem", "revisionNumber": 1 } }

Pour plus d’informations, consultez Création de systèmes dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous CreateSystemTemplateà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-flow-template.

AWS CLI

Pour supprimer un flux

L’exemple delete-flow-template suivant supprime un flux (flux de travail).

aws iotthingsgraph delete-flow-template \ --id "urn:tdm:us-west-2/123456789012/default:Workflow:MyFlow"

Cette commande ne produit aucune sortie.

Pour plus d'informations, consultez la section Lifecycle Management for AWS IoT Things Graph Entities, Flows, Systems, and Deployments dans le Guide de l'utilisateur de l'AWS IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous DeleteFlowTemplateà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-namespace.

AWS CLI

Pour supprimer un espace de noms

L’exemple delete-namespace suivant supprime un espace de noms.

aws iotthingsgraph delete-namespace

Sortie :

{ "namespaceArn": "arn:aws:iotthingsgraph:us-west-2:123456789012", "namespaceName": "us-west-2/123456789012/default" }

Pour plus d'informations, consultez la section Lifecycle Management for AWS IoT Things Graph Entities, Flows, Systems, and Deployments dans le Guide de l'utilisateur de l'AWS IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous DeleteNamespaceà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-system-instance.

AWS CLI

Pour supprimer une instance de système

L’exemple delete-system-instance suivant supprime une instance de système.

aws iotthingsgraph delete-system-instance \ --id "urn:tdm:us-west-2/123456789012/default:Deployment:Room218"

Cette commande ne produit aucune sortie.

Pour plus d'informations, consultez la section Lifecycle Management for AWS IoT Things Graph Entities, Flows, Systems, and Deployments dans le Guide de l'utilisateur de l'AWS IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous DeleteSystemInstanceà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-system-template.

AWS CLI

Pour supprimer un système

L’exemple delete-system-template suivant supprime un système.

aws iotthingsgraph delete-system-template \ --id "urn:tdm:us-west-2/123456789012/default:System:MySystem"

Cette commande ne produit aucune sortie.

Pour plus d'informations, consultez la section Lifecycle Management for AWS IoT Things Graph Entities, Flows, Systems, and Deployments dans le Guide de l'utilisateur de l'AWS IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous DeleteSystemTemplateà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdeploy-system-instance.

AWS CLI

Pour déployer une instance de système

L’exemple delete-system-template suivant déploie une instance de système.

aws iotthingsgraph deploy-system-instance \ --id "urn:tdm:us-west-2/123456789012/default:Deployment:Room218"

Sortie :

{ "summary": { "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:Deployment:Room218", "createdAt": 1559249776.254, "id": "urn:tdm:us-west-2/123456789012/default:Deployment:Room218", "status": "DEPLOYED_IN_TARGET", "target": "CLOUD", "updatedAt": 1559249776.254 } }

Pour plus d’informations, consultez Utilisation de configurations système et de configurations de flux dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous DeploySystemInstanceà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdeprecate-flow-template.

AWS CLI

Pour déprécier un flux

L’exemple deprecate-flow-template suivant déprécie un flux (flux de travail).

aws iotthingsgraph deprecate-flow-template \ --id "urn:tdm:us-west-2/123456789012/default:Workflow:MyFlow"

Cette commande ne produit aucune sortie.

Pour plus d'informations, consultez la section Lifecycle Management for AWS IoT Things Graph Entities, Flows, Systems, and Deployments dans le Guide de l'utilisateur de l'AWS IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous DeprecateFlowTemplateà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdeprecate-system-template.

AWS CLI

Pour déprécier un système

L’exemple deprecate-system-template suivant déprécie un système.

aws iotthingsgraph deprecate-system-template \ --id "urn:tdm:us-west-2/123456789012/default:System:MySystem"

Cette commande ne produit aucune sortie.

Pour plus d'informations, consultez la section Lifecycle Management for AWS IoT Things Graph Entities, Flows, Systems, and Deployments dans le Guide de l'utilisateur de l'AWS IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous DeprecateSystemTemplateà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdescribe-namespace.

AWS CLI

Pour obtenir une description de votre espace de noms

L’exemple describe-namespace suivant obtient une description de votre espace de noms.

aws iotthingsgraph describe-namespace

Sortie :

{ "namespaceName": "us-west-2/123456789012/default", "trackingNamespaceName": "aws", "trackingNamespaceVersion": 1, "namespaceVersion": 5 }

Pour plus d’informations, consultez Espaces de noms dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous DescribeNamespaceà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdissociate-entity-from-thing.

AWS CLI

Pour dissocier un objet d’un appareil

L’exemple dissociate-entity-from-thing suivant dissocie un objet d’un appareil.

aws iotthingsgraph dissociate-entity-from-thing \ --thing-name "MotionSensorName" \ --entity-type "DEVICE"

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Création et chargement de modèles dans le Guide de l’utilisateur AWS  IoT Things Graph.

L'exemple de code suivant montre comment utiliserget-entities.

AWS CLI

Pour obtenir des définitions pour des entités

L’exemple get-entities suivant obtient une définition d’un modèle d’appareil.

aws iotthingsgraph get-entities \ --ids "urn:tdm:aws/examples:DeviceModel:MotionSensor"

Sortie :

{ "descriptions": [ { "id": "urn:tdm:aws/examples:DeviceModel:MotionSensor", "type": "DEVICE_MODEL", "createdAt": 1559256190.599, "definition": { "language": "GRAPHQL", "text": "##\n# Specification of motion sensor devices interface.\n##\ntype MotionSensor @deviceModel(id: \"urn:tdm:aws/examples:deviceModel:MotionSensor\",\n capability: \"urn:tdm:aws/examples:capability:MotionSensorCapability\") {ignore:void}" } } ] }

Pour plus d’informations, consultez Création et chargement de modèles dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous GetEntitiesà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-flow-template-revisions.

AWS CLI

Pour obtenir les informations de révision d’un flux

L’exemple get-flow-template-revisions suivant obtient des informations de révision sur un flux (flux de travail).

aws iotthingsgraph get-flow-template-revisions \ --id urn:tdm:us-west-2/123456789012/default:Workflow:MyFlow

Sortie :

{ "summaries": [ { "id": "urn:tdm:us-west-2/123456789012/default:Workflow:MyFlow", "revisionNumber": 1, "createdAt": 1559247540.292 } ] }

Pour plus d’informations, consultez Gestion des flux dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous GetFlowTemplateRevisionsà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-flow-template.

AWS CLI

Pour obtenir une définition de flux

L’exemple get-flow-template suivant obtient une définition d’un flux (flux de travail).

aws iotthingsgraph get-flow-template \ --id "urn:tdm:us-west-2/123456789012/default:Workflow:MyFlow"

Sortie :

{ "description": { "summary": { "id": "urn:tdm:us-west-2/123456789012/default:Workflow:MyFlow", "revisionNumber": 1, "createdAt": 1559247540.292 }, "definition": { "language": "GRAPHQL", "text": "{\nquery MyFlow($camera: string!, $screen: string!) @workflowType(id: \"urn:tdm:us-west-2/123456789012/default:Workflow:MyFlow\") @annotation(type: \"tgc:FlowEvent\", id: \"sledged790c1b2bcd949e09da0c9bfc077f79d\", x: 1586, y: 653) @triggers(definition: \"{MotionSensor(description: \\\"\\\") @position(x: 1045, y: 635.6666564941406) {\\n condition(expr: \\\"devices[name == \\\\\\\"motionSensor\\\\\\\"].events[name == \\\\\\\"StateChanged\\\\\\\"].lastEvent\\\")\\n action(expr: \\\"\\\")\\n}}\") {\n variables {\n cameraResult @property(id: \"urn:tdm:aws/examples:property:CameraStateProperty\")\n }\n steps {\n step(name: \"Camera\", outEvent: [\"sledged790c1b2bcd949e09da0c9bfc077f79d\"]) @position(x: 1377, y: 638.6666564941406) {\n DeviceActivity(deviceModel: \"urn:tdm:aws/examples:deviceModel:Camera\", out: \"cameraResult\", deviceId: \"${camera}\") {\n capture\n }\n }\n step(name: \"Screen\", inEvent: [\"sledged790c1b2bcd949e09da0c9bfc077f79d\"]) @position(x: 1675.6666870117188, y: 637.9999847412109) {\n DeviceActivity(deviceModel: \"urn:tdm:aws/examples:deviceModel:Screen\", deviceId: \"${screen}\") {\n display(imageUrl: \"${cameraResult.lastClickedImage}\")\n }\n }\n }\n}\n}" }, "validatedNamespaceVersion": 5 } }

Pour plus d’informations, consultez Gestion des flux dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous GetFlowTemplateà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-namespace-deletion-status.

AWS CLI

Pour obtenir le statut de la tâche de suppression de l’espace de noms

L’exemple get-namespace-deletion-status suivant obtient le statut de la tâche de suppression de l’espace de noms.

aws iotthingsgraph get-namespace-deletion-status

Sortie :

{ "namespaceArn": "arn:aws:iotthingsgraph:us-west-2:123456789012", "namespaceName": "us-west-2/123456789012/default" "status": "SUCCEEDED " }

Pour plus d’informations, consultez Espaces de noms dans le Guide de l’utilisateur AWS  IoT Things Graph.

L'exemple de code suivant montre comment utiliserget-system-instance.

AWS CLI

Pour obtenir une instance de système

L’exemple get-system-instance suivant obtient une définition d’une instance de système.

aws iotthingsgraph get-system-instance \ --id "urn:tdm:us-west-2/123456789012/default:Deployment:Room218"

Sortie :

{ "description": { "summary": { "id": "urn:tdm:us-west-2/123456789012/default:Deployment:Room218", "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:Deployment/default/Room218", "status": "NOT_DEPLOYED", "target": "CLOUD", "createdAt": 1559249315.208, "updatedAt": 1559249315.208 }, "definition": { "language": "GRAPHQL", "text": "{\r\nquery Room218 @deployment(id: \"urn:tdm:us-west-2/123456789012/default:Deployment:Room218\", systemId: \"urn:tdm:us-west-2/123456789012/default:System:SecurityFlow\") {\r\n motionSensor(deviceId: \"MotionSensorName\")\r\n screen(deviceId: \"ScreenName\")\r\n camera(deviceId: \"CameraName\") \r\n triggers {MotionEventTrigger(description: \"a trigger\") { \r\n condition(expr: \"devices[name == 'motionSensor'].events[name == 'StateChanged'].lastEvent\") \r\n action(expr: \"ThingsGraph.startFlow('SecurityFlow', bindings[name == 'camera'].deviceId, bindings[name == 'screen'].deviceId)\")\r\n }\r\n }\r\n }\r\n }" }, "metricsConfiguration": { "cloudMetricEnabled": false }, "validatedNamespaceVersion": 5, "flowActionsRoleArn": "arn:aws:iam::123456789012:role/ThingsGraphRole" } }

Pour plus d’informations, consultez Utilisation de configurations système et de configurations de flux dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous GetSystemInstanceà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-system-template-revisions.

AWS CLI

Pour obtenir les informations de révision d’un système

L’exemple get-system-template-revisions suivant obtient des informations de révision sur un système.

aws iotthingsgraph get-system-template-revisions \ --id "urn:tdm:us-west-2/123456789012/default:System:MySystem"

Sortie :

{ "summaries": [ { "id": "urn:tdm:us-west-2/123456789012/default:System:MySystem", "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:System/default/MySystem", "revisionNumber": 1, "createdAt": 1559247540.656 } ] }

Pour plus d’informations, consultez Utilisation de configurations système et de configurations de flux dans le Guide de l’utilisateur AWS  IoT Things Graph.

L'exemple de code suivant montre comment utiliserget-system-template.

AWS CLI

Pour obtenir un système

L’exemple get-system-template suivant obtient une définition d’un système.

aws iotthingsgraph get-system-template \ --id "urn:tdm:us-west-2/123456789012/default:System:MySystem"

Sortie :

{ "description": { "summary": { "id": "urn:tdm:us-west-2/123456789012/default:System:MySystem", "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:System/default/MyFlow", "revisionNumber": 1, "createdAt": 1559247540.656 }, "definition": { "language": "GRAPHQL", "text": "{\ntype MySystem @systemType(id: \"urn:tdm:us-west-2/123456789012/default:System:MySystem\", description: \"\") {\n camera: Camera @thing(id: \"urn:tdm:aws/examples:deviceModel:Camera\")\n screen: Screen @thing(id: \"urn:tdm:aws/examples:deviceModel:Screen\")\n motionSensor: MotionSensor @thing(id: \"urn:tdm:aws/examples:deviceModel:MotionSensor\")\n MyFlow: MyFlow @workflow(id: \"urn:tdm:us-west-2/123456789012/default:Workflow:MyFlow\")\n}\n}" }, "validatedNamespaceVersion": 5 } }

Pour plus d’informations, consultez Utilisation de configurations système et de configurations de flux dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous GetSystemTemplateà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-upload-status.

AWS CLI

Pour obtenir le statut de votre chargement d’entité

L’exemple get-upload-status suivant obtient le statut de votre opération de chargement d’entité. La valeur de MyUploadId est la valeur d’ID renvoyée par l’opération upload-entity-definitions.

aws iotthingsgraph get-upload-status \ --upload-id "MyUploadId"

Sortie :

{ "namespaceName": "us-west-2/123456789012/default", "namespaceVersion": 5, "uploadId": "f6294f1e-b109-4bbe-9073-f451a2dda2da", "uploadStatus": "SUCCEEDED" }

Pour plus d’informations, consultez Modélisation des entités dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous GetUploadStatusà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserlist-flow-execution-messages.

AWS CLI

Pour obtenir des informations sur les événements liés à l’exécution d’un flux

L’exemple list-flow-execution-messages suivant obtient des informations sur les événements d’une exécution de flux.

aws iotthingsgraph list-flow-execution-messages \ --flow-execution-id "urn:tdm:us-west-2/123456789012/default:Workflow:SecurityFlow_2019-05-11T19:39:55.317Z_MotionSensor_69b151ad-a611-42f5-ac21-fe537f9868ad"

Sortie :

{ "messages": [ { "eventType": "EXECUTION_STARTED", "messageId": "f6294f1e-b109-4bbe-9073-f451a2dda2da", "payload": "Flow execution started", "timestamp": 1559247540.656 } ] }

Pour plus d’informations, consultez Gestion des flux dans le Guide de l’utilisateur AWS  IoT Things Graph.

L'exemple de code suivant montre comment utiliserlist-tags-for-resource.

AWS CLI

Pour répertorier toutes les balises d’une ressource

L'list-tags-for-resourceexemple suivant répertorie toutes les balises d'une ressource AWS IoT Things Graph.

aws iotthingsgraph list-tags-for-resource \ --resource-arn "arn:aws:iotthingsgraph:us-west-2:123456789012:Deployment/default/Room218"

Sortie :

{ "tags": [ { "key": "Type", "value": "Residential" } ] }

Pour plus d'informations, consultez la section Tagging Your AWS IoT Things Graph Resources dans le guide de l'utilisateur de l'AWS IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous ListTagsForResourceà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisersearch-entities.

AWS CLI

Pour rechercher des entités

L’exemple search-entities suivant recherche toutes les entités de type EVENT.

aws iotthingsgraph search-entities \ --entity-types "EVENT"

Sortie :

{ "descriptions": [ { "id": "urn:tdm:aws/examples:Event:MotionSensorEvent", "type": "EVENT", "definition": { "language": "GRAPHQL", "text": "##\n# Description of events emitted by motion sensor.\n##\ntype MotionSensorEvent @eventType(id: \"urn:tdm:aws/examples:event:MotionSensorEvent\",\n payload: \"urn:tdm:aws/examples:property:MotionSensorStateProperty\") {ignore:void}" } }, { "id": "urn:tdm:us-west-2/123456789012/default:Event:CameraClickedEventV2", "type": "EVENT", "definition": { "language": "GRAPHQL", "text": "type CameraClickedEventV2 @eventType(id: \"urn:tdm:us-west-2/123456789012/default:event:CameraClickedEventV2\",\r\npayload: \"urn:tdm:aws:Property:Boolean\"){ignore:void}" } }, { "id": "urn:tdm:us-west-2/123456789012/default:Event:MotionSensorEventV2", "type": "EVENT", "definition": { "language": "GRAPHQL", "text": "# Event emitted by the motion sensor.\r\ntype MotionSensorEventV2 @eventType(id: \"urn:tdm:us-west-2/123456789012/default:event:MotionSensorEventV2\",\r\npayload: \"urn:tdm:us-west-2/123456789012/default:property:MotionSensorStateProperty2\") {ignore:void}" } } ], "nextToken": "urn:tdm:us-west-2/123456789012/default:Event:MotionSensorEventV2" }

Pour plus d’informations, consultez AWS IoT Things Graph Data Model Reference dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous SearchEntitiesà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisersearch-flow-executions.

AWS CLI

Pour rechercher des exécutions de flux

L’exemple search-flow-executions suivant recherche toutes les exécutions d’un flux dans une instance de système spécifiée.

aws iotthingsgraph search-flow-executions \ --system-instance-id "urn:tdm:us-west-2/123456789012/default:Deployment:Room218"

Sortie :

{ "summaries": [ { "createdAt": 1559247540.656, "flowExecutionId": "f6294f1e-b109-4bbe-9073-f451a2dda2da", "flowTemplateId": "urn:tdm:us-west-2/123456789012/default:Workflow:MyFlow", "status": "RUNNING ", "systemInstanceId": "urn:tdm:us-west-2/123456789012/default:System:MySystem", "updatedAt": 1559247540.656 } ] }

Pour plus d’informations, consultez Utilisation de configurations système et de configurations de flux dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous SearchFlowExecutionsà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisersearch-flow-templates.

AWS CLI

Pour rechercher des flux (ou des flux de travail)

L’exemple search-flow-templates suivant recherche tous les flux (flux de travail) contenant le modèle d’appareil Caméra.

aws iotthingsgraph search-flow-templates \ --filters name="DEVICE_MODEL_ID",value="urn:tdm:aws/examples:DeviceModel:Camera"

Sortie :

{ "summaries": [ { "id": "urn:tdm:us-west-2/123456789012/default:Workflow:MyFlow", "revisionNumber": 1, "createdAt": 1559247540.292 }, { "id": "urn:tdm:us-west-2/123456789012/default:Workflow:SecurityFlow", "revisionNumber": 3, "createdAt": 1548283099.27 } ] }

Pour plus d’informations, consultez Gestion des flux dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous SearchFlowTemplatesà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisersearch-system-instances.

AWS CLI

Pour rechercher des instances du système

L’exemple search-system-instances suivant recherche toutes les instances du système qui contiennent le système spécifié.

aws iotthingsgraph search-system-instances \ --filters name="SYSTEM_TEMPLATE_ID",value="urn:tdm:us-west-2/123456789012/default:System:SecurityFlow"

Sortie :

{ "summaries": [ { "id": "urn:tdm:us-west-2/123456789012/default:Deployment:DeploymentForSample", "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:Deployment/default/DeploymentForSample", "status": "NOT_DEPLOYED", "target": "GREENGRASS", "greengrassGroupName": "ThingsGraphGrnGr", "createdAt": 1555716314.707, "updatedAt": 1555716314.707 }, { "id": "urn:tdm:us-west-2/123456789012/default:Deployment:MockDeployment", "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:Deployment/default/MockDeployment", "status": "DELETED_IN_TARGET", "target": "GREENGRASS", "greengrassGroupName": "ThingsGraphGrnGr", "createdAt": 1549416462.049, "updatedAt": 1549416722.361, "greengrassGroupId": "01d04b07-2a51-467f-9d03-0c90b3cdcaaf", "greengrassGroupVersionId": "7365aed7-2d3e-4d13-aad8-75443d45eb05" }, { "id": "urn:tdm:us-west-2/123456789012/default:Deployment:MockDeployment2", "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:Deployment/default/MockDeployment2", "status": "DEPLOYED_IN_TARGET", "target": "GREENGRASS", "greengrassGroupName": "ThingsGraphGrnGr", "createdAt": 1549572385.774, "updatedAt": 1549572418.408, "greengrassGroupId": "01d04b07-2a51-467f-9d03-0c90b3cdcaaf", "greengrassGroupVersionId": "bfa70ab3-2bf7-409c-a4d4-bc8328ae5b86" }, { "id": "urn:tdm:us-west-2/123456789012/default:Deployment:Room215", "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:Deployment/default/Room215", "status": "NOT_DEPLOYED", "target": "GREENGRASS", "greengrassGroupName": "ThingsGraphGG", "createdAt": 1547056918.413, "updatedAt": 1547056918.413 }, { "id": "urn:tdm:us-west-2/123456789012/default:Deployment:Room218", "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:Deployment/default/Room218", "status": "NOT_DEPLOYED", "target": "CLOUD", "createdAt": 1559249315.208, "updatedAt": 1559249315.208 } ] }

Pour plus d’informations, consultez Utilisation de configurations système et de configurations de flux dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous SearchSystemInstancesà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisersearch-system-templates.

AWS CLI

Pour rechercher un système

L’exemple search-system-templates suivant recherche tous les systèmes qui contiennent le flux spécifié.

aws iotthingsgraph search-system-templates \ --filters name="FLOW_TEMPLATE_ID",value="urn:tdm:us-west-2/123456789012/default:Workflow:SecurityFlow"

Sortie :

{ "summaries": [ { "id": "urn:tdm:us-west-2/123456789012/default:System:SecurityFlow", "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:System/default/SecurityFlow", "revisionNumber": 1, "createdAt": 1548283099.433 } ] }

Pour plus d’informations, consultez Gestion des flux dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous SearchSystemTemplatesà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisersearch-things.

AWS CLI

Pour rechercher des objets associés à des appareils et à des modèles d’appareil

L'search-thingsexemple suivant recherche tous les éléments associés au MotionSensor périphérique HCSR5 01.

aws iotthingsgraph search-things \ --entity-id "urn:tdm:aws/examples:Device:HCSR501MotionSensor"

Sortie :

{ "things": [ { "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/MotionSensor1", "thingName": "MotionSensor1" }, { "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/TG_MS", "thingName": "TG_MS" } ] }

Pour plus d’informations, consultez Création et chargement de modèles dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous SearchThingsà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisertag-resource.

AWS CLI

Pour créer une balise pour une ressource

L’exemple tag-resource suivant crée une balise pour la ressource spécifiée.

aws iotthingsgraph tag-resource \ --resource-arn "arn:aws:iotthingsgraph:us-west-2:123456789012:Deployment/default/Room218" \ --tags key="Type",value="Residential"

Cette commande ne produit aucune sortie.

Pour plus d'informations, consultez la section Tagging Your AWS IoT Things Graph Resources dans le guide de l'utilisateur de l'AWS IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous TagResourceà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserundeploy-system-instance.

AWS CLI

Pour annuler le déploiement d’une instance de système depuis sa cible

L’exemple undeploy-system-instance suivant supprime une instance de système de sa cible.

aws iotthingsgraph undeploy-system-instance \ --id "urn:tdm:us-west-2/123456789012/default:Deployment:Room215"

Sortie :

{ "summary": { "id": "urn:tdm:us-west-2/123456789012/default:Deployment:Room215", "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:Deployment/default/Room215", "status": "PENDING_DELETE", "target": "GREENGRASS", "greengrassGroupName": "ThingsGraphGrnGr", "createdAt": 1553189694.255, "updatedAt": 1559344549.601, "greengrassGroupId": "01d04b07-2a51-467f-9d03-0c90b3cdcaaf", "greengrassGroupVersionId": "731b371d-d644-4b67-ac64-3934e99b75d7" } }

Pour plus d'informations, consultez la section Lifecycle Management for AWS IoT Things Graph Entities, Flows, Systems, and Deployments dans le Guide de l'utilisateur de l'AWS IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous UndeploySystemInstanceà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliseruntag-resource.

AWS CLI

Pour supprimer une balise d’une ressource

L’exemple untag-resource suivant supprime une balise de la ressource spécifiée.

aws iotthingsgraph untag-resource \ --resource-arn "arn:aws:iotthingsgraph:us-west-2:123456789012:Deployment/default/Room218" \ --tag-keys "Type"

Cette commande ne produit aucune sortie.

Pour plus d'informations, consultez la section Tagging Your AWS IoT Things Graph Resources dans le guide de l'utilisateur de l'AWS IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous UntagResourceà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserupdate-flow-template.

AWS CLI

Pour mettre à jour un flux

L’exemple update-flow-template suivant met à jour un flux (flux de travail). La valeur de MyFlowDefinition est le GraphQL qui modélise le flux.

aws iotthingsgraph update-flow-template \ --id "urn:tdm:us-west-2/123456789012/default:Workflow:MyFlow" \ --definition language=GRAPHQL,text="MyFlowDefinition"

Sortie :

{ "summary": { "createdAt": 1559248067.545, "id": "urn:tdm:us-west-2/123456789012/default:Workflow:MyFlow", "revisionNumber": 2 } }

Pour plus d’informations, consultez Gestion des flux dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous UpdateFlowTemplateà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserupdate-system-template.

AWS CLI

Pour mettre à jour un système

L’exemple update-system-template suivant met à jour un système. La valeur de MySystemDefinition est le GraphQL qui modélise le système.

aws iotthingsgraph update-system-template \ --id "urn:tdm:us-west-2/123456789012/default:System:MySystem" \ --definition language=GRAPHQL,text="MySystemDefinition"

Sortie :

{ "summary": { "createdAt": 1559249776.254, "id": "urn:tdm:us-west-2/123456789012/default:System:MySystem", "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:System/default/MySystem", "revisionNumber": 2 } }

Pour plus d’informations, consultez Création de systèmes dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous UpdateSystemTemplateà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserupload-entity-definitions.

AWS CLI

Pour charger des définitions d’entités

L’exemple upload-entity-definitions suivant charge les définitions d’entités dans votre espace de noms. La valeur de MyEntityDefinitions est le GraphQL qui modélise les entités.

aws iotthingsgraph upload-entity-definitions \ --document language=GRAPHQL,text="MyEntityDefinitions"

Sortie :

{ "uploadId": "f6294f1e-b109-4bbe-9073-f451a2dda2da" }

Pour plus d’informations, consultez Modélisation des entités dans le Guide de l’utilisateur AWS  IoT Things Graph.

  • Pour plus de détails sur l'API, reportez-vous UploadEntityDefinitionsà la section Référence des AWS CLI commandes.