Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Configurar las notificaciones en Kinesis Video Streams
Cuando un fragmento multimedia está disponible para su consumo, Kinesis Video Streams lo notifica a los clientes mediante notificaciones Amazon Simple Notification Service (Amazon SNS).
nota
Amazon Kinesis Video Streams utiliza los temas estándar de Amazon SNS para la comunicación. Los temas de FIFO no son compatibles actualmente.
En los siguientes temas se explica cómo empezar a utilizar las notificaciones.
Temas
Gestione las configuraciones de notificaciones
Para administrar las configuraciones de notificaciones, utilice UpdateNotificationConfiguration yDescribeNotificationConfiguration. Para obtener más información, consulte las secciones siguientes.
UpdateNotificationConfiguration
Utilice esta operación de API para actualizar la información de notificación de una transmisión. Para obtener más información sobre la UpdateNotificationConfiguration función, consulte UpdateNotificationConfiguration la guía para desarrolladores de Amazon Kinesis Video Streams.
nota
Se tarda al menos un minuto en iniciar la notificación después de actualizar la configuración de la notificación. Espere al menos un minuto antes de invocar PutMedia después de la llamada de actualización.
DescribeNotificationConfiguration
Usa esta API para describir una configuración de notificaciones adjunta a una transmisión. Para obtener más información sobre la DescribeNotificationConfiguration función, consulte DescribeNotificationConfiguration la guía para desarrolladores de Amazon Kinesis Video Streams.
Acerca de las etiquetas MKV del productor
Puede usar el SDK de productor de Kinesis Video Streams para etiquetar fragmentos de interés específicos exponiendo una operación de la API en el SDK. Vea un ejemplo de cómo funciona esto en esta sección del código.
Todos los metadatos de los fragmentos que se proporcionen junto con las etiquetas MKV de notificación se publicarán como parte de la carga útil de temas de Amazon SNS.
Sintaxis de las etiquetas MKV del productor
|+ 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
Límites de etiquetas MKV
En la siguiente tabla se enumeran las limitaciones asociadas a las etiquetas de metadatos. Si el límite de etiquetas de metadatos es ajustable, puedes solicitar un aumento a través de tu administrador de cuentas.
| Límite | Valor máximo | Ajustable |
|---|---|---|
|
Longitud de la clave de metadatos opcional |
128 |
No |
|
Longitud opcional del valor de los metadatos |
256 |
No |
|
Cantidad máxima de metadatos opcionales |
10 |
Sí |
Mensajes de Amazon SNS
Este tema contiene más información sobre los mensajes de Amazon SNS y la carga útil de temas.
Carga útil de temas de Amazon SNS
Cualquier notificación que se inicie mediante el flujo de trabajo anterior entregará la carga útil de temas de Amazon SNS, tal y como se muestra en el siguiente ejemplo. Este ejemplo es un mensaje de Amazon SNS que aparece después de consumir datos de notificaciones de una cola Amazon Simple Queue Service (Amazon SQS).
{ "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} }
Vea sus mensajes de Amazon SNS
No puede leer los mensajes directamente de un tema de Amazon SNS porque no hay ninguna API que lo haga. Para ver los mensajes, suscríbase a una cola de SQS para ver el tema de SNS o elija cualquier otro destino compatible con Amazon SNS. Sin embargo, la opción más eficaz para ver los mensajes es utilizar Amazon SQS.
Para ver sus mensajes de Amazon SNS mediante Amazon SQS
-
Cree una cola de Amazon SQS.
-
Desde Consola de administración de AWS, abra el tema de Amazon SNS establecido como destino en.
NotificationConfiguration -
Seleccione Crear suscripción y, a continuación, elija la cola de Amazon SQS creada en el primer paso.
-
Ejecute una
PutMediasesión con la configuración de notificaciones habilitada y con las etiquetas MKV de notificación añadidas a los fragmentos. -
Elija la cola de Amazon SQS en la consola de Amazon SQS y, a continuación, seleccione Enviar y recibir mensajes para la cola de Amazon SQS.
-
Encuesta de mensajes. Este comando debería mostrar todas las notificaciones generadas por la
PutMediasesión. Para obtener información sobre las encuestas, consulte las encuestas cortas y largas de Amazon SQS.
Cross-account Publicación de notificaciones de Amazon SNS
Para publicar las notificaciones de Amazon SNS sobre un tema de otra AWS cuenta, debe configurar políticas basadas en la identidad y en los recursos. Esta configuración permite a Kinesis Video Streams publicar notificaciones de una cuenta en un tema de Amazon SNS de otra cuenta.
Identity-based configuración de políticas
El rol o usuario de IAM que llama a la PutMedia API debe tener sns:Publish permisos para el tema multicuenta de Amazon SNS. Agregue la siguiente declaración de política a la política basada en la identidad:
Resource-based configuración de políticas
El tema de Amazon SNS de la cuenta de destino debe tener una política de acceso basada en los recursos que permita a la cuenta de origen publicar mensajes. Configure la política de acceso a temas de Amazon SNS de la siguiente manera:
<kvs_streams_account_id>Sustitúyala por la ID de la AWS cuenta en la que se encuentran tus transmisiones de Kinesis Video Streams y <sns_topic_arn> por el ARN de tu tema de Amazon SNS.
Requisitos y consideraciones
-
Para que funcione la publicación multicuenta, se deben configurar tanto la política basada en la identidad (en la cuenta de origen) como la política basada en los recursos (en la cuenta de destino).
-
La función de IAM utilizada para
PutMedialas operaciones debe incluirsns:Publishpermisos, incluso cuando se utilicen certificados de IoT con alias de rol.