Tipos de cosas - AWS IoT Core

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.

Tipos de cosas

Los tipos de objetos le permiten almacenar información descriptiva y de configuración común a todos los objetos asociados al mismo tipo de objeto. Esto simplifica la administración de objetos en el registro. Por ejemplo, puede definir un tipo de LightBulb cosa. Todos los elementos asociados al LightBulb tipo de objeto comparten un conjunto de atributos: número de serie, fabricante y potencia. Al crear un objeto de tipo LightBulb (o al cambiar el tipo de un objeto existente LightBulb), puede especificar valores para cada uno de los atributos definidos en el tipo de LightBulb objeto.

Aunque los tipos de objeto son opcionales, su uso facilita la detección de objetos.

  • Los objetos con un tipo de objeto pueden tener un máximo de 50 atributos.

  • Los objetos sin tipo de objeto pueden tener un máximo de tres atributos.

  • Los objetos solo se pueden asociar a un tipo de objeto.

  • El número de tipos de objetos que puede crear en su cuenta es ilimitado.

Los tipos de objeto son inmutables. No se puede cambiar el nombre de un tipo de objeto después de que se haya creado. Puede descartar un tipo de objeto, en cualquier momento, para evitar que se le asocien nuevos objetos. También puede eliminar tipos de objeto que no tengan objetos asociados.

Creación de un tipo de objeto

Puede utilizar el comando CreateThingType para crear un tipo de objeto:

$ aws iot create-thing-type --thing-type-name "LightBulb" --thing-type-properties "thingTypeDescription=light bulb type, searchableAttributes=wattage,model"

El comando CreateThingType devuelve una respuesta que contiene el tipo de objeto y su ARN:

{ "thingTypeName": "LightBulb", "thingTypeId": "df9c2d8c-894d-46a9-8192-9068d01b2886", "thingTypeArn": "arn:aws:iot:us-west-2:123456789012:thingtype/LightBulb" }

Lista de los tipos de objeto

Puede utilizar el comando ListThingTypes para crear una lista de los tipos de objeto:

$ aws iot list-thing-types

El ListThingTypes comando devuelve una lista de los tipos de cosas definidos en su Cuenta de AWS:

{ "thingTypes": [ { "thingTypeName": "LightBulb", "thingTypeProperties": { "searchableAttributes": [ "wattage", "model" ], "thingTypeDescription": "light bulb type" }, "thingTypeMetadata": { "deprecated": false, "creationDate": 1468423800950 } } ] }

Descripción de un tipo de objeto

Puede utilizar el comando DescribeThingType para obtener información acerca de un tipo de objeto:

$ aws iot describe-thing-type --thing-type-name "LightBulb"

El comando DescribeThingType devuelve información acerca del tipo especificado:

{ "thingTypeProperties": { "searchableAttributes": [ "model", "wattage" ], "thingTypeDescription": "light bulb type" }, "thingTypeId": "df9c2d8c-894d-46a9-8192-9068d01b2886", "thingTypeArn": "arn:aws:iot:us-west-2:123456789012:thingtype/LightBulb", "thingTypeName": "LightBulb", "thingTypeMetadata": { "deprecated": false, "creationDate": 1544466338.399 } }

Asociación de un tipo de objeto a un objeto

Puede utilizar el comando CreateThing para especificar un tipo de objeto cuando crea un objeto:

$ aws iot create-thing --thing-name "MyLightBulb" --thing-type-name "LightBulb" --attribute-payload "{\"attributes\": {\"wattage\":\"75\", \"model\":\"123\"}}"

Puede utilizar el comando UpdateThing en cualquier momento para cambiar el tipo de objeto asociado a un objeto:

$ aws iot update-thing --thing-name "MyLightBulb" --thing-type-name "LightBulb" --attribute-payload "{\"attributes\": {\"wattage\":\"75\", \"model\":\"123\"}}"

También puede utilizar el comando UpdateThing para desvincular un objeto de un tipo de objeto.

Descartar un tipo de objeto

Los tipos de objeto son inmutables. No se pueden cambiar una vez que están definidos. Sin embargo, puede descartar un tipo de objeto para evitar que los usuarios le asocien nuevos objetos. Todos los objetos que estén asociados al tipo de objeto permanecen igual, sin cambios.

Para descartar un tipo de objeto, utilice el comando DeprecateThingType:

$ aws iot deprecate-thing-type --thing-type-name "myThingType"

Puede utilizar el comando de DescribeThingType para ver el resultado:

$ aws iot describe-thing-type --thing-type-name "StopLight":
{ "thingTypeName": "StopLight", "thingTypeProperties": { "searchableAttributes": [ "wattage", "numOfLights", "model" ], "thingTypeDescription": "traffic light type", }, "thingTypeMetadata": { "deprecated": true, "creationDate": 1468425854308, "deprecationDate": 1468446026349 } }

Descartar un tipo de objeto es una operación reversible. Puede anular un descarte utilizando la marca --undo-deprecate con el comando de la CLI DeprecateThingType:

$ aws iot deprecate-thing-type --thing-type-name "myThingType" --undo-deprecate

Puede utilizar el comando de la CLI DescribeThingType para ver el resultado:

$ aws iot describe-thing-type --thing-type-name "StopLight":
{ "thingTypeName": "StopLight", "thingTypeArn": "arn:aws:iot:us-east-1:123456789012:thingtype/StopLight", "thingTypeId": "12345678abcdefgh12345678ijklmnop12345678" "thingTypeProperties": { "searchableAttributes": [ "wattage", "numOfLights", "model" ], "thingTypeDescription": "traffic light type" }, "thingTypeMetadata": { "deprecated": false, "creationDate": 1468425854308, } }

Eliminación de un tipo de objeto

Puede eliminar tipos de objeto solo después de que se hayan descartado. Para eliminar un tipo de objeto, utilice el comando DeleteThingType:

$ aws iot delete-thing-type --thing-type-name "StopLight"
nota

Antes de poder eliminar un tipo de enlace, espere cinco minutos después de dejarlo obsoleto.