¿Qué es AWS IoT?
AWS IoT (Amazon Web Service IoT) es una plataforma de nube administrada que permite a los dispositivos conectados interactuar fácil y seguramente con aplicaciones en la nube y otros dispositivos. AWS IoT puede soportar miles de millones de dispositivos y trillones de mensajes, y puede procesar y enrutar esos mensajes a los puntos finales de AWS ya otros dispositivos de forma fiable y segura. Con AWS IoT, el sistema de comunidad inteligente TimeTec puede mantener un registro y comunicarse con todos los dispositivos de seguridad de casa inteligentes TimeTec IoT, todo el tiempo, incluso cuando no están conectados.

AWS IoT facilita el uso de servicios AWS como AWS Lambda, Amazon Kinesis, Amazon S3, Amazon Learning Machine, Amazon DynamoDB, Amazon CloudWatch, AWS CloudTrail y Amazon Elasticsearch Service con integración integrada de Kibana para construir aplicaciones IoT que reúnen, Procesar, analizar y actuar sobre los datos generados por los dispositivos conectados, sin tener que gestionar ninguna infraestructura.
Los beneficios de AWS IoT
SDS del dispositivo AWS IoT
AWS IoT proporciona un SDK para que TimeTec conecte el dispositivo de hardware TimeTec IoT y la aplicación móvil de forma fácil y rápida. El SDK del dispositivo AWS IoT permite a los dispositivos TimeTec conectarse, autenticar e intercambiar mensajes con AWS IoT mediante los protocolos MQTT, HTTP o WebSockets. El SDK de dispositivos admite C, JavaScript y Arduino e incluye las bibliotecas de cliente, la guía de desarrolladores y la guía de portado para fabricantes.
Puerta de enlace del dispositivo
AWS IoT Device Gateway permite que los dispositivos Timot IoT se comuniquen de forma segura y eficiente con AWS IoT. Device Gateway puede intercambiar mensajes utilizando un modelo de publicación / suscripción, que permite las comunicaciones uno a uno y uno a varios. Con este patrón de comunicación uno-a-muchos, AWS IoT hace posible que el dispositivo conectado a TimeTec transmita datos a varios abonados para un tema determinado. Device Gateway admite protocolos MQTT, WebSockets y HTTP 1.1 y TimeTec puede implementar fácilmente soporte para protocolos propietarios o heredados. La puerta de enlace del dispositivo se compensa automáticamente para soportar más de mil millones de dispositivos sin necesidad de aprovisionar la infraestructura.
Autenticacion y autorizacion
AWS IoT proporciona autenticación mutua y cifrado en todos los puntos de conexión, de modo que los datos nunca se intercambian entre dispositivos y AWS IoT sin identidad probada. AWS IoT admite el método AWS de autenticación (denominado 'SigV4'), así como la autenticación basada en certificados X.509.

Las conexiones que utilizan HTTP pueden utilizar cualquiera de estos métodos, mientras que las conexiones que utilizan MQTT utilizan la autenticación basada en certificados y las conexiones que utilizan WebSockets pueden utilizar SigV4. Con AWS IoT TimeTec puede usar certificados AWS IoT generados, así como aquellos firmados por nuestra Autoridad de Certificado (CA) preferida. Podemos asignar nuestra elección de roles y / o políticas a cada certificado, de modo que podamos autorizar que dispositivos o aplicaciones tengan acceso, o cambien de opinión y revocen el acceso por completo sin tocar el dispositivo.

TimeTec puede crear, implementar y gestionar certificados y políticas para nuestros dispositivos IoT desde la consola o utilizando la API. Esos certificados de dispositivo se pueden aprovisionar, activar y asociar con las políticas relevantes que se configuran utilizando AWS IAM. Esto permite a nuestros clientes revocar de inmediato el acceso a un dispositivo individual si así lo desean. AWS IoT también admite conexiones desde aplicaciones móviles de usuarios con Amazon Cognito, que se encarga de todos los pasos necesarios para crear un identificador único para los usuarios de nuestra aplicación y recuperar credenciales AWS temporales de privilegio limitado.
Registro
El Registro establece una identidad para dispositivos y pistas de metadatos, como los atributos y capacidades de los dispositivos. El Registro asigna una identidad única a cada dispositivo que se formatea de forma consistente sin importar el tipo de dispositivo o cómo se conecta. También admite metadatos que describen las capacidades de un dispositivo, por ejemplo, si un sensor informa la temperatura y si los datos son Fahrenheit o Celsius.

El Registro permite a nuestros clientes almacenar metadatos sobre sus dispositivos sin cargo adicional y los metadatos en el Registro no caducan mientras usted acceda o actualice su entrada de registro al menos una vez cada 7 años.
Sombras del dispositivo
Con AWS IoT podemos crear una versión virtual persistente o "shadow, " de cada dispositivo que incluya el último estado del dispositivo para que las aplicaciones u otros dispositivos puedan leer mensajes e interactuar con el dispositivo. Las sombras del dispositivo persisten el último estado informado y el estado futuro deseado de cada dispositivo incluso cuando el dispositivo está sin conexión. TimeTec puede recuperar el último estado informado de un dispositivo o establecer un estado futuro deseado a través de la API o utilizando el motor de reglas.

Las sombras de dispositivos facilitan la creación de aplicaciones que interactúan con los dispositivos TimeTec proporcionando siempre disponibles las API REST. Además, las aplicaciones pueden establecer el estado futuro deseado de un dispositivo sin tener en cuenta el estado actual de los dispositivos. AWS IoT comparará la diferencia entre el estado deseado y el último informado y ordenará al dispositivo que compense la diferencia.

El SDK del dispositivo AWS IoT facilita que el dispositivo TimeTec sincronice su estado con su sombra y responda a los estados futuros deseados establecidos a través de la sombra.

Las Sombras de dispositivos permiten a nuestros clientes almacenar el estado de sus dispositivos durante un año de forma gratuita. Las sombras del dispositivo persisten para siempre si las actualiza al menos una vez al año, de lo contrario caducan.
Motor de reglas
El motor de reglas permite crear aplicaciones IoT que recopilan, procesan, analizan y actúan sobre los datos generados por dispositivos conectados a escala global sin tener que gestionar ninguna infraestructura. El Motor de reglas evalúa los mensajes entrantes publicados en AWS IoT y los transforma y los entrega a otro dispositivo o servicio en la nube, según las reglas de negocio que defina. Una regla puede aplicarse a los datos de uno o varios dispositivos, y puede tomar una o varias acciones en paralelo.

El Motor de Reglas también puede encaminar mensajes a puntos finales de AWS, incluyendo AWS Lambda, Amazon Kinesis, Amazon S3, Amazon Learning Machine, Amazon DynamoDB, Amazon CloudWatch y Amazon Elasticsearch Service con integración integrada de Kibana. Los puntos finales externos se pueden alcanzar mediante AWS Lambda, Amazon Kinesis y Amazon Simple Notification Service (SNS).

Es fácil crear reglas dentro de la consola de administración o escribir reglas usando una sintaxis similar a SQL. Las reglas se pueden autorizar para comportarse diferentemente dependiendo del contenido del mensaje. Por ejemplo, si una lectura de temperatura excede un cierto umbral, podría disparar una regla para transmitir datos a AWS Lambda. También se pueden crear reglas para tener en cuenta otros datos en la nube, como los datos de otros dispositivos. Por ejemplo, podría decir que tome una acción si esta temperatura es más del 15% más alta que la media de otros 5 dispositivos.

El motor de reglas proporciona docenas de funciones disponibles que se pueden utilizar para transformar los datos, y es posible crear infinitamente más a través de AWS Lambda. Por ejemplo, si estamos tratando con una amplia gama de valores, podríamos tomar el promedio de los números entrantes. Las reglas también pueden activar la ejecución de su código Java, Node.js o Python en AWS Lambda, ofreciendo la máxima flexibilidad y potencia para procesar los datos del dispositivo.