

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

# Speak
<a name="speak"></a>

È possibile riprodurre la voce in qualsiasi fase di chiamata inserendo un testo. È possibile utilizzare testo semplice o Speech Synthesis Markup Language (SSML). SSML offre un maggiore controllo sul modo in cui l'SDK Amazon Chime genera il parlato aggiungendo pause, enfatizzando determinate parole o modificando lo stile di pronuncia.

L'SDK Amazon Chime utilizza il servizio Amazon Polly per la conversione. text-to-speech Amazon Polly ti consente di scegliere tra il motore standard o neurale per una migliore qualità del parlato. Amazon Polly supporta più di 20 lingue e 60 voci per personalizzare l'esperienza utente dell'applicazione. L'SDK Amazon Chime fornisce funzionalità vocali gratuitamente, ma l'utilizzo di Amazon Polly è a pagamento. Consulta la [pagina dei prezzi](https://aws.amazon.com/polly/pricing/) di Amazon Polly o la dashboard di fatturazione per informazioni sui prezzi.

**Importante**  
L'uso di Amazon Polly è soggetto ai Termini di [servizio AWS, inclusi i termini](https://aws.amazon.com/service-terms/) specifici dei servizi AWS Machine Learning e Artificial Intelligence.

**Topics**
+ [Utilizzo dell'azione Speak](#speak-action)
+ [Gestione degli eventi ACTION\_SUCCESSFUL](#speak-action-success)
+ [Gestione degli eventi ACTION\_FAILED](#speak-action-fail)
+ [Flussi del programma](#speak-flow)

## Utilizzo dell'azione Speak
<a name="speak-action"></a>

L'esempio seguente mostra un uso tipico dell'`Speak`azione.

```
{
    "SchemaVersion": "1.0",
    "Actions":[
        {
            "Type": "Speak",
            "Parameters": {
                "Text": "{{Hello, World!}}",        // required
                "CallId": "{{call-id-1}}",          // required
                "Engine": "{{neural}}",             // optional. Defaults to standard
                "LanguageCode": "{{en-US}}",        // optional
                "TextType": "{{text}}",             // optional
                "VoiceId": "{{Joanna}}"             // optional. Defaults to Joanna
            }
        }
    ]
}
```

**CallId**  
*Descrizione* — Il `CallId` partecipante alla chiamata `CallDetails` della funzione Lambda  
*Valori consentiti*: un ID di chiamata valido  
*Obbligatorio*: sì  
*Valore predefinito* - nessuno

**Text**  
*Descrizione*: specifica il testo di input da sintetizzare in voce. Se si specifica `ssml` come `TextType`, seguire il formato SSML per il testo di input.  
*Valori consentiti*: stringa  
*Obbligatorio*: sì  
*Valore predefinito* - nessuno

**Engine**  
*Descrizione*: specifica il motore, standard o neurale, da utilizzare per l'elaborazione del testo per la sintesi vocale.  
*Valori consentiti: standard \| neurali*  
*Obbligatorio*: no  
*Valore predefinito*: standard

**LanguageCode**  
*Descrizione*: specifica il codice della lingua. Necessario solo se si utilizza una voce bilingue. Se si utilizza una voce bilingue senza un codice linguistico, viene utilizzata la lingua predefinita della voce bilingue.  
*Valori consentiti*: [codici di lingua Amazon Polly](https://docs.aws.amazon.com/polly/latest/dg/API_SynthesizeSpeech.html#polly-SynthesizeSpeech-request-LanguageCode)  
*Obbligatorio*: no  
*Valore predefinito* - nessuno

**TextType**  
*Descrizione*: specifica il tipo di testo di input, testo semplice o SSML. Se non viene specificato un tipo di input, come impostazione predefinita viene utilizzato il testo normale. *Per ulteriori informazioni su SSML, consulta [Generating Speech from SSML Documents](https://docs.aws.amazon.com/polly/latest/dg/ssml.html) nella Amazon Polly Developer Guide.*  
*Valori consentiti*: ssml \| text  
*Obbligatorio*: no  
*Valore predefinito* - nessuno

**VoiceId**  
*Descrizione*: specifica l'ID della voce che desideri utilizzare.  
*Valori consentiti* — [Amazon Polly voice IDs](https://docs.aws.amazon.com/polly/latest/dg/API_SynthesizeSpeech.html#polly-SynthesizeSpeech-request-VoiceId)  
*Obbligatorio*: no  
*Valore predefinito*: Joanna

## Gestione degli eventi ACTION\_SUCCESSFUL
<a name="speak-action-success"></a>

L'esempio seguente mostra un `ACTION_SUCCESSFUL` evento tipico di un'azione che sintetizza il testo «Hello World» in voce, in inglese, utilizzando la voce di Amazon Polly. `Joanna`

```
{
    "SchemaVersion": "1.0",
    "Sequence": {{3}},
    "InvocationEventType": "ACTION_SUCCESSFUL",
    "ActionData": {
       "Type": "Speak",
       "Parameters": {
          "CallId": "{{call-id-1}}",          
          "Engine":  "{{neural}}",             
          "LanguageCode":  "{{en-US}}",        
          "Text": "{{Hello World}}",          
          "TextType":  "{{text}}",             
          "VoiceId":  "{{Joanna}}"        
       }
    },
    "CallDetails":{       
       ...
    }
}
```

## Gestione degli eventi ACTION\_FAILED
<a name="speak-action-fail"></a>

L'esempio seguente mostra un `ACTION_FAILED` evento tipico per lo stesso evento utilizzato nell'esempio precedente.

```
{
    "SchemaVersion": "1.0",
    "Sequence":{{2}},
    "InvocationEventType": "ACTION_FAILED",
    "ActionData":{
       "Type": "Speak",
       "Parameters": {
          "CallId": "{{call-id-1}}",          
          "Engine":  "{{neural}}",             
          "LanguageCode":  "{{en-US}}",        
          "Text": "{{Hello  World}}",          
          "TextType":  "{{text}}",             
          "VoiceId":  "{{Joanna}}"        
       },
       "ErrorType": "SystemException",
       "ErrorMessage": "System error while running  action"
    },
    "CallDetails":{       
       ...
    }
}
```

**Gestione degli errori**  
Questa tabella elenca e descrive i messaggi di errore generati dall'`Speak`azione.


| Errore | Messaggio | Motivo | 
| --- | --- | --- | 
| `AccessDenied` | Il ruolo `AWSServiceRoleForAmazonChimeVoiceConnector` collegato al servizio non è configurato correttamente. | Il ruolo collegato al servizio utilizzato per effettuare richieste ad Amazon Polly non esiste o non dispone delle autorizzazioni. Per risolvere il problema, consulta i passaggi indicati nella sezione [Utilizzo del ruolo collegato al servizio Amazon Chime SDK Voice Connector](speak-and-get-digits.md#speak-digits-policy) | 
| `InvalidActionParameter` |   | Si è verificato un errore durante la convalida dei parametri dell'azione. Per ulteriori informazioni sui parametri, consulta l'[SynthesizeSpeech API](https://docs.aws.amazon.com/polly/latest/dg/API_SynthesizeSpeech) nella *Amazon Polly Developer Guide*. | 
| ActionExecutionThrottled | Amazon Polly sta limitando la richiesta di sintesi vocale. | La richiesta ad Amazon Polly restituisce un'eccezione di limitazione. [Per ulteriori informazioni sui limiti di limitazione di Amazon Polly, https://docs.aws.amazon.com/polly/ latest/dg/limits consulta .html \#limits -throttle.](https://docs.aws.amazon.com/polly/latest/dg/limits.html#limits-throttle) | 
| `MissingRequiredActionParameter` | `Text`è un parametro obbligatorio. | Questi parametri di azione devono avere un `Text` valore | 
| `MissingRequiredActionParameter` | `Text`è limitato a 1.000 caratteri | Il testo ha superato il limite di caratteri. | 
| `SystemException` | Errore di sistema durante l'esecuzione dell'azione. | Si è verificato un errore di sistema durante l'esecuzione dell'azione. | 

## Flussi del programma
<a name="speak-flow"></a>

Il diagramma seguente mostra il flusso del programma che abilita l'`Speak`azione per un chiamante. In questo esempio, il chiamante sente il testo che 

![Diagramma che mostra il flusso del programma per abilitare l'Speakazione per un chiamante.](http://docs.aws.amazon.com/it_it/chime-sdk/latest/dg/images/Speak1.png)


**Nel diagramma**  
Utilizzando un softphone, un chiamante inserisce un numero registrato in un'applicazione multimediale SIP. L'applicazione utilizza il `INVITE` metodo SIP e invia una risposta al chiamante. `Trying (100)` Ciò indica che il server next-hop ha ricevuto la richiesta di chiamata. L'applicazione SIP utilizza quindi `INVITE` per contattare l'endpoint. Una volta stabilita la connessione, le applicazioni inviano `Ringing (180)` una risposta al chiamante e inizia l'avviso. 

L'applicazione multimediale SIP invia quindi un `NEW_INBOUND_CALL` evento alla funzione Lambda, che risponde con `Speak` un'azione che include l'ID del chiamante e il testo che si desidera convertire in voce. L'applicazione SIP invia quindi una `200 (OK)` risposta per indicare che la chiamata ha avuto risposta. Il protocollo abilita anche i media. 

Se l'`Speak`azione ha esito positivo e converte il testo in voce, restituisce un `ACTION_SUCCESSFUL` evento all'applicazione multimediale SIP, che restituisce il set di azioni successivo. Se l'azione fallisce, l'applicazione multimediale SIP invia un `ACTION_FAILED` evento alla funzione Lambda, che risponde con una serie di azioni. `Hangup` L'applicazione riaggancia il chiamante e restituisce un `HANGUP` evento alla funzione Lambda, che non esegue ulteriori azioni. 



Il diagramma seguente mostra il flusso del programma che abilita l'`Speak`azione per un chiamante.

![Diagramma che mostra il flusso del programma per abilitare l'Speakazione per un chiamante. È possibile eseguire questa operazione su qualsiasi chiamata interconnessa.](http://docs.aws.amazon.com/it_it/chime-sdk/latest/dg/images/Speak2.png)


**Nel diagramma**  
Un chiamante inserisce un numero registrato in un'applicazione multimediale SIP e l'applicazione risponde come descritto nel diagramma precedente. Quando la funzione Lambda riceve l'`NEW_INBOUND_CALL`evento, restituisce l'[CallAndBridge](call-and-bridge.md)azione all'applicazione SIP. L'applicazione utilizza quindi il `INVITE` metodo SIP per inviare le `Ringing (180)` risposte `Trying (100)` e al chiamante. 

Se il chiamante risponde, l'applicazione multimediale SIP riceve una `200 (OK)` risposta e invia la stessa risposta al chiamante. Ciò stabilisce i media e l'applicazione SIP invia un `ACTION_SUCCESSFUL` evento per l'[CallAndBridge](call-and-bridge.md)azione alla funzione Lambda. La funzione restituisce quindi l'azione e i dati Speak all'applicazione SIP, che converte 