AWS Lambda 함수 호출 - Amazon Connect

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

AWS Lambda 함수 호출

Amazon Connect는 사용자의 자체 시스템과 상호 작용할 수 있으며 흐름에서 여러 경로를 동적으로 사용할 수 있습니다. 이를 위해 흐름에서 AWS Lambda 함수를 간접적으로 호출하고, 결과를 가져오고, 서비스를 직접적으로 호출하거나 다른 AWS 데이터 스토어 또는 서비스와 상호 작용합니다. 자세한 내용은 AWS Lambda개발자 안내서를 참조하세요.

흐름에서 Lambda 함수를 간접적으로 호출하려면 다음 작업을 완료합니다.

Lambda 함수 생성

런타임을 사용해 Lambda 함수를 생성하고 이 함수를 구성합니다. 자세한 내용은 AWS Lambda 개발자 안내서에서 Lambda 시작하기를 참조하세요.

고객 센터와 동일한 리전에 Lambda 함수를 생성하는 경우 그다음 작업인 Amazon Connect 인스턴스에 Lambda 함수 추가에 설명된 대로 Amazon Connect 콘솔을 사용해 Lambda 함수를 인스턴스에 추가합니다. 이렇게 하면 Amazon Connect가 Lambda 함수를 간접적으로 호출하도록 허용하는 리소스 권한이 자동으로 추가됩니다. 또는 Lambda 함수가 다른 리전에 있는 경우 흐름 디자이너를 사용하여 흐름에 함수를 추가하고, Amazon Connect 인스턴스의 connect.amazonaws.com 보안 주체와 ARN으로 add-permission 명령을 사용하여 리소스 권한을 추가할 수 있습니다. 자세한 내용은 AWS Lambda 개발자 안내서에서 AWS Lambda에 대한 리소스 기반 정책 사용을 참조하세요.

Amazon Connect 인스턴스에 Lambda 함수 추가

흐름에서 Lambda 함수를 사용하려면 먼저 Amazon Connect 인스턴스에 추가해야 합니다.

인스턴스에 Lambda 함수 추가
  1. https://console.aws.amazon.com/connect/에서 Amazon Connect 콘솔을 엽니다.

  2. 인스턴스 페이지의 인스턴스 별칭 열에서 인스턴스 이름을 선택합니다. 이 인스턴스 이름은 Amazon Connect에 액세스하는 데 사용하는 URL에 표시됩니다.

    Amazon Connect 가상 고객 센터 인스턴스 페이지, 인스턴스 별칭.
  3. 탐색 창에서 흐름을 선택합니다.

  4. AWS Lambda 섹션에서 함수 드롭다운 상자를 사용하여 인스턴스에 추가할 함수를 선택합니다.

    작은 정보

    드롭다운에는 인스턴스와 동일한 리전에 있는 함수만 나열됩니다. 함수가 나열되지 않는 경우, 새 Lambda 함수 생성을 선택합니다. 그러면 AWS Lambda 콘솔이 열립니다.

    다른 리전 또는 계정에서 Lambda를 사용하려면 AWS Lambda 함수 호출함수 선택 아래에서 Lambda의 ARN을 입력할 수 있습니다. 그런 다음 Lambda에서 해당하는 리소스 기반 정책을 설정하여 흐름이 이를 직접적으로 호출할 수 있도록 합니다.

    lambda:AddPermission을 직접적으로 호출하려면 다음을 수행해야 합니다.

    • 보안 주체를 connect.amazonaws.com으로 설정합니다.

    • 소스 계정을 인스턴스가 속해 있는 계정으로 설정합니다.

    • 소스 ARN을 인스턴스의 ARN으로 설정합니다.

    자세한 내용은 함수에 다른 계정에 대한 액세스 권한 부여를 참조합니다.

  5. Lambda 함수 추가를 선택합니다. 함수의 ARN이 Lambda Functions(Lambda 함수)에 추가되었는지 확인합니다.

이제 흐름에서 해당 Lambda 함수를 참조할 수 있습니다.

흐름에서 Lambda 함수 간접 호출

  1. 흐름을 열거나 생성합니다.

  2. AWS Lambda 함수 호출 블록(Integrate 그룹 내)을 그리드에 추가합니다. 블록과 브랜치를 연결합니다.

  3. AWS Lambda 함수 호출 블록 제목을 선택하여 해당 속성 페이지를 엽니다.

  4. 함수 선택 아래에서 인스턴스에 추가한 함수 목록 중에 선택합니다.

  5. (선택 사항) 함수 입력 파라미터 아래에서 파라미터 추가를 선택합니다. 간접적으로 호출되었을 때 Lambda 함수에 전송되는 키-값 페어를 지정할 수 있습니다. 또한 함수의 제한 시간 값을 지정할 수 있습니다.

  6. 제한 시간(최대 8초)에서 Lambda가 시간 초과될 때까지 기다리는 시간을 지정합니다. 이 시간이 지나면 고객 응대는 오류 분기로 라우팅됩니다.

흐름에서 Lambda 함수를 간접적으로 호출할 때마다 진행 중인 고객 응대와 관련된 기본 정보 세트와 추가된 AWS Lambda 함수 간접 호출 블록에 대한 함수 입력 파라미터 섹션에 정의된 추가 속성이 전달됩니다.

다음은 Lambda 함수에 대한 예제 JSON 요청입니다.

{ "Details": { "ContactData": { "Attributes": { "exampleAttributeKey1": "exampleAttributeValue1" }, "Channel": "VOICE", "ContactId": "4a573372-1f28-4e26-b97b-XXXXXXXXXXX", "CustomerEndpoint": { "Address": "+1234567890", "Type": "TELEPHONE_NUMBER" }, "CustomerId": "someCustomerId", "Description": "someDescription", "InitialContactId": "4a573372-1f28-4e26-b97b-XXXXXXXXXXX", "InitiationMethod": "INBOUND | OUTBOUND | TRANSFER | CALLBACK", "InstanceARN": "arn:aws:connect:aws-region:1234567890:instance/c8c0e68d-2200-4265-82c0-XXXXXXXXXX", "LanguageCode": "en-US", "MediaStreams": { "Customer": { "Audio": { "StreamARN": "arn:aws:kinesisvideo::eu-west-2:111111111111:stream/instance-alias-contact-ddddddd-bbbb-dddd-eeee-ffffffffffff/9999999999999", "StartTimestamp": "1571360125131", // Epoch time value "StopTimestamp": "1571360126131", "StartFragmentNumber": "100" // Numberic value for fragment number } } }, "Name": "ContactFlowEvent", "PreviousContactId": "4a573372-1f28-4e26-b97b-XXXXXXXXXXX", "Queue": { "ARN": "arn:aws:connect:eu-west-2:111111111111:instance/cccccccc-bbbb-dddd-eeee-ffffffffffff/queue/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", "Name": "PasswordReset" "OutboundCallerId": { "Address": "+12345678903", "Type": "TELEPHONE_NUMBER" } }, "References": { "key1": { "Type": "url", "Value": "urlvalue" } }, "SystemEndpoint": { "Address": "+1234567890", "Type": "TELEPHONE_NUMBER" } }, "Parameters": {"exampleParameterKey1": "exampleParameterValue1", "exampleParameterKey2": "exampleParameterValue2" } }, "Name": "ContactFlowEvent" }

요청은 다음의 두 부분으로 구분됩니다.

  • 고객 응대 데이터 - 모든 고객 응대에 대해 Amazon Connect에 의해 항상 전달됩니다. 일부 파라미터는 선택 사항입니다.

    이 섹션에는 흐름에서 고객 응대 속성 설정 블록을 사용할 때와 같이 이전에 고객 응대와 연결되었던 속성이 포함될 수 있습니다. 이 맵은 저장된 속성이 없으면 비어 있을 수 있습니다.

    다음 이미지는 고객 응대 속성 설정의 속성 페이지에서 이러한 속성이 나타나는 위치를 보여 줍니다.

    고객 응대 속성 설정 블록의 속성 페이지.
  • 파라미터 - 이 통화에만 적용되는 파라미터로, Lambda 함수를 만들 때 정의되었습니다. 다음 이미지는 AWS Lambda 함수 간접 호출 블록의 속성 페이지에서 이러한 매개변수가 나타나는 위치를 보여 줍니다.

    AWS Lambda 함수 간접 호출 블록의 함수 입력 파라미터.

Lambda 간접 호출 블록은 JSON 형식으로 입력 파라미터를 수신할 수 있으며, 기본 데이터 유형과 중첩된 JSON을 모두 수용합니다. 다음은 Lambda 간접 호출 블록에서 사용할 수 있는 JSON 입력의 예입니다.

{ "Name": "Jane", "Age":10, "isEnrolledInSchool": true, "hobbies": { "books":["book1", "book2"], "art":["art1", "art2"] } }

호출 재시도 정책

흐름 중 Lambda 간접 호출이 제한되면 해당 요청을 재시도합니다. 일반 서비스 장애(500 오류)가 발생하는 경우에도 재시도합니다.

동기식 호출이 오류를 반환하면 Amazon Connect에서는 최대 8초간 최대 3회 재시도합니다. 이 때 흐름은 오류 분기로 이동합니다.

Lambda에서 재시도하는 방법에 대한 자세한 내용은 AWS Lambda에서 오류 처리 및 자동 재시도를 참조하세요.

여러 Lambda 함수 간접 호출

Lambda 함수가 실행되는 동안 고객은 아무 소리도 듣지 못합니다. 함수 사이에 재생 프롬프트 블록을 추가하여 고객이 관심을 잃지 않고 오래 상호 작용하게 된다는 사실을 알 수 있도록 합니다.

이벤트 구문 분석을 위해 Lambda 함수 구성

Lambda 함수와 Amazon Connect 사이에 속성과 파라미터를 성공적으로 전달하려면 AWS Lambda 함수 간접 호출 블록 또는 고객 응대 속성 설정에서 전송된 JSON 요청을 올바르게 구문 분석하도록 함수를 구성하고, 적용해야 할 비즈니스 로직을 정의합니다. JSON 구문 분석은 함수에 사용하는 런타임에 따라 다릅니다.

예를 들어, 다음 코드는 Node.JS를 사용하여 AWS Lambda 함수 간접 호출 블록에서 exampleParameterKey1에 액세스하고 고객 응대 속성 설정 블록에서 exampleAttributeKey1에 액세스하는 방법을 보여 줍니다.

exports.handler = function(event, context, callback) { // Example: access value from parameter (Invoke AWS Lambda function) let parameter1 = event['Details']['Parameters']['exampleParameterKey1']; // Example: access value from attribute (Set contact attributes block) let attribute1 = event['Details']['ContactData']['Attributes']['exampleAttributeKey1']; // Example: access customer's phone number from default data let phone = event['Details']['ContactData']['CustomerEndpoint']['Address']; // Apply your business logic with the values // ... }

함수 응답 확인

작은 정보

흐름에서는 배열 참조가 지원되지 않습니다. 배열은 다른 Lambda 함수에서만 사용할 수 있습니다.

Lambda 함수 응답은 STRING_MAP 또는 JSON일 수 있으며, 이 응답은 흐름에서 AWS Lambda 함수 간접 호출 블록을 구성하는 동안 설정되어야 합니다. 응답 검증이 STRING_MAP으로 설정된 경우 Lambda 함수는 문자열 유형의 키-값 페어로 구성된 플랫 객체를 반환해야 합니다. 그러지 않으면 응답 검증이 JSON으로 설정된 경우 Lambda 함수는 중첩된 JSON을 포함한 모든 유효한 JSON을 반환할 수 있습니다.

문자열 맵 또는 json의 사용을 강조하는 AWS Lambda 함수 간접 호출 흐름 블록.

Lambda 응답은 최대 32KB까지 가능합니다. Lambda에 연결할 수 없거나, 함수 예외가 발생하거나, 응답을 이해하지 못하거나, Lambda 함수가 제한 시간보다 오래 걸리면 흐름이 Error 레이블로 이동합니다.

Lambda 함수에서 반환된 출력을 테스트하여 Amazon Connect로 반환될 때 올바르게 사용되는지 확인합니다. 다음 예제에서는 Node.JS를 사용한 샘플 응답을 보여줍니다.

exports.handler = function(event, context, callback) { // Extract data from the event object let phone = event['Details']['ContactData']['CustomerEndpoint']['Address']; // Get information from your APIs let customerAccountId = getAccountIdByPhone(phone); let customerBalance = getBalanceByAccountId(customerAccountId); let resultMap = { AccountId: customerAccountId, Balance: '$' + customerBalance, } callback(null, resultMap); }

또한 이 예제에서는 Python을 사용한 예제 응답을 보여줍니다.

def lambda_handler(event, context): // Extract data from the event object phone = event['Details']['ContactData']['CustomerEndpoint']['Address'] // Get information from your APIs customerAccountId = getAccountIdByPhone(phone) customerBalance = getBalanceByAccountId(customerAccountId) resultMap = { "AccountId": customerAccountId, "Balance": '$%s' % customerBalance } return resultMap

함수에서 반환된 출력은 영숫자, 대시 및 밑줄 문자만 포함하는 키/값 페어의 플랫 객체여야 합니다. 반환되는 데이터의 크기는 32KB 미만의 UTF-8 데이터여야 합니다.

다음 예제는 이러한 Lambda 함수의 JSON 출력을 보여 줍니다.

{ "AccountId": "a12345689", "Balance": "$1000" }

응답 검증이 JSON으로 설정된 경우 Lambda 함수는 중첩된 JSON도 반환할 수 있습니다. 예를 들면 다음과 같습니다.

{ "Name": { "First": "John", "Last": "Doe" }, "AccountId": "a12345689", "OrderIds": ["x123", "y123"] }

간단한 키-값 페어라면 어떤 결과라도 반환할 수 있습니다.

Lambda 함수 응답 사용

흐름에서 함수 응답을 사용하는 방법에는 두 가지가 있습니다. Lambda에서 반환된 변수를 직접 참조하거나 함수에서 반환된 값을 고객 응대 속성으로 저장한 후 저장된 속성을 참조할 수 있습니다. Lambda 함수의 응답에 외부 참조를 사용하면 참조는 항상 가장 최근에 간접 호출된 함수로부터 응답을 받습니다. 후속 함수가 호출되기 전에 함수의 응답을 사용하려면 응답을 연락처 속성으로 저장하거나 다음 함수에 파라미터로 전달해야 합니다.

1. 변수에 직접 액세스

변수에 직접 액세스하면 흐름 블록에서 변수를 사용할 수 있지만 고객 응대 레코드에는 포함되지 않습니다. 흐름 블록에서 이러한 변수에 직접 액세스하려면 AWS Lambda 함수 간접 호출 블록 다음에 블록을 추가한 후 다음 예제와 같이 속성을 참조합니다.

Name - $.External.Name Address - $.External.Address CallerType - $.External.CallerType

다음 이미지는 재생 프롬프트 블록의 속성 페이지를 보여 줍니다. 변수는 텍스트 음성 변환 블록에서 지정됩니다.

재생 프롬프트 블록의 속성 페이지.

소스 속성에 지정된 이름이 Lambda에서 반환된 키 이름과 일치하는지 확인합니다.

2. 변수를 연락처 속성으로 저장

변수를 고객 응대 속성으로 저장하면 흐름 전체에서 사용할 수 있으며 고객 응대 레코드에 포함됩니다.

고객 응대 속성으로 반환된 값을 저장한 다음 참조하려면 흐름에서 AWS Lambda 함수 간접 호출 블록 다음에 고객 응대 속성 설정 블록을 사용합니다. 속성 사용을 선택하고 유형으로는 외부를 선택합니다. 사용하는 예제에 따라 대상 속성MyAccountId로 설정하고 속성AccountId로 설정한 다음 MyBalance잔액 또한 동일하게 설정합니다. 이 구성은 다음 이미지에 표시되어 있습니다.

고객 응대 속성 설정 블록의 속성 페이지.

Address를 소스 속성으로 추가하고 returnedContactAddress대상 키로 사용합니다. 그런 다음 그림에 표시된 것처럼 CallerType소스 속성으로 추가하고 returnedContactType대상 키에 사용합니다.

재생 프롬프트 블록의 속성 페이지.

소스 외부 속성에 지정된 이름이 Lambda에서 반환된 키 이름과 일치하는지 확인합니다.

자습서: Lambda 함수 생성 및 흐름 간접 호출

1단계: Lambda 예제 생성

  1. AWS Management Console에 로그인하고 https://console.aws.amazon.com/lambda/에서 AWS Lambda 콘솔을 엽니다.

  2. AWS Lambda에서 함수 생성을 선택합니다.

  3. 이미 선택되어 있지 않은 경우 처음부터 새로 작성을 선택합니다. 기본 정보에서 함수 이름MyFirstConnectLambda를 입력합니다. 다른 모든 옵션의 경우 기본값을 그대로 둡니다. 이러한 옵션은 AWS Lambda 콘솔의 다음 이미지에 나와 있습니다.

    AWS Lambda 콘솔을 엽니다.
  4. 함수 생성(Create function)을 선택합니다.

  5. 코드 소스 상자의 index.js 탭에서 코드 편집기의 템플릿 코드를 삭제합니다.

  6. 다음 이미지에 표시된 것처럼 다음 코드를 복사하여 코드 편집기에 붙여넣습니다.

    코드 소스 섹션, 배포 버튼.
    exports.handler = async (event, context, callback) => { // Extract information const customerNumber = event.Details.ContactData.CustomerEndpoint.Address; const companyName = event.Details.Parameters.companyName; // Fetch data const balance = await fetchBalance(customerNumber, companyName); const support = await fetchSupportUrl(companyName); // Prepare result const resultMap = { customerBalance: balance, websiteUrl: support } callback(null, resultMap); } async function fetchBalance(customerPhoneNumber, companyName) { // Get data from your API Gateway or Database like DynamoDB return Math.floor(Math.random() * 1000); } async function fetchSupportUrl(companyName) { // Get data from your API Gateway or Database like DynamoDB return 'www.GGG.com/support'; }

    이 코드는 customerBalance에 대해 무작위 결과를 생성합니다.

  7. [배포]를 선택합니다.

  8. 배포를 선택한 후 테스트를 선택하여 테스트 편집기를 실행합니다.

  9. 테스트 이벤트 구성 대화 상자에서 새 이벤트 생성을 선택합니다. 이벤트 이름ConnectMock을 테스트 이름으로 입력합니다.

  10. 이벤트 JSON 상자에서 샘플 코드를 삭제하고 대신 다음 코드를 입력합니다.

    { "Details": { "ContactData": { "Attributes": {}, "Channel": "VOICE", "ContactId": "4a573372-1f28-4e26-b97b-XXXXXXXXXXX", "CustomerEndpoint": { "Address": "+1234567890", "Type": "TELEPHONE_NUMBER" }, "InitialContactId": "4a573372-1f28-4e26-b97b-XXXXXXXXXXX", "InitiationMethod": "INBOUND | OUTBOUND | TRANSFER | CALLBACK", "InstanceARN": "arn:aws:connect:aws-region:1234567890:instance/c8c0e68d-2200-4265-82c0-XXXXXXXXXX", "PreviousContactId": "4a573372-1f28-4e26-b97b-XXXXXXXXXXX", "Queue": { "ARN": "arn:aws:connect:eu-west-2:111111111111:instance/cccccccc-bbbb-dddd-eeee-ffffffffffff/queue/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", "Name": "PasswordReset" }, "SystemEndpoint": { "Address": "+1234567890", "Type": "TELEPHONE_NUMBER" } }, "Parameters": { "companyName": "GGG" } }, "Name": "ContactFlowEvent" }
  11. 저장을 선택합니다.

  12. 테스트를 선택합니다. 다음 이미지와 유사한 결과가 출력되어야 합니다.

    코드 소스 섹션, 테스트 버튼.

    표시되는 잔액은 다를 수도 있습니다. 이 코드는 무작위 수를 생성합니다.

2단계: Amazon Connect에 Lambda 추가

  1. https://console.aws.amazon.com/connect/에서 Amazon Connect 콘솔을 엽니다.

  2. Amazon Connect 인스턴스 별칭을 선택합니다.

    Amazon Connect 가상 고객 센터 인스턴스 페이지, 인스턴스 별칭.
  3. 탐색 메뉴에서 흐름을 선택합니다.

  4. AWS Lambda 섹션에서 Lambda 함수 드롭다운 상자를 사용하여 MyFirstConnectLambda를 선택합니다.

    흐름 페이지, AWS Lambda 섹션
  5. Lambda 함수 추가를 선택합니다.

3단계: 고객 응대 흐름 생성

다음 이미지는 이 절차의 단계를 사용하여 구축할 흐름의 예입니다. 여기에는 고객 응대 속성 설정, 재생 프롬프트, AWS Lambda 함수 간접 호출, 또 다른 고객 응대 속성 설정 블록, 또 다른 재생 프롬프트 블록, 마지막으로 연결 끊기 블록이 포함됩니다.

AWS Lambda 함수 간접 호출 블록을 직접 호출하는 흐름.
  1. Amazon Connect 관리자 웹 사이트(https://인스턴스 이름.my.connect.aws/)에 로그인합니다.

  2. 탐색 메뉴에서 라우팅, 흐름, 고객 응대 흐름 생성으로 이동합니다.

  3. 연락처 속성 설정 블록을 그리드로 끌고 다음 이미지에 표시된 속성 페이지를 구성합니다.

    고객 응대 속성 설정 블록.
    1. 네임스페이스 = 사용자 정의.

    2. 속성 = companyName.

    3. 수동으로 설정을 선택합니다. = GGG.

    4. 저장을 선택합니다.

  4. 프롬프트 재생 블록을 그리드로 끌고 다음 이미지에 표시된 것처럼 속성 페이지를 구성합니다.

    재생 프롬프트 블록.
    1. 텍스트 음성 변환 또는 채팅 텍스트, 수동으로 설정을 선택하고 다음으로 해석SSML로 설정합니다. 말할 텍스트 입력 상자에 다음 텍스트를 입력합니다.

      Hello, thank you for calling $.Attributes.companyName inc.

    2. 저장을 선택합니다.

  5. 다른 프롬프트 재생 블록을 그리드로 끌고 다음 이미지에 표시된 것처럼 속성 페이지를 구성합니다.

    재생 프롬프트 블록.
    1. 텍스트 음성 변환 또는 채팅 텍스트, 수동으로 설정을 선택하고 다음으로 해석텍스트로 설정합니다. 말할 텍스트 입력 상자에 다음 텍스트를 입력합니다.

      Please try again later.

    2. 저장을 선택합니다.

  6. AWS Lambda 함수 호출 블록을 그리드로 끌고 다음 이미지에 표시된 것처럼 속성 페이지를 구성합니다.

    AWS Lambda 함수 간접 호출 블록.
    1. 수동으로 선택을 선택한 다음 드롭다운에서 MyFirstConnectLambda를 선택합니다.

    2. 대상 키 상자에 companyName을 입력합니다. (이는 Lambda로 전송됩니다.)

    3. 동적으로 설정 상자를 선택합니다.

    4. 네임스페이스사용자 정의를 선택합니다.

    5. 속성companyName을 입력합니다.

    6. 저장을 선택합니다.

  7. 연락처 속성 설정 블록을 그리드로 끌고 다른 속성 추가를 선택한 후 다음 이미지에 표시된 것처럼 속성 페이지를 구성합니다.

    고객 응대 속성 설정 블록.
    1. 네임스페이스 = 사용자 정의. 속성 = MyBalance.

    2. 동적으로 설정을 선택합니다.

    3. 네임스페이스 = 외부.

    4. 속성 = customerBalance. 이는 Lambda에서 나온 결과입니다.

    5. 다른 속성 추가를 선택합니다.

    6. 네임스페이스 = 사용자 정의.

    7. 속성 = MyURL.

    8. 동적으로 설정을 선택합니다. 네임스페이스 = 외부.

    9. 속성 = websiteUrl. 이는 Lambda에서 나온 결과입니다.

    10. 저장을 선택합니다.

  8. 프롬프트 재생 블록을 그리드로 끌고 다음 이미지에 표시된 것처럼 속성 페이지를 구성합니다.

    재생 프롬프트 블록.
    1. 텍스트 음성 변환 또는 채팅 텍스트를 선택하고 다음으로 해석SSML로 설정합니다. 다음 텍스트를 텍스트 상자에 입력합니다.

      Your remaining balance is <say-as interpret-as="characters">$.Attributes.MyBalance</say-as>.

      Thank you for calling $.Attributes.companyName.

      Visit $.Attributes.MyURL for more information.

    2. 저장을 선택합니다.

  9. 연결 해제/중단 블록을 그리드로 끕니다.

  10. 모든 블록을 연결하여 흐름이 이 절차의 상단에 표시된 이미지와 같이 보이도록 합니다.

  11. 이름으로 MyFirstConnectFlow를 입력한 다음 게시를 선택합니다.

  12. 탐색 메뉴에서 채널, 전화번호로 이동합니다.

  13. 전화번호를 선택합니다.

  14. MyFirstConnectFlow를 선택하고 저장을 선택합니다.

이제 시도해 봅니다. 번호로 전화를 겁니다. 인사말 메시지, 잔액, 방문할 웹 사이트를 들을 수 있습니다.