Uso de la carga útil de Amazon SNS después de habilitar la transmisión de mensajes en Amazon Connect - Amazon Connect

Uso de la carga útil de Amazon SNS después de habilitar la transmisión de mensajes en Amazon Connect

Una vez habilitado correctamente el streaming de mensajes, puede que necesite filtrar el mensaje para enviarlo al participante previsto: agente, cliente o todos.

Para filtrar por participante, lea el atributo MessageVisibility específico de los encabezados de SNS para determinar si el mensaje está destinado solo a clientes, solo a agentes o a todos.

  • Para enviar solo al cliente: para todo el código que se dirige al cliente, los clientes deben filtrar los mensajes destinados al cliente y crear la siguiente lógica para reenviarle el mensaje.

    if ( ( MessageVisibility == CUSTOMER || MessageVisibility == ALL) && ParticipantRole != CUSTOMER )
  • Para enviar solo al agente:

    if ( ( MessageVisibility == AGENT || MessageVisibility == ALL) && ParticipantRole != AGENT )

También puede aprovechar la capacidad de filtrado de Amazon SNS mediante la creación de políticas de filtrado de suscripciones personalizadas. Esto descarga la lógica de filtrado de mensajes del suscriptor de temas de SNS al propio servicio SNS.

Atributos de mensaje en la carga

A continuación, se describe cada atributo del mensaje en la carga de Amazon SNS:

  • InitialContactId: el ID de contacto inicial del chat.

  • ContactId: el ID de contacto actual del chat. InitialContactId y ContactId pueden variar si ha habido un nuevo agente en el chat o en el flujo de contacto de cola a cola.

  • ParticipantRole: el participante que ha enviado el mensaje.

  • InstanceId: el ID de instancia de Amazon Connect.

  • AccountId: el ID de cuenta de AWS.

  • Type: valores posibles: EVENT, MESSAGE.

  • ContentType: Valores posibles:application/vnd.amazonaws.connect.event.typing, application/vnd.amazonaws.connect.event.participant.joinedapplication/vnd.amazonaws.connect.event.participant.left,application/vnd.amazonaws.connect.event.transfer.succeeded,application/vnd.amazonaws.connect.event.transfer.failed,application/vnd.amazonaws.connect.message.interactive,application/vnd.amazonaws.connect.event.chat.ended, etc.

  • MessageVisibility: valores posibles: AGENT, CUSTOMER, ALL.

Ejemplo de carga de SNS

{ "Type" : "Notification", "MessageId" : "ccccccccc-cccc-cccc-cccc-ccccccccccccc", "TopicArn" : "arn:aws:sns:us-west-2:009969138378:connector-svc-test", "Message" : "{\"AbsoluteTime\":\"2021-09-08T13:28:24.656Z\",\"Content\":\"help\",\"ContentType\":\"text/plain\",\"Id\":\"333333333-be0d-4a44-889d-d2a86fc06f0c\",\"Type\":\"MESSAGE\",\"ParticipantId\":\"bbbbbbbb-c562-4d95-b76c-dcbca8b4b5f7\",\"DisplayName\":\"Jane\",\"ParticipantRole\":\"CUSTOMER\",\"InitialContactId\":\"33333333-abc5-46db-9ad5-d772559ab556\",\"ContactId\":\"33333333-abc5-46db-9ad5-d772559ab556\"}", "Timestamp" : "2021-09-08T13:28:24.860Z", "SignatureVersion" : "1", "Signature" : "examplegggggg/1tEBYdiVDgJgBoJUniUFcArLFGfg5JCvpOr/v6LPCHiD7A0BWy8+ZOnGTmOjBMn80U9jSzYhKbHDbQHaNYTo9sRyQA31JtHHiIseQeMfTDpcaAXqfs8hdIXq4XZaJYqDFqosfbvh56VPh5QgmeHTltTc7eOZBUwnt/177eOTLTt2yB0ItMV3NAYuE1Tdxya1lLYZQUIMxETTVcRAZkDIu8TbRZC9a00q2RQVjXhDaU3k+tL+kk85syW/2ryjjkDYoUb+dyRGkqMy4aKA22UpfidOtdAZ/GGtXaXSKBqazZTEUuSEzt0duLtFntQiYJanU05gtDig==", "SigningCertURL" : "https://sns.us-west-2.amazonaws.com/SimpleNotificationService-11111111111111111111111111111111.pem", "UnsubscribeURL" : "https://sns.us-west-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-west-2:000000000000:connector-svc-test:22222222-aaaa-bbbb-cccc-333333333333", "MessageAttributes" : { "InitialContactId" : {"Type":"String","Value":"33333333-abc5-46db-9ad5-d772559ab556"}, "MessageVisibility" : {"Type":"String","Value":"ALL"}, "Type" : {"Type":"String","Value":"MESSAGE"}, "AccountId" : {"Type":"String","Value":"999999999999"}, "ContentType" : {"Type":"String","Value":"text/plain"}, "InstanceId" : {"Type":"String","Value":"dddddddd-b64e-40c5-921b-109fd92499ae"}, "ContactId" : {"Type":"String","Value":"33333333-abc5-46db-9ad5-d772559ab556"}, "ParticipantRole" : {"Type":"String","Value":"CUSTOMER"} } }