

# Sidewalk デバイスの一括プロビジョニング
<a name="sidewalk-bulk-provision-how"></a>

このセクションでは、AWS IoT コンソールと AWS CLI を使用して Sidewalk デバイスを AWS IoT Core for Amazon Sidewalk に一括でプロビジョニングする方法について説明します。

## Sidewalk デバイスの一括プロビジョニング (コンソール)
<a name="provision-bulk-console"></a>

AWS IoT コンソールを使用して Sidewalk デバイスを追加するには、[デバイスハブの Sidewalk タブ](https://console.aws.amazon.com/iot/home#/wireless/devices?tab=sidewalk)に移動し、**[デバイスの一括プロビジョニング]** を選択して、次の手順を実行します。

![](http://docs.aws.amazon.com/ja_jp/iot-wireless/latest/developerguide/images/sidewalk-bulk-provision.PNG)


1. 

**インポート方法を選択する**

   AWS IoT Core for Amazon Sidewalk にオンボードするデバイスを一括でインポートする方法を指定します。
   + SMSN を使用して個々のデバイスをプロビジョニングするには、**[ファクトリサポートされているデバイスを個別にプロビジョニング]** を選択します。
   + デバイスとその SMS のリストを含む CSV ファイルを提供してデバイスを一括でプロビジョニングするには、**[S3 バケットを使用]** を選択します。

1. 

**オンボードするデバイスを指定する**

   デバイスをオンボードするために選択した方法に応じて、デバイス情報とシリアル番号を追加します。

   1. **[ファクトリサポートされているデバイスを個別にプロビジョニング]** を選択した場合は、次の情報を指定します。

      1. オンボードする各デバイスの**[名前]**。名前は AWS アカウント および AWS リージョン で一意である必要があります。

      1. **[SMSN を入力]** フィールドに、Sidewalk の製造シリアル番号 (SMSN) を入力します。

      1. デバイスからのメッセージを他の AWS のサービス にルーティングするための IoT ルールを説明する**[送信先]**。

   1. **[S3 バケットを使用]** を選択した場合:

      1. S3 URL 情報で構成される **[S3 バケットの送信先]** 情報を入力します。CSV ファイルを提供するには、**[S3 を参照]** を選択し、使用する CSV ファイルを選択します。

         AWS IoT Core for Amazon Sidewalk は、S3 バケット内にある CSV ファイルへのパスである S3 URL を自動的に入力します。パスの形式は `s3://{{bucket_name}}/{{file_name}}` です。[Amazon Simple Storage Service](https://console.aws.amazon.com/s3/) コンソールでファイルを表示するには、**[View]** (表示) を選択します。

      1. AWS IoT Core for Amazon Sidewalk がユーザーに代わって S3 バケット内の CSV ファイルにアクセスできるようにする、**[S3 プロビジョニングロール]** を提供します。新しいサービスロールを作成するか、既存のサービスロールを選択することができます。

         新しいロールを作成するには、**[ロール名]** を指定するか、空白のままにするとランダムな名前が自動的に生成されます。

      1. デバイスから他の AWS のサービス にメッセージをルーティングするための IoT ルールを説明した **[送信先]** を指定します。

1. インポートタスクを開始する

   任意のタグを名前と値のペアとして指定し、**[送信]** を選択してワイヤレスデバイスのインポートタスクを開始します。

## Sidewalk デバイスの一括プロビジョニング (CLI)
<a name="provision-bulk-api"></a>

Sidewalk デバイスを AWS IoT Core for Amazon Sidewalk のアカウントにオンボードするには、デバイスを個別に追加するか、S3 バケットに含まれる CSV ファイルを指定するかに応じて、次の API オペレーションのいずれかを使用します。
+ 

**S3 CSV ファイルを使用してデバイスを一括アップロードする**  
S3 バケットに CSV ファイルを指定してデバイスを一括アップロードするには、[https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_StartWirelessDeviceImportTask.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_StartWirelessDeviceImportTask.html) API オペレーションまたは [https://docs.aws.amazon.com/cli/latest/reference/iotwireless/start-wireless-device-import-task.html](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/start-wireless-device-import-task.html) AWS CLI コマンドを使用します。タスク作成時に、Amazon S3 バケット内の CSV ファイルへのパスと、AWS IoT Core for Amazon Sidewalk に CSV ファイルにアクセスするアクセス許可を付与する IAM ロールを指定します。

  タスクの実行が開始されると、AWS IoT Core for Amazon Sidewalk は CSV ファイルの読み取りを開始し、ファイル内のシリアル番号 (SMSN) と Amazon Sidewalk から受け取った制御ログの対応する情報を比較します。シリアル番号が一致すると、これらのシリアル番号に対応するワイヤレスデバイスレコードの作成が開始されます。

  次のコマンドは、インポートタスクの作成例を示しています。

  ```
  aws iotwireless start-wireless-device-import-task \ 
      --cli-input-json "{{file://task.json}}"
  ```

  以下は、`task.json` ファイルの内容を示しています。

  **task.json の内容**

  ```
  {
      "DestinationName": {{"Sidewalk_Destination"}},
      "Sidewalk": {
          "DeviceCreationFile": "s3://{{import_task_bucket}}/{{import_file1}}", 
          "Role": "arn:aws:iam::{{123456789012}}:role/{{service-role}}/{{ACF1zBEI}}"     
      }
  }
  ```

  このコマンドを実行すると、インポートタスクの ID と ARN が返されます。

  ```
  {    
      "Arn": "arn:aws:iotwireless:{{us-east-1}}:{{123456789012}}:ImportTask/{{a1b234c5-67ef-21a2-a1b2-3cd4e5f6789a}}"
      "Id": {{"a1b234c5-67ef-21a2-a1b2-3cd4e5f6789a"}}
  }
  ```
+ 

**SMSN を使用してデバイスを個別にプロビジョニングする**  
SMSN を使用してデバイスを個別にプロビジョニングするには、[https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_StartSingleWirelessDeviceImportTask.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_StartSingleWirelessDeviceImportTask.html)API オペレーションまたは [https://docs.aws.amazon.com/cli/latest/reference/iotwireless/start-single-wireless-device-import-task.html](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/start-single-wireless-device-import-task.html) AWS CLI コマンドを使用します。タスクの作成時に、Sidewalk の送信先と、オンボードするデバイスのシリアル番号を指定します。

  シリアル番号が Amazon Sidewalk から受信した制御ログの対応する情報と一致すると、タスクが実行され、ワイヤレスデバイスレコードが作成されます。

  次のコマンドは、インポートタスクの作成例を示しています。

  ```
  aws iotwireless start-single-wireless-device-import-task \ 
      --destination-name {{sidewalk_destination}} \    
      --sidewalk '{"SidewalkManufacturingSn": {{"82B83C8B35E856F43CE9C3D59B418CC96B996071016DB1C3BE5901F0F3071A4A"}}}'
  ```

  このコマンドを実行すると、インポートタスクの ID と ARN が返されます。

  ```
  {
      "Arn": "arn:aws:iotwireless:{{us-east-1}}:{{123456789012}}:ImportTask/{{e2a5995e-743b-41f2-a1e4-3ca6a5c5249f}}"    
      "Id": {{"e2a5995e-743b-41f2-a1e4-3ca6a5c5249f"}}
  }
  ```

## インポートタスクの更新または削除
<a name="provision-bulk-modify"></a>

インポートタスクに他のデバイスを追加する場合は、タスクを更新できます。タスクが不要になった場合や失敗した場合は、タスクを削除することもできます。タスクを更新または削除するタイミングについては、「[Sidewalk 一括プロビジョニングの使用方法](sidewalk-provision-bulk-import.md#provision-bulk-use)」を参照してください。

**警告**  
削除の操作は永続的で、元には戻せません。既に正常に完了したインポートタスクを削除しても、そのタスクを使用してすでにオンボードされたエンドデバイスは削除されません。

インポートタスクを更新または削除するには:
+ 

**AWS IoT コンソールを使用する場合**  
次の手順では、AWS IoT コンソールを使用してインポートタスクを更新または削除する方法について説明します。

**インポートタスクを更新するには:**

  1. AWS IoT コンソールの [Sidewalk デバイスハブ](https://console.aws.amazon.com/iot/home#/wireless/devices?tab=sidewalk)に移動します。

  1. 更新するインポートタスクを選択し、次に **[編集]**を選択します。

  1. タスクに追加するデバイスのシリアル番号を含む別の S3 ファイルを指定し、**[送信]** を選択します。

**インポートタスクを削除するには:**

  1. AWS IoT コンソールの [Sidewalk デバイスハブ](https://console.aws.amazon.com/iot/home#/wireless/devices?tab=sidewalk)に移動します。

  1. 削除するタスクを選択し、**[削除]** を選択します。
+ 

**AWS IoT Wireless API または AWS CLI の使用**  
次の AWS IoT Wireless API オペレーションまたは CLI コマンドを使用して、インポートタスクを更新または削除します。
  + 

**[https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_UpdateWirelessDeviceImportTask.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_UpdateWirelessDeviceImportTask.html) API または [https://docs.aws.amazon.com/cli/latest/reference/update-wireless-device-import-task.html](https://docs.aws.amazon.com/cli/latest/reference/update-wireless-device-import-task.html) CLI**  
この API オペレーションは、Amazon S3 CSV ファイルの内容を既存のインポートタスクに追加します。追加できるのは、以前にタスクに含まれていなかったデバイスのシリアル番号のみです。
  + 

**[https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_DeleteWirelessDeviceImportTask.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_DeleteWirelessDeviceImportTask.html) API または [https://docs.aws.amazon.com/cli/latest/reference/delete-wireless-device-import-task.html](https://docs.aws.amazon.com/cli/latest/reference/delete-wireless-device-import-task.html) CLI**  
この API オペレーションは、インポートタスク ID を使用して削除対象としてマークされたインポートタスクを削除します。