

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

# RecordAudio
<a name="record-audio"></a>

Consente all'applicazione multimediale SIP di registrare contenuti multimediali da un determinato ID di chiamata. Ad esempio, un'applicazione di posta vocale e gli annunci dei partecipanti alla riunione. L'applicazione registra fino al raggiungimento della durata impostata, o quando un utente preme una delle opzioni o quando l'applicazione rileva il `RecordingTerminators` silenzio. In questi casi, l'azione indica all'applicazione di inserire il file multimediale risultante nel bucket S3 specificato. Il bucket S3 deve appartenere allo stesso AWS account dell'applicazione multimediale SIP. Inoltre, l'azione deve concedere `s3:PutObject` l'`s3:PutObjectAcl`autorizzazione al responsabile del servizio Amazon Chime SDK Voice Connector, al responsabile del servizio [Amazon Chime SDK](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html) Voice Connector,. `voiceconnector.chime.amazonaws.com` 

**Nota**  
Le registrazioni effettuate utilizzando questa funzionalità possono essere soggette a leggi o regolamenti relativi alla registrazione delle comunicazioni elettroniche. È responsabilità dell'utente e degli utenti finali rispettare tutte le leggi applicabili in materia di registrazione, inclusa la corretta notifica a tutti i partecipanti a una sessione o comunicazione registrata che la sessione o la comunicazione è in corso di registrazione e l'ottenimento del loro consenso.

L'esempio seguente fornisce l'`s3:PutObjectAcl`autorizzazione `s3:PutObject` e al responsabile del servizio Amazon Chime SDK Voice Connector.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "SMARead",
            "Effect": "Allow",
            "Principal": {
                "Service": "voiceconnector.chime.amazonaws.com"
            },
            "Action": [                
                "s3:PutObject",
                "s3:PutObjectAcl"
            ],
            "Resource": "arn:aws:s3:::bucket-name/*"
        }
    ]
}
```

------

L'esempio seguente interrompe la registrazione quando il chiamante preme il tasto cancelletto (\$1), o trascorrono 10 secondi senza alcuna attività, oppure il chiamante rimane in silenzio per 3 secondi e scrive il file multimediale risultante nella posizione definita dal parametro. `RecordingDestination`

**Nota**  
Questo esempio utilizza il parametro. `CallId` È possibile utilizzare invece il `ParticipantTag` parametro, ma non entrambi.

```
{
    "Type": "RecordAudio",
    "Parameters": {
        "CallId": "call-id-1",
        "DurationInSeconds": "10",
        "SilenceDurationInSeconds": 3,
        "SilenceThreshold": 100,
        "RecordingTerminators": [
            "#"
        ],
        "RecordingDestination": {
            "Type": "S3",
            "BucketName": "valid-bucket-name",
            "Prefix": "valid-prefix-name"
        }
    }
}
```

**CallId**  
*Descrizione*: `CallId` del partecipante all'`CallDetails`invocazione della AWS Lambda funzione  
*Valori consentiti*: un ID di chiamata valido  
*Obbligatorio*: no  
*Valore predefinito* - nessuno

**ParticipantTag**  
*Descrizione*: `ParticipantTag` di uno dei partecipanti connessi al `CallDetails`  
*Valori consentiti*, `LEG-A` oppure `LEG-B`  
*Obbligatorio*: no  
*Valore predefinito: `ParticipantTag` del valore* `callLeg` Ignorato richiamato, se specificato `CallId`

**RecordingDestination.Type**  
*Descrizione*: tipo di destinazione. Solo S3.  
*Valori consentiti*: S3  
*Obbligatorio*: Sì  
*Valore predefinito* - nessuno

**RecordingDestination.BucketName**  
*Descrizione*: un nome di bucket S3 valido. Il bucket deve avere accesso al principale servizio [Amazon Chime SDK Voice Connector](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html),. `voiceconnector.chime.amazonaws.com`  
*Valori consentiti*: un bucket S3 valido per il quale Amazon Chime SDK ha accesso alle azioni e. `s3:PutObject` `s3:PutObjectAcl`  
*Obbligatorio: sì*  
*Valore predefinito* - nessuno

****RecordingDestination.Prefix****  
*Descrizione*: prefisso S3 del file di registrazione  
*Valori consentiti*: un nome di prefisso valido contenente fino a 979 caratteri sicuri. Per ulteriori informazioni sui caratteri sicuri, consulta Caratteri [sicuri](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines-safe-characters) nella Guida per l'utente di Amazon Simple Storage Service.  
*Obbligatorio*: no  
*Impostazione predefinita*: nessuna. Se non specificato, le registrazioni vengono salvate nella radice del bucket S3.

**DurationInSeconds**  
*Descrizione*: la durata della registrazione, in secondi  
*Valori consentiti*: >0  
*Obbligatorio*: no  
*Valore predefinito* - nessuno

****SilenceDurationInSeconds****  
*Descrizione*: la durata del silenzio in secondi, dopo la quale la registrazione si interrompe. Se non specificato, il rilevamento del silenzio è disabilitato.  
*Valori consentiti*: [1; 1000]  
*Obbligatorio*: no  
*Valore predefinito*: 200

****SilenceThreshold****  
*Descrizione*: livello di rumore considerato «silenzio». Se non si specifica`SilenceDurationInSeconds`, questo parametro viene ignorato.  

**Valori di riferimento (livelli di rumore e soglie per trattare il rumore come silenzio):**
+ 1-30 dB o inferiore, ad esempio in una stanza silenziosa
+ 100—40-50 dB, ad esempio un sussurro o un ufficio silenzioso
+ 200—60 dB, ad esempio in un ufficio affollato
+ 1000-75 dB, ad esempio una persona rumorosa o musica
*Valori consentiti*: [1; 1000]  
*Obbligatorio*: no  
*Valore predefinito*: 200

**RecordingTerminators**  
*Descrizione*: elenca tutti i terminatori di registrazione disponibili.  
*Valori consentiti*: una matrice di singole cifre e simboli tratti da [123456789\$10\$1]  
*Obbligatorio*: sì  
*Valore predefinito* - nessuno

## Gestione degli eventi ACTION\$1SUCCESSFUL
<a name="handle-action-successful"></a>

Al termine della registrazione, l'applicazione multimediale SIP Amazon Chime SDK chiama la AWS Lambda funzione e le trasmette l'evento ACTION\$1SUCCESSFUL, insieme ai risultati della chiamata.

```
{
    "SchemaVersion": "1.0",
    "Sequence": INTEGER,
    "InvocationEventType": "ACTION_SUCCESSFUL",
    "ActionData": {
        "Type" : "RecordAudio",
        "Parameters": {
           ...           
        },
        "RecordingDestination": {
            "Type": "S3",
            "BucketName": "valid-bucket-name",
            "Key": "valid-S3-key"              
        },
        "RecordingTerminatorUsed":"#"
    },
    "CallDetails": {
        ...
    }
}
```

L'`ACTION_SUCCESSFUL`evento contiene i seguenti campi: `ActionData`

**Type**  
*Descrizione*: il tipo di azione,`RecordAudio`.

**Parameters**  
*Descrizione*: i parametri dell'azione.

**RecordingDestination.Type**  
*Descrizione*: tipo di destinazione. Solo S3. 

**RecordingDestination.BucketName**  
*Descrizione*: il bucket S3 che contiene il file di registrazione. 

**RecordingDestination.Key**  
*Descrizione*: la chiave S3 del file di registrazione.

**RecordingTerminatorUsed**  
*Descrizione*: il terminatore utilizzato per interrompere la registrazione, uno dei terminatori passati nel parametro. `RecordingTerminators` Se la registrazione si interrompe dopo aver raggiunto la durata massima (`DurationInSeconds`) o a causa del silenzio (`SilenceDurationInSeconds`), questa coppia chiave-valore non è inclusa nell'output.

**Gestione degli errori**  
In caso di errori di convalida, l'applicazione multimediale SIP richiama la AWS Lambda funzione con il messaggio di errore appropriato. La tabella seguente elenca i possibili messaggi di errore.


|  Errore  |  Messaggio  |  Motivo  | 
| --- | --- | --- | 
|  `InvalidActionParameter`  |  `CallId`o `ParticipantTag` il parametro per l'azione non è valido. `DurationInSeconds`il valore del parametro non è valido. `SilenceDurationInSeconds`il valore del parametro non è valido. `SilenceThreshold`il valore del parametro non è valido. `RecordingDestination`il valore del parametro non è valido. Si è verificato un errore durante il caricamento della registrazione nel bucket S3.  |  Qualsiasi parametro non è valido.  | 
|  `SystemException`  |  Errore di sistema durante l'esecuzione di un'azione.  |  Si è verificato un altro tipo di errore di sistema durante l'esecuzione di un'azione.  | 

## Gestione degli ACTION\$1FAILED eventi
<a name="handle-action-failed"></a>

Quando l'azione non riesce a registrare i file multimediali su una sessione di chiamata, l'applicazione multimediale SIP richiama una AWS Lambda funzione con il `ACTION_FAILED` tipo di evento. Guarda l'esempio seguente.

```
{
    "SchemaVersion": "1.0",
    "Sequence": 5,
    "InvocationEventType": "ACTION_FAILED",
    "ActionData": {
        "Type" : "RecordAudio",
        "Parameters": {
           ...           
        },
        "ErrorType": "InvalidActionParameter",
        "ErrorMessage": "RecordingDestination parameter value is invalid."
    },
    "CallDetails": {
        ...
    }
}
```

Guarda un esempio funzionante su: GitHub [https://github.com/aws-samples/amazon-chime-sma-bridging](https://github.com/aws-samples/amazon-chime-sma-bridging)