Benachrichtigungen über verwaltete Integrationen - Verwaltete Integrationen für AWS IoT Device Management

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.

Benachrichtigungen über verwaltete Integrationen

Benachrichtigungen über verwaltete Integrationen verwalten alle Benachrichtigungen an Kunden und ermöglichen so die Kommunikation in Echtzeit, um Updates und Erkenntnisse auf ihren Geräten bereitzustellen. Ganz gleich, ob es darum geht, Kunden über Geräteereignisse, den Gerätelebenszyklus oder den Gerätestatus zu informieren, Benachrichtigungen über verwaltete Integrationen spielen eine entscheidende Rolle bei der Verbesserung des allgemeinen Kundenerlebnisses. Durch die Bereitstellung verwertbarer Informationen können Kunden fundierte Entscheidungen treffen und die Ressourcennutzung optimieren.

Richten Sie Benachrichtigungen für verwaltete Integrationen ein

Gehen Sie wie folgt vor, um Benachrichtigungen für verwaltete Integrationen einzurichten:

  1. Erstellen Sie einen Amazon Kinesis Kinesis-Datenstream

    Um einen Kinesis-Datenstream zu erstellen, folgen Sie den unter Kinesis-Datenstreams erstellen und verwalten beschriebenen Schritte.

    Derzeit werden nur Amazon Kinesis Kinesis-Datenstreams als Option für ein vom Kunden verwaltetes Ziel für verwaltete Integrationsbenachrichtigungen unterstützt.

  2. Erstellen Sie eine Amazon Kinesis Kinesis-Stream-Zugriffsrolle

    Erstellen Sie eine AWS Identity and Access Management Zugriffsrolle, die berechtigt ist, auf den gerade erstellten Kinesis-Stream zuzugreifen

    Weitere Informationen finden Sie unter IAM-Rollenerstellung im AWS Identity and Access ManagementBenutzerhandbuch.

  3. Erteilen Sie Benutzern Berechtigungen zum Aufrufen der API CreateDestination

    Die folgende Richtlinie definiert die Anforderungen, unter denen der Benutzer die CreateDestinationAPI aufrufen kann. Wenn nicht festgelegt, schlägt der CreateDestination API-Aufruf fehl.

    Informationen zum Erlangen von Passrollen-Berechtigungen für verwaltete Integrationen finden Sie unter Gewähren von AWS Identity and Access ManagementBenutzerberechtigungen zur Übergabe einer Rolle an einen AWS Dienst im Benutzerhandbuch.

    { "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":"iam:PassRole", "Resource":"arn:aws:iam::accountID:role/kinesis_stream_access_role", "Condition":{ "StringEquals":{ "iam:PassedToService":"iotmanagedintegrations.amazonaws.com" } } }, { "Effect":"Allow", "Action":"iotmanagedintegrations:CreateDestination", "Resource":"*" } ] }
  4. Rufen Sie die API auf CreateDestination

    Nachdem Sie Ihren Amazon Kinesis Kinesis-Datenstream und Ihre Stream-Zugriffsrolle erstellt haben, rufen Sie die CreateDestinationAPI auf, um Ihr vom Kunden verwaltetes Ziel zu erstellen, an das die Benachrichtigungen über verwaltete Integrationen weitergeleitet werden. Verwenden Sie für den deliveryDestinationArn Parameter den arn aus Ihrem neuen Amazon Kinesis Kinesis-Datenstream.

    { "DeliveryDestinationArn": "Your Kinesis arn" "DeliveryDestinationType": "KINESIS" "Name": "DestinationName" "ClientToken": "Random string" "RoleArn": "arn:aws:iam::accountID:role/kinesis_stream_access_role" }
  5. Rufen Sie die API auf CreateNotificationConfiguration

    Schließlich erstellen Sie die Benachrichtigungskonfiguration, die Sie über einen ausgewählten Ereignistyp informiert, indem Sie eine Benachrichtigung an Ihr vom Kunden verwaltetes Ziel weiterleiten, das durch Ihren Amazon Kinesis Kinesis-Datenstream repräsentiert wird. Rufen Sie die CreateNotificationConfigurationAPI auf, um die Benachrichtigungskonfiguration zu erstellen. Verwenden Sie im destinationName Parameter denselben Zielnamen, den Sie ursprünglich erstellt haben, als Sie das vom Kunden verwaltete Ziel mithilfe der CreateDestination API erstellt haben.

    { "EventType": "DEVICE_EVENT" "DestinationName" // This name has to be identical to the name in createDestination API "ClientToken": "Random string" }

Ereignistypen, die mit verwalteten Integrationen überwacht werden

Die folgenden Ereignistypen werden mit Benachrichtigungen über verwaltete Integrationen überwacht:

  • DEVICE_COMMAND

    • Der Status des SendManagedThingAPI-Befehls. Gültige Werte sind entweder succeeded oder failed.

      { "version":"0", "messageId":"6a7e8feb-b491-4cf7-a9f1-bf3703467718", "messageType":"DEVICE_EVENT", "source":"aws.iotmanagedintegrations", "customerAccountId":"123456789012", "timestamp":"2017-12-22T18:43:48Z", "region":"ca-central-1", "resources":[ "arn:aws:iotmanagedintegrations:ca-central-1:123456789012:managed-thing/6a7e8feb-b491-4cf7-a9f1-bf3703467718" ], "payload":{ "traceId":"1234567890abcdef0", "receivedAt":"2017-12-22T18:43:48Z", "executedAt":"2017-12-22T18:43:48Z", "result":"failed" } }
  • DEVICE_COMMAND_REQUEST

    • Die Befehlsanforderung von Web Real-Time Communication (WebRTC).

      Der WebRTC-Standard ermöglicht die Kommunikation zwischen zwei Peers. Diese Peers können Video-, Audio- und beliebige Daten in Echtzeit übertragen. Managed Integrations unterstützt WebRTC, um diese Arten von Streaming zwischen einer mobilen Kundenanwendung und dem Gerät eines Endbenutzers zu ermöglichen. Weitere Informationen zum WebRTC-Standard finden Sie unter WebRTC.

      { "version":"0", "messageId":"6a7e8feb-b491-4cf7-a9f1-bf3703467718", "messageType":"DEVICE_COMMAND_REQUEST", "source":"aws.iotmanagedintegrations", "customerAccountId":"123456789012", "timestamp":"2017-12-22T18:43:48Z", "region":"ca-central-1", "resources":[ "arn:aws:iotmanagedintegrations:ca-central-1:123456789012:managed-thing/6a7e8feb-b491-4cf7-a9f1-bf3703467718" ], "payload":{ "endpoints":[{ "endpointId":"1", "capabilities":[{ "id":"aws.DoorLock", "name":"Door Lock", "version":"1.0" }] }] } }
  • DEVICE_DISCOVERY_STATUS

    • Der Erkennungsstatus des Geräts.

      { "version":"0", "messageId":"6a7e8feb-b491-4cf7-a9f1-bf3703467718", "messageType":"DEVICE_DISCOVERY_STATUS", "source":"aws.iotmanagedintegrations", "customerAccountId":"123456789012", "timestamp":"2017-12-22T18:43:48Z", "region":"ca-central-1", "resources":[ "arn:aws:iotmanagedintegrations:ca-central-1:123456789012:managed-thing/6a7e8feb-b491-4cf7-a9f1-bf3703467718" ], "payload":{ "deviceCount": 1, "deviceDiscoveryId": "123", "status": "SUCCEEDED" } }
  • DEVICE_EVENT

    • Eine Benachrichtigung über das Eintreten eines Geräteereignisses.

      { "version":"1.0", "messageId":"2ed545027bd347a2b855d28f94559940", "messageType":"DEVICE_EVENT", "source":"aws.iotmanagedintegrations", "customerAccountId":"123456789012", "timestamp":"1731630247280", "resources":[ "/quit/1b15b39992f9460ba82c6c04595d1f4f" ], "payload":{ "endpoints":[{ "endpointId":"1", "capabilities":[{ "id":"aws.DoorLock", "name":"Door Lock", "version":"1.0", "properties":[{ "name":"ActuatorEnabled", "value":"true" }] }] }] } }
  • DEVICE_LIFE_CYCLE

    • Der Status des Gerätelebenszyklus.

      { "version": "1.0.0", "messageId": "8d1e311a473f44f89d821531a0907b05", "messageType": "DEVICE_LIFE_CYCLE", "source": "aws.iotmanagedintegrations", "customerAccountId": "123456789012", "timestamp": "2024-11-14T19:55:57.568284645Z", "region": "ca-central-1", "resources": [ "arn:aws:iotmanagedintegrations:ca-central-1:123456789012:managed-thing/d5c280b423a042f3933eed09cf408657" ], "payload": { "deviceDetails": { "id": "d5c280b423a042f3933eed09cf408657", "arn": "arn:aws:iotmanagedintegrations:ca-central-1:123456789012:managed-thing/d5c280b423a042f3933eed09cf408657", "createdAt": "2024-11-14T19:55:57.515841147Z", "updatedAt": "2024-11-14T19:55:57.515841559Z" }, "status": "UNCLAIMED" } }
  • DEVICE_OTA

    • Eine OTA-Benachrichtigung für ein Gerät.

  • DEVICE_STATE

    • Eine Benachrichtigung, wenn der Status eines Geräts aktualisiert wurde.

      { "messageType": "DEVICE_STATE", "source": "aws.iotmanagedintegrations", "customerAccountId": "123456789012", "timestamp": "1731623291671", "resources": [ "arn:aws:iotmanagedintegrations:ca-central-1:123456789012:managed-thing/61889008880012345678" ], "payload": { "addedStates": { "endpoints": [{ "endpointId": "nonEndpointId", "capabilities": [{ "id": "aws.OnOff", "name": "On/Off", "version": "1.0", "properties": [{ "name": "OnOff", "value": { "propertyValue": "\"onoff\"", "lastChangedAt": "2024-06-11T01:38:09.000414Z" } } ]} ]} ]} } }