Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwenden Sie einen C2C-Konnektor (Cloud-to-Cloud)
Ein C2C-Konnektor verwaltet die Übersetzung von Anfrage- und Antwortnachrichten und ermöglicht die Kommunikation zwischen verwalteten Integrationen und einer Cloud eines Drittanbieters. Er ermöglicht die einheitliche Steuerung verschiedener Gerätetypen, Plattformen und Protokolle, sodass Geräte von Drittanbietern integriert und verwaltet werden können.
Im folgenden Verfahren werden die Schritte zur Verwendung des C2C-Anschlusses aufgeführt.
Schritte zur Verwendung des C2C-Anschlusses:
-
CreateCloudConnector
Konfigurieren Sie einen Konnektor, um die bidirektionale Kommunikation zwischen Ihren verwalteten Integrationen und Clouds von Drittanbietern zu ermöglichen.
Geben Sie bei der Einrichtung des Connectors die folgenden Details an:
-
Name: Wählen Sie einen aussagekräftigen Namen für den Connector.
-
Beschreibung: Geben Sie eine kurze Zusammenfassung des Zwecks und der Funktionen des Connectors an.
-
AWS Lambda ARN: Geben Sie den Amazon-Ressourcennamen (ARN) der AWS Lambda Funktion an, die den Connector mit Strom versorgt.
Erstellen und implementieren Sie eine AWS Lambda Funktion, die mit einem Drittanbieter kommuniziert APIs , um einen Konnektor zu erstellen. Rufen Sie als Nächstes die CreateCloudConnectorAPI in verwalteten Integrationen auf und stellen Sie die AWS Lambda Funktion ARN für die Registrierung bereit. Stellen Sie sicher, dass die AWS Lambda Funktion in demselben AWS Konto bereitgestellt wird, in dem Sie den Connector in verwalteten Integrationen erstellen. Ihnen wird eine eindeutige Connector-ID zugewiesen, um die Integration zu identifizieren.
Beispiel für eine CreateCloudConnector API-Anfrage und -Antwort:
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" }Ablauf der Erstellung:
Anmerkung
Verwenden Sie für dieses Verfahren nach ListCloudConnectors APIs Bedarf DeleteCloudConnector,, und. GetCloudConnectorUpdateCloudConnector
-
-
CreateConnectorDestination
Konfigurieren Sie Destinations so, dass sie die Einstellungen und Authentifizierungsdaten bereitstellen, die Connectors benötigen, um sichere Verbindungen mit Clouds von Drittanbietern herzustellen. Verwenden Sie Destinations, um Ihre Authentifizierungsdaten von Drittanbietern bei verwalteten Integrationen zu registrieren, z. B. OAuth 2.0-Autorisierungsdetails, einschließlich der Autorisierungs-URL, des Authentifizierungsschemas und des Speicherorts der Anmeldeinformationen darin AWS Secrets Manager.
Voraussetzungen
Bevor Sie eine erstellen ConnectorDestination, müssen Sie:
Rufen Sie die CreateCloudConnectorAPI auf, um einen Connector zu erstellen. Die ID, die die Funktion zurückgibt, wird im CreateConnectorDestinationAPI-API-Aufruf verwendet.
Rufen Sie die
tokenUrl
für die 3P-Plattform des Konnektors ab. (Sie können einen AuthCode gegen ein AccessToken austauschen).Rufen Sie die AuthURL für die 3P-Plattform des Connectors ab. (Endbenutzer können sich mit ihrem Benutzernamen und Passwort authentifizieren).
Verwenden Sie das
clientId
undclientSecret
(von der 3P-Plattform) im Secret Manager Ihres Kontos.
Beispiel für eine CreateConnectorDestination API-Anfrage und -Antwort:
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" }
Ablauf bei der Erstellung von Cloud-Zielen:
Anmerkung
Verwenden Sie GetCloudConnector, UpdateCloudConnectorDeleteCloudConnector, und nach ListCloudConnectors APIs Bedarf für dieses Verfahren.
-
CreateAccountAssociation
Zuordnungen stellen die Beziehungen zwischen Cloud-Konten von Drittanbietern von Endbenutzern und einem Connector-Ziel dar. Nachdem Sie eine Zuordnung erstellt und Endbenutzer mit verwalteten Integrationen verknüpft haben, ist der Zugriff auf ihre Geräte über eine eindeutige Zuordnungs-ID möglich. Diese Integration ermöglicht drei Hauptfunktionen: das Erkennen von Geräten, das Senden von Befehlen und das Empfangen von Ereignissen.
Voraussetzungen
Bevor AccountAssociationSie eine erstellen, müssen Sie die folgenden Schritte ausführen:
Rufen Sie die CreateConnectorDestinationAPI auf, um ein Ziel zu erstellen. Die ID, die die Funktion zurückgibt, wird im CreateAccountAssociationAPI-Aufruf verwendet.
Rufen Sie die CreateAccountAssociationAPI auf.
Beispiel für eine CreateAccountAssociation API-Anfrage und -Antwort:
Request: { "Name": "CreateAccountAssociation", "Description": "CreateAccountAssociation", "ConnectorDestinationId": "<
destinationId
>", //The destinationID from destination creation. "ClientToken": "***" } Response: { "Id":"string" }Anmerkung
Verwenden Sie für dieses Verfahren nach ListCloudConnectors APIs Bedarf DeleteCloudConnector,, und. GetCloudConnectorUpdateCloudConnector
An AccountAssociationhat einen Status, der von GetAccountAssociationund abgefragt wird. ListAccountAssociations APIs Dies APIs zeigt den Status des Vereins. Die StartAccountAssociationRefreshAPI ermöglicht die Aktualisierung eines AccountAssociationStatus, wenn sein Aktualisierungstoken abläuft.
-
Erkennung von Geräten
Jedes verwaltete Objekt ist mit gerätespezifischen Details wie der Seriennummer und einem Datenmodell verknüpft. Das Datenmodell beschreibt die Funktionalität des Geräts und gibt an, ob es sich um eine Glühbirne, einen Schalter, einen Thermostat oder einen anderen Gerätetyp handelt. Um ein 3P-Gerät zu erkennen und ein ManagedThing für das 3P-Gerät zu erstellen, müssen Sie die folgenden Schritte nacheinander ausführen.
-
Rufen Sie die StartDeviceDiscoveryAPI auf, um den Geräteerkennungsprozess zu starten.
Beispiel für eine StartDeviceDiscovery API-Anfrage und -Antwort:
Request: { "DiscoveryType": "CLOUD", "AccountAssociationId": "*****", "ClientToken": "abc" } Response: { "Id": "string", "StartedAt": number }
-
Rufen Sie die GetDeviceDiscoveryAPI auf, um den Status des Erkennungsprozesses zu überprüfen.
-
Rufen Sie die ListDiscoveredDevicesAPI auf, um die erkannten Geräte aufzulisten.
Beispiel für eine ListDiscoveredDevices API-Anfrage und -Antwort:
Request: //Empty body Response: { "Items": [ { "Brand": "string", "ConnectorDeviceId": "string", "ConnectorDeviceName": "string", "DeviceTypes": [ "string" ], "DiscoveredAt": number, "ManagedThingId": "string", "Model": "string", "Modification": "string" } ], "NextToken": "string" }
-
Rufen Sie die CreateManagedThingAPI auf, um die Geräte aus der Discovery-Liste auszuwählen, die in verwaltete Integrationen importiert werden sollen.
Beispiel für eine CreateManagedThing API-Anfrage und -Antwort:
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" }
-
Rufen Sie die GetManagedThingAPI auf, um diese neu erstellte
managedThing
Datei anzuzeigen. Der Status wird sein.UNASSOCIATED
-
Rufen Sie die RegisterAccountAssociationAPI auf, um dies einer bestimmten
managedThing
accountAssociation
Person zuzuordnen. Am Ende einer erfolgreichen RegisterAccountAssociationAPImanagedThing
ändert sich derASSOCIATED
Status.Beispiel für eine RegisterAccountAssociation API-Anfrage und -Antwort:
Request: { "AccountAssociationId": "string", "DeviceDiscoveryId": "string", "ManagedThingId": "string" } Response: { "AccountAssociationId": "string", "DeviceDiscoveryId": "string", "ManagedThingId": "string" }
-
-
Senden Sie einen Befehl an das 3P-Gerät
Um ein neu integriertes Gerät zu steuern, verwenden Sie die SendManagedThingCommandAPI mit der zuvor erstellten Zuordnungs-ID und einer Steueraktion, die auf der vom Gerät unterstützten Funktion basiert. Der Connector verwendet gespeicherte Anmeldeinformationen aus dem Kontoverknüpfungsprozess, um sich bei der Drittanbieter-Cloud zu authentifizieren und den entsprechenden API-Aufruf für den Vorgang aufzurufen.
Beispiel für eine SendManagedThingCommand API-Anfrage und -Antwort:
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" }
Befehl an den 3P-Gerätefluss senden:
-
Connector sendet Ereignisse an verwaltete Integrationen
Die SendConnectorEventAPI erfasst vier Ereignistypen vom Connector bis hin zu verwalteten Integrationen, die durch die folgenden Aufzählungswerte für den Parameter Operation Type dargestellt werden:
-
DEVICE_COMMAND_RESPONSE: Die asynchrone Antwort, die der Connector als Antwort auf einen Befehl sendet.
-
DEVICE_DISCOVERY: Als Reaktion auf einen Geräteerkennungsprozess sendet der Connector die Liste der erkannten Geräte an verwaltete Integrationen und verwendet die API. SendConnectorEvent
-
DEVICE_EVENT: Sendet die empfangenen Geräteereignisse.
-
DEVICE_COMMAND_REQUEST: Vom Gerät initiierte Befehlsanfragen. Zum Beispiel WebRTC-Workflows.
Der Connector kann mit einem optionalen
userId
Parameter auch Geräteereignisse mithilfe der SendConnectorEventAPI weiterleiten.-
Für Geräteereignisse mit einem
userId
:Beispiel für eine SendConnectorEvent API-Anfrage und -Antwort:
Request: { "UserId": "*****", "Operation": "DEVICE_EVENT", "OperationVersion": "1.0", "StatusCode": 200, "ConnectorId": "****", "ConnectorDeviceId": "***", "TraceId": "***", "MatterEndpoint": { "id": "**", "clusters": [{ ..... } }] } } Response: { "ConnectorId": "string" }
-
Für Geräteereignisse ohne
userId
:Beispiel für eine SendConnectorEvent API-Anfrage und -Antwort:
Request: { "Operation": "DEVICE_EVENT", "OperationVersion": "1.0", "StatusCode": 200, "ConnectorId": "*****", "ConnectorDeviceId": "****", "TraceId": "****", "MatterEndpoint": { "id": "**", "clusters": [{ .... }] } } Response: { "ConnectorId": "string" }
Verwenden Sie den Abmeldemechanismus, um die Verknüpfung zwischen einer bestimmten
managedThing
und einer Kontoverknüpfung zu entfernen:Beispiel für eine DeregisterAccountAssociation API-Anfrage und -Antwort:
Request: { "AccountAssociationId": "****", "ManagedThingId": "****" } Response: HTTP/1.1 200 // Empty body
Ereignisablauf senden:
-
-
Aktualisieren Sie den Connector-Status auf „Gelistet“, um ihn für andere Kunden mit verwalteten Integrationen sichtbar zu machen
Standardmäßig sind Konnektoren privat und nur für das AWS Konto sichtbar, mit dem sie erstellt wurden. Sie können wählen, ob ein Connector für andere Kunden mit verwalteten Integrationen sichtbar sein soll.
Um Ihren Connector mit anderen Benutzern zu teilen, verwenden Sie die Option Sichtbar machen AWS Management Console auf der Seite mit den Connector-Details, um Ihre Connector-ID AWS zur Überprüfung einzureichen. Nach der Genehmigung steht der Connector allen Benutzern verwalteter Integrationen in derselben AWS-Region Version zur Verfügung. Darüber hinaus können Sie den Zugriff auf ein bestimmtes AWS Konto einschränken, IDs indem Sie die Zugriffsrichtlinie für die dem Connector zugeordnete AWS Lambda Funktion ändern. Um sicherzustellen, dass Ihr Connector von anderen Kunden verwendet werden kann, verwalten Sie die IAM-Zugriffsberechtigungen für Ihre Lambda-Funktion von anderen AWS Konten auf Ihren sichtbaren Connector.
Lesen Sie die AWS-Service Bedingungen und Richtlinien Ihrer Organisation, die die gemeinsame Nutzung von Connectoren und die Zugriffsberechtigungen regeln, bevor Sie Connectors für andere Kunden mit verwalteten Integrationen sichtbar machen.