View a markdown version of this page

AWS IoT Things Graph ejemplos que utilizan AWS CLI - AWS Ejemplos de código de SDK

Hay más ejemplos de AWS SDK disponibles en el repositorio de ejemplos de AWS Doc SDK. GitHub

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

AWS IoT Things Graph ejemplos que utilizan AWS CLI

Los siguientes ejemplos de código muestran cómo realizar acciones e implementar escenarios comunes mediante el uso de AWS Command Line Interface with AWS IoT Things Graph.

Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las distintas funciones de servicio, es posible ver las acciones en contexto en los escenarios relacionados.

En cada ejemplo se incluye un enlace al código de origen completo, con instrucciones de configuración y ejecución del código en el contexto.

Acciones

En el siguiente ejemplo de código, se muestra cómo utilizar associate-entity-to-thing.

AWS CLI

Para asociar un objeto con un dispositivo

En el siguiente ejemplo de associate-entity-to-thing, se asocia un objeto a un dispositivo. En el ejemplo se utiliza un dispositivo sensor de movimiento que se encuentra en el espacio de nombres público.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Creating and Uploading Models en la Guía del usuario de AWS IoT Things Graph.

En el siguiente ejemplo de código, se muestra cómo utilizar create-flow-template.

AWS CLI

Para crear un flujo

En el siguiente ejemplo de create-flow-template, se crea un flujo (flujo de trabajo). El valor de MyFlowDefinition es el GraphQL que modela el flujo.

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

Salida:

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

Para obtener más información, consulte Working with Flows en la Guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte Command Reference CreateFlowTemplate. AWS CLI

En el siguiente ejemplo de código, se muestra cómo utilizar create-system-instance.

AWS CLI

Para crear una instancia de sistema

En el siguiente ejemplo de create-system-instance, se crea una instancia del sistema. El valor de MySystemInstanceDefinition es el GraphQL que modela la instancia del sistema.

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

Salida:

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

Para obtener más información, consulte Working with Systems and Flow Configurations en la Guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte CreateSystemInstance la Referencia de comandos. AWS CLI

En el siguiente ejemplo de código, se muestra cómo utilizar create-system-template.

AWS CLI

Para crear un sistema

En el siguiente ejemplo de create-system-template, se crea un sistema. El valor de MySystemDefinition es el GraphQL que modela el sistema.

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

Salida:

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

Para obtener más información, consulte Creating Systems en la Guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte CreateSystemTemplate la Referencia de AWS CLI comandos.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-flow-template.

AWS CLI

Para eliminar un flujo

En el siguiente ejemplo de delete-flow-template, se elimina un flujo (flujo de trabajo).

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

Este comando no genera ninguna salida.

Para obtener más información, consulte la administración del ciclo de vida de las entidades, los flujos, los sistemas y las implementaciones de AWS IoT Things Graph en la guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte DeleteFlowTemplate la sección AWS CLI Command Reference.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-namespace.

AWS CLI

Para eliminar un espacio de nombres

En el siguiente ejemplo de delete-namespace, se elimina un espacio de nombres.

aws iotthingsgraph delete-namespace

Salida:

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

Para obtener más información, consulte la gestión del ciclo de vida de las entidades, los flujos, los sistemas y las implementaciones de AWS IoT Things Graph en la guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte DeleteNamespace la sección AWS CLI Command Reference.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-system-instance.

AWS CLI

Para eliminar una instancia de sistema

En el siguiente ejemplo de delete-system-instance, se elimina una instancia del sistema.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte la administración del ciclo de vida de las entidades, los flujos, los sistemas y las implementaciones de AWS IoT Things Graph en la guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte DeleteSystemInstance la sección AWS CLI Command Reference.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-system-template.

AWS CLI

Para eliminar un sistema

En el siguiente ejemplo de delete-system-template, se elimina un sistema.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte la administración del ciclo de vida de las entidades, los flujos, los sistemas y las implementaciones de AWS IoT Things Graph en la guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte DeleteSystemTemplate la sección AWS CLI Command Reference.

En el siguiente ejemplo de código, se muestra cómo utilizar deploy-system-instance.

AWS CLI

Para implementar una instancia de sistema

En el siguiente ejemplo de delete-system-template, se implementa una instancia del sistema.

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

Salida:

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

Para obtener más información, consulte Working with Systems and Flow Configurations en la Guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulta DeploySystemInstance la Referencia de comandos. AWS CLI

En el siguiente ejemplo de código, se muestra cómo utilizar deprecate-flow-template.

AWS CLI

Para dar de baja un flujo

En el siguiente ejemplo de deprecate-flow-template, se da de baja un flujo (flujo de trabajo).

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

Este comando no genera ninguna salida.

Para obtener más información, consulte la administración del ciclo de vida de las entidades, los flujos, los sistemas y las implementaciones de AWS IoT Things Graph en la guía del AWS usuario de IoT Things Graph.

  • Para obtener más información sobre la API, consulte DeprecateFlowTemplate la sección AWS CLI Command Reference.

En el siguiente ejemplo de código, se muestra cómo utilizar deprecate-system-template.

AWS CLI

Para dar de baja un sistema

En el siguiente ejemplo de deprecate-system-template, se da de baja un sistema.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte la administración del ciclo de vida de las entidades, los flujos, los sistemas y las implementaciones de AWS IoT Things Graph en la guía del AWS usuario de IoT Things Graph.

En el siguiente ejemplo de código, se muestra cómo utilizar describe-namespace.

AWS CLI

Para obtener una descripción de su espacio de nombres

En el siguiente ejemplo de describe-namespace, se obtiene una descripción del espacio de nombres.

aws iotthingsgraph describe-namespace

Salida:

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

Para obtener más información, consulte Namespaces en la Guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte DescribeNamespace la Referencia de comandos. AWS CLI

En el siguiente ejemplo de código, se muestra cómo utilizar dissociate-entity-from-thing.

AWS CLI

Para desasociar un objeto de un dispositivo

En el siguiente ejemplo de dissociate-entity-from-thing, se desvincula un objeto de un dispositivo.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Creating and Uploading Models en la Guía del usuario de AWS IoT Things Graph.

En el siguiente ejemplo de código, se muestra cómo utilizar get-entities.

AWS CLI

Para obtener definiciones de las entidades

En el siguiente ejemplo de get-entities, se obtiene una definición de un modelo de dispositivo.

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

Salida:

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

Para obtener más información, consulte Creating and Uploading Models en la Guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte la Referencia GetEntities de AWS CLI comandos.

En el siguiente ejemplo de código, se muestra cómo utilizar get-flow-template-revisions.

AWS CLI

Para obtener información de las revisiones de un flujo

En el siguiente ejemplo de get-flow-template-revisions, se obtiene información de revisión de un flujo (flujo de trabajo).

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

Salida:

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

Para obtener más información, consulte Working with Flows en la Guía del usuario de AWS IoT Things Graph.

En el siguiente ejemplo de código, se muestra cómo utilizar get-flow-template.

AWS CLI

Para obtener una definición de flujo

En el siguiente ejemplo de get-flow-template, se obtiene una definición de un flujo (flujo de trabajo).

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

Salida:

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

Para obtener más información, consulte Working with Flows en la Guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte GetFlowTemplate la Referencia de comandos. AWS CLI

En el siguiente ejemplo de código, se muestra cómo utilizar get-namespace-deletion-status.

AWS CLI

Para obtener el estado de la tarea de eliminación del espacio de nombres

En el siguiente ejemplo de get-namespace-deletion-status, se obtiene el estado de la tarea de eliminación del espacio de nombres.

aws iotthingsgraph get-namespace-deletion-status

Salida:

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

Para obtener más información, consulte Namespaces en la Guía del usuario de AWS IoT Things Graph.

En el siguiente ejemplo de código, se muestra cómo utilizar get-system-instance.

AWS CLI

Para obtener una instancia de sistema

En el siguiente ejemplo de get-system-instance, se obtiene una definición de una instancia del sistema.

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

Salida:

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

Para obtener más información, consulte Working with Systems and Flow Configurations en la Guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte GetSystemInstance la Referencia de comandos. AWS CLI

En el siguiente ejemplo de código, se muestra cómo utilizar get-system-template-revisions.

AWS CLI

Para obtener información de las revisiones de un flujo

En el siguiente ejemplo de get-system-template-revisions, se obtiene información de revisión sobre un sistema.

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

Salida:

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

Para obtener más información, consulte Working with Systems and Flow Configurations en la Guía del usuario de AWS IoT Things Graph.

En el siguiente ejemplo de código, se muestra cómo utilizar get-system-template.

AWS CLI

Para obtener un sistema

En el siguiente ejemplo de get-system-template, se obtiene una definición de un sistema.

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

Salida:

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

Para obtener más información, consulte Working with Systems and Flow Configurations en la Guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte GetSystemTemplate la Referencia de comandos. AWS CLI

En el siguiente ejemplo de código, se muestra cómo utilizar get-upload-status.

AWS CLI

Para obtener el estado de la carga de la entidad

En el siguiente ejemplo de get-upload-status, se obtiene el estado de la operación de carga de la entidad. El valor de MyUploadId es el valor de ID devuelto por la operación upload-entity-definitions.

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

Salida:

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

Para obtener más información, consulte Modeling Entities en la Guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulta GetUploadStatus la Referencia de comandos. AWS CLI

En el siguiente ejemplo de código, se muestra cómo utilizar list-flow-execution-messages.

AWS CLI

Para obtener información sobre los eventos de la ejecución de un flujo

En el siguiente ejemplo de list-flow-execution-messages, se obtiene información sobre los eventos de una ejecución de flujo.

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"

Salida:

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

Para obtener más información, consulte Working with Flows en la Guía del usuario de AWS IoT Things Graph.

En el siguiente ejemplo de código, se muestra cómo utilizar list-tags-for-resource.

AWS CLI

Para enumerar todas las etiquetas de un recurso

En el siguiente list-tags-for-resource ejemplo, se enumeran todas las etiquetas de un recurso de AWS IoT Things Graph.

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

Salida:

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

Para obtener más información, consulte Cómo etiquetar sus recursos de AWS IoT Things Graph en la guía del usuario de AWS IoT Things Graph.

En el siguiente ejemplo de código, se muestra cómo utilizar search-entities.

AWS CLI

Para buscar entidades

En el siguiente ejemplo de search-entities, se buscan todas las entidades del tipo EVENT.

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

Salida:

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

Para obtener más información, consulte la AWS IoT Things Graph Data Model Reference en la Guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte la Referencia SearchEntities de AWS CLI comandos.

En el siguiente ejemplo de código, se muestra cómo utilizar search-flow-executions.

AWS CLI

Para buscar ejecuciones de flujos

En el siguiente ejemplo de search-flow-executions, se buscan todas las ejecuciones de un flujo en una instancia del sistema especificada.

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

Salida:

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

Para obtener más información, consulte Working with Systems and Flow Configurations en la Guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte SearchFlowExecutions la Referencia de comandos. AWS CLI

En el siguiente ejemplo de código, se muestra cómo utilizar search-flow-templates.

AWS CLI

Para buscar flujos (o flujos de trabajo)

En el siguiente ejemplo de search-flow-templates, se buscan todos los flujos (flujos de trabajo) que contienen el modelo de dispositivo de cámara.

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

Salida:

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

Para obtener más información, consulte Working with Flows en la Guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte SearchFlowTemplates la Referencia de comandos. AWS CLI

En el siguiente ejemplo de código, se muestra cómo utilizar search-system-instances.

AWS CLI

Para buscar instancias de sistema

En el siguiente ejemplo de search-system-instances, se buscan todas las instancias del sistema que contienen el sistema especificado.

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

Salida:

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

Para obtener más información, consulte Working with Systems and Flow Configurations en la Guía del usuario de AWS IoT Things Graph.

En el siguiente ejemplo de código, se muestra cómo utilizar search-system-templates.

AWS CLI

Para buscar un sistema

En el siguiente ejemplo de search-system-templates, se buscan todos los sistemas que contienen el flujo especificado.

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

Salida:

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

Para obtener más información, consulte Working with Flows en la Guía del usuario de AWS IoT Things Graph.

En el siguiente ejemplo de código, se muestra cómo utilizar search-things.

AWS CLI

Para buscar objetos asociados a dispositivos y modelos de dispositivos

El siguiente search-things ejemplo busca todas las cosas asociadas al HCSR501MotionSensor dispositivo.

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

Salida:

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

Para obtener más información, consulte Creating and Uploading Models en la Guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte SearchThings la Referencia de AWS CLI comandos.

En el siguiente ejemplo de código, se muestra cómo utilizar tag-resource.

AWS CLI

Para crear una etiqueta para un recurso

En el siguiente ejemplo de tag-resource, se crea una etiqueta de un recurso especificado.

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

Este comando no genera ninguna salida.

Para obtener más información, consulta Cómo etiquetar tus recursos de AWS IoT Things Graph en la guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte TagResource AWS CLI Command Reference.

En el siguiente ejemplo de código, se muestra cómo utilizar undeploy-system-instance.

AWS CLI

Para anular la implementación de una instancia de sistema de su destino

En el siguiente ejemplo de undeploy-system-instance, se elimina una instancia del sistema de su destino.

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

Salida:

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

Para obtener más información, consulte la administración del ciclo de vida de las entidades, los flujos, los sistemas y las implementaciones de AWS IoT Things Graph en la guía del AWS usuario de IoT Things Graph.

En el siguiente ejemplo de código, se muestra cómo utilizar untag-resource.

AWS CLI

Para eliminar una etiqueta de un recurso

En el siguiente ejemplo de untag-resource, se elimina una etiqueta del recurso especificado.

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

Este comando no genera ninguna salida.

Para obtener más información, consulta Cómo etiquetar tus recursos de AWS IoT Things Graph en la guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte UntagResource AWS CLI Command Reference.

En el siguiente ejemplo de código, se muestra cómo utilizar update-flow-template.

AWS CLI

Para actualizar un flujo

En el siguiente ejemplo de update-flow-template, se actualiza un flujo (flujo de trabajo). El valor de MyFlowDefinition es el GraphQL que modela el flujo.

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

Salida:

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

Para obtener más información, consulte Working with Flows en la Guía del usuario de AWS IoT Things Graph.

  • Para obtener más información sobre la API, consulte Command Reference UpdateFlowTemplate. AWS CLI

En el siguiente ejemplo de código, se muestra cómo utilizar update-system-template.

AWS CLI

Para actualizar un sistema

En el siguiente ejemplo de update-system-template, se actualiza un sistema. El valor de MySystemDefinition es el GraphQL que modela el sistema.

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

Salida:

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

Para obtener más información, consulte Creating Systems en la Guía del usuario de AWS IoT Things Graph.

En el siguiente ejemplo de código, se muestra cómo utilizar upload-entity-definitions.

AWS CLI

Para cargar definiciones de entidades

En el siguiente ejemplo de upload-entity-definitions, se cargan las definiciones de entidades en su espacio de nombres. El valor de MyEntityDefinitions es el GraphQL que modela las entidades.

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

Salida:

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

Para obtener más información, consulte Modeling Entities en la Guía del usuario de AWS IoT Things Graph.