

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon Chime SDK PSTN 오디오 서비스 프로그래밍 모델 이해
<a name="pstn-model"></a>

PSTN 오디오 서비스는 AWS Lambda 함수를 차례로 사용하는 요청/응답 프로그래밍 모델을 사용합니다. 수신 및 발신 통화에 대해 AWS Lambda 함수가 자동으로 호출됩니다. 예를 들어 새 수신 통화가 도착하면 PSTN 오디오 서비스는 `NEW_INCOMING_CALL` 이벤트와 함께 AWS Lambda 함수를 호출하고 *작업*이라는 명령을 기다립니다. 예를 들어 애플리케이션은 오디오 프롬프트 재생, 숫자 수집, 오디오 녹음 또는 통화 진행 라우팅과 같은 작업을 선택할 수 있습니다. 이러한 JSON 형식의 작업은 AWS Lambda 함수의 콜백을 사용하여 PSTN 오디오 서비스로 다시 전송됩니다.

이 예제에서는 `PlayAudio` 작업을 보여줍니다.

```
{
    "Type": "PlayAudio",
    "Parameters": {
        "CallId": "call-id-1",
        "ParticipantTag": "LEG-A",
        "PlaybackTerminators": ["1", "8", "#"],
        "Repeat": "5",
        "AudioSource": {
            "Type": "S3",
            "BucketName": "valid-S3-bucket-name",
            "Key": "wave-file.wav"
        }
    }
}
```

이 예제에서는 `RecordAudio` 작업을 보여줍니다.

```
{
    "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"
        }
    }
}
```

PSTN 오디오 서비스가 작업을 실행하면 성공 또는 실패 표시와 함께 AWS Lambda 함수를 다시 호출합니다.

애플리케이션은 아웃바운드 전화를 걸고 AWS Lambda 함수를 사용하여 통화 흐름, 호출자 경험 및 통화 컨텍스트를 제어할 수도 있습니다. 이 경우 [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_CreateSipMediaApplicationCall.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_CreateSipMediaApplicationCall.html) API를 호출하면 AWS Lambda 가 `NEW_OUTBOUND_CALL` 이벤트와 함께 호출됩니다. 전화를 받으면 음성 안내 재생 및 사용자 입력 숫자 수집과 같은 작업을 반환할 수 있습니다. [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_UpdateSipMediaApplicationCall.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_UpdateSipMediaApplicationCall.html) API를 사용하여 AWS Lambda 함수를 트리거하여 타이머, 참가자 음소거 및 대기실을 구현할 수도 있습니다.