BLOG

Amazon Connect 인스턴스에서 달갑지 않은 전화 식별하고 제거하기
작성일: 2018-10-30

Amazon Connect에서 제공하는 컨택 센터를 배포했습니다. 이제 고객으로부터 전화를 받고 있습니다. 좋습니다. 그러나 원하지 않는 인바운드 콜 경향이 있음을 눈치 챘습니다. 이는 별로 좋지 않습니다. 이 글은 전화한 번호를 기반으로 이러한 발신자를 식별하는 솔루션을 작성하는 방법을 보여줍니다.

 

통화 식별 및 이동 단계

먼저 Amazon DynamoDB에서 전화 번호 목록을 만들고 모든 수신 통화에 대해 Amazon Connect에서 이 목록을 확인하도록 하십시오. Amazon Connect가 이 목록에 액세스하려면 AWS Lambda 함수가 Amazon Connect 연락처 흐름에 통합되어 있어야 합니다. 그런 다음 모든 수신 전화에 대해 해당 기능을 실행합니다. AWS Lambda 함수는 데이터베이스에서 수신 전화 번호를 검색합니다. 일치하는 항목이 발견되면 AWS Lambda는 연락처 흐름에서 해당 번호의 발신자를 다른 통화 경로로 옮길 수 있는 값을 반환합니다.

 

이 프로세스의 네 단계는 다음과 같습니다.

 

  1. Amazon DynamoDB에서 테이블 만들기
  2. AWS Lambda를 사용하여 숫자 표 검색
  3. 컨택 흐름에서 AWS Lambda를 사용하도록 Amazon Connect 구성
  4. Amazon Connect로 돌아가는 값 확인

 

1 단계 : Amazon DynamoDB에서 테이블 만들기

 

  1. Amazon DynamoDB 콘솔을 엽니다.
  2. 테이블 만들기를 선택하십시오.
  3. 테이블 이름filteredNumbers를 입력하십시오. 기본 키의 경우 phoneNumber를 입력하십시오.
  4. 기본 설정 사용을 선택된 상태로 만들기를 선택합니다.
  5. 표를 만든 다음 차단할 전화 번호를 추가하십시오. filteredNumber를 선택하고 Items 탭을 선택한 다음 아이템 생성을 선택합니다.
  6. 국제적으로 인정받는 E.164 형식으로 전화 번호를 입력하십시오. 예를 들어서, 북미 지역에서는 +15551234567입니다. 필터링 할 번호를 입력 한 다음 저장을 선택합니다.
  7. 차단하려는 모든 번호에 대해 6 단계를 반복하십시오.

 

 

노트

전화 번호 입력을 위한 이 단계에서는 개별적으로 전화 번호를 입력해야 합니다. 전화 번호를 일괄적으로 추가하는 방법에 대한 자세한 내용은 DynamoDB CLI 참조를 참조하십시오.

 

2 단계 : AWS Lambda를 사용하여 숫자 표 검색

AWS Lambda는 Amazon Connect와 Amazon DynamoDB 테이블 간의 배선입니다. Amazon Connect가 AWS Lambda 함수를 호출 할 때마다 JSON 형식의 호출에 대한 메타 데이터를 호출자 ID 값을 포함하는 함수로 전달합니다. 호출자 ID 값을 사용하여 테이블을 검색하고 일치 항목이 있는지 여부에 관계없이 Amazon Connect로 돌아갑니다. Amazon Connect는 이 정보를 사용하여 통화를 적절히 라우팅합니다.

 

  1. AWS Lambda 콘솔을 엽니다.
  2. 함수 생성을 선택하고 다음을 수행하십시오.

1) 이름filteredNumbersCheck를 입력하십시오.

2) 런타임을 위한 Python 3.6을 선택하십시오.

3) Amazon DynamoDB에 대한 읽기 및 쓰기 권한에 적절한 IAM 역할을 할당하십시오. 적절한 권한에 대한 자세한 내용은 AWS Lambda 권한 모델 설명서를 참조하십시오.

4) 만들기를 선택합니다.

  1. AWS Lambda 함수에 대해 생성된 ARN을 기록해 둡니다. 나중에 이 기능을 실행하도록 Amazon Connect를 구성하려면 이 ARN이 필요합니다.

 

  1. 다음 코드를 복사하여 함수에 붙여넣기하시고 저장을 선택하세요.

 

[Python]

#import the Python packages for Lambda to use

import boto3

from boto3.dynamodb.conditions import Key, Attr

 

#start our Lambda runtime here

def lambda_handler(event,context):

   

    #Retrieve ANI from inbound callerID

    callerID = event[“Details”][“ContactData”][“CustomerEndpoint”][“Address”]

   

   

    #Establish connection to dynamoDB and retrieve table

    dynamodb = boto3.resource(‘dynamodb’)

    table = dynamodb.Table(‘filteredNumbers’)

   

    #KeyConditionExpression looks for number that equals ANI of inbound call from a dynamoDB table and saves it to response

    response = table.query(

        KeyConditionExpression=Key(‘PhoneNumber’).eq(callerID) 

    )

   

    #Check for u’Count’ existing with a 1 value within the DynamoDB indicating a blocked record exists

    if 1 in response.values():        

        #Sets Key:Value Pair needed for proper Connect handling

        filteredNumberReturn = {‘userFound’ : ‘True’}

        print(A call has been filtered:  {}’.format(callerID))

    else:

        #Sets Key:Value Pair needed for proper Connect handling

        filteredNumberReturn = {‘userFound’ : ‘False’}

   

    #Return to Connect our key/value combo   

    return filteredNumberReturn

 

3 단계 : 연락처 흐름에서 AWS Lambda를 사용하도록 Amazon Connect 구성

AWS Lambda 함수를 사용하여 테이블과 필터링된 숫자가 있으면 이를 확인하기 위해 Amazon Connect 연락처 흐름을 작성하십시오. 최종 접촉 흐름을 원하는 대로 수정할 수 있지만 초점은 디자인에 대한 초기 데이터베이스 확인을 가능하게 하는 것입니다.

 

  1. Amazon Connect 콘솔을 열고 Amazon Connect 인스턴스에 로그인하십시오.
  2. Routing 메뉴에서 Contact Flow를 선택한 다음 Contact Flow 생성을 선택합니다.
  3. 통합 섹션에서 AWS Lambda 함수 호출을 디자이너로 드래그하고 이 블록과 진입 점 블록의 시작 분기 사이에 커넥터를 추가합니다.
  4. AWS Lambda 호출 기능 블록을 선택하고 2 단계에서 복사한 ARN을 이전에 생성된 Lambda 함수에 붙여 넣습니다.
  5. Timeout 값을 8로 변경하여 실행 시간을 지정한 다음 저장을 선택하십시오.

 

노트

AWS Lambda 함수 권한을 Amazon Connect에서 실행할 권한을 부여했는지 확인하십시오. 자세한 내용은 Amazon Connect에서 AWS Lambda 함수 사용, Lambda 함수 만들기 및 트리거 정책 구성 섹션을 참조하십시오.

 

 4 단계 : Amazon Connect로 돌아오는 값 확인

이제 컨택 플로우는 이전에 작성한 AWS Lambda 함수를 실행하도록 설정됩니다. 발신자 ID 번호가 발견된 번호와 일치하는지 검색합니다. AWS Lambda 함수는 userFound라는 값을 True로 반환하도록 작성되었습니다. 이제 이 값을 True로 확인하도록 Amazon Connect을 구성하십시오. 일치하는 항목이 있으면 호출이 경고로 라우팅됩니다.

 

컨택 플로우을 계속하려면 다음을 수행하십시오.

 

 

 

  1. Branching 카테고리 밑에서, 연락처 확인 특성 블록을 연락처 흐름 디자이너로 끌어옵니다. 그런 다음 AWS Lambda 함수 호출 블록의 Equals 노드에 연결합니다.
  2. Type 상자에서 external 을 선택하십시오.
  3. Attribute 상자에 userFound를 입력하십시오.
  4. 확인 조건 섹션에서 드롭 다운 메뉴에서 Equals을 선택합니다. 값으로 True를 더한 다음 저장을 선택하십시오. 연락처 확인 특성 블록에 이제 = True 노드가 있습니다.
  5. Play Prompt 블록을 디자이너로 드래그하고 제목을 클릭하여 속성을 엽니다.
  6. 음성 텍스트 (Ad hoc)를 선택하고 텍스트 필드에서 달갑지 않은 발신자가 들을 수 있도록 메시지를 입력하십시오.
  7. 각 블록의 노드에 connector 링크를 추가하십시오. 연결 끊기 / 끊기 상자를 추가하십시오. 환영받는 들어오는 전화에 대한 나머지 연락 흐름을 계속 구축하십시오. 마지막으로 확인했을 때, 연락처 흐름이 다음 이미지와 비슷해야 합니다.

 

 

 

결론

이 글은 AWS Lambda 함수를 사용하여 데이터베이스의 숫자를 Amazon Connect의 발신자 ID 번호와 비교하는 방법을 보여줍니다. Amazon Connect에서 데이터베이스로 속성을 전달하기 위해 AWS Lambda 함수를 사용하는 과정은 근본적으로 Amazon Connect의 호출 동작에 영향을 줍니다. 다음 단계로, 연락처가 한 시간 내에 컨택 센터에 여러 번 연락하는 경우 테이블에 전화 번호를 추가하는 방법을 만드는 것이 좋습니다. 고급 라우팅 논리 또는 사용자 지정 솔루션을 만들 수 있습니다.

 

원문 URL: https://aws.amazon.com/ko/blogs/contact-center/identify-and-move-unwelcomed-calls-on-your-amazon-connect-instance/

** 메가존클라우드 TechBlog는 AWS BLOG 영문 게재글중에서 한국 사용자들에게 유용한 정보 및 콘텐츠를 우선적으로 번역하여 내부 엔지니어 검수를 받아서, 정기적으로 게재하고 있습니다. 추가로 번역및 게재를 희망하는 글에 대해서 관리자에게 메일 또는 SNS페이지에 댓글을 남겨주시면, 우선적으로 번역해서 전달해드리도록 하겠습니다.