

# 為無線資源啟用事件
<a name="iot-wireless-control-events"></a>

在預留主題的訂閱者可以接收訊息之前，您必須先啟用事件通知。若要執行此項操作，您可以使用 AWS 管理主控台 或者 AWS IoT Wireless API 或 AWS CLI。

## 事件組態
<a name="iot-wireless-control-events-config"></a>

您可以將事件設定為向屬於特定類型的所有資源或個別無線資源寄送通知。資源類型可以是無線閘道、Sidewalk 合作夥伴帳戶或無線裝置，無線裝置可以是 LoRaWAN 或 Sidewalk 裝置。可為無線裝置啟用之事件類型的相關資訊，請參閱 [LoRaWAN 資源的事件類型](iot-lorawan-events.md#iot-lorawan-event-types) 和 [Sideside 資源的事件類型](iot-sidewalk-events.md#iot-sidewalk-event-types)。

**所有 資源**  
您可以啟用事件，讓屬於特定資源類型之 AWS 帳戶 中的所有資源接收通知。例如，您可以啟用一個事件，針對您使用 AWS IoT Core for LoRaWAN 加入的所有 LoRaWAN 閘道，向您通知其連線狀態的變更。監控這些事件將幫助您收到通知，例如資源機群中的某些 LoRaWAN 閘道中斷連線，或者如果您的 AWS 帳戶 中有數個 Sidewalk 裝置信標遺失。

**個別資源**  
您也可以將個別的 LoRaWAN 和 Sidewalk 資源加入您的事件組態，並為其啟用通知。這會幫助您監控特定類型的個別資源。例如，您可以將所選的 LoRaWAN 和 Sidewalk 裝置加入組態，並接收有關這些資源的加入或裝置註冊狀態事件通知。

## 必要條件
<a name="iot-wireless-control-events-prereq"></a>

您的 LoRaWAN 或 Sidewalk 資源必須具有允許其接收事件通知的適當政策。如需詳細資訊，請參閱[接收無線事件通知的政策](iot-wireless-events.md#iot-wireless-events-policy)。

## 使用 AWS 管理主控台 啟用通知
<a name="iot-wireless-control-events-console"></a>

若要從主控台啟用事件訊息，請前往 AWS IoT 主控台的 [Settings](console.aws.amazon.com/iot/home/settings/) (設定) 索引標籤，然後前往 **LoRaWAN and Sidewalk event notification** (LoRaWAN 和 Sidewalk 事件通知) 區段。

您可以針對屬於特定資源類型之 AWS 帳戶 中的所有資源啟用通知，並進行監控。

**若要啟用所有資源的通知**

1. 在 **LoRaWAN and Sidewalk event notification** (LoRaWan 和 Sidewalk 事件通知) 區段，前往 **All resources** (所有資源) 索引標籤，選擇 **Action** (動作)，然後選擇 **Manage events** (管理事件)。

1. 啟用您想要監控的事件，然後選擇 **Update events** (更新事件)。如果您不想再監控某些事件，請選擇 **Action** (動作) 並選擇 **Manage events** (管理事件)，然後停用這些事件。

您也可以針對屬於特定資源類型之 AWS 帳戶 中的個別資源啟用通知，並進行監控。

**啟用個別資源的通知**

1. 在 **LoRaWAN and Sidewalk event notification** (LoRaWan 和 Sidewalk 事件通知) 區段，選擇 **Action** (動作)，然後選擇 **Add resources** (新增資源)。

1. 選擇您要接收通知的資源和事件：

   1. 選擇是否要監控 **LoRaWAN resources** (LoRaWAN 資源) 或 **Sidewalk resources** (Sidewalk 資源) 的事件。

   1. 取決於資源類型，您可以選擇要為資源啟用的事件。然後，您可以訂閱這些事件並接收通知。如果選擇：
      + **LoRaWAN resources** (LoRaWAN 資源)：您可以對您的 LoRaWAN 裝置啟用 **join** (加入) 事件，或對您的 LoRaWAN 閘道啟用 **connection status** (連線狀態) 事件。
      + Sidewalk 資源：您可以對您的 Sidewalk 合作夥伴帳戶和 Sidewalk 裝置同時啟用 **device registration state** (裝置註冊狀態) 或 **proximity** (接近) 事件。

1. 取決於您選擇的資源類型和事件，選擇要監控的無線裝置或閘道。您可以針對所有資源選擇最多共 250 個資源。

1. 選擇 **Submit** (提交) 加入您的資源。

您新增的資源會與其 MQTT 主題共同顯示在主控台的 **LoRaWAN and Sidewalk event notification** (LoRaWan 和 Sidewalk 事件通知) 區段中所屬資源類型的索引標籤。
+ **LoRaWAN join** (LoRaWAN 加入) 事件和 Sidewalk 裝置的事件會顯示在主控台的 **Wireless devices** (無線裝置) 區段。
+ LoRaWAN 閘道的 **Connection status** (連線狀態) 事件會顯示在 **Wireless gateways** (無線閘道) 區段。
+ Sidewalk 帳戶的 **Device registration state** (裝置註冊狀態) 和 **proximity** (接近) 事件會顯示在 **Sidewalk accounts** (Sidewalk 帳戶) 索引標籤。

**使用 MQTT 用戶端訂閱主題**  
取決於您是為所有資源或個別資源類型啟用事件，您啟用的事件會顯示在主控台，其 MQTT 主題位於 **All resources** (所有資源) 索引標籤或指定資源類型的索引標籤。
+ 如果選擇 MQTT 主題之一，您可以前往 MQTT 用戶端訂閱這些主題並接收訊息。
+ 如果加入多個事件，可以訂閱多個事件主題並接收其通知。若要訂閱多個主題，請選擇您的主題，然後選擇 **Action** (動作)，並選擇 **Subscribe** (訂閱)。

## 使用 AWS CLI 啟用通知
<a name="iot-wireless-control-events-cli"></a>

您可以設定事件並將資源加入組態，方法是使用 AWS IoT Wireless API 或 AWS CLI。

**啟用所有資源的通知**  
您可以針對 AWS 帳戶 中屬於特定資源類型的所有資源啟用通知，並使用 [UpdateEventConfigurationByResourceTypes](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_UpdateResourceEventConfiguration.html) API 或 [cli/latest/reference/iotwireless/update-event-configuration-by-resource-types.html](cli/latest/reference/iotwireless/update-event-configuration-by-resource-types.html) CLI 命令加以監控。例如：

```
aws iotwireless update-event-configuration-by-resource-types \ 
   --cli-input-json input.json
```

**input.json 的內容**

```
{   
   "DeviceRegistrationState": { 
      "Sidewalk": { 
         "AmazonIdEventTopic": "Enabled"
      }
   },
   "ConnectionStatus": { 
      "LoRaWAN": { 
         "WirelessGatewayEventTopic": "Enabled"
      }
   }
}
```

**注意**  
所有引號 (") 都會與反斜線 (\\) 一起逸出。

可以呼叫 [GetEventConfigurationByResourceTypes](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetResourceEventConfiguration.html) API 或使用 [cli/latest/reference/iotwireless/get-event-configuration-by-resource-types.html](cli/latest/reference/iotwireless/get-event-configuration-by-resource-types.html) CLI 命令來取得目前的事件組態。例如：

```
aws iotwireless get-event-configuration-by-resource-types
```

**啟用個別資源的通知**  
若要透過使用 API 或 CLI 來新增個別資源到事件組態，並控制要發佈的事件類型，請呼叫 [UpdateResourceEventConfiguration](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_UpdateResourceEventConfiguration.html) API 或使用 [cli/latest/reference/iotwireless/update-resource-event-configuration.html](cli/latest/reference/iotwireless/update-resource-event-configuration.html) CLI 命令。例如：

```
aws iotwireless update-resource-event-configuration \ 
   --identifer 1ffd32c8-8130-4194-96df-622f072a315f \ 
   --identifier-type WirelessDeviceId \ 
   --cli-input-json input.json
```

**input.json 的內容**

```
{  
   "Join": { 
      "LoRaWAN": { 
         "DevEuiEventTopic": "Disabled"
      },
      "WirelessDeviceIdEventTopic": "Enabled"
   }
}
```

**注意**  
所有引號 (") 都會與反斜線 (\\) 一起逸出。

可以呼叫 [GetResourceEventConfiguration](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetResourceEventConfiguration.html) API 或使用[cli/latest/reference/iotwireless/get-resource-event-configuration.html](cli/latest/reference/iotwireless/get-resource-event-configuration.html) CLI 命令來取得目前的事件組態。例如：

```
aws iotwireless get-resource-event-configuration \ 
    --identifier-type WirelessDeviceId \ 
    --identifier 1ffd32c8-8130-4194-96df-622f072a315f
```

**列出事件組態**  
您也可以使用 AWS IoT Wireless API 或 AWS CLI 列出至少啟用一個事件主題的事件組態。若要列出組態，請使用 [ListEventConfigurations](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_ListEventConfigurations.html) API 操作或使用 [cli/latest/reference/iotwireless/list-event-configurations.html](cli/latest/reference/iotwireless/list-event-configurations.html) CLI 命令。例如：

```
aws iotwireless list-event-configurations --resource-type WirelessDevice
```