

サポート終了通知: 2026 年 10 月 7 日、 AWS はサポートを終了します AWS IoT Greengrass Version 1。2026 年 10 月 7 日以降、 AWS IoT Greengrass V1 リソースにアクセスできなくなります。詳細については、[「 からの移行 AWS IoT Greengrass Version 1](https://docs.aws.amazon.com/greengrass/v2/developerguide/migrate-from-v1.html)」を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Greengrass コネクタの開始方法 (CLI)
<a name="connectors-cli"></a>

この機能は AWS IoT Greengrass Core v1.7 以降で使用できます。

このチュートリアルでは、 AWS CLI を使用してコネクタを操作する方法を示します。

コネクタを使用して、開発ライフサイクルを短縮します。コネクタは、サービス、プロトコル、リソースとのやり取りを簡略する、あらかじめ組み込まれた再利用可能なモジュールです。それらのモジュールは、Greengrass デバイスにビジネスロジックをよりすばやくデプロイするのに役立ちます。詳細については、「[Greengrass コネクタを使用したサービスおよびプロトコルとの統合](connectors.md)」を参照してください。

このチュートリアルでは、[Twilio 通知](twilio-notifications-connector.md)コネクタを設定してデプロイします。コネクタは Twilio メッセージ情報を入力データとして受け取り、Twilio テキストメッセージをトリガーします。データフローを以下の図に示します。

![\[Lambda 関数から Twilio 通知コネクタ、Twilio へのデータフロー。\]](http://docs.aws.amazon.com/ja_jp/greengrass/v1/developerguide/images/connectors/twilio-solution.png)


コネクタを設定したら、Lambda 関数とサブスクリプションを作成します。
+ この関数は、温度センサーからシミュレートされたデータを評価します。その後、Twilio メッセージ情報を条件付きで MQTT トピックに発行します。このトピックは、コネクタによってサブスクライブされます。
+ このサブスクリプションでは、関数はトピックに発行でき、コネクタはトピックからデータを受信できます。

Twilio 通知コネクタには、Twilio API とやり取りするための Twilio 認証トークンが必要です。トークンは、 で作成 AWS Secrets Manager され、グループリソースから参照されるテキストタイプのシークレットです。これにより、 AWS IoT Greengrass は Greengrass コアにシークレットのローカルコピーを作成し、暗号化されてコネクタで使用できるようになります。詳細については、「[シークレットを AWS IoT Greengrass コアにデプロイする](secrets.md)」を参照してください。

このチュートリアルのおおまかな手順は以下のとおりです。

1. [Secrets Manager シークレットを作成する](#connectors-cli-create-secret)

1. [リソースの定義とバージョンを作成する](#connectors-cli-create-resource-definition)

1. [コネクタの定義とバージョンを作成する](#connectors-cli-create-connector-definition)

1. [Lambda 関数デプロイパッケージを作成する](#connectors-cli-create-deployment-package)

1. [Lambda 関数を作成する](#connectors-cli-create-function)

1. [関数の定義とバージョンを作成する](#connectors-cli-create-function-definition)

1. [サブスクリプションの定義とバージョンを作成する](#connectors-cli-create-subscription-definition)

1. [グループバージョンを作成する](#connectors-cli-create-group-version)

1. [デプロイを作成する](#connectors-cli-create-deployment)

1. [ソリューションをテストする](#connectors-cli-test-solution)

このチュートリアルは完了までに約 30 分かかります。

** AWS IoT Greengrass API の使用**

以下のパターンを理解しておくと、Greengrass のグループとグループコンポーネント (グループのコネクタ、関数、リソースなど) を操作するときに役立ちます。
+ 階層の最上部で、コンポーネントには *definition* オブジェクトがあり、definition は *version* オブジェクトのコンテナです。同様に、version は、コネクタ、関数、などのコンポーネントタイプのコンテナです。
+ Greengrass Core にデプロイするときは、特定のグループバージョンをデプロイします。グループバージョンには、各タイプのコンポーネントの 1 つのバージョンを含めることができます。Core は必須ですが、その他はオプションです。
+ バージョンは不変なので、変更するときは新しいバージョンを作成する必要があります。

**ヒント**  
 AWS CLI コマンドの実行時にエラーが発生した場合は、 `--debug`パラメータを追加し、コマンドを再実行してエラーに関する詳細情報を取得します。

 AWS IoT Greengrass API を使用すると、コンポーネントタイプに対して複数の定義を作成できます。例えば、`FunctionDefinitionVersion` を作成するたびに `FunctionDefinition` オブジェクトを作成することも、既存の定義に新しいバージョンを追加することもできます。この柔軟性により、バージョニングシステムをカスタマイズできます。

## 前提条件
<a name="connectors-cli-prerequisites"></a>

このチュートリアルを完了するには、以下が必要です。
+ Greengrass グループと Greengrass コア (v1.9.3 以降)。Greengrass のグループまたは Core を作成する方法については、「[の開始方法 AWS IoT Greengrass](gg-gs.md)」を参照してください。開始方法チュートリアルには、 AWS IoT Greengrass Core ソフトウェアのインストール手順も含まれています。
+  AWS IoT Greengrass コアデバイスにインストールされた Python 3.7。
+  AWS IoT Greengrass は、「シークレット[の要件」で説明されているように、ローカルシークレット](secrets.md#secrets-reqs)をサポートするように設定する必要があります。
**注記**  
この要件には、Secrets Manager シークレットへのアクセス許可が含まれます。デフォルトの Greengrass サービスロールを使用している場合、Greengrass は *greengrass-* で始まる名前の付いたシークレット値にアクセスできます。
+ Twilio アカウントの SID、認証トークン、Twilio 対応の電話番号。Twilio プロジェクトを作成した後、これらの値をプロジェクトダッシュボードで使用できます。
**注記**  
Twilio トライアルアカウントを使用できます。トライアルアカウントを使用している場合は、Twilio 以外の受信者の電話番号を、確認済みの電話番号リストに追加する必要があります。詳細については、「[無料の Twilio トライアルアカウントを使用する方法](https://www.twilio.com/docs/usage/tutorials/how-to-use-your-free-trial-account)」を参照してください。
+ AWS CLI がコンピュータにインストールおよび設定されている。詳細については、「AWS Command Line Interface ユーザーガイド」の「[AWS Command Line Interfaceのインストール](https://docs.aws.amazon.com/cli/latest/userguide/installing.html)」および「[AWS CLIの設定](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html)」を参照してください。

   

  このチュートリアルの例は、Linux やその他の Unix ベースのシステム向けに書かれています。Windows を使用している場合、構文の違いについては、「[AWS Command Line Interfaceのパラメータ値の指定](https://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html)」を参照してください。

  コマンドに JSON 文字列が含まれている場合、このチュートリアルでは、1 行形式の JSON の例を示しています。システムによっては、この形式を使用したほうが、コマンドの編集と実行が容易になる場合があります。

## ステップ 1: Secrets Manager シークレットを作成する
<a name="connectors-cli-create-secret"></a>

このステップでは、 AWS Secrets Manager API を使用して Twilio 認証トークンのシークレットを作成します。

1. まず、シークレットを作成します。
   + *twilio-auth-token* を Twilio 認証トークンに置き換えます。

   ```
   aws secretsmanager create-secret --name greengrass-TwilioAuthToken --secret-string twilio-auth-token
   ```
**注記**  
デフォルトでは、Greengrass サービスロールにより AWS IoT Greengrass 、 は *greengrass-* で始まる名前のシークレットの値を取得できます。詳細については、「[シークレットの要件](secrets.md#secrets-reqs)」を参照してください。

1. 出力からシークレットの `ARN` をコピーします。この情報は、シークレットリソースの作成時と Twilio 通知コネクタの設定時に使用します。

## ステップ 2: リソースの定義とバージョンを作成する
<a name="connectors-cli-create-resource-definition"></a>

このステップでは、 AWS IoT Greengrass API を使用して Secrets Manager シークレットのシークレットリソースを作成します。

1. 初期バージョンを含むリソース定義を作成します。
   + *secret-arn* を、前のステップでコピーしたシークレットの `ARN` に置き換えます。

    

------
#### [ JSON Expanded ]

   ```
   aws greengrass create-resource-definition --name MyGreengrassResources --initial-version '{
       "Resources": [
           {
               "Id": "TwilioAuthToken",
               "Name": "MyTwilioAuthToken",
               "ResourceDataContainer": {
                   "SecretsManagerSecretResourceData": {
                       "ARN": "secret-arn"
                   }
               }
           }
       ]
   }'
   ```

------
#### [ JSON Single-line ]

   ```
   aws greengrass create-resource-definition \
   --name MyGreengrassResources \
   --initial-version '{"Resources": [{"Id": "TwilioAuthToken", "Name": "MyTwilioAuthToken", "ResourceDataContainer": {"SecretsManagerSecretResourceData": {"ARN": "secret-arn"}}}]}'
   ```

------

1. 出力からリソース定義の `LatestVersionArn` をコピーします。この値を使用して、Core にデプロイするグループバージョンに、リソース定義バージョンを追加します。

## ステップ 3: コネクタの定義とバージョンを作成する
<a name="connectors-cli-create-connector-definition"></a>

このステップでは、Twilio 通知コネクタのパラメータを設定します。

1. コネクタの定義と初期バージョンを作成します。
   + *account-sid* を Twilio アカウントの SID に置き換えます。
   + *secret-arn* を Secrets Manager シークレットの `ARN` に置き換えます。コネクタではこの ARN を使用してローカルシークレットの値を取得します。
   + *phone-number* を Twilio 対応の電話番号に置き換えます。Twilio はこの番号を使用してテキストメッセージを開始します。このメッセージは入力メッセージのペイロードで上書きできます。形式は以下のようになります: `+19999999999`

    

------
#### [ JSON Expanded ]

   ```
   aws greengrass create-connector-definition --name MyGreengrassConnectors --initial-version '{
       "Connectors": [
           {
               "Id": "MyTwilioNotificationsConnector",
               "ConnectorArn": "arn:aws:greengrass:region::/connectors/TwilioNotifications/versions/4",
               "Parameters": {
                   "TWILIO_ACCOUNT_SID": "account-sid",
                   "TwilioAuthTokenSecretArn": "secret-arn",
                   "TwilioAuthTokenSecretArn-ResourceId": "TwilioAuthToken",
                   "DefaultFromPhoneNumber": "phone-number"
               }
           }
       ]
   }'
   ```

------
#### [ JSON Single-line ]

   ```
   aws greengrass create-connector-definition \
   --name MyGreengrassConnectors \
   --initial-version '{"Connectors": [{"Id": "MyTwilioNotificationsConnector", "ConnectorArn": "arn:aws:greengrass:region::/connectors/TwilioNotifications/versions/4", "Parameters": {"TWILIO_ACCOUNT_SID": "account-sid", "TwilioAuthTokenSecretArn": "secret-arn", "TwilioAuthTokenSecretArn-ResourceId": "TwilioAuthToken", "DefaultFromPhoneNumber": "phone-number"}}]}'
   ```

------
**注記**  
`TwilioAuthToken` は、前のステップでシークレットリソースの作成に使用した ID です。

1. 出力からコネクタ定義の `LatestVersionArn` をコピーします。この値を使用して、Core にデプロイするグループバージョンに、コネクタ定義バージョンを追加します。

## ステップ 4: Lambda 関数デプロイパッケージを作成する
<a name="connectors-cli-create-deployment-package"></a>

Lambda 関数を作成するには、関数のコードと依存関係を含む Lambda 関数デプロイパッケージを最初に作成する必要があります。Greengrass Lambda 関数には、コア環境での MQTT メッセージとの通信やローカルシークレットへのアクセスなどのタスクに使用する、[AWS IoT Greengrass Core SDK](lambda-functions.md#lambda-sdks-core) が必要です。このチュートリアルでは Python 関数を作成するため、デプロイパッケージには Python 版の SDK を使用します。

1. <a name="download-ggc-sdk"></a> [AWS IoT Greengrass Core SDK](what-is-gg.md#gg-core-sdk-download) ダウンロードページから、 AWS IoT Greengrass Core SDK for Python をコンピュータにダウンロードします。

1. <a name="unzip-ggc-sdk"></a>ダウンロードしたパッケージを解凍し、SDK を取得します。SDK は `greengrasssdk` フォルダです。

1. 以下の Python コード関数を `temp_monitor.py` というローカルファイルに保存します。

   ```
   import greengrasssdk
   import json
   import random
   
   client = greengrasssdk.client('iot-data')
   
   # publish to the Twilio Notifications connector through the twilio/txt topic
   def function_handler(event, context):
       temp = event['temperature']
       
       # check the temperature
       # if greater than 30C, send a notification
       if temp > 30:
           data = build_request(event)
           client.publish(topic='twilio/txt', payload=json.dumps(data))
           print('published:' + str(data))
           
       print('temperature:' + str(temp))
       return
   
   # build the Twilio request from the input data
   def build_request(event):
       to_name = event['to_name']
       to_number = event['to_number']
       temp_report = 'temperature:' + str(event['temperature'])
   
       return {
           "request": {
               "recipient": {
                   "name": to_name,
                   "phone_number": to_number,
                   "message": temp_report
               }
           },
           "id": "request_" + str(random.randint(1,101))
       }
   ```

1. 以下の項目を `temp_monitor_python.zip` という名前のファイルに圧縮します。ZIP ファイルを作成するときは、コードおよび依存関係のみを含め、フォルダは含めません。
   + **temp\$1monitor.py**。アプリケーションロジック。
   + **greengrasssdk**。MQTT メッセージを発行する Python Greengrass Lambda 関数で必須のライブラリ。

   これが Lambda 関数デプロイパッケージです。

## ステップ 5: Lambda 関数を作成する
<a name="connectors-cli-create-function"></a>

ここでは、デプロイパッケージを使用する Lambda 関数を作成します。

1. <a name="cli-create-empty-lambda-role"></a>関数の作成時に ARN を渡せるように、IAM ロールを作成します。

------
#### [ JSON Expanded ]

   ```
   aws iam create-role --role-name Lambda_empty --assume-role-policy '{
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": "lambda.amazonaws.com"
               },
              "Action": "sts:AssumeRole"
           }
       ]
   }'
   ```

------
#### [ JSON Single-line ]

   ```
   aws iam create-role --role-name Lambda_empty --assume-role-policy '{"Version": "2012-10-17",		 	 	  "Statement": [{"Effect": "Allow", "Principal": {"Service": "lambda.amazonaws.com"},"Action": "sts:AssumeRole"}]}'
   ```

------
**注記**  
AWS IoT Greengrass Greengrass Lambda 関数のアクセス許可は Greengrass グループロールで指定されているため、 はこのロールを使用しません。このチュートリアルでは、空のロールを作成します。

1. <a name="cli-copy-lambda-role-arn"></a>出力から `Arn` をコピーします。

1.  AWS Lambda API を使用して TempMonitor 関数を作成します。以下のコマンドでは、zip ファイルが現在のディレクトリにあるとします。
   + *role-arn* を、コピーした `Arn` に置き換えます。

   ```
   aws lambda create-function \
   --function-name TempMonitor \
   --zip-file fileb://temp_monitor_python.zip \
   --role role-arn \
   --handler temp_monitor.function_handler \
   --runtime python3.7
   ```

1. 関数のバージョンを発行します。

   ```
   aws lambda publish-version --function-name TempMonitor --description 'First version'
   ```

1. 発行されるバージョンのエイリアスを作成します。

   Greengrass グループは、Lambda 関数をエイリアス別 (推奨) またはバージョン別に参照できます。エイリアスを使用すると、関数コードを更新する時にサブスクリプションテーブルやグループ定義を変更する必要がないため、コード更新を簡単に管理できます。その代わりに、新しい関数バージョンにエイリアスを指定するだけで済みます。
**注記**  
AWS IoT Greengrass は、**\$1LATEST** バージョンの Lambda エイリアスをサポートしていません。

   ```
   aws lambda create-alias --function-name TempMonitor --name GG_TempMonitor --function-version 1
   ```

1. 出力から `AliasArn` をコピーします。この値は、 の 関数を設定するとき AWS IoT Greengrass と、サブスクリプションを作成するときに使用します。

これで、 関数を設定する準備が整いました AWS IoT Greengrass。

## ステップ 6: 関数の定義とバージョンを作成する
<a name="connectors-cli-create-function-definition"></a>

 AWS IoT Greengrass コアで Lambda 関数を使用するには、エイリアスで Lambda 関数を参照し、グループレベルの設定を定義する関数定義バージョンを作成します。詳細については、「[グループ固有の設定による Greengrass Lambda 関数の実行の制御](lambda-group-config.md)」を参照してください。

1. 初期バージョンを含む関数定義を作成します。
   + *alias-arn* を、エイリアスの作成時にコピーした `AliasArn` に置き換えます。

    

------
#### [ JSON Expanded ]

   ```
   aws greengrass create-function-definition --name MyGreengrassFunctions --initial-version '{
       "Functions": [
           {
               "Id": "TempMonitorFunction",
               "FunctionArn": "alias-arn",
               "FunctionConfiguration": {
                   "Executable": "temp_monitor.function_handler",
                   "MemorySize": 16000,
                   "Timeout": 5
               }
           }
       ]
   }'
   ```

------
#### [ JSON Single-line ]

   ```
   aws greengrass create-function-definition \
   --name MyGreengrassFunctions \
   --initial-version '{"Functions": [{"Id": "TempMonitorFunction", "FunctionArn": "alias-arn", "FunctionConfiguration": {"Executable": "temp_monitor.function_handler", "MemorySize": 16000,"Timeout": 5}}]}'
   ```

------

1. 出力から `LatestVersionArn` をコピーします。この値を使用して、Core にデプロイするグループバージョンに、関数定義バージョンを追加します。

1. 出力から `Id` をコピーします。この値は、後でその関数を更新するときに使用します。

## ステップ 7: サブスクリプションの定義とバージョンを作成する
<a name="connectors-cli-create-subscription-definition"></a>

<a name="connectors-how-to-add-subscriptions-p1"></a>このステップでは、Lambda 関数にコネクタへの入力データの送信を許可するサブスクリプションを追加します。コネクタは、サブスクライブする MQTT トピックを定義しているため、このサブスクリプションはそのいずれかのトピックを使用します。これは、サンプル関数が発行するのと同じトピックです。

<a name="connectors-how-to-add-subscriptions-p2"></a>このチュートリアルでは、関数が から AWS IoT シミュレートされた温度測定値を受信し、 がコネクタからステータス情報 AWS IoT を受信できるようにするサブスクリプションも作成します。

1. サブスクリプションを含む初期バージョンでサブスクリプション定義を作成します。
   + *alias-arn* を、関数のエイリアスの作成時にコピーした `AliasArn` に置き換えます。この ARN を両方のサブスクリプションに使用します。

    

------
#### [ JSON Expanded ]

   ```
   aws greengrass create-subscription-definition --initial-version '{
       "Subscriptions": [
           {
               "Id": "TriggerNotification",
               "Source": "alias-arn",
               "Subject": "twilio/txt",
               "Target": "arn:aws:greengrass:region::/connectors/TwilioNotifications/versions/4"
           },        
           {
               "Id": "TemperatureInput",
               "Source": "cloud",
               "Subject": "temperature/input",
               "Target": "alias-arn"
           },
           {
               "Id": "OutputStatus",
               "Source": "arn:aws:greengrass:region::/connectors/TwilioNotifications/versions/4",
               "Subject": "twilio/message/status",
               "Target": "cloud"
           }
       ]
   }'
   ```

------
#### [ JSON Single-line ]

   ```
   aws greengrass create-subscription-definition \
   --initial-version '{"Subscriptions": [{"Id": "TriggerNotification", "Source": "alias-arn", "Subject": "twilio/txt", "Target": "arn:aws:greengrass:region::/connectors/TwilioNotifications/versions/4"},{"Id": "TemperatureInput", "Source": "cloud", "Subject": "temperature/input", "Target": "alias-arn"},{"Id": "OutputStatus", "Source": "arn:aws:greengrass:region::/connectors/TwilioNotifications/versions/4", "Subject": "twilio/message/status", "Target": "cloud"}]}'
   ```

------

1. 出力から `LatestVersionArn` をコピーします。この値を使用して、Core にデプロイするグループバージョンに、サブスクリプション定義バージョンを追加します。

## ステップ 8: グループバージョンを作成する
<a name="connectors-cli-create-group-version"></a>

デプロイするすべての項目を含むグループバージョンを作成する準備が整いました。ここでは、各コンポーネントタイプのターゲットバージョンを参照するグループバージョンを作成します。

まず、Core 定義バージョンのグループ ID と ARN を取得します。これらの値は、グループバージョンを作成するために必要です。

1. グループ ID と最新のグループバージョンを取得します。

   1. <a name="get-group-id-latestversion"></a>ターゲットの Greengrass グループとグループバージョンの ID を取得します。この手順では、これが最新のグループおよびグループのバージョンであると仮定します。次のクエリは、最後に作成されたグループを返します。

      ```
      aws greengrass list-groups --query "reverse(sort_by(Groups, &CreationTimestamp))[0]"
      ```

      または、名前でクエリを実行することもできます。グループ名は一意である必要はないため、複数のグループが返されることがあります。

      ```
      aws greengrass list-groups --query "Groups[?Name=='MyGroup']"
      ```
**注記**  
<a name="find-group-ids-console"></a>これらの値は AWS IoT コンソールでも確認できます。グループ ID は、グループの [**設定**] ページに表示されます。グループバージョン ID は、グループの **[Deployments]** (デプロイ) タブに表示されます。

   1. <a name="copy-target-group-id"></a>出力からターゲットグループの `Id` をコピーします。この情報は、コア定義バージョンを取得するときとグループをデプロイするときに使用します。

   1. <a name="copy-latest-group-version-id"></a>出力から `LatestVersion` をコピーします。これは、グループに追加された最後のバージョンの ID です。この情報は、コア定義バージョンを取得するときに使用します。

1. コア定義バージョンの ARN を取得します。

   1. グループバージョンを取得します。このステップでは、最新のグループバージョンに Core 定義バージョンが含まれているものとします。
      + *group-id* は、コピーしたグループの `Id` に置き換えます。
      + *group-version-id* は、コピーしたグループの `LatestVersion` に置き換えます。

      ```
      aws greengrass get-group-version \
      --group-id group-id \
      --group-version-id group-version-id
      ```

   1. 出力から `CoreDefinitionVersionArn` をコピーします。

1. グループバージョンを作成します。
   + *group-id* は、コピーしたグループの `Id` に置き換えます。
   + *core-definition-version-arn* は、コピーしたコア定義バージョンの `CoreDefinitionVersionArn` に置き換えます。
   + *resource-definition-version-arn* を、リソース定義のコピー済み `LatestVersionArn` に置き換えます。
   + *connector-definition-version-arn* を、コネクタ定義のコピー済み `LatestVersionArn` に置き換えます。
   + *function-definition-version-arn* を、関数定義のコピー済み `LatestVersionArn` に置き換えます。
   + *subscription-definition-version-arn* を、サブスクリプション定義のコピー済み `LatestVersionArn` に置き換えます。

   ```
   aws greengrass create-group-version \
   --group-id group-id \
   --core-definition-version-arn core-definition-version-arn \
   --resource-definition-version-arn resource-definition-version-arn \
   --connector-definition-version-arn connector-definition-version-arn \
   --function-definition-version-arn function-definition-version-arn \
   --subscription-definition-version-arn subscription-definition-version-arn
   ```

1. 出力から `Version` の値をコピーします。これはグループバージョンの ID です。この値を使用して、グループバージョンをデプロイします。

## ステップ 9: デプロイを作成する
<a name="connectors-cli-create-deployment"></a>

Core デバイスにグループをデプロイします。

1. <a name="check-gg-daemon-is-running"></a>コアデバイスターミナルで、 AWS IoT Greengrass デーモンが実行されていることを確認します。

   1. デーモンが実行中かどうかを確認するには、以下を実行します。

      ```
      ps aux | grep -E 'greengrass.*daemon'
      ```

      出力に `root` で実行中の `/greengrass/ggc/packages/1.11.6/bin/daemon` のエントリが含まれていれば、デーモンは実行されています。

   1. 次のようにしてデーモンを開始します。

      ```
      cd /greengrass/ggc/core/
      sudo ./greengrassd start
      ```

1. <a name="create-deployment"></a>デプロイを作成します。
   + *group-id* は、コピーしたグループの `Id` に置き換えます。
   + *group-version-id* は、コピーした新しいグループバージョンの `Version` に置き換えます。

   ```
   aws greengrass create-deployment \
   --deployment-type NewDeployment \
   --group-id group-id \
   --group-version-id group-version-id
   ```

1. <a name="copy-deployment-id"></a>出力から `DeploymentId` をコピーします。

1. <a name="get-deployment-status"></a>デプロイのステータスを取得します。
   + *group-id* は、コピーしたグループの `Id` に置き換えます。
   + *deployment-id* は、コピーしたデプロイの `DeploymentId` に置き換えます。

   ```
   aws greengrass get-deployment-status \
   --group-id group-id \
   --deployment-id deployment-id
   ```

   ステータスが `Success` の場合、デプロイは成功しています。トラブルシューティングのヘルプについては、「[トラブルシューティング AWS IoT Greengrass](gg-troubleshooting.md)」を参照してください。

## ソリューションをテストする
<a name="connectors-cli-test-solution"></a>

1. <a name="choose-test-page"></a> AWS IoT コンソールのホームページで、**テスト**を選択します。

1. **[Subscribe to topic]** (トピックへのサブスクライブ) で、以下の値を使用し、**[Subscribe]** (サブスクリプション) を選択します。Twilio 通知コネクタはこのトピックにステータス情報を発行します。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/greengrass/v1/developerguide/connectors-cli.html)

1. **[Publish to topic]** (トピックに発行) で、以下の値を使用し、**[Publish]** (発行) を選択して関数を呼び出します。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/greengrass/v1/developerguide/connectors-cli.html)

   正しく実行できていれば、受信者にテキストメッセージが届き、コンソールの[出力データ](twilio-notifications-connector.md#twilio-notifications-connector-data-output)に `success` のステータスが表示されます。

   ここでは、入力メッセージの `temperature` を **29** に変更して発行します。これは 30 未満であるため、TempMonitor 関数は Twilio メッセージをトリガーしません。

## 関連情報
<a name="connectors-cli-see-also"></a>
+ [Greengrass コネクタを使用したサービスおよびプロトコルとの統合](connectors.md)
+ [AWSが提供する Greengrass コネクタ](connectors-list.md)
+ [Greengrass コネクタの開始方法 (コンソール)](connectors-console.md)
+ [AWS Secrets Manager コマンド](https://docs.aws.amazon.com/cli/latest/reference/secretsmanager)*AWS CLI リファレンスの コマンド*
+ <a name="see-also-iam-cli"></a>コマンドリファレンスの [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/cli/latest/reference/iam) コマンド *AWS CLI *
+ <a name="see-also-lambda-cli"></a>[AWS Lambda コマンド](https://docs.aws.amazon.com/cli/latest/reference/lambda)*AWS CLI リファレンスの コマンド*
+ <a name="see-also-gg-cli"></a>[AWS IoT Greengrass コマンド](https://docs.aws.amazon.com/cli/latest/reference/greengrass/index.html)*AWS CLI リファレンスの コマンド*