

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# StartCallRecording
<a name="start-call-recording"></a>

Die `StartCallRecording` Aktion startet die Aufzeichnung eines Anrufabschnitts. Sie starten die Anrufaufzeichnung in Ihren SIP-Medienanwendungen, entweder bei Bedarf oder als Reaktion auf ein SIP-Ereignis.
+ Um die On-Demand-Aufzeichnung eines Anrufs zu starten, verwenden Sie die `UpdateSipMediaApplication` API, um Ihre Anwendung aufzurufen und die `StartCallRecording` Aktion zurückzugeben.
+ Um die Anrufaufzeichnung als Reaktion auf ein SIP-Ereignis zu starten, geben Sie die `StartCallRecording` Aktion in Ihrer Anwendung zurück. 

Sie geben an, ob Sie den Audiotrack für den eingehenden Abschnitt, den ausgehenden Abschnitt oder für beide aufnehmen möchten. In den folgenden Abschnitten wird erklärt, wie die `StartCallRecording` Aktion verwendet wird.

**Anmerkung**  
Aufzeichnungen, die mit dieser Funktion aufgenommen wurden, können Gesetzen oder Vorschriften in Bezug auf die Aufzeichnung elektronischer Kommunikation unterliegen. Es liegt in Ihrer Verantwortung und Ihren Endnutzern, alle geltenden Gesetze in Bezug auf die Aufzeichnung einzuhalten. Dazu gehört auch, alle Teilnehmer einer aufgezeichneten Sitzung oder Kommunikation ordnungsgemäß darüber zu informieren, dass die Sitzung oder Kommunikation aufgezeichnet wird, und deren Zustimmung einzuholen.

**Topics**
+ [Eine StartCallRecording Aktion anfordern](#request-start)
+ [Angeben eines Aufnahmeziels](#recording-destination)
+ [Erteilen von Amazon S3 S3-Bucket-Berechtigungen](#grant-s3-perms)
+ [Aktion: erfolgreiche Antwort.](#action-successful)
+ [Aktion, Fehler, Antwort](#action-error)

## Eine StartCallRecording Aktion anfordern
<a name="request-start"></a>

Das folgende Beispiel zeigt, wie die `StartCallRecording` Aktion für `BOTH` Tracks angefordert wird.

```
{
    "SchemaVersion": "1.0",
    "Actions": [
        {
            "Type": "StartCallRecording",
            "Parameters":
            {
                "CallId": "call-id-1",
                "Track": "BOTH",
                "Destination":
                {
                    "Type": "S3",
                    "Location": "valid-bucket-name-and-optional-prefix"
                }
            }
        }
    ]
}
```

**CallId**  
*Beschreibung* — `CallId` des Teilnehmers am `CallDetails` AWS Lambda Funktionsaufruf  
*Zulässige Werte* — Eine gültige Anruf-ID  
*Erforderlich* — Ja  
*Standardwert* – Kein

**Strecke**  
*Beschreibung* — Audio `Track` der Anrufaufzeichnung.  
*Zulässige Werte* — `BOTH``INCOMING`, oder `OUTGOING`  
*Erforderlich* — Ja  
*Standardwert* – Kein

**Ziel.Typ**  
*Beschreibung* — Art des Ziels. Nur Amazon S3 ist zulässig.  
*Zulässige Werte* — Amazon S3  
*Erforderlich* — Ja  
*Standardwert* – Kein

**Ziel.Standort**  
*Beschreibung* — Ein gültiger Amazon S3 S3-Bucket und ein optionales Amazon S3 S3-Schlüsselpräfix. Der Bucket muss über Berechtigungen für den Amazon Chime SDK Voice Connector-Service, voiceconnector.chime.amazonaws.com, verfügen.  
*Zulässige Werte* — Ein gültiger Amazon S3 S3-Pfad, für den das Amazon Chime SDK über Berechtigungen für die `s3:PutObject` Aktionen und verfügt. `s3:PutObjectAcl`  
*Erforderlich — Ja*  
*Standardwert* – Kein

## Angeben eines Aufnahmeziels
<a name="recording-destination"></a>

Das Amazon Chime SDK liefert Anrufaufzeichnungen an Ihren Amazon S3 S3-Bucket. Der Bucket muss zu Ihrem AWS Konto gehören. Sie geben den Standort des Buckets im `Destination` Parameter der `StartCallRecording` Aktion an. Das `Type` Feld im `Destination` Parameter muss sein`S3`. Das `Location` Feld besteht aus Ihrem Amazon S3 S3-Bucket sowie einem optionalen Objektschlüssel-Präfix, in dem die Anrufaufzeichnung übermittelt wird. 

Die SIP-Medienanwendung verwendet das angegebene `Location` Datum und die Uhrzeit des Anrufabschnitts, die Transaktions-ID und die Anruf-ID, um den Amazon S3 S3-Objektschlüssel zu formatieren. Die `StartCallRecording` Aktionsantwort gibt den vollständigen Amazon S3 S3-Objektschlüssel zurück.

Wenn Sie nur den Amazon S3 S3-Bucket im `Location` Feld angeben, hängt die SIP-Medienanwendung ein Standardpräfix,`Amazon-Chime-SMA-Call-Recordings`, an den Amazon S3 S3-Pfad an. Die SIP-Medienanwendung fügt außerdem das Jahr, den Monat und den Tag der Startzeit des Anrufs an, um die Aufzeichnungen zu organisieren. Das folgende Beispiel zeigt das allgemeine Format eines Amazon S3-Pfads mit dem Standardpräfix. In diesem Beispiel wird `myRecordingBucket` als `Location` Wert verwendet.

```
myRecordingBucket/Amazon-Chime-SMA-Call-Recordings/2019/03/01/2019–03–01–17–10–00–010_c4640e3b–1478–40fb-8e38–6f6213adf70b_7ab7748e–b47d–4620-ae2c–152617d3333c.wav
```

Das folgende Beispiel zeigt die Daten, die im Amazon S3 S3-Pfad für die Anrufaufzeichnung dargestellt werden.

```
s3Bucket/Amazon-Chime-SMA-Call-Recordings/year/month/date/year-month-date-hour-minute-second-millisecond_transactionId_callId.wav
```

Wenn Sie den Amazon S3 S3-Bucket und das Objektschlüsselpräfix in das `Location` Feld eingeben, verwendet die SIP-Medienanwendung Ihr Objektschlüsselpräfix im Amazon S3 S3-Zielpfad anstelle des Standardpräfixes. Das folgende Beispiel zeigt das allgemeine Format eines Amazon S3 S3-Pfads für die Anrufaufzeichnung mit Ihrem Präfix. Sie können beispielsweise myRecordingBucket /TechnicalSupport/English als. `Location` 

```
myRecordingBucket/technicalSupport/english/2019/03/01/2019–03–01–17–10–00–010_c4640e3b1478–40fb–8e38-6f6213adf70b_7ab7748e–b47d–4620–ae2c–152617d3333c.wav
```

Das folgende Beispiel zeigt die Daten im Amazon S3-Pfad.

```
s3Bucket/yourObjectKeyPrefix/year/month/date/year-month-date-hour-minute-second-millisecond_transactionId_callId.wav
```

Die an Ihren Amazon S3 S3-Bucket gesendete Aufzeichnung enthält zusätzliche [Amazon S3 S3-Objektmetadaten](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingMetadata.html) über den Anrufabschnitt. In der folgenden Tabelle sind die unterstützten Amazon S3 S3-Objektmetadaten aufgeführt.


| Name | Description | 
| --- | --- | 
| Transaktions-ID | Transaktions-ID des Telefonanrufs | 
| Anruf-ID | CallId des Teilnehmers am CallDetails Funktionsaufruf AWS Lambda  | 
| Dauer der Aufnahme | Dauer der Anrufaufzeichnung in Sekunden | 
| recording-audio-file-format | Das Audiodateiformat für die Anrufaufzeichnung wird als Internet-Medientyp dargestellt | 

## Erteilen von Amazon S3 S3-Bucket-Berechtigungen
<a name="grant-s3-perms"></a>

Ihr Amazon S3 S3-Ziel-Bucket muss zu demselben AWS Konto gehören wie Ihre Anwendung. Darüber hinaus muss die Aktion dem Amazon Chime SDK Voice Connector Service Principal eine `s3:PutObjectAcl` Genehmigung erteilen. `s3:PutObject` `voiceconnector.chime.amazonaws.com` Im folgenden Beispiel wird die entsprechende Genehmigung erteilt. 

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

****  

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

------

Der PSTN-Audiodienst liest und schreibt im Namen Ihrer Sip-Medienanwendung in Ihren S3-Bucket. Um das [Problem mit dem verwirrten Deputy](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html) zu vermeiden, können Sie die S3-Bucket-Berechtigungen auf eine einzelne SIP-Medienanwendung beschränken.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "SIP media applicationRead",
            "Effect": "Allow",
            "Principal": {
                "Service": "voiceconnector.chime.amazonaws.com"
            },
            "Action": [                
                "s3:PutObject",
                "s3:PutObjectAcl"
            ],
            "Resource": "arn:aws:s3:::bucket-name/*",
	    "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "111122223333",
                    "aws:SourceArn": "arn:aws:chime:us-east-1:111122223333:sma/sip-media-application-id"
                }
            }
        }
    ]
}
```

------

## Aktion: erfolgreiche Antwort.
<a name="action-successful"></a>

Wenn die Anrufaufzeichnung für einen Anrufabschnitt erfolgreich gestartet wurde, ruft die SIP-Medienanwendung eine AWS Lambda Funktion mit dem `ACTION_SUCCESSFUL` Ereignistyp auf. Der Ort der Anrufaufzeichnung wird in der Antwort zurückgegeben. 

```
{
    "SchemaVersion": "1.0",
    "Sequence": INTEGER,
    "InvocationEventType": "ACTION_SUCCESSFUL",
    "ActionData": {
        "Type" : "StartCallRecording",
        "Parameters": {
            "CallId": "call-id-1",
            "Track": "BOTH",
            "Destination": {
                "Type": "S3",
                "Location": "valid-bucket-name"
            }
        }
        "CallRecordingDestination": {
            "Type": "S3",
            "Location": "call-recording-bucket-and-key"
        }
    }
    "CallDetails": {
        ...
    }
}
```

## Aktion, Fehler, Antwort
<a name="action-error"></a>

Bei Validierungsfehlern ruft die SIP-Medienanwendung die AWS Lambda Funktion mit der entsprechenden Fehlermeldung auf. In der folgenden Tabelle sind die Fehlermeldungen aufgeführt.




| Fehler | Fehlermeldung | Grund | 
| --- | --- | --- | 
| `InvalidActionParameter` | `CallId`Der Aktionsparameter ist ungültig | Jeder Parameter ist ungültig. | 
| `SystemException` | Systemfehler beim Ausführen einer Aktion. | Beim Ausführen einer Aktion ist ein anderer Systemfehler aufgetreten. | 

Wenn die Aktion die Medien eines Anrufabschnitts nicht aufzeichnet, ruft die SIP-Medienanwendung eine AWS Lambda Funktion mit dem `ActionFailed` Ereignistyp auf. 

Das folgende Beispiel zeigt eine typische Fehlerreaktion.

```
{
    "SchemaVersion": "1.0",
    "Sequence": 5,
    "InvocationEventType": "ACTION_FAILED",
    "ActionData": {
        "Type" : "StartCallRecording",
        "Parameters": {
            "CallId": "call-id-1",
            "Track": "BOTH",
            "Destination": {
                "Type": "S3",
                "Location": "valid-bucket-name"
            }
        }
        "Error": "NoAccessToDestination: Error while accessing destination"
    }
    "CallDetails": {
        ...
    }
}
```

Ein funktionierendes Beispiel finden Sie unter GitHub: [https://github.com/aws-samples/amazon-chime-sma-on-demand-recording](https://github.com/aws-samples/amazon-chime-sma-on-demand-recording)