Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Usa il payload di Amazon SNS dopo aver abilitato lo streaming di messaggi in Connect Customer
Dopo aver abilitato con successo lo streaming dei messaggi, potresti dover filtrare il messaggio per inviarlo al partecipante previsto: agente, cliente o tutti.
Per filtrare in base al partecipante, leggi l'attributo specifico delle intestazioni SNS, MessageVisibility, per stabilire se il messaggio è destinato solo al cliente, solo all'agente o a tutti.
-
Invio solo al cliente: per tutto il codice rivolto al cliente, i client devono filtrare i messaggi destinati a quest'ultimo e creare la seguente logica per inoltrarglieli.
if ( ( MessageVisibility == CUSTOMER || MessageVisibility == ALL) && ParticipantRole != CUSTOMER ) -
Invio solo all'agente:
if ( ( MessageVisibility == AGENT || MessageVisibility == ALL) && ParticipantRole != AGENT )
Puoi anche utilizzare la funzionalità di filtro in Amazon SNS creando politiche di filtro degli abbonamenti personalizzate. In questo modo, la logica di filtro dei messaggi viene trasferita dall'abbonato dell'argomento SNS al servizio SNS stesso.
Attributi dei messaggi nel payload
Di seguito è riportata una descrizione di ogni attributo dei messaggi nel payload di Amazon SNS:
-
InitialContactId: l'ID del contatto iniziale della chat. -
ContactId: l'ID del contatto attuale della chat.InitialContactIdeContactIdpossono essere diversi se è presente un nuovo agente nella chat o nel flusso di contatti da una coda all'altra. -
ParticipantRole: il partecipante che ha inviato il messaggio. -
InstanceId: L'ID dell'istanza del cliente Connect. -
AccountId: L'ID AWS dell'account. -
Type: valori possibili:EVENT,MESSAGE. -
ContentType: valori possibili:application/vnd.amazonaws.connect.event.typing,application/vnd.amazonaws.connect.event.participant.joined,application/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.endede altri. -
MessageVisibility: valori possibili:AGENT,CUSTOMER,ALL.
Esempio di payload di SNS
{ "Type" : "Notification", "MessageId" : "ccccccccc-cccc-cccc-cccc-ccccccccccccc", "TopicArn" : "arn:aws:sns:us-west-2:111122223333: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"} } }