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 in Kinesis Video Streams einrichten
Wenn ein Medienfragment zur Nutzung verfügbar ist, benachrichtigt Kinesis Video Streams Kunden mithilfe von Amazon Simple Notification Service (Amazon SNS) -Benachrichtigungen.
Anmerkung
Amazon Kinesis Video Streams verwendet Amazon SNS-Standardthemen für die Kommunikation. FIFO-Themen werden derzeit nicht unterstützt.
In den folgenden Themen wird erläutert, wie Sie mit Benachrichtigungen beginnen.
Themen
Benachrichtigungskonfigurationen verwalten
Verwenden Sie UpdateNotificationConfiguration und, um Benachrichtigungskonfigurationen zu verwaltenDescribeNotificationConfiguration. Weitere Informationen hierzu finden Sie unten.
UpdateNotificationConfiguration
Verwenden Sie diesen API-Vorgang, um die Benachrichtigungsinformationen für einen Stream zu aktualisieren. Weitere Informationen zu dieser UpdateNotificationConfiguration Funktion finden Sie UpdateNotificationConfiguration im Amazon Kinesis Video Streams-Entwicklerhandbuch.
Anmerkung
Nach der Aktualisierung der Benachrichtigungskonfiguration dauert es mindestens eine Minute, um die Benachrichtigung zu initiieren. Warten Sie PutMedia nach dem Aktualisierungsaufruf mindestens eine Minute, bevor Sie den Vorgang aufrufen.
DescribeNotificationConfiguration
Verwenden Sie diese API, um eine Benachrichtigungskonfiguration zu beschreiben, die an einen Stream angehängt ist. Weitere Informationen zu dieser DescribeNotificationConfiguration Funktion finden Sie DescribeNotificationConfiguration im Amazon Kinesis Video Streams-Entwicklerhandbuch.
Über die MKV-Tags des Herstellers
Sie können das Producer SDK von Kinesis Video Streams verwenden, um bestimmte Fragmente von Interesse zu kennzeichnen, indem Sie eine API-Operation im SDK verfügbar machen. Ein Beispiel dafür, wie das funktioniert, finden Sie in diesem Codeabschnitt.
Alle Fragment-Metadaten, die zusammen mit den MKV-Tags für Benachrichtigungen bereitgestellt werden, werden als Teil der Amazon SNS-Themen-Payload veröffentlicht.
Syntax für Hersteller-MKV-Tags
|+ Tags | + Tag | // MANDATORY: Predefined MKV tag to trigger the notification for the fragment | + Simple | + Name: AWS_KINESISVIDEO_NOTIFICATION | + String | // OPTIONAL: Key value pairs that will be sent as part of the Notification payload | + Simple | + Name:CUSTOM_KEY_1// Max 128 bytes | + String:CUSTOM_VALUE_1// Max 256 bytes | + Simple | + Name:CUSTOM_KEY_2// Max 128 bytes | + String:CUSTOM_VALUE_2// Max 256 bytes
Grenzwerte für MKV-Tags
In der folgenden Tabelle sind die mit den Metadaten-Tags verbundenen Einschränkungen aufgeführt. Wenn das Limit für Metadaten-Tags anpassbar ist, können Sie bei Ihrem Account Manager eine Erhöhung beantragen.
| Limit | Maximaler Wert | Einstellbar |
|---|---|---|
|
Optionale Schlüssellänge für Metadaten |
128 |
Nein |
|
Optionale Länge des Metadatenwerts |
256 |
Nein |
|
Maximale Anzahl optionaler Metadaten |
10 |
Ja |
Amazon SNS-Nachrichten
Dieses Thema enthält weitere Informationen zu Amazon SNS-Nachrichten und Themen-Payloads.
Payload zum Thema Amazon SNS
Jede Benachrichtigung, die über den vorherigen Workflow initiiert wurde, liefert die Payload für das Amazon SNS-Thema, wie im folgenden Beispiel gezeigt. Bei diesem Beispiel handelt es sich um eine Amazon SNS-Nachricht, die nach dem Verbrauch von Benachrichtigungsdaten aus einer Amazon Simple Queue Service (Amazon SQS) -Warteschlange auftritt.
{ "Type" : "Notification", "MessageId" :Message ID, "TopicArn" :SNS ARN, "Subject" : "Kinesis Video Streams Notification", "Message" : "{\"StreamArn\":\Stream Arn,\"FragmentNumber\":\Fragment Number,\"FragmentStartProducerTimestamp\":FragmentStartProducerTimestamp, \"FragmentStartServerTimestamp\":FragmentStartServerTimestamp,\"NotificationType\":\"PERSISTED\",\"NotificationPayload\":{\CUSTOM_KEY_1:\CUSTOM_VALUE_1, \CUSTOM_KEY_2:\CUSTOM_VALUE_2}}", "Timestamp" : "2022-04-25T18:36:29.194Z", "SignatureVersion" :Signature Version, "Signature" :Signature, "SigningCertURL" :Signing Cert URL, "UnsubscribeURL" :Unsubscribe URL}
Subject: "Kinesis Video Streams Notification" Message: { "StreamArn":Stream Arn, "FragmentNumber":Fragment Number, "FragmentStartProducerTimestamp":Fragment Start Producer Timestamp, "FragmentStartServerTimestamp":Fragment Start Server Timestamp, "NotificationType":"PERSISTED", "NotificationPayload":{CUSTOM_KEY_1:CUSTOM_VALUE_1,CUSTOM_KEY_2:CUSTOM_VALUE_2} }
Sehen Sie sich Ihre Amazon SNS-Nachrichten an
Sie können Nachrichten nicht direkt aus einem Amazon SNS-Thema lesen, da es dafür keine API gibt. Um die Nachrichten anzusehen, abonnieren Sie eine SQS-Warteschlange für das SNS-Thema oder wählen Sie ein anderes von Amazon SNS unterstütztes Ziel. Die effizienteste Option zum Anzeigen von Nachrichten ist jedoch die Verwendung von Amazon SQS.
Um Ihre Amazon SNS-Nachrichten mithilfe von Amazon SQS anzuzeigen
-
Erstellen Sie eine Amazon SQS-Warteschlange.
-
Öffnen Sie in der das Amazon SNS-Thema AWS-Managementkonsole, das als Ziel unter festgelegt wurde.
NotificationConfiguration -
Wählen Sie Create Subscription und dann die Amazon SQS-Warteschlange aus, die im ersten Schritt erstellt wurde.
-
Führen Sie eine
PutMediaSitzung mit aktivierter Benachrichtigungskonfiguration aus und fügen Sie den Fragmenten die MKV-Tags für Benachrichtigungen hinzu. -
Wählen Sie in der Amazon SQS-Konsole die Amazon SQS-Warteschlange aus und wählen Sie dann Nachrichten senden und empfangen für die Amazon SQS-Warteschlange aus.
-
Umfrage nach Nachrichten. Dieser Befehl sollte alle von der
PutMediaSitzung generierten Benachrichtigungen anzeigen. Informationen zu Polling finden Sie unter Amazon SQS short and long polling.
Cross-account Veröffentlichung von Amazon SNS-Benachrichtigungen
Um Amazon SNS-Benachrichtigungen zu einem Thema in einem anderen AWS Konto zu veröffentlichen, müssen Sie sowohl identitätsbasierte als auch ressourcenbasierte Richtlinien konfigurieren. Diese Konfiguration ermöglicht es Kinesis Video Streams, Benachrichtigungen von einem Konto zu einem Amazon SNS-Thema in einem anderen Konto zu veröffentlichen.
Identity-based Konfiguration der Richtlinie
Die IAM-Rolle oder der IAM-Benutzer, der die PutMedia API aufruft, muss über sns:Publish Berechtigungen für das kontoübergreifende Amazon SNS-Thema verfügen. Fügen Sie der identitätsbasierten Richtlinie die folgende Richtlinienerklärung hinzu:
Resource-based Konfiguration der Richtlinie
Das Amazon SNS-Thema im Zielkonto muss über eine ressourcenbasierte Zugriffsrichtlinie verfügen, die es dem Quellkonto ermöglicht, Nachrichten zu veröffentlichen. Konfigurieren Sie die Zugriffsrichtlinie für Amazon SNS-Themen wie folgt:
<kvs_streams_account_id>Ersetzen Sie es durch die AWS Konto-ID, unter der sich Ihre Kinesis Video Streams-Streams befinden, und <sns_topic_arn> durch den ARN Ihres Amazon SNS-Themas.
Anforderungen und Überlegungen
-
Sowohl die identitätsbasierte Richtlinie (im Quellkonto) als auch die ressourcenbasierte Richtlinie (im Zielkonto) müssen konfiguriert werden, damit die kontoübergreifende Veröffentlichung funktioniert.
-
Die für
PutMediaOperationen verwendete IAM-Rolle musssns:PublishBerechtigungen enthalten, auch wenn IoT-Zertifikate mit Rollenaliasen verwendet werden.