PlayAudio - Amazon Chime SDK

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

PlayAudio

통화의 어느 구간에서든 오디오 파일을 재생할 수 있습니다. 오디오는 원하는 횟수만큼 반복할 수 있습니다. 진행 중인 오디오는 에 설정된 DTMF 숫자를 사용하여 종료할 수PlaybackTerminators 있습니다.

Amazon Chime Simple Storage Service (Amazon S3) 버킷의 오디오 파일 재생은 현재 Amazon Simple Storage Service (Amazon S3) 버킷의 오디오 파일 재생만 지원합니다. S3 버킷은 SIP 미디어 애플리케이션과 동일한AWS 계정에 속해야 합니다. 또한 Amazon Chime SDK 음성 커넥터 서비스 주체에게s3:GetObject 권한을 부여해야 합니다. S3 콘솔 또는 명령줄 인터페이스 (CLI) 를 사용하여 이 작업을 수행할 수 있습니다.

다음 코드 예제는 일반적인 버킷 정책을 보여줍니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "SMARead", "Effect": "Allow", "Principal": { "Service": "voiceconnector.chime.amazonaws.com" }, "Action": [ "s3:GetObject" ], "Resource": "arn:aws:s3:::bucket-name/*", "Condition": { "StringEquals": { "aws:SourceAccount": "aws-account-id" } } } ] }

오디오 서비스는 Sip 미디어 애플리케이션을 대신하여 S3 버킷에 읽고 씁니다. 혼란스러운 대리인 문제를 방지하려면 S3 버킷 액세스를 단일 SIP 미디어 애플리케이션으로 제한할 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "SMARead", "Effect": "Allow", "Principal": { "Service": "voiceconnector.chime.amazonaws.com" }, "Action": [ "s3:GetObject" ], "Resource": "arn:aws:s3:::bucket-name/*", "Condition": { "StringEquals": { "aws:SourceAccount": "aws-account-id", "aws:SourceArn": "arn:aws:chime:region:aws-account-id:sma/sip-media-application-id" } } } ] }

다음 코드 예제는 일반적인 작업을 보여줍니다.

{ "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" } } }
콜 아이디

설명CallId 참가자의 설명CallDetails.

허용된 값 — 유효한 통화 ID입니다.

필수 — 아니오 (ParticipantTag있는 경우)

기본값 - 없음

ParticipantTag

설명 — 연결된 참가자ParticipantTag 중 한 명에 대한CallDetails 설명

허용된 값LEG-A 또는LEG-B.

필수 — 아니오 (CallId있는 경우)

기본값ParticipantTag 호출된callLeg 값입니다. 지정하면 무시됩니다CallId.

PlaybackTerminator

설명 — 사용자의 DTMF 입력을 사용하여 진행 중인 오디오를 종료합니다.

허용되는 값 — “0”, “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “#”, “*” 값의 배열입니다.

필수 — 아니요

기본값 – 없음

반복

설명 — 오디오를 지정된 횟수만큼 반복합니다.

허용되는 값 — 0보다 큰 정수

필수 — 아니요

기본값 — 1

AudioSource. 유형

설명 — 오디오 파일의 소스 유형입니다.

허용되는 값 — S3.

필수 — 예.

기본값 - 없음

AudioSource.BucketName

설명 — S3 소스 유형의 경우 S3 버킷은 SIP 애플리케이션과 동일한AWS 계정에 속해야 합니다. 버킷은 Amazon Chime SDK 보이스 커넥터 서비스 주체인 voiceconnector.chime.amazonaws.com에 액세스할 수 있어야 합니다.

허용된 값 — Amazon Chime SDK가s3:GetObject 작업에 액세스할 수 있는 유효한 S3 버킷입니다.

필수 — 예.

기본값 - 없음

AudioSource. 키

설명 — S3 소스 유형의 경우AudioSource.BucketName 속성에 지정된 S3 버킷의 파일 이름입니다.

허용된 값 — 유효한 오디오 파일입니다.

필수 — 예.

기본값 - 없음

SIP 미디어 애플리케이션이 소스 URL에서 오디오 재생을 시도합니다. 크기가 50MB 이하인 압축되지 않은 원시 PCM .wav 파일을 사용할 수 있습니다. Amazon Chime SDK는 8kHz 모노를 권장합니다.

다이얼플랜의 마지막 명령이PlayAudio 이고 파일 재생이 끝나거나 사용자가 키를 눌러 재생을 중지하면 애플리케이션은 다음 코드 예제에 표시된 이벤트와 함께AWS Lambda 함수를 호출합니다.

{ "SchemaVersion": "1.0", "Sequence": INTEGER, "InvocationEventType": "ACTION_SUCCESSFUL", "ActionData": { "Type": "PlayAudio", "Parameters" : { "CallId": "call-id-1", "AudioSource": { "Type": "S3", "BucketName": "valid-S3-bucket-name", "Key": "wave-file.wav", } } }

종료 자릿수가 오디오를 중지하면 오디오가 반복되지 않습니다.

오류 처리

유효성 검사 파일에 오류가 있거나 작업을 실행하는 동안 오류가 발생하면 SIP 미디어 응용 프로그램은 해당 오류 코드가 포함된AWS Lambda 함수를 호출합니다.

오류 메시지 이유

InvalidAudioSource

오디오 소스 매개변수가 잘못되었습니다.

이 오류는 여러 가지 이유로 발생할 수 있습니다. 예를 들어 SIP 미디어 애플리케이션은 권한 문제 또는 URL 문제로 인해 파일에 액세스할 수 없습니다. 또는 형식, 길이, 크기 등으로 인해 오디오 파일의 유효성 검사가 실패할 수 있습니다.

SystemException

작업 실행 중 시스템 오류가 발생했습니다.

작업을 실행하는 동안 다른 시스템 오류가 발생했습니다.

InvalidActionParameter

CallId 또는 작업 ParticipantTag 매개변수가 잘못되었습니다.

작업에 잘못된 매개 변수가 있습니다.

다음 코드 예제는 일반적인 호출 실패를 보여줍니다.

{ "SchemaVersion": "1.0", "Sequence": 2, "InvocationEventType": "ACTION_FAILED", "ActionData": { "Type": "PlayAudio", "Parameters" : { "CallId": "call-id-1", "AudioSource": { "Type": "S3", "BucketName": "bucket-name", "Key": "audio-file.wav" }, }, "ErrorType": "InvalidAudioSource", "ErrorMessage": "Audio Source parameter value is invalid." } "CallDetails": { ... } }

다음 작업 예제를 GitHub 참조하십시오.