Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
AWS IoT Greengrass Perpustakaan penemuan
catatan
Konten di halaman ini mungkin tidak up-to-date. Silakan merujuk ke halaman perpustakaan Freertos.org
Gambaran Umum
Pustaka AWS IoT Greengrass Discovery digunakan oleh perangkat mikrokontroler Anda untuk menemukan inti Greengrass di jaringan Anda. Menggunakan AWS IoT Greengrass Discovery APIs, perangkat Anda dapat mengirim pesan ke inti Greengrass setelah menemukan titik akhir inti.
Dependensi dan persyaratan
Untuk menggunakan pustaka Greengrass Discovery, Anda harus membuat sesuatu, termasuk sertifikat dan AWS IoT kebijakan. Untuk informasi selengkapnya, lihat AWS IoT Memulai.
Anda harus menetapkan nilai untuk konstanta berikut dalam file:freertos/demos/include/aws_clientcredential.h
clientcredentialMQTT_BROKER_ENDPOINT-
AWS IoT Titik akhir Anda.
clientcredentialIOT_THING_NAME-
Nama benda IoT Anda.
clientcredentialWIFI_SSID-
SSID untuk jaringan Wi-Fi Anda.
clientcredentialWIFI_PASSWORD-
Kata sandi Wi-Fi Anda.
clientcredentialWIFI_SECURITY-
Jenis keamanan yang digunakan oleh jaringan Wi-Fi Anda.
Anda juga harus menetapkan nilai untuk konstanta berikut dalam file:freertos/demos/include/aws_clientcredential_keys.h
keyCLIENT_CERTIFICATE_PEM-
Sertifikat PEM terkait dengan barang Anda.
keyCLIENT_PRIVATE_KEY_PEM-
Kunci pribadi PEM terkait dengan hal Anda.
Anda harus memiliki grup Greengrass dan perangkat inti yang disiapkan di konsol. Untuk informasi selengkapnya, lihat Memulai dengan AWS IoT Greengrass.
Meskipun pustaka CoreMQTT tidak diperlukan untuk konektivitas Greengrass, kami sangat menyarankan Anda menginstalnya. Perpustakaan dapat digunakan untuk berkomunikasi dengan inti Greengrass setelah ditemukan.
Referensi API
Untuk referensi API selengkapnya, lihat Referensi API Greengrass.
Contoh penggunaan
Alur kerja Greengrass
Perangkat MCU memulai proses penemuan dengan meminta dari file JSON AWS IoT yang berisi parameter konektivitas inti Greengrass. Ada dua metode untuk mengambil parameter konektivitas inti Greengrass dari file JSON:
-
Seleksi otomatis berulang melalui semua inti Greengrass yang tercantum dalam file JSON dan terhubung ke yang pertama tersedia.
-
Pemilihan manual menggunakan informasi
aws_ggd_config.huntuk terhubung ke inti Greengrass yang ditentukan.
Cara menggunakan Greengrass API
Semua opsi konfigurasi default untuk Greengrass API didefinisikan dalam. aws_ggd_config_defaults.h
Jika hanya ada satu inti Greengrass, GGD_GetGGCIPandCertificate hubungi untuk meminta file JSON dengan informasi konektivitas inti Greengrass. GGD_GetGGCIPandCertificateKapan dikembalikan, pcBuffer parameter berisi teks file JSON. pxHostAddressDataParameter berisi alamat IP dan port inti Greengrass yang dapat Anda sambungkan.
Untuk opsi penyesuaian lainnya, seperti mengalokasikan sertifikat secara dinamis, Anda harus memanggil yang berikut ini: APIs
GGD_JSONRequestStart-
Membuat permintaan HTTP GET AWS IoT untuk memulai permintaan penemuan untuk menemukan inti Greengrass.
GD_SecureConnect_Senddigunakan untuk mengirim permintaan ke AWS IoT. GGD_JSONRequestGetSize-
Mendapat ukuran file JSON dari respons HTTP.
GGD_JSONRequestGetFile-
Mendapat string objek JSON.
GGD_JSONRequestGetSizedanGGD_JSONRequestGetFilegunakanGGD_SecureConnect_Readuntuk mendapatkan data JSON dari soket.GGD_JSONRequestStart,GGD_SecureConnect_Send,GGD_JSONRequestGetSizeharus dipanggil untuk menerima data JSON dari AWS IoT. GGD_GetIPandCertificateFromJSON-
Mengekstrak alamat IP dan sertifikat inti Greengrass dari data JSON. Anda dapat mengaktifkan pemilihan otomatis dengan mengatur
xAutoSelectFlagkeTrue. Pemilihan otomatis menemukan perangkat inti pertama yang dapat dihubungkan oleh perangkat FreeRTOS Anda. Untuk terhubung ke inti Greengrass, panggilGGD_SecureConnect_Connectfungsi, meneruskan alamat IP, port, dan sertifikat perangkat inti. Untuk menggunakan pemilihan manual, atur bidangHostParameters_tparameter berikut:pcGroupName-
ID grup Greengrass tempat inti berada. Anda dapat menggunakan perintah
aws greengrass list-groupsCLI untuk menemukan ID grup Greengrass Anda. pcCoreAddress-
ARN dari inti Greengrass yang Anda hubungkan.