요즘은 Amazon Connect를 하고 있는데 ... 그때 발견한 콜백 기능에 대해서 써보겠다..
보통 전화 가능한 상담원이 다 차서 전화가 불가능할 때 <콜백>이라는 기능을 쓴다.
이 콜백은 홈쇼핑 해피콜 처럼 사용자가 전화번호를 남기면 상담원이 통화 가능할 때 전화를 하거나,
굳이 상담원이 전화번호를 입력하여 전화하지 않고도 자동으로 전화가 가는 오토콜백이 있다.
Amazon Connect는 오토콜백(auto-callback)을 지원하기 때문에 유익하다.
하지만, Amazon Connect가 외국 서비스이다보니, +82와 같은 국가번호가 붙지 않으면 전화가 되질 않는다.
또한 flow의 <콜백 번호 설정(Set callback number)> 블록에서 +82가 붙어야만 검증이 가능하고, 콜백 기능이 유효하다.
하지만, 사람이 전화번호를 남길 때, 0101234~~ 이렇게 남기지 +82101234~~ 이렇게 남기진 않는단 말이다..
그래서 이걸 해결할 수 있는 방안에 대해서 설명하겠다.
(참고로 Lambda를 개발해서 쓰면 더 좋겠지만, Lambda 호출 비용과 제한 시간(8초)이 있으므로 이 방법은 배제하겠다)
전체 플로우
콜백 플로우는 무조건 Customer queue(고객 대기열) 타입으로 설정해야한다.
세부 설정
1. Store Customer Input
- 입력할 번호의 최대 값을 지정해주기
- Phone number로 하면 010~~으로 입력해도 값 자체가 +8210으로 자동 변환된다.
2. Get Customer Input
- $.StoredCustomerInput으로 1번 단계의 블록을 가져올 수 있다 (https://docs.aws.amazon.com/connect/latest/adminguide/connect-attrib-list.html)
3. Set contact attributes
- 콜백 번호 검증에 통과하기 위해 +82를 붙인 변수값이 필요하다.
- 사용자 정의 변수로 +82$.StoredCustomerInput를 지정
- +82010, +82042, +82070이든 유효하게 사용 가능하다.
4. Set callback number
- 번호에 +82가 붙었기 때문에 유효성 검사가 통과한다.
- 3번에서 선언한 변수를 사용할 변수로 지정해주면 된다.
이렇게 하면 CloudWatch Log group에서도 잘 동작했다는 로그를 확인할 수 있다.
{
"Results": "Success",
"ContactId": "CONTACT_ID",
"ContactFlowId": "arn:aws:connect:ap-northeast-2:ACCOUNT:instance/INSTANCE_ID",
"ContactFlowName": "3.callback_flow",
"ContactFlowModuleType": "CreateCallback",
"Timestamp": "2025-06-12T08:12:25.759Z",
"Parameters": {
"InitialDelaySeconds": "10",
"CustomerPhoneNumber": "+8210612345678",
"MaxRetryAttempts": "1",
"RetryDelaySeconds": "600"
}
}
즉 해석하자면
사용자가 01012345678# 이라고 번호를 입력해도, 변수 설정 블록 덕분에 +8201012345678 이라고 번호가 저장되는 것이며 이는 콜백 번호 검증에 통과되는 번호여서 콜백이 동작한다는 의미이다.
이는 서울리전(ap-northeast-2) 한정으로만 동작하며 다른 리전(내가 테스트한 건 도쿄리전 뿐이지만)에선 동작하지 않았다..
번호 형태 | 서울 리전 지원 여부 | 서울 리전 외 지원 여부 |
+82010 | O | X |
+8210 | O | O |
+82070 | O | X |
+8202 | O | X |
꼭 알아두기...
그럼 이만 !
'AWS > PROJECT' 카테고리의 다른 글
AWS IoT Core Custom Authorizers 설정 방법(lambda) (0) | 2025.02.19 |
---|---|
DynamoDB 테이블에 디바이스 데이터 저장하기(Lambda, IoT Core) (0) | 2025.01.09 |
[API GW] Private API Gateway 만들기와 접근하는 방법(VPC Endpoint, Lambda) (0) | 2024.07.18 |
[EC2] Windows 서버에 Apache 설치하는 방법 (0) | 2024.07.17 |
[Lambda] Opensearch security_exception 오류 해결법 (0) | 2024.07.15 |