AWS IoT Things Graph Beispiele mit AWS CLI - AWS SDKCode-Beispiele

Weitere AWS SDK Beispiele sind im Repo AWS Doc SDK Examples GitHub verfügbar.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

AWS IoT Things Graph Beispiele mit AWS CLI

Die folgenden Codebeispiele zeigen Ihnen, wie Sie mithilfe von AWS Command Line Interface with Aktionen ausführen und allgemeine Szenarien implementieren AWS IoT Things Graph.

Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Aktionen zeigen Ihnen zwar, wie Sie einzelne Servicefunktionen aufrufen, aber Sie können Aktionen im Kontext der zugehörigen Szenarien sehen.

Jedes Beispiel enthält einen Link zum vollständigen Quellcode, in dem Sie Anweisungen zum Einrichten und Ausführen des Codes im Kontext finden.

Themen

Aktionen

Das folgende Codebeispiel zeigt die Verwendungassociate-entity-to-thing.

AWS CLI

Um ein Objekt einem Gerät zuzuordnen

Im folgenden associate-entity-to-thing Beispiel wird ein Ding einem Gerät zugeordnet. Das Beispiel verwendet ein Bewegungssensorgerät, das sich im öffentlichen Namespace befindet.

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

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Modelle erstellen und hochladen im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungcreate-flow-template.

AWS CLI

Um einen Flow zu erstellen

Im folgenden create-flow-template Beispiel wird ein Flow (Workflow) erstellt. Der Wert von MyFlowDefinition ist das GraphQL, das den Fluss modelliert.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Arbeiten mit Flows im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungcreate-system-instance.

AWS CLI

Um eine Systeminstanz zu erstellen

Das folgende create-system-instance Beispiel erstellt eine Systeminstanz. Der Wert von MySystemInstanceDefinition ist GraphQL, das die Systeminstanz modelliert.

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

Ausgabe:

{ "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 } }

Weitere Informationen finden Sie unter Arbeiten mit Systemen und Ablaufkonfigurationen im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungcreate-system-template.

AWS CLI

Um ein System zu erstellen

Das folgende create-system-template Beispiel erstellt ein System. Der Wert von MySystemDefinition ist das GraphQL, das das System modelliert.

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

Ausgabe:

{ "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 } }

Weitere Informationen finden Sie unter Creating Systems im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungdelete-flow-template.

AWS CLI

Um einen Flow zu löschen

Im folgenden delete-flow-template Beispiel wird ein Flow (Workflow) gelöscht.

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

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Lifecycle Management for AWS IoT Things Graph Entities, Flows, Systems and Deployments im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungdelete-namespace.

AWS CLI

Um einen Namespace zu löschen

Im folgenden delete-namespace Beispiel wird ein Namespace gelöscht.

aws iotthingsgraph delete-namespace

Ausgabe:

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

Weitere Informationen finden Sie unter Lifecycle Management for AWS IoT Things Graph Entities, Flows, Systems and Deployments im AWS IoT Things Graph Graph-Benutzerhandbuch.

  • APIEinzelheiten finden Sie DeleteNamespacein der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungdelete-system-instance.

AWS CLI

Um eine Systeminstanz zu löschen

Das folgende delete-system-instance Beispiel löscht eine Systeminstanz.

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

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Lifecycle Management for AWS IoT Things Graph Entities, Flows, Systems and Deployments im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungdelete-system-template.

AWS CLI

Um ein System zu löschen

Das folgende delete-system-template Beispiel löscht ein System.

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

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Lifecycle Management for AWS IoT Things Graph Entities, Flows, Systems and Deployments im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungdeploy-system-instance.

AWS CLI

Um eine Systeminstanz bereitzustellen

Im folgenden delete-system-template Beispiel wird eine Systeminstanz bereitgestellt.

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

Ausgabe:

{ "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 } }

Weitere Informationen finden Sie unter Arbeiten mit Systemen und Ablaufkonfigurationen im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungdeprecate-flow-template.

AWS CLI

Um einen Flow als veraltet zu kennzeichnen

Im folgenden deprecate-flow-template Beispiel wird ein Flow (Workflow) als veraltet eingestuft.

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

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Lifecycle Management for AWS IoT Things Graph Entities, Flows, Systems and Deployments im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungdeprecate-system-template.

AWS CLI

Um ein System als veraltet zu kennzeichnen

Im folgenden deprecate-system-template Beispiel wird ein System als veraltet eingestuft.

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

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Lifecycle Management for AWS IoT Things Graph Entities, Flows, Systems and Deployments im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungdescribe-namespace.

AWS CLI

Um eine Beschreibung Ihres Namespaces zu erhalten

Im folgenden describe-namespace Beispiel wird eine Beschreibung Ihres Namespaces abgerufen.

aws iotthingsgraph describe-namespace

Ausgabe:

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

Weitere Informationen finden Sie unter Namespaces im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungdissociate-entity-from-thing.

AWS CLI

Um eine Sache von einem Gerät zu trennen

Im folgenden dissociate-entity-from-thing Beispiel wird die Verbindung zwischen einem Objekt und einem Gerät getrennt.

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

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Modelle erstellen und hochladen im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-entities.

AWS CLI

Um Definitionen für Entitäten zu erhalten

Im folgenden get-entities Beispiel wird eine Definition für ein Gerätemodell abgerufen.

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

Ausgabe:

{ "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}" } } ] }

Weitere Informationen finden Sie unter Modelle erstellen und hochladen im AWS IoT Things Graph Graph-Benutzerhandbuch.

  • APIEinzelheiten finden Sie GetEntitiesin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungget-flow-template-revisions.

AWS CLI

Um Revisionsinformationen zu einem Flow abzurufen

Im folgenden get-flow-template-revisions Beispiel werden Revisionsinformationen zu einem Flow (Workflow) abgerufen.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Arbeiten mit Flows im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-flow-template.

AWS CLI

Um eine Flow-Definition zu erhalten

Im folgenden get-flow-template Beispiel wird eine Definition für einen Flow (Workflow) abgerufen.

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

Ausgabe:

{ "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 } }

Weitere Informationen finden Sie unter Arbeiten mit Flows im AWS IoT Things Graph Graph-Benutzerhandbuch.

  • APIEinzelheiten finden Sie GetFlowTemplatein der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungget-namespace-deletion-status.

AWS CLI

Um den Status der Aufgabe zum Löschen von Namespaces abzurufen

Im folgenden get-namespace-deletion-status Beispiel wird der Status der Aufgabe zum Löschen von Namespaces abgerufen.

aws iotthingsgraph get-namespace-deletion-status

Ausgabe:

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

Weitere Informationen finden Sie unter Namespaces im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-system-instance.

AWS CLI

Um eine Systeminstanz zu erhalten

Im folgenden get-system-instance Beispiel wird eine Definition für eine Systeminstanz abgerufen.

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

Ausgabe:

{ "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" } }

Weitere Informationen finden Sie unter Arbeiten mit Systemen und Ablaufkonfigurationen im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-system-template-revisions.

AWS CLI

Um Revisionsinformationen zu einem System abzurufen

Im folgenden get-system-template-revisions Beispiel werden Revisionsinformationen zu einem System abgerufen.

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

Ausgabe:

{ "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 } ] }

Weitere Informationen finden Sie unter Arbeiten mit Systemen und Ablaufkonfigurationen im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-system-template.

AWS CLI

Um ein System zu bekommen

Das folgende get-system-template Beispiel ruft eine Definition für ein System ab.

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

Ausgabe:

{ "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 } }

Weitere Informationen finden Sie unter Arbeiten mit Systemen und Ablaufkonfigurationen im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-upload-status.

AWS CLI

Um den Status Ihrer Entität abzurufen, laden Sie sie hoch

Im folgenden get-upload-status Beispiel wird der Status Ihres Entitäts-Upload-Vorgangs abgerufen. Der Wert von MyUploadId ist der ID-Wert, der von der upload-entity-definitions Operation zurückgegeben wurde.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Modeling Entities im AWS IoT Things Graph User Guide.

  • APIEinzelheiten finden Sie GetUploadStatusin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunglist-flow-execution-messages.

AWS CLI

Um Informationen über Ereignisse in einer Flow-Ausführung abzurufen

Im folgenden list-flow-execution-messages Beispiel werden Informationen zu Ereignissen in einer Flow-Ausführung abgerufen.

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"

Ausgabe:

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

Weitere Informationen finden Sie unter Arbeiten mit Flows im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendunglist-tags-for-resource.

AWS CLI

Um alle Tags für eine Ressource aufzulisten

Das folgende list-tags-for-resource Beispiel listet alle Tags für eine AWS IoT Things Graph Graph-Ressource auf.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Tagging Your AWS IoT Things Graph Resources im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungsearch-entities.

AWS CLI

Um nach Entitäten zu suchen

Im folgenden search-entities Beispiel wird nach allen Entitäten des Typs gesuchtEVENT.

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

Ausgabe:

{ "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" }

Weitere Informationen finden Sie unter AWS IoT Things Graph Data Model Reference im AWS IoT Things Graph Graph-Benutzerhandbuch.

  • APIEinzelheiten finden Sie SearchEntitiesunter AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungsearch-flow-executions.

AWS CLI

Um nach Flow-Ausführungen zu suchen

Im folgenden search-flow-executions Beispiel wird nach allen Ausführungen eines Flows in einer angegebenen Systeminstanz gesucht.

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

Ausgabe:

{ "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 } ] }

Weitere Informationen finden Sie unter Arbeiten mit Systemen und Ablaufkonfigurationen im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungsearch-flow-templates.

AWS CLI

Um nach Flows (oder Workflows) zu suchen

Im folgenden search-flow-templates Beispiel wird nach allen Flows (Workflows) gesucht, die das Kamera-Gerätemodell enthalten.

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

Ausgabe:

{ "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 } ] }

Weitere Informationen finden Sie unter Arbeiten mit Flows im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungsearch-system-instances.

AWS CLI

Um nach Systeminstanzen zu suchen

Im folgenden search-system-instances Beispiel wird nach allen Systeminstanzen gesucht, die das angegebene System enthalten.

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

Ausgabe:

{ "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 } ] }

Weitere Informationen finden Sie unter Arbeiten mit Systemen und Ablaufkonfigurationen im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungsearch-system-templates.

AWS CLI

Um nach einem System zu suchen

Im folgenden search-system-templates Beispiel wird nach allen Systemen gesucht, die den angegebenen Flow enthalten.

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

Ausgabe:

{ "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 } ] }

Weitere Informationen finden Sie unter Arbeiten mit Flows im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungsearch-things.

AWS CLI

Um nach Dingen zu suchen, die mit Geräten und Gerätemodellen verknüpft sind

Im folgenden search-things Beispiel wird nach allen Dingen gesucht, die mit dem MotionSensor Gerät HCSR5 01 verknüpft sind.

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

Ausgabe:

{ "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" } ] }

Weitere Informationen finden Sie unter Modelle erstellen und hochladen im AWS IoT Things Graph Graph-Benutzerhandbuch.

  • APIEinzelheiten finden Sie SearchThingsin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungtag-resource.

AWS CLI

Um ein Tag für eine Ressource zu erstellen

Im folgenden tag-resource Beispiel wird ein Tag für die angegebene Ressource erstellt.

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

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Tagging Your AWS IoT Things Graph Resources im AWS IoT Things Graph Graph-Benutzerhandbuch.

  • APIEinzelheiten finden Sie TagResourcein der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungundeploy-system-instance.

AWS CLI

Um die Bereitstellung einer Systeminstanz von ihrem Ziel aufzuheben

Im folgenden undeploy-system-instance Beispiel wird eine Systeminstanz von ihrem Ziel entfernt.

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

Ausgabe:

{ "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" } }

Weitere Informationen finden Sie unter Lifecycle Management for AWS IoT Things Graph Entities, Flows, Systems and Deployments im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendunguntag-resource.

AWS CLI

Um ein Tag für eine Ressource zu entfernen

Im folgenden untag-resource Beispiel wird ein Tag für die angegebene Ressource entfernt.

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

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Tagging Your AWS IoT Things Graph Resources im AWS IoT Things Graph Graph-Benutzerhandbuch.

  • APIEinzelheiten finden Sie UntagResourcein der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungupdate-flow-template.

AWS CLI

Um einen Flow zu aktualisieren

Das folgende update-flow-template Beispiel aktualisiert einen Flow (Workflow). Der Wert von MyFlowDefinition ist das GraphQL, das den Fluss modelliert.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Arbeiten mit Flows im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungupdate-system-template.

AWS CLI

Um ein System zu aktualisieren

Das folgende update-system-template Beispiel aktualisiert ein System. Der Wert von MySystemDefinition ist das GraphQL, das das System modelliert.

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

Ausgabe:

{ "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 } }

Weitere Informationen finden Sie unter Creating Systems im AWS IoT Things Graph Graph-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungupload-entity-definitions.

AWS CLI

Um Entitätsdefinitionen hochzuladen

Im folgenden upload-entity-definitions Beispiel werden Entitätsdefinitionen in Ihren Namespace hochgeladen. Der Wert von MyEntityDefinitions ist das GraphQL, das die Entitäten modelliert.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Modeling Entities im AWS IoT Things Graph User Guide.