AWS IoT Device SDK
AWS IoT proporciona un SDK para que TimeTec conecte el dispositivo de hardware TimeTec IoT y la aplicación móvil de manera fácil y rápida. AWS IoT Device SDK permite a los dispositivos TimeTec conectarse, autenticarse e intercambiar mensajes con AWS IoT mediante los protocolos MQTT, HTTP o WebSockets. El SDK del dispositivo es compatible con C, JavaScript y Arduino, e incluye las bibliotecas del cliente, la guía del desarrollador y la guía de transferencia para fabricantes.
Device Gateway
AWS IoT Device Gateway permite que los dispositivos Timitec 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 comunicaciones uno a uno y uno a muchos. Con este patrón de comunicación uno a muchos, AWS IoT hace posible que el dispositivo conectado TimeTec pueda transmitir datos a múltiples suscriptores para un tema determinado. Device Gateway es compatible con los protocolos MQTT, WebSockets y HTTP 1.1 y TimeTec puede implementar fácilmente el soporte para protocolos propietarios o heredados. Device Gateway se escala automáticamente para admitir más de mil millones de dispositivos sin infraestructura de aprovisionamiento.
Autenticacion y autorizacion
AWS IoT proporciona autenticación mutua y encriptación en todos los puntos de conexión, de modo que los datos nunca se intercambien entre dispositivos y AWS IoT sin identidad probada. AWS IoT admite el método de autenticación de AWS (denominado 'SigV4') y la autenticación basada en el certificado X.509.
Las conexiones que usan HTTP pueden usar cualquiera de estos métodos, mientras que las conexiones que usan MQTT usan autenticación basada en certificados, y las conexiones que usan WebSockets pueden usar SigV4. Con AWS IoT TimeTec puede usar certificados generados por AWS IoT, así como aquellos firmados por nuestra Autoridad de certificación (CA) preferida. Podemos asignar nuestra elección de rol y / o políticas a cada certificado, de modo que podamos autorizar a los dispositivos o aplicaciones a tener acceso, o cambiar de opinión y revocar el acceso por completo sin siquiera tocar el dispositivo.
TimeTec puede crear, implementar y administrar certificados y políticas para nuestros dispositivos de 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 instantáneamente el acceso a un dispositivo individual si así lo desean. AWS IoT también admite conexiones de aplicaciones móviles de los usuarios utilizando 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 privilegios limitados.
Registro
El Registro establece una identidad para los dispositivos y realiza un seguimiento de los metadatos, como los atributos y capacidades de los dispositivos. El Registro asigna una identidad única a cada dispositivo que está formateado consistentemente, independientemente del 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 costo adicional, y los metadatos en el Registro no caducan siempre que acceda o actualice su registro al menos una vez cada 7 años.
Sombras de dispositivo
Con AWS IoT podemos crear una versión virtual persistente o "sombra " de cada dispositivo que incluye 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á fuera de línea. TimeTec puede recuperar el último estado informado de un dispositivo o establecer un estado futuro deseado a través de la API o mediante el motor de reglas.
Device Shadows facilita la creación de aplicaciones que interactúen con los dispositivos TimeTec proporcionando API REST siempre disponibles. Además, las aplicaciones pueden establecer el estado futuro deseado de un dispositivo sin tener en cuenta el estado actual del dispositivo. AWS IoT comparará la diferencia entre el estado deseado y el último informado, y ordenará al dispositivo que complete la diferencia.
AWS IoT Device SDK facilita al dispositivo TimeTec sincronizar su estado con su sombra y responder a los estados futuros deseados establecidos a través de la sombra.
Device Shadows permite a nuestros clientes almacenar el estado de sus dispositivos por hasta un año de forma gratuita. Las sombras del dispositivo persisten para siempre si las actualizas al menos una vez al año; de lo contrario, caducarán.
Motor de reglas
The Rules Engine hace posible la creación de aplicaciones de IoT que reúnen, procesan, analizan y actúan sobre los datos generados por los dispositivos conectados a escala global sin tener que administrar 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 comerciales que defina. Una regla puede aplicarse a los datos de uno o varios dispositivos, y puede tomar una o muchas acciones en paralelo.
El Motor de reglas también puede enrutar mensajes a los puntos finales de AWS, incluidos AWS Lambda, Amazon Kinesis, Amazon S3, Amazon Machine Learning, Amazon DynamoDB, Amazon CloudWatch y Amazon Elasticsearch Service con integración de Kibana incorporada. Se puede llegar a los puntos finales externos utilizando 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 crear para comportarse de manera diferente según el contenido del mensaje. Por ejemplo, si una lectura de temperatura excede un cierto umbral, podría desencadenar una regla para transmitir datos a AWS Lambda. Las reglas también se pueden crear para tener en cuenta otros datos en la nube, como los datos de otros dispositivos. Por ejemplo, podría decir tomar una acción si esta temperatura es más de un 15% más alta que el promedio 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, lo que brinda la máxima flexibilidad y potencia para procesar los datos del dispositivo.