Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gunakan konektor C2C (Cloud-to-Cloud)
Konektor C2C mengelola terjemahan pesan permintaan dan respons, dan memungkinkan komunikasi antara integrasi terkelola dan cloud vendor pihak ketiga. Ini memfasilitasi kontrol terpadu di berbagai jenis perangkat, platform, dan protokol yang memungkinkan perangkat pihak ketiga untuk di-onboard dan dikelola.
Prosedur berikut mencantumkan langkah-langkah untuk menggunakan konektor C2C.
Langkah-langkah untuk menggunakan konektor C2C:
-
CreateCloudConnector
Konfigurasikan konektor untuk mengaktifkan komunikasi dua arah antara integrasi terkelola Anda dan cloud vendor pihak ketiga.
Saat mengatur konektor, berikan detail berikut:
-
Nama: Pilih nama deskriptif untuk konektor.
-
Deskripsi: Berikan ringkasan singkat tentang tujuan dan kemampuan konektor.
-
AWS Lambda ARN: Tentukan Nama Sumber Daya Amazon (ARN) dari AWS Lambda fungsi yang akan memberi daya pada konektor.
Buat dan terapkan AWS Lambda fungsi yang berkomunikasi dengan vendor pihak ketiga APIs untuk membuat konektor. Selanjutnya, panggil CreateCloudConnectorAPI dalam integrasi terkelola, dan berikan AWS Lambda fungsi ARN untuk pendaftaran. Pastikan bahwa AWS Lambda fungsi tersebut diterapkan di AWS akun yang sama di mana Anda memasang konektor dalam integrasi terkelola. Anda akan diberi ID Konektor unik untuk mengidentifikasi integrasi.
Contoh Permintaan dan Respons CreateCloudConnector API:
Request: { "Name": "CreateCloudConnector", "Description": "Testing for C2C", "EndpointType": "LAMBDA", "EndpointConfig": { "lambda": { "arn": "arn:aws:lambda:us-east-1:xxxxxx:function:TestingConnector" } }, "ClientToken": "
abc
" } Response: { "Id": "string" }Aliran penciptaan:
catatan
Gunakan GetCloudConnector,, UpdateCloudConnectorDeleteCloudConnector, dan sesuai ListCloudConnectors APIs kebutuhan untuk prosedur ini.
-
-
CreateConnectorDestination
Konfigurasikan Destinasi untuk menyediakan pengaturan dan kredensional otentikasi yang diperlukan konektor untuk membuat koneksi aman dengan cloud vendor pihak ketiga. Gunakan Destinasi untuk mendaftarkan kredensil autentikasi pihak ketiga Anda dengan integrasi terkelola, seperti detail otorisasi OAuth 2.0 termasuk URL otorisasi, skema otentikasi, dan lokasi kredensil di dalamnya. AWS Secrets Manager
Prasyarat
Sebelum membuat ConnectorDestination, Anda harus:
Panggil CreateCloudConnectorAPI untuk membuat konektor. ID yang dikembalikan fungsi digunakan dalam panggilan CreateConnectorDestinationAPI API.
Ambil
tokenUrl
untuk platform 3P konektor. (Anda dapat menukar AuthCode dengan AccessToken).Ambil AuthURL untuk platform 3P konektor. (Pengguna akhir dapat mengautentikasi menggunakan nama pengguna dan kata sandi mereka).
Gunakan
clientId
danclientSecret
(dari platform 3P) di manajer rahasia akun Anda.
Contoh Permintaan dan Respons CreateConnectorDestination API:
Request: { "Name": "CreateConnectorDestination", "Description": "CreateConnectorDestination", "AuthType": "OAUTH", "AuthConfig": { "oAuth": { "authUrl": "https://xxxx.com/oauth2/authorize", "tokenUrl": "https://xxxx/oauth2/token", "scope": "testScope", "tokenEndpointAuthenticationScheme": "HTTP_BASIC", "oAuthCompleteRedirectUrl": "about:blank", "proactiveRefreshTokenRenewal": { "enabled": false, "DaysBeforeRenewal": 30 } } }, "CloudConnectorId": "<connectorId>", // The connectorID instance from response of Step 1. "SecretsManager": { "arn": "arn:aws:secretsmanager:*****:secret:*******", "versionId": "********" }, "ClientToken": "***" } Response: { "Id":"string" }
Alur pembuatan tujuan cloud:
catatan
Gunakan GetCloudConnector,, UpdateCloudConnectorDeleteCloudConnector, dan sesuai ListCloudConnectors APIs kebutuhan untuk prosedur ini.
-
CreateAccountAssociation
Asosiasi mewakili hubungan antara akun cloud pihak ketiga pengguna akhir dan tujuan konektor. Setelah membuat Asosiasi dan menautkan pengguna akhir ke integrasi terkelola, perangkat mereka dapat diakses melalui ID Asosiasi yang unik. Integrasi ini memungkinkan tiga fungsi utama: menemukan perangkat, mengirim perintah, dan menerima acara.
Prasyarat
Sebelum membuat, AccountAssociationAnda harus menyelesaikan yang berikut:
Panggil CreateConnectorDestinationAPI untuk membuat tujuan. ID yang dikembalikan fungsi digunakan dalam panggilan CreateAccountAssociationAPI.
Memanggil CreateAccountAssociationAPI.
Contoh Permintaan dan Respons CreateAccountAssociation API:
Request: { "Name": "CreateAccountAssociation", "Description": "CreateAccountAssociation", "ConnectorDestinationId": "<
destinationId
>", //The destinationID from destination creation. "ClientToken": "***" } Response: { "Id":"string" }catatan
Gunakan GetCloudConnector,, UpdateCloudConnectorDeleteCloudConnector, dan sesuai ListCloudConnectors APIs kebutuhan untuk prosedur ini.
An AccountAssociationmemiliki status yang ditanyakan dari GetAccountAssociationdan ListAccountAssociations APIs. Ini APIs menunjukkan keadaan Asosiasi. StartAccountAssociationRefreshAPI memungkinkan penyegaran AccountAssociationstatus saat token penyegarannya kedaluwarsa.
-
Penemuan perangkat
Setiap hal yang dikelola ditautkan ke detail khusus perangkat, seperti nomor seri dan model data. Model data menjelaskan fungsionalitas perangkat, menunjukkan apakah itu bola lampu, sakelar, termostat, atau jenis perangkat lain. Untuk menemukan perangkat 3P dan membuat ManagedThing untuk perangkat 3P, Anda harus mengikuti langkah-langkah di bawah ini secara berurutan.
-
Panggil StartDeviceDiscoveryAPI untuk memulai proses penemuan perangkat.
Contoh Permintaan dan Respons StartDeviceDiscovery API:
Request: { "DiscoveryType": "CLOUD", "AccountAssociationId": "*****", "ClientToken": "abc" } Response: { "Id": "string", "StartedAt": number }
-
Memanggil GetDeviceDiscoveryAPI untuk memeriksa status proses penemuan.
-
Panggil ListDiscoveredDevicesAPI untuk membuat daftar perangkat yang ditemukan.
Contoh Permintaan dan Respons ListDiscoveredDevices API:
Request: //Empty body Response: { "Items": [ { "Brand": "string", "ConnectorDeviceId": "string", "ConnectorDeviceName": "string", "DeviceTypes": [ "string" ], "DiscoveredAt": number, "ManagedThingId": "string", "Model": "string", "Modification": "string" } ], "NextToken": "string" }
-
Memanggil CreateManagedThingAPI untuk memilih perangkat dari daftar penemuan yang akan diimpor ke integrasi terkelola.
Contoh Permintaan dan Respons CreateManagedThing API:
Request: { "Role": "DEVICE", "AuthenticationMaterial": "CLOUD:XXXX:<connectorDeviceId1>", "AuthenticationMaterialType": "DISCOVERED_DEVICE", "Name": "sample-device-name" "ClientToken": "xxx" } Response: { "Arn": "string", // This is the ARN of the managedThing "CreatedAt": number, "Id": "string" }
-
Panggil GetManagedThingAPI untuk melihat ini yang baru dibuat
managedThing
. Statusnya akanUNASSOCIATED
. -
Panggil RegisterAccountAssociationAPI untuk mengaitkan ini
managedThing
dengan yang spesifikaccountAssociation
. Di akhir RegisterAccountAssociationAPI yang berhasil,managedThing
perubahanASSOCIATED
status.Contoh Permintaan dan Respons RegisterAccountAssociation API:
Request: { "AccountAssociationId": "string", "DeviceDiscoveryId": "string", "ManagedThingId": "string" } Response: { "AccountAssociationId": "string", "DeviceDiscoveryId": "string", "ManagedThingId": "string" }
-
-
Kirim perintah ke perangkat 3P
Untuk mengontrol perangkat yang baru di-onboard, gunakan SendManagedThingCommandAPI, dengan ID Asosiasi yang dibuat sebelumnya dan tindakan kontrol berdasarkan kemampuan yang didukung oleh perangkat. Konektor menggunakan kredensil tersimpan dari proses penautan akun, untuk mengautentikasi dengan cloud pihak ketiga dan memanggil panggilan API yang relevan untuk operasi tersebut.
Contoh Permintaan dan Respons SendManagedThingCommand API:
Request: { "AccountAssociationId": "string", "ConnectorAssociationId": "string", "Endpoints": [ { "capabilities": [ { "actions": [ { "actionTraceId": "string", "name": "string", "parameters": JSON value, "ref": "string" } ], "id": "string", "name": "string", "version": "string" } ], "endpointId": "string" } ] } Response: { "TraceId": "string" }
Kirim perintah ke aliran perangkat 3P:
-
Konektor mengirimkan acara ke integrasi terkelola
SendConnectorEventAPI menangkap empat jenis peristiwa dari konektor ke integrasi terkelola, yang diwakili oleh nilai enum berikut untuk parameter Jenis Operasi:
-
DEVICE_COMMAND_RESPONSE: Respons asinkron yang dikirim konektor sebagai respons terhadap perintah.
-
DEVICE_DISCOVERY: Menanggapi proses penemuan perangkat, konektor mengirimkan daftar perangkat yang ditemukan ke integrasi terkelola, ia menggunakan API. SendConnectorEvent
-
DEVICE_EVENT: Mengirim peristiwa perangkat yang diterima.
-
DEVICE_COMMAND_REQUEST: Permintaan perintah dimulai dari perangkat. Misalnya, alur kerja WebRTC.
Konektor juga dapat meneruskan peristiwa perangkat menggunakan SendConnectorEventAPI, dengan
userId
parameter opsional.-
Untuk acara perangkat dengan
userId
:Contoh Permintaan dan Respons SendConnectorEvent API:
Request: { "UserId": "*****", "Operation": "DEVICE_EVENT", "OperationVersion": "1.0", "StatusCode": 200, "ConnectorId": "****", "ConnectorDeviceId": "***", "TraceId": "***", "MatterEndpoint": { "id": "**", "clusters": [{ ..... } }] } } Response: { "ConnectorId": "string" }
-
Untuk acara perangkat tanpa
userId
:Contoh Permintaan dan Respons SendConnectorEvent API:
Request: { "Operation": "DEVICE_EVENT", "OperationVersion": "1.0", "StatusCode": 200, "ConnectorId": "*****", "ConnectorDeviceId": "****", "TraceId": "****", "MatterEndpoint": { "id": "**", "clusters": [{ .... }] } } Response: { "ConnectorId": "string" }
Untuk menghapus tautan antara asosiasi tertentu
managedThing
dan akun, gunakan mekanisme deregister:Contoh Permintaan dan Respons DeregisterAccountAssociation API:
Request: { "AccountAssociationId": "****", "ManagedThingId": "****" } Response: HTTP/1.1 200 // Empty body
Kirim alur acara:
-
-
Perbarui status konektor ke “Terdaftar” agar terlihat oleh pelanggan integrasi terkelola lainnya
Secara default, konektor bersifat pribadi dan hanya terlihat oleh AWS akun yang membuatnya. Anda dapat memilih untuk membuat konektor terlihat oleh pelanggan integrasi terkelola lainnya.
Untuk membagikan konektor Anda dengan pengguna lain, gunakan opsi Buat terlihat AWS Management Console di halaman detail konektor untuk mengirimkan ID konektor Anda AWS untuk ditinjau. Setelah disetujui, konektor tersedia untuk semua pengguna integrasi terkelola dalam hal yang sama Wilayah AWS. Selain itu, Anda dapat membatasi akses ke AWS akun tertentu IDs dengan memodifikasi kebijakan akses pada fungsi terkait AWS Lambda konektor. Untuk memastikan konektor Anda dapat digunakan oleh pelanggan lain, kelola izin akses IAM pada fungsi Lambda Anda dari AWS akun lain ke konektor yang terlihat.
Tinjau Layanan AWS persyaratan dan kebijakan organisasi Anda yang mengatur berbagi konektor dan izin akses sebelum membuat konektor terlihat oleh pelanggan integrasi terkelola lainnya.