

Pemberitahuan akhir dukungan: Pada 7 Oktober 2026, AWS akan menghentikan dukungan untuk. AWS IoT Greengrass Version 1 Setelah 7 Oktober 2026, Anda tidak akan lagi dapat mengakses sumber daya. AWS IoT Greengrass V1 Untuk informasi lebih lanjut, silakan kunjungi [Migrasi dari AWS IoT Greengrass Version 1](https://docs.aws.amazon.com/greengrass/v2/developerguide/migrate-from-v1.html).

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Memulai dengan konektor Greengrass (CLI)
<a name="connectors-cli"></a>

Fitur ini tersedia untuk AWS IoT Greengrass Core v1.7 dan yang lebih baru.

Tutorial ini menunjukkan cara menggunakan AWS CLI untuk bekerja dengan konektor.

Gunakan konektor untuk mempercepat siklus hidup pengembangan Anda. Konektor prebuilt, modul dapat digunakan kembali yang dapat membuatnya lebih mudah untuk berinteraksi dengan layanan, protokol, dan sumber daya. Mereka dapat membantu Anda men-deploy logika bisnis ke perangkat Greengrass lebih cepat. Untuk informasi lebih lanjut, lihat [Integrasikan dengan layanan dan protokol menggunakan konektor Greengrass](connectors.md).

Dalam tutorial ini, Anda mengkonfigurasi dan men-deploy [ konektor](twilio-notifications-connector.md) Notifikasi Twilio. Konektor menerima informasi pesan Twilio sebagai input data, dan kemudian memicu pesan teks Twilio. Aliran data ditunjukkan pada diagram berikut.

![\[Aliran data dari fungsi Lambda untuk konektor Notifikasi Twilio ke Twilio.\]](http://docs.aws.amazon.com/id_id/greengrass/v1/developerguide/images/connectors/twilio-solution.png)


Setelah Anda mengkonfigurasi konektor, Anda membuat fungsi Lambda dan langganan.
+ Fungsi mengevaluasi data simulasi dari sensor temperatur. Ini kondisional menerbitkan informasi pesan Twilio untuk topik MQTT. Ini adalah topik yang konektor berlangganan.
+ Langganan membolehkan fungsi untuk menerbitkan topik dan konektor untuk menerima data dari topik tersebut.

Konektor Notifikasi Twilio memerlukan token Twilio auth untuk berinteraksi dengan Twilio API. Token adalah rahasia jenis teks yang dibuat AWS Secrets Manager dan direferensikan dari sumber daya grup. Hal ini memungkinkan AWS IoT Greengrass untuk membuat salinan lokal rahasia pada inti Greengrass, di mana ia dienkripsi dan tersedia untuk konektor. Untuk informasi selengkapnya, lihat [Menyebarkan rahasia ke inti AWS IoT Greengrass](secrets.md).

Tutorial berisi langkah-langkah tingkat tinggi berikut:

1. [Buat rahasia Secrets Manager](#connectors-cli-create-secret)

1. [Buat definisi sumber daya dan versi](#connectors-cli-create-resource-definition)

1. [Buat definisi konektor dan versi](#connectors-cli-create-connector-definition)

1. [Buat fungsi Lambda paket deployment](#connectors-cli-create-deployment-package)

1. [Buat fungsi Lambda](#connectors-cli-create-function)

1. [Buat definisi fungsi dan versi](#connectors-cli-create-function-definition)

1. [Buat definisi langganan dan versi](#connectors-cli-create-subscription-definition)

1. [Buat versi grup](#connectors-cli-create-group-version)

1. [Buat deployment](#connectors-cli-create-deployment)

1. [Uji solusi](#connectors-cli-test-solution)

Tutorial harus memerlukan waktu sekitar 30 menit untuk menyelesaikannya.

**Menggunakan AWS IoT Greengrass API**

Hal itu sangat membantu untuk memahami pola berikut ketika Anda bekerja dengan grup Greengrass dan komponen grup (misalnya, konektor, fungsi, dan sumber daya dalam grup).
+ Di bagian atas hirarki, komponen memiliki *definisi* objek yang merupakan wadah untuk *versi* objek. Sebaliknya, versi adalah kotak untuk penyambung, fungsi, atau jenis komponen lain.
+ Ketika Anda menerapkan ke Greengrass core, Anda menerapkan versi grup tertentu. Versi grup dapat berisi satu versi dari setiap jenis komponen. Core diperlukan, tetapi yang lain disertakan sesuai kebutuhan.
+ Versi tidak berubah, jadi Anda harus membuat versi baru ketika Anda ingin membuat perubahan. 

**Tip**  
Jika Anda menerima kesalahan saat menjalankan AWS CLI perintah, tambahkan `--debug` parameter dan kemudian jalankan kembali perintah untuk mendapatkan informasi lebih lanjut tentang kesalahan tersebut.

 AWS IoT Greengrass API memungkinkan Anda membuat beberapa definisi untuk tipe komponen. Sebagai contoh, Anda dapat membuat `FunctionDefinition` objek setiap kali Anda membuat `FunctionDefinitionVersion`, atau Anda dapat tambahkan versi baru ke definisi yang ada. Fleksibilitas ini membolehkan Anda untuk menyesuaikan sistem manajemen versi Anda.

## Prasyarat
<a name="connectors-cli-prerequisites"></a>

Untuk menyelesaikan tutorial ini, Anda memerlukan:
+ Sebuah grup Greengrass dan Greengrass core (v1.9.3 atau yang lebih baru). Untuk mempelajari cara membuat grup Greengrass dan core, lihat [Memulai dengan AWS IoT Greengrass](gg-gs.md). Tutorial Memulai Dengan juga mencakup langkah-langkah untuk menginstal perangkat lunak AWS IoT Greengrass Core.
+ Python 3.7 diinstal pada perangkat inti. AWS IoT Greengrass 
+  AWS IoT Greengrass harus dikonfigurasi untuk mendukung rahasia lokal, seperti yang dijelaskan dalam [Persyaratan Rahasia](secrets.md#secrets-reqs).
**catatan**  
Persyaratan ini mencakup akses ke rahasia Secrets Manager Anda. Jika Anda menggunakan peran layanan default Greengrass, Greengrass memiliki izin untuk mendapatkan nilai-nilai rahasia dengan nama yang dimulai dengan *Greengrass-*.
+ Akun Twilio SID, token auth, dan nomor telepon berkemampuan Twilio. Setelah Anda membuat proyek Twilio, nilai-nilai ini tersedia dalam dasbor proyek.
**catatan**  
Anda dapat menggunakan akun percobaan Twilio. Jika menggunakan akun uji coba, Anda harus menambahkan nomor telepon penerima selain Twilio ke daftar nomor telepon terverifikasi. Untuk informasi lebih lanjut, lihat [ Cara Bekerja dengan Akun Trial Twilio Gratis](https://www.twilio.com/docs/usage/tutorials/how-to-use-your-free-trial-account).
+ AWS CLI diinstal dan dikonfigurasi di komputer Anda. Untuk informasi lebih lanjut, lihat [Menginstal AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/installing.html) dan [Mengonfigurasi AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html) di *AWS Command Line Interface Panduan Pengguna*.

   

  Contoh dalam tutorial ini ditulis untuk Linux dan sistem berbasis Unix lainnya. Jika Anda menggunakan Windows, lihat [Menentukan nilai parameter untuk AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html) untuk memelajari perbedaan sintaks.

  Jika perintah berisi string JSON, tutorial memberikan contoh yang memiliki JSON pada satu baris. Pada beberapa sistem, mungkin lebih mudah untuk mengedit dan menjalankan perintah menggunakan format ini.

## Langkah 1: Buat rahasia Secrets Manager
<a name="connectors-cli-create-secret"></a>

Pada langkah ini, Anda menggunakan AWS Secrets Manager API untuk membuat rahasia token autentikasi Twilio Anda.

1. Pertama, buat rahasia.
   + Ganti *twilio-auth-token* dengan token autentikasi Twilio Anda.

   ```
   aws secretsmanager create-secret --name greengrass-TwilioAuthToken --secret-string twilio-auth-token
   ```
**catatan**  
*Secara default, peran layanan Greengrass AWS IoT Greengrass memungkinkan untuk mendapatkan nilai rahasia dengan nama yang dimulai dengan greengrass-.* Untuk informasi lebih lanjut, lihat [rahasia persyaratan](secrets.md#secrets-reqs).

1. Salin `ARN` rahasia dari output. Anda menggunakan ini untuk membuat sumber daya rahasia dan mengkonfigurasi konektor Notifikasi Twilio.

## Langkah 2: Buat definisi sumber daya dan versi
<a name="connectors-cli-create-resource-definition"></a>

Pada langkah ini, Anda menggunakan AWS IoT Greengrass API untuk membuat sumber daya rahasia untuk rahasia Secrets Manager Anda.

1. Buat definisi sumber daya yang mencakup versi awal.
   + Ganti *secret-arn* dengan rahasia yang Anda salin di langkah sebelumnya. `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. Salin `LatestVersionArn` definisi sumber daya dari output. Anda menggunakan nilai ini untuk menambahkan versi definisi sumber daya untuk versi grup yang Anda terapkan ke core.

## Langkah 3: Buat definisi konektor dan versi
<a name="connectors-cli-create-connector-definition"></a>

Dalam langkah ini, Anda mengkonfigurasi parameter untuk konektor Pemberitahuan Twilio.

1. Buat definisi konektor dengan versi awal.
   + Ganti *account-sid* dengan SID akun Twilio Anda.
   + Ganti *secret-arn* dengan `ARN` rahasia Secrets Manager Anda. Konektor menggunakan ini untuk mendapatkan nilai dari rahasia lokal.
   + Ganti *phone-number* dengan nomor telepon berkemampuan Twilio Anda. Twilio menggunakan ini untuk memulai pesan teks. Hal ini dapat diganti dalam muatan pesan masukan. Gunakan format berikut: `+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"}}]}'
   ```

------
**catatan**  
`TwilioAuthToken` adalah ID yang Anda gunakan dalam langkah sebelumnya untuk membuat sumber daya rahasia.

1. Salin `LatestVersionArn` definisi konektor dari output. Anda menggunakan nilai ini untuk menambahkan versi definisi konektor ke versi grup yang Anda terapkan ke core.

## Langkah 4: Buat fungsi Lambda paket deployment
<a name="connectors-cli-create-deployment-package"></a>

Untuk membuat fungsi Lambda, Anda harus terlebih dahulu membuat fungsi Lambda *paket deployment* yang berisi kode fungsi dan dependensi. Fungsi Greengrass Lambda membutuhkan [AWS IoT Greengrass Core SDK](lambda-functions.md#lambda-sdks-core) untuk tugas seperti berkomunikasi dengan pesan MQTT di lingkungan core dan mengakses rahasia lokal. Tutorial ini membuat fungsi Python, sehingga Anda menggunakan versi Python dari SDK dalam paket deployment.

1. <a name="download-ggc-sdk"></a> Dari halaman unduhan [AWS IoT Greengrass Core SDK](what-is-gg.md#gg-core-sdk-download), unduh AWS IoT Greengrass Core SDK untuk Python ke komputer Anda.

1. <a name="unzip-ggc-sdk"></a>Unzip paket yang diunduh untuk mendapatkan SDK. SDK adalah folder `greengrasssdk` tersebut.

1. Simpan fungsi kode Python berikut dalam sebuah file lokal bernama `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. Zip item berikut ke dalam file bernama `temp_monitor_python.zip`. Saat membuat file ZIP, sertakan hanya kode dan dependensi, bukan folder yang berisi.
   + **temp\$1monitor.py**. Aplikasi logic.
   + **greengrasssdk**. Diperlukan perpustakaan untuk fungsi Python Greengrass Lambda yang menerbitkan pesan MQTT.

   Ini adalah paket deployment fungsi Lambda Anda.

## Langkah 5: Buat fungsi Lambda
<a name="connectors-cli-create-function"></a>

Sekarang, buat fungsi Lambda yang menggunakan paket deployment.

1. <a name="cli-create-empty-lambda-role"></a>Buat IAM role sehingga Anda dapat lulus dalam peran ARN ketika Anda membuat fungsi.

------
#### [ 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"}]}'
   ```

------
**catatan**  
AWS IoT Greengrass tidak menggunakan peran ini karena izin untuk fungsi Lambda Greengrass Anda ditentukan dalam peran grup Greengrass. Untuk tutorial ini, Anda membuat peran kosong.

1. <a name="cli-copy-lambda-role-arn"></a>Salin `Arn` dari output.

1. Gunakan AWS Lambda API untuk membuat TempMonitor fungsi. Perintah berikut mengasumsikan bahwa file zip dalam direktori saat ini.
   + Ganti *role-arn* dengan `Arn` yang Anda salin.

   ```
   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. Mempublikasikan versi fungsi.

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

1. Buat alias untuk versi yang dipublikasikan.

   Grup Greengrass dapat mereferensi fungsi Lambda dengan alias (direkomendasikan) atau dengan versi. Menggunakan alias membuatnya lebih mudah untuk mengelola pembaruan kode karena Anda tidak perlu mengubah tabel langganan atau definisi grup ketika kode fungsi diperbarui. Sebaliknya, Anda hanya mengarahkan alias ke versi fungsi baru.
**catatan**  
AWS IoT Greengrass **tidak mendukung alias Lambda untuk versi \$1LATEST.**

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

1. Salin `AliasArn` dari output. Anda menggunakan nilai ini saat mengonfigurasi fungsi untuk AWS IoT Greengrass dan saat Anda membuat langganan.

Sekarang Anda siap untuk mengkonfigurasi fungsi untuk AWS IoT Greengrass.

## Langkah 6: Buat definisi fungsi dan versi
<a name="connectors-cli-create-function-definition"></a>

Untuk menggunakan fungsi Lambda pada AWS IoT Greengrass inti, Anda membuat versi definisi fungsi yang mereferensikan fungsi Lambda dengan alias dan mendefinisikan konfigurasi tingkat grup. Untuk informasi selengkapnya, lihat [Mengontrol eksekusi fungsi Greengrass Lambda dengan menggunakan konfigurasi grup khusus](lambda-group-config.md).

1. Buat definisi fungsi yang mencakup versi awal.
   + Ganti *alias-arn* dengan `AliasArn` yang Anda salin saat Anda membuat alias.

    

------
#### [ 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. Salin `LatestVersionArn` dari output. Anda menggunakan nilai ini untuk menambahkan versi definisi fungsi untuk versi grup yang Anda terapkan ke inti.

1. Salin `Id` dari output. Anda menggunakan nilai ini kemudian ketika Anda memperbarui fungsi.

## Langkah 7: Buat definisi langganan dan versi
<a name="connectors-cli-create-subscription-definition"></a>

<a name="connectors-how-to-add-subscriptions-p1"></a>Pada langkah ini, Anda tambahkan langganan yang memungkinkan fungsi Lambda untuk mengirim input data ke konektor. Konektor mendefinisikan topik MQTT yang berlangganan, jadi langganan ini menggunakan salah satu topik. Ini adalah topik yang sama bahwa fungsi contoh menerbitkan.

<a name="connectors-how-to-add-subscriptions-p2"></a>Untuk tutorial ini, Anda juga membuat langganan yang memungkinkan fungsi menerima pembacaan suhu simulasi dari AWS IoT dan memungkinkan AWS IoT untuk menerima informasi status dari konektor.

1. Buat definisi langganan yang berisi versi awal yang mencakup langganan.
   + Ganti *alias-arn* dengan `AliasArn` yang Anda salin saat Anda membuat alias untuk fungsi tersebut. Gunakan ARN ini untuk kedua langganan yang menggunakannya.

    

------
#### [ 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. Salin `LatestVersionArn` dari output. Anda gunakan nilai ini untuk menambahkan versi definisi langganan ke versi grup yang Anda terapkan ke core.

## Langkah 8: Buat versi grup
<a name="connectors-cli-create-group-version"></a>

Sekarang, Anda siap untuk membuat versi grup yang berisi semua item yang ingin Anda terapkan. Anda melakukannya dengan membuat versi grup yang referensi versi target dari setiap jenis komponen.

Pertama, dapatkan ID grup dan ARN versi definisi core. Nilai-nilai ini diperlukan untuk membuat versi grup.

1. Dapatkan ID grup dan versi grup terbaru:

   1. <a name="get-group-id-latestversion"></a>Dapatkan IDs versi grup dan grup Greengrass target. Prosedur ini mengasumsikan bahwa ini adalah versi grup dan grup terbaru. Query berikut mengembalikan grup yang paling baru dibuat.

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

      Atau, Anda dapat melakukan query berdasarkan nama. Nama grup tidak perlu unik, sehingga beberapa grup mungkin ditampilkan.

      ```
      aws greengrass list-groups --query "Groups[?Name=='MyGroup']"
      ```
**catatan**  
<a name="find-group-ids-console"></a>Anda juga dapat menemukan nilai-nilai ini di AWS IoT konsol. ID grup ditampilkan pada halaman **Pengaturan** grup. Versi grup IDs ditampilkan di tab **Deployment** grup.

   1. <a name="copy-target-group-id"></a>Salin `Id` dari grup target dari output. Anda menggunakan ini untuk mendapatkan versi definisi core dan ketika Anda men-deploy grup.

   1. <a name="copy-latest-group-version-id"></a>Salin `LatestVersion` dari output, yang merupakan ID dari versi terakhir ditambahkan ke grup. Anda menggunakan ini untuk mendapatkan versi definisi core.

1. Dapatkan ARN dari versi definisi core:

   1. Dapatkan versi grup. Untuk langkah ini, kita berasumsi bahwa versi grup terbaru mencakup versi definisi core.
      + Ganti *group-id* dengan `Id` yang Anda salin untuk grup.
      + Ganti *group-version-id* dengan `LatestVersion` yang Anda salin untuk grup.

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

   1. Salin `CoreDefinitionVersionArn` dari output.

1. Buat versi grup.
   + Ganti *group-id* dengan `Id` yang Anda salin untuk grup.
   + Ganti *core-definition-version-arn* dengan `CoreDefinitionVersionArn` yang Anda salin untuk versi definisi inti.
   + Ganti *resource-definition-version-arn* dengan `LatestVersionArn` yang Anda salin untuk definisi sumber daya.
   + Ganti *connector-definition-version-arn* dengan `LatestVersionArn` yang Anda salin untuk definisi konektor.
   + Ganti *function-definition-version-arn* dengan `LatestVersionArn` yang Anda salin untuk definisi fungsi.
   + Ganti *subscription-definition-version-arn* dengan `LatestVersionArn` yang Anda salin untuk definisi langganan.

   ```
   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. Salin nilai `Version` dari outputnya. Ini adalah ID dari versi grup. Anda menggunakan nilai ini untuk menerapkan versi grup.

## Langkah 9: Buat deployment
<a name="connectors-cli-create-deployment"></a>

Terapkan grup ke perangkat core.

1. <a name="check-gg-daemon-is-running"></a>Di terminal perangkat inti, pastikan AWS IoT Greengrass daemon berjalan.

   1. Untuk memeriksa apakah daemon sedang berjalan:

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

      Jika output berisi `root` entri untuk `/greengrass/ggc/packages/1.11.6/bin/daemon`, maka daemon sedang berjalan.

   1. Mulai daemon:

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

1. <a name="create-deployment"></a>Buat deployment.
   + Ganti *group-id* dengan `Id` yang Anda salin untuk grup.
   + Ganti *group-version-id* dengan `Version` yang Anda salin untuk versi grup baru.

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

1. <a name="copy-deployment-id"></a>Salin `DeploymentId` dari output.

1. <a name="get-deployment-status"></a>Dapatkan status deployment.
   + Ganti *group-id* dengan `Id` yang Anda salin untuk grup.
   + Ganti *deployment-id* dengan `DeploymentId` yang Anda salin untuk penerapan.

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

   Jika statusnya `Success`, deployment berhasil. Untuk langkah-langkah penyelesaian masalah, lihat [Pemecahan masalah AWS IoT Greengrass](gg-troubleshooting.md).

## Uji solusi
<a name="connectors-cli-test-solution"></a>

1. <a name="choose-test-page"></a>Di halaman beranda AWS IoT konsol, pilih **Uji**.

1. Untuk **Berlangganan topik**, gunakan nilai berikut, dan lalu pilih **Langganan**. Konektor Notifikasi Twilio menerbitkan informasi status untuk topik ini.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/greengrass/v1/developerguide/connectors-cli.html)

1. Untuk **Publikasikan ke topik**, gunakan nilai-nilai berikut, dan kemudian pilih **Publikasikan** untuk memanggil fungsi.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/greengrass/v1/developerguide/connectors-cli.html)

   Jika berhasil, penerima menerima pesan teks dan konsol menampilkan `success` status dari [output data](twilio-notifications-connector.md#twilio-notifications-connector-data-output).

   Sekarang, ubah `temperature` dalam pesan input untuk **29** dan terbitkan. Karena ini kurang dari 30, TempMonitor fungsinya tidak memicu pesan Twilio.

## Lihat juga
<a name="connectors-cli-see-also"></a>
+ [Integrasikan dengan layanan dan protokol menggunakan konektor Greengrass](connectors.md)
+ [AWS-disediakan konektor Greengrass](connectors-list.md)
+ [Memulai dengan konektor Greengrass (konsol)](connectors-console.md)
+ [AWS Secrets Manager perintah](https://docs.aws.amazon.com/cli/latest/reference/secretsmanager) dalam *Referensi AWS CLI Perintah*
+ <a name="see-also-iam-cli"></a>[AWS Identity and Access Management (IAM) perintah di *AWS CLI Command*](https://docs.aws.amazon.com/cli/latest/reference/iam) Reference
+ <a name="see-also-lambda-cli"></a>[AWS Lambda perintah](https://docs.aws.amazon.com/cli/latest/reference/lambda) dalam *Referensi AWS CLI Perintah*
+ <a name="see-also-gg-cli"></a>[AWS IoT Greengrass perintah](https://docs.aws.amazon.com/cli/latest/reference/greengrass/index.html) dalam *Referensi AWS CLI Perintah*