

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à.

# Abilitare lo streaming di messaggi di chat in tempo reale in Amazon Connect
<a name="chat-message-streaming"></a>

Amazon Connect Chat consente [APIs](https://docs.aws.amazon.com/connect/latest/APIReference/Welcome.html)di abbonarsi a un flusso di messaggi di chat in tempo reale. Usando questi APIs, puoi: 
+ Eseguire lo streaming di messaggi in tempo reale quando viene creato un nuovo contatto di chat.
+ Estendere l’attuale funzionalità di chat di Amazon Connect in modo che supporti casi d’uso come la creazione di integrazioni con soluzioni SMS e applicazioni di messaggistica di terze parti, l’abilitazione di notifiche push per dispositivi mobili e la creazione di dashboard analitiche per monitorare e tracciare l’attività dei messaggi di chat. 

**Nota**  
Questa pagina descrive come abbonarsi a un endpoint SNS per lo streaming in tempo reale di messaggi di chat in Amazon Connect. Se stai cercando di abilitare lo streaming di messaggi per le interazioni conversazionali di intelligenza artificiale in Amazon Connect, consulta. [Abilita lo streaming di messaggi per la chat basata sull'intelligenza artificiale](message-streaming-ai-chat.md)

## Come funziona lo streaming dei messaggi APIs
<a name="how-chat-message-streaming-apis-work"></a>

Lo [streaming APIs dei messaggi di Amazon Connect](https://docs.aws.amazon.com/connect/latest/APIReference/Welcome.html) viene attivato quando si verificano determinati eventi all'interno di un contatto Amazon Connect Chat. Ad esempio, quando un cliente invia un nuovo messaggio di chat, l'evento trasmette un [payload](sns-payload.md) a un endpoint specifico contenente dati sul messaggio appena inviato. I messaggi vengono pubblicati su un endpoint specifico utilizzando [Amazon Simple Notification Service](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) (Amazon SNS). 

In questo argomento viene descritto come configurare lo streaming di messaggi in tempo reale utilizzando Amazon Connect e Amazon SNS. La procedura è la seguente: 

1. Utilizza la console Amazon SNS per creare un nuovo argomento SNS standard e configurare i messaggi.

1. Chiama l'[StartChatContact](https://docs.aws.amazon.com/connect/latest/APIReference/API_StartChatContact.html)API per avviare il contatto in chat.

1. Chiama l'[StartContactStreaming](https://docs.aws.amazon.com/connect/latest/APIReference/API_StartContactStreaming.html)API per avviare lo streaming dei messaggi. 

1. Chiama l'[CreateParticipantConnection](https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_CreateParticipantConnection.html)API per creare la connessione del partecipante.

## Passaggio 1: creare un argomento Amazon SNS standard.
<a name="step1-chat-streaming"></a>

1. Accedi alla console Amazon SNS. 

1. [Crea un argomento SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-create-topic.html) nel tuo AWS account. Nella sezione **Dettagli**, per **Tipo** scegli **Standard**, inserisci un nome per l'argomento e seleziona **Crea argomento**.
**Nota**  
Attualmente, lo streaming dei messaggi supporta APIs solo lo standard SNS per lo streaming di messaggi in tempo reale. mentre quelli [Amazon SNS FIFO (First-In, First-Out)](https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html) non sono supportati. 

1. Una volta creato l'argomento, il relativo nome della risorsa Amazon (ARN) viene mostrato nella sezione **Dettagli**. Copia l'ARN dell'argomento negli appunti. Lo utilizzerai nel passaggio successivo e in [Passaggio 3: abilitare lo streaming dei messaggi sul contatto](#step3-chat-streaming). 

   L'argomento ARN è simile al seguente esempio: 

   ```
   arn:aws:sns:{{us-east-1}}:{{123456789012}}:{{MyTopic}}                                
   ```

1. Apri la scheda **Policy di accesso**, scegli **Modifica**, quindi aggiungi una policy basata su risorse per l'argomento SNS che fornisca ad Amazon Connect l'autorizzazione a pubblicare su di esso. Di seguito è riportato un esempio di policy SNS che puoi copiare e incollare nell'editor JSON e personalizzare con i tuoi valori: 

------
#### [ JSON ]

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement":[
         {
            "Effect":"Allow",
            "Principal":{
               "Service":"connect.amazonaws.com"
            },
            "Action":"sns:Publish",
            "Resource":"arn:aws:sns:{{us-east-1}}:{{111122223333}}:{{TopicName}}",
            "Condition":{
               "StringEquals":{
                   "aws:SourceAccount":"{{111122223333}}"
               },
               "ArnEquals":{
               "aws:SourceArn":"arn:aws:connect:{{us-east-1}}:{{111122223333}}:instance/{{InstanceId}}"
               }
            }
         }
      ]
   }
   ```

------
**Nota**  
La **policy di accesso** predefinita prevede l'applicazione a `sourceOwner` di condizioni quali:   

   ```
   "Condition": {
           "StringEquals": {
             "AWS:SourceOwner": "921772911154"
           }
         }
   ```
Assicurati di rimuoverla e di sostituirla con `SourceAccount`, ad esempio:  

   ```
   "Condition":{
               "StringEquals":{
                  "aws:SourceAccount":"YOUR_AWS_ACCOUNT_ID"
               },
               "ArnEquals":{
                  "aws:SourceArn":"YOUR_CONNECT_INSTANCE_ARN"
               }
            }
   ```
Ciò eviterà che si verifichi un problema di [“confused deputy” tra i servizi](cross-service-confused-deputy-prevention.md). 

1. Se utilizzi la crittografia lato server su SNS, verifica di avere abilitata l'autorizzazione `connect.amazonaws.com` su KMS key. Di seguito è riportata una policy di esempio:

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Id": "key-consolepolicy-3",
       "Statement": [
           {
               "Sid": "Enable IAM User Permissions",
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::{{111122223333}}:root",
                   "Service": "connect.amazonaws.com"
               },
               "Action": "kms:*",
               "Resource": "*"
           },
           {
               "Sid": "Allow access for Key Administrators",
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::{{111122223333}}:root",
                   "Service": "connect.amazonaws.com"
               },
               "Action": [
                   "kms:Create*",
                   "kms:Describe*",
                   "kms:Enable*",
                   "kms:List*",
                   "kms:Put*",
                   "kms:Update*",
                   "kms:Revoke*",
                   "kms:Disable*",
                   "kms:Get*",
                   "kms:Delete*",
                   "kms:TagResource",
                   "kms:UntagResource",
                   "kms:ScheduleKeyDeletion",
                   "kms:CancelKeyDeletion"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

------

## Passaggio 2: avviare il contatto di chat
<a name="step2-chat-streaming"></a>

1. Chiama l'[StartChatContact](https://docs.aws.amazon.com/connect/latest/APIReference/API_StartChatContact.html)API Amazon Connect per avviare il contatto di chat. 

   Per informazioni su come creare il client SDK per chiamare Amazon Connect APIs, consulta i seguenti argomenti:
   + [Classe AmazonConnectClientBuilder](https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/connect/AmazonConnectClientBuilder.html) 
   + [Creazione di client del servizio](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/creating-clients.html) 

1. Tieni traccia della risposta `ContactId` e `ParticipantToken` della [StartChatContact](https://docs.aws.amazon.com/connect/latest/APIReference/API_StartChatContact.html)risposta poiché questi attributi di risposta vengono utilizzati per chiamare altre chat APIs necessarie per abilitare lo streaming. Ciò viene descritto nei passaggi successivi.

## Passaggio 3: abilitare lo streaming dei messaggi sul contatto
<a name="step3-chat-streaming"></a>
+ Chiama [StartContactStreaming](https://docs.aws.amazon.com/connect/latest/APIReference/API_StartContactStreaming.html)per abilitare lo streaming di messaggi in tempo reale sul tuo argomento SNS.
  + **Limiti**: puoi iscriverti a un massimo di due argomenti SNS per contatto.
  + Quando chiami [StartContactStreaming](https://docs.aws.amazon.com/connect/latest/APIReference/API_StartContactStreaming.html), devi fornire l'Amazon Resource Name (ARN) dell'argomento SNS (vedi). [Passaggio 1: creare un argomento Amazon SNS standard.](#step1-chat-streaming)

    L'ARN di un singolo argomento SNS può essere utilizzato su Account AWS più argomenti, ma deve trovarsi nella stessa regione dell'istanza Amazon Connect. **Ad esempio, se l'argomento ARN è in us-east-1**, l'istanza Amazon Connect deve essere in us-east-1**.**
  + Per i messaggi di chat iniziali che non vengono ricevuti sull'endpoint di streaming, puoi chiamare l'[GetTranscript](https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_GetTranscript.html)API per ricevere i messaggi iniziali.

## Passaggio 4: creare la connessione del partecipante
<a name="step4-chat-streaming"></a>
+ Chiamata [CreateParticipantConnection](https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_CreateParticipantConnection.html)con l'`ConnectParticipant`attributo passato come vero. 
  + È necessario chiamare [CreateParticipantConnection](https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_CreateParticipantConnection.html)entro cinque minuti dalla creazione della chat.
  + Le chiamate [CreateParticipantConnection](https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_CreateParticipantConnection.html)con `ConnectParticipant` set to true funzionano solo se hai abilitato lo streaming [Passaggio 2: avviare il contatto di chat](#step2-chat-streaming) e il partecipante chiamante lo è. `Customer`
  + Questo passaggio (creazione della connessione del partecipante) è facoltativo se hai già stabilito con successo la connessione al contatto della chat utilizzando `WEBSOCKET`.

## Fasi successive
<a name="nextsteps-chat-streaming"></a>

Sei pronto per lavorare con lo streaming dei messaggi. APIs

1. Per assicurarti che funzioni correttamente, verifica che i messaggi vengano pubblicati sull'argomento SNS che hai creato. Puoi farlo utilizzando i CloudWatch parametri di Amazon. Per istruzioni, consulta gli [argomenti relativi al monitoraggio dell'utilizzo di Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-monitoring-using-cloudwatch.html). CloudWatch 

1. Poiché SNS offre [opzioni di conservazione limitate](https://aws.amazon.com/blogs//aws/sns-ttl-control/), è consigliabile configurare [Amazon Simple Queue Service (Amazon SQS)](https://aws.amazon.com/sqs/), [Amazon Kinesis](https://aws.amazon.com/kinesis/) o un altro servizio per la conservazione dei messaggi. 

1. L'utilizzo [StopContactStreaming](https://docs.aws.amazon.com/connect/latest/APIReference/API_StopContactStreaming.html)è facoltativo e non richiesto se le chat vengono [disconnesse](disconnect-hang-up.md) tramite un flusso di contatti o se il cliente disconnette la chat. Tuttavia, `StopContactStreaming` offre la possibilità di interrompere lo streaming dei messaggi sull'argomento SNS anche se la chat è attiva e in corso.