

# Notificaciones de eventos para los recursos de LoRaWAN
<a name="iot-lorawan-events"></a>

Puede utilizar las operaciones Consola de administración de AWS o AWS IoT Wireless de la API para notificarle los eventos de los dispositivos y puertas de enlace de LoRaWAN. Para obtener información sobre las notificaciones de eventos y cómo habilitarlas, consulte [Notificaciones de eventos para AWS IoT Wireless](iot-wireless-events.md) y [Habilitación de eventos para recursos inalámbricos](iot-wireless-control-events.md).

## Tipos de eventos para los recursos de LoRaWAN
<a name="iot-lorawan-event-types"></a>

Los eventos que puede habilitar para los recursos de LoRaWAN incluyen:
+ Eventos de conexión que le notifican eventos de conexión de un dispositivo LoRaWAN. Recibirá notificaciones cuando un dispositivo se conecte a AWS IoT Core para LoRaWAN o cuando reciba una solicitud de reconexión de tipo 0 o tipo 2.
+ Eventos de estado de conexión que lo notifican cuando el estado de conexión de la puerta de enlace de LoRaWAN cambia a conectado o desconectado.

Las siguientes secciones contienen más información sobre los eventos de los recursos de LoRaWAN:

**Topics**
+ [

## Tipos de eventos para los recursos de LoRaWAN
](#iot-lorawan-event-types)
+ [

# Eventos de conexión a LoRaWAN
](iot-lorawan-join-events.md)
+ [

# Eventos de estado de conexión
](iot-lorawan-gateway-events.md)

# Eventos de conexión a LoRaWAN
<a name="iot-lorawan-join-events"></a>

AWS IoT Core para LoRaWAN puede publicar mensajes para notificarle los eventos de conexión de los dispositivos LoRaWAN que haya incorporado a AWS IoT. Los eventos de conexión lo notifican cuando se recibe una solicitud de conexión o reconexión de tipo 0 o 2 y el dispositivo se ha conectado a AWS IoT Core para LoRaWAN.

## Cómo funcionan los eventos de conexión
<a name="iot-lorawan-join-events-work"></a>

Cuando incorpora los dispositivos LoRaWAN a AWS IoT Core para LoRaWAN, AWS IoT Core para LoRaWAN realiza un procedimiento de *conexión* para el dispositivo con AWS IoT Core para LoRaWAN. A continuación, el dispositivo se activa para su uso y puede enviar un mensaje de enlace ascendente para indicar que está disponible. Una vez que el dispositivo se haya conectado, los mensajes de enlace ascendente y descendente se pueden intercambiar entre el mismo y AWS IoT Core para LoRaWAN. Para obtener más información sobre la configuración del proyecto, consulte [Incorporar dispositivos a AWS IoT Core para LoRaWAN](lorawan-onboard-end-devices.md). 

Puede habilitar eventos para que lo notifiquen cuando el dispositivo se conecte a AWS IoT Core para LoRaWAN. También recibirá una notificación si el evento de conexión produce un error, cuando se reciba una solicitud de reconexión de tipo 0 o tipo 2 y cuando se acepte.

## Habilitación de los eventos de conexión a LoRaWAN
<a name="iot-lorawan-join-events-enable"></a>

Para que los suscriptores de los temas reservados de conexión a LoRaWAN puedan recibir mensajes, debe habilitar las notificaciones de eventos para ellos desde la Consola de administración de AWS o mediante la API o la CLI. Puede habilitar estos eventos para todos los recursos de LoRaWAN de la Cuenta de AWS o para algunos recursos seleccionados. Para obtener información sobre cómo habilitar estos eventos, consulte [Habilitación de eventos para recursos inalámbricos](iot-wireless-control-events.md). 

## Formato de los temas MQTT para eventos de LoRaWAN
<a name="iot-lorawan-join-message-format"></a>

Los temas MQTT reservados para dispositivos LoRaWAN utilizan el siguiente formato. Si se ha suscrito a estos temas, todos los dispositivos LoRaWAN que estén registrados en la Cuenta de AWS podrán recibir la notificación:
+ 

**Temas de nivel de recursos**  
`$aws/iotwireless/events/{eventName}/{eventType}/lorawan/wireless_devices`
+ 

**Temas de identificador**  
`$aws/iotwireless/events/{eventName}/{eventType}/lorawan/wireless_devices/{resourceID}/{id}`

Donde:

**\$1eventName\$1**  
\$1eventName\$1 debe ser `join`.

**\$1eventType\$1**  
\$1eventType\$1 puede ser:  
+ `join_req_received`
+ `rejoin_req_0_received`
+ `rejoin_req_2_received`
+ `join_accepted`

**\$1resourceID\$1**  
\$1resourceID\$1 puede ser `dev_eui` o `wireless_device_id`.

Por ejemplo, puede suscribirse a los siguientes temas para recibir una notificación de evento cuando AWS IoT Core para LoRaWAN acepte una solicitud de conexión de sus dispositivos.

`$aws/iotwireless/events/join/join_accepted/lorawan/wireless_devices/wireless_device_id/{id}`

También puede usar el carácter comodín `+` para suscribirse a varios temas al mismo tiempo. El carácter comodín `+` coincide con cualquier cadena del nivel que contiene el carácter, por ejemplo, en el tema siguiente:

`$aws/iotwireless/events/join/join_req_received/lorawan/wireless_devices/wireless_device_id/+`

**nota**  
No puede utilizar el carácter comodín `#` para suscribirse a los temas reservados.

Para obtener más información sobre el uso del comodín `+` al suscribirse a temas, consulte [MQTT topic filters](https://docs.aws.amazon.com/iot/latest/developerguide/topicfilters.html) en la *Guía del desarrollador de AWS IoT*.

## Carga de mensajes para el evento de conexión a LoRaWAN
<a name="lorawan-join-payload"></a>

A continuación se muestra la carga de mensajes para el evento de conexión a LoRaWAN.

```
{
 // General fields
    "eventId": "string", 
    "eventType": "join_req_received|rejoin_req_0_received|rejoin_req_2_received|join_accepted",
    "WirelessDeviceId": "string",
    "timestamp": "timestamp",
 
 // Event-specific fields
    "LoRaWAN": {
        "DevEui": "string",
        
        // The fields below are optional indicating that it can be a null value.
        "DevAddr": "string", 
        "JoinEui": "string", 
        "AppEui": "string", 
    }
}
```

La carga contiene los siguientes atributos:

**eventId**  
Un ID de evento único generado por AWS IoT Core para LoRaWAN (cadena).

**eventType**  
El tipo de evento que se produjo. Puede ser uno de los siguientes valores:  
+ `join_req_received`: este campo mostrará los parámetros `JoinEui` o `AppEui` del EUI
+ `rejoin_req_0_received`
+ `rejoin_req_2_received`
+ `join_accepted`: este campo mostrará el `NetId` y la `DevAddr`.

**wirelessDeviceId**  
El ID del dispositivo LoRaWAN.

**timestamp**  
La marca de tiempo Unix de cuándo se produjo el evento.

**DevEui**  
El identificador único del dispositivo que se encuentra en su etiqueta o documentación. 

**DevAddr y EUIs (opcional)**  
Estos campos son opcionales: la dirección del dispositivo y los parámetros `JoinEUI` o `AppEUI` del EUI.

# Eventos de estado de conexión
<a name="iot-lorawan-gateway-events"></a>

AWS IoT Core para LoRaWAN puede publicar mensajes para notificarle eventos del estado de conexión de las puertas de enlace de LoRaWAN que incorporó a AWS IoT. Los eventos de estado de conexión lo notifican cuando el estado de conexión de una puerta de enlace de LoRaWAN cambia a conectado o desconectado.

## Cómo funcionan los eventos de estado de conexión
<a name="iot-lorawan-gateway-events-work"></a>

Una vez que haya incorporado la puerta de enlace aAWS IoT Core para LoRaWAN, puede conectarla a AWS IoT Core para LoRaWAN y verificar su estado de conexión. Este evento lo notifica cuando el estado de conexión de la puerta de enlace cambia a conectado o desconectado. Para obtener más información sobre cómo incorporar y conectar la puerta de enlace a AWS IoT Core para LoRaWAN, consulte [Incorporar las puertas de enlace a AWS IoT Core para LoRaWAN](lorawan-onboard-gateways.md) y [Conectar una puerta de enlace LoRaWAN y verificar el estado de su conexión](lorawan-gateway-connection-status.md).

## Formato de los temas MQTT para puertas de enlace de LoRaWAN
<a name="lorawan-gateway-message-format"></a>

Los temas MQTT reservados para puertas de enlace de LoRaWAN utilizan el formato siguiente. Si se ha suscrito a estos temas, todas las puertas de enlace de LoRaWAN que estén registrados en la Cuenta de AWS podrán recibir la notificación:
+ Para temas de nivel de recursos:

  `$aws/iotwireless/events/{eventName}/{eventType}/lorawan/wireless_gateways`
+ Para temas de identificador:

  `$aws/iotwireless/events/{eventName}/{eventType}/lorawan/wireless_gateways/{resourceID}/{id}`

Donde:

**\$1eventName\$1**  
\$1eventName\$1 debe ser `connection_status`.

**\$1eventType\$1**  
\$1eventType\$1 puede ser `connected` o `disconnected`.

**\$1resourceID\$1**  
\$1resourceID\$1 puede ser `gateway_eui` o `wireless_gateway_id`.

Por ejemplo, puede suscribirse a los siguientes temas para recibir una notificación de evento cuando todas las puertas de enlace se hayan conectado a AWS IoT Core para LoRaWAN:

`$aws/iotwireless/events/connection_status/connected/lorawan/wireless_gateways/wireless_gateway_id/{id}`

También puede usar el carácter comodín `+` para suscribirse a varios temas al mismo tiempo. El carácter comodín `+` coincide con cualquier cadena del nivel que contiene el carácter, por ejemplo, en el tema siguiente:

`$aws/iotwireless/events/connection_status/connected/lorawan/wireless_gateways/wireless_gateway_id/+`

**nota**  
No puede utilizar el carácter comodín `#` para suscribirse a los temas reservados.

Para obtener más información sobre el uso del comodín `+` al suscribirse a temas, consulte [MQTT topic filters](https://docs.aws.amazon.com/iot/latest/developerguide/topicfilters.html) en la *Guía del desarrollador de AWS IoT*.

## Carga de mensajes para eventos de estado de conexión
<a name="iot-lorawan-gateway-payload"></a>

A continuación se muestra la carga de mensajes para el evento de estado de conexión.

```
{
 // General fields
    "eventId": "string", 
    "eventType": "connected|disconnected",
    "WirelessGatewayId": "string",
    "timestamp": "timestamp",
 
 // Event-specific fields
    "LoRaWAN": {
        "GatewayEui": "string"        
    }
}
```

La carga contiene los siguientes atributos:

**eventId**  
Un ID de evento único generado por AWS IoT Core para LoRaWAN (cadena).

**eventType**  
El tipo de evento que se produjo. Puede ser `connected` o `disconnected`.

**wirelessGatewayId**  
El ID de la puerta de enlace de LoRaWAN.

**timestamp**  
La marca de tiempo Unix de cuándo se produjo el evento.

**GatewayEui**  
El identificador único de la puerta de enlace que se encuentra en su etiqueta o documentación.