19. Publish / Subscribe
Soporte a protocolos standar
MQTT, HTTP, WebSockets
Conexiones de larga vida
Recibir señales de la nube
Seguro por defecto
Conexiones seguras vía X509
Certs y TLS 1.2 Client Mutual
Auth
20. Mensajes del Sensor
Soporte a protocolos estándar
MQTT, HTTP, WebSockets
Topic/channel
Control de la jerarquía de
enrutamiento, sobre el árbol
completo
Payload (JSON)
JSON payload definidos por el
usuario
22. Extraer valor de los mensajes
• Filtrar mensajes basados en algún
criterio
• Mover los mensajes otros tópicos
• Mover los mensajes a otros
sistemas
• Transformar el payload del mensaje
• Predecir mensajes basados en
tendencias
• Reacciones basadas en mensajes
25. AWS IoT SQL reference
SELECT DATA FROM TOPIC WHERE FILTER
• Como escaneando una base de datos
• Tópico MQTT es la fuente por defecto
Ejemplos:
• FROM mqtt(‘my/topic’)
• FROM mqtt(‘my/wildcard/+/topic’)
• FROM (‘my/topic’)
26. nuevo: Características Rules engine
• Versionamiento
• 2016-10-08 – Original version
• 2016-03-23-beta – Beta version released on specific date
• beta – Latest beta version (breaking changes!)
• lts – Latest long-term support version, automatically updated
{
"sql": "expression",
"ruleDisabled": false,
"awsIotSqlVersion": "2015-03-23-beta",
"actions": [{
"republish": {
"topic": "my-mqtt-topic",
"roleArn": "arn:aws:iam::123456789012:role/my-iot-role"
}
}]}
27. nuevo: Características Rules engine
• Colecciones JSON
• get(array, int) – obtener el item en el índice de un arreglo
• get(string, int) – obtener el caracter en la posición de un
string
• get(object, key) – obtener el valor de una llave
• SUB SELECT de colecciones
• SELECT (SELECT v FROM e WHERE n = 'temperature')as
temperature FROM 'topic'
31. nuevo: Lifecycle events
• Información de enventos como:
• Conexión de un cliente
• Desconexión limpia de un cliente
• Desconexión por interrupción de un cliente
45. 1. Device publishes current state
2. Persist JSON data store
3. App requests device’s current state
4. App requests change the state
5. Device shadow syncs
updatedstate
6. Device publishes current state 7. Device shadow confirms state change
Flujo del AWS IoT device shadow
46. AWS IoT device shadow: Simple yet powerful
{
"state" : {
“desired" : {
"lights": { "color": "RED" },
"engine" : "ON"
},
"reported" : {
"lights" : { "color": "GREEN" },
"engine" : "ON"
},
"delta" : {
"lights" : { "color": "RED" }
} },
"version" : 10
}
Device
Report its current state to one or multipleshadows
Retrieve its desired state fromshadow
MobileApp
Set the desired state of a device
Get the last reported state of thedevice
Delete the shadow
Shadow
Shadow reports delta, desired, andreported
states along with metadata andversion
52. Soporte mediante SDK para dispositivos
• Basado en estándares abiertos como
Eclipse Paho
• C
• Arduino (Yun)
• iOS (Swift)
• Android
• Soporte de WebSocket
• NodeJS
• JS SDK para sitios web estáticos
(WebSockets)