사전 빌드된 약속 예약 구성요소

사전 빌드된 약속 예약 구성요소를 사용하면 신규 및 기존 고객이 약속을 예약할 수 있습니다. 이 구성요소는 사전 빌드된 생년월일 수집 구성요소의 맞춤 버전을 사용하여 약속 날짜를 수집하고 사전 빌드된 전화번호 수집우편번호 수집 구성요소를 사용하여 사용자 및 약속 위치에 대한 정보를 수집합니다.

예약 이유 및 유형

이 구성요소는 여러 카테고리의 예약 이유를 지원하며 사용자가 선택한 이유에 따라 다양한 예약 유형을 제공합니다.

예약 이유 사용 가능한 예약 유형
대출 오프라인, 가상, 전화
주택담보대출 오프라인, 가상, 전화
자산 관리 오프라인, 가상, 전화
신용카드 가상, 전화
기타 전화

prebuilt_components_arrange_appt_reason 커스텀 항목을 수정하여 예약 카테고리를 맞춤설정할 수 있습니다. 각 카테고리에 사용 가능한 예약 유형은 각 예약 유형의 입력 매개변수를 수정하여 구성할 수 있습니다.

제한사항

사전 빌드된 구성요소에는 일반적인 사전 빌드된 구성요소 제한사항 외에도 다음과 같은 제한사항이 있습니다.

  • 이 구성요소는 데이터를 암호화하지 않습니다.

샘플 대화상자

다음 샘플 대화상자에서는 사전 빌드된 구성요소에서 처리하는 일반적인 시나리오를 보여줍니다. 샘플 대화상자는 전화를 통해 구성요소가 호출될 때 기본 시작 인텐트와 대화 시작 시 첫 번째 에이전트 응답을 트리거하는 동작을 보여줍니다.

기존 사용자가 대면 약속 예약

에이전트는 사용자가 이전에 기존 사용자로 인증되었음을 식별합니다. 사용자는 예약의 이유를 제시하고 대면 만남을 예약하기로 선택합니다. 에이전트는 사용자가 등록된 주소와 가장 가까운 지점에 가고자 하는 것을 확인하고 사용자가 원하는 날짜 및 시간이 가능한지 확인합니다. 에이전트는 시간과 장소를 확인하고 일정을 예약합니다.

사용자 입력 에이전트 응답
약속을 예약하기 전에 몇 가지 질문을 하겠습니다. 약속 이유를 알려주세요.
자산 관리에 대해 이야기하고 싶습니다.
전화, 영상 통화 또는 저희 지점에서 대면 만남 중 어떤 방식을 원하시나요?
직접 만나고 싶습니다.
예, 1600 Amphitheatre Pkwy, Mountain View, CA 94043에 있는 지점에 일정을 예약하시겠어요?
원하는 약속 날짜를 알려주세요. 원하는 월, 일, 연도를 알려주세요. 지점의 근무 시간은 월요일~금요일 오전 9시~오후 5시, 토요일 오전 9시~오후 1시입니다.
에이전트가 사전 빌드된 생년월일 수집 구성요소를 사용하여 사용자가 원하는 약속 날짜 수집
좋습니다. 원하는 날짜 수집이 완료되었습니다.

원하는 시간대를 알려주세요.
오전 10시
오전 10시를 선택했습니다. 선택한 약속 시간으로 계속 진행하려면 '예'라고 말합니다.
2023년 9월 23일 오전 10시, 은행 주소 1600 Amphitheatre Pkwy, Mountain View, CA 94043에서의 약속을 예약하겠습니다. 맞나요?
알겠습니다. 약속을 예약했습니다. 확인 번호는 818452입니다. 다른 약속을 예약하시겠어요?
아니요
문의해 주셔서 감사합니다. 좋은 하루 보내세요.

신규 고객이 여러 약속 예약

에이전트는 사용자가 이전에 인증되지 않았음을 확인하고 사용자의 전화번호를 수집합니다. 사용자가 가상 예약을 요청하여 대출을 논의합니다. 사용자가 원하는 날짜 및 시간을 사용할 수 없어 에이전트가 사용자에게 가능한 시간대를 제공합니다. 사용자가 사용 가능한 시간대를 선택하면 약속이 성공적으로 예약됩니다. 사용자가 두 번째 약속을 예약하려는 것을 확인하고 에이전트가 두 번째 약속을 성공적으로 예약합니다.

사용자 입력 에이전트 응답
에이전트가 사전 빌드된 전화번호 수집 구성요소를 사용하여 사용자 전화번호를 수집합니다.
좋습니다. 전화번호 수집이 완료되었습니다.

약속을 예약하기 전에 몇 가지 질문을 하겠습니다. 약속 이유를 알려주세요.
대출을 받고 싶습니다.
전화, 영상 통화 또는 저희 지점에서 대면 만남 중 어떤 방식을 원하시나요?
가상 약속이 좋습니다.
원하는 약속 날짜를 알려주세요. 원하는 월, 일, 연도를 알려주세요. 지점의 근무 시간은 월요일~금요일 오전 9시~오후 5시, 토요일 오전 9시~오후 1시입니다.
에이전트가 사전 빌드된 생년월일 수집 구성요소를 사용하여 사용자가 원하는 약속 날짜 수집
좋습니다. 원하는 날짜 수집이 완료되었습니다.

원하는 시간대를 알려주세요.
3시가 좋음
오후 3시를 선택했습니다. 선택한 약속 시간으로 계속 진행하려면 '예'라고 답해 주세요.
2023년 10월 3일 오후 3시에 자문 담당자와 상담 일정을 예약하겠습니다. 맞나요?
네, 받겠습니다.
알겠습니다. 약속을 예약했습니다. 확인 번호는 754731입니다.

다른 약속을 예약하시겠어요?
약속을 예약하기 전에 몇 가지 질문을 하겠습니다. 약속 이유를 알려주세요.
신용카드 관련 예약이 필요합니다.
지점 담당자와 전화 통화 또는 영상 통화 예약을 하시겠어요?
전화
원하는 약속 날짜를 알려주세요. 원하는 월, 일, 연도를 알려주세요. 지점의 근무 시간은 월요일~금요일 오전 9시~오후 5시, 토요일 오전 9시~오후 1시입니다.
에이전트가 사전 빌드된 생년월일 수집 구성요소를 사용하여 사용자가 원하는 약속 날짜 수집
좋습니다. 원하는 날짜 수집이 완료되었습니다.

원하는 시간대를 알려주세요.
오전 8시로 할 수 있나요?
오전 8시를 선택했습니다. 선택한 약속 시간으로 계속 진행하려면 '예'라고 말합니다.
죄송하지만 선택한 시간대를 사용할 수 없습니다. 2023년 10월 6일에 오전 11:30, 오후 12:30, 오후 1:30, 오후 3:00가 가능합니다. 시간대를 변경하거나 다른 날짜에 일정을 예약하시겠어요?
1:30으로 하겠습니다.
오후 1:30을 선택했습니다. 선택한 약속 시간으로 계속 진행하려면 '예'라고 답해 주세요.
2023년 10월 6일 오후 1:30에 자문 담당자와 상담 일정을 예약하겠습니다. 맞나요?
그렇습니다
알겠습니다. 약속을 예약했습니다. 확인 번호는 714637입니다.

다른 약속을 예약하시겠어요?
아니요, 다 됐어요.
문의해 주셔서 감사합니다. 좋은 하루 보내세요.

이름 지정 규칙

이 사전 빌드된 구성요소는 다음 이름 지정 규칙을 사용합니다.

기능 형식
정렬 [구성요소 이름] 약속 예약
구성요소별 인텐트 prebuilt_components_[component_name]_[intent_name] prebuilt_components_arrange_appt_change_date_slot
항목 유형 prebuilt_components_[component_name]_[entity_type] prebuilt_components_arrange_appt_reason
웹훅 prebuilt_components_[component_name]:[webhook_action] prebuilt_components_arrange_appointment:submit_appointment

입력 매개변수

입력 매개변수는 구성요소의 특정 동작을 구성하는 데 사용되는 매개변수입니다. 매개변수는 흐름 내 하나 이상의 조건에서 구성요소 작동 방식을 결정하는 데 사용됩니다. 흐름 범위 매개변수는 아래 설명된 대로 구성요소의 시작 페이지에서 설정해야 합니다. 세션 범위 매개변수는 호출 흐름 또는 이 구성요소의 시작 페이지에서 설정할 수 있습니다.

이 사전 빌드된 구성요소는 다음 입력 매개변수를 허용합니다.

매개변수 이름 설명 입력 형식
$session.params.phone_number (선택사항) 인증에 사용된 고객의 등록된 전화번호입니다. 문자열
$session.params.auth_level (선택사항) 호출자의 인증 레벨을 나타냅니다. 정수
$flow.all_appointment_type 모든 유형의 약속을 사용할 수 있는 예약 이유 목록을 지정합니다. 기본값은 ["loans", "wealth"]입니다. 목록(문자열)
$flow.video_phone_appointment_type 모든 유형의 약속을 사용할 수 있는 예약 이유 목록을 지정합니다. 기본값은 ["cards"]입니다. 목록(문자열)
$flow.appointment_services 지점 위치가 필요하지 않고 사용자로부터 수집되지 않는 예약 유형 목록을 지정합니다. 기본값은 ["video", "phone"]입니다. 목록(문자열)
$flow.working_hours 지점의 영업시간을 지정합니다(예: "Monday to Friday: 9 AM to 5 PM, Saturday: 9 AM to 1 PM"). 문자열
$session.params.arrange_appointment_max_days 약속 예약에 허용된 현재 날짜로부터의 최대 일수를 지정합니다. 기본적으로 이 값은 90이며, 약속 날짜가 현재 날짜로부터 90일 이내에 예약될 수 있음을 나타냅니다. 이 매개변수는 시작 페이지 true 경로에 설정됩니다. 정수
flow.max_retry_count 사용자로부터 정보를 수집할 때 허용되는 재시도 횟수를 지정합니다. 기본값은 3입니다. 정수

이 구성요소의 입력 매개변수를 구성하려면 안내를 펼칩니다.

  1. Dialogflow CX 콘솔을 엽니다.
  2. Google Cloud 프로젝트를 선택합니다.
  3. 에이전트를 선택합니다.
  4. 빌드 탭을 선택합니다.
  5. 흐름 섹션에서 가져온 구성요소를 클릭합니다.
  6. 페이지 섹션에서 시작 페이지를 클릭합니다.
  7. 시작 페이지에서 true 경로를 클릭합니다.
  8. 경로 창에서 필요에 따라 매개변수 사전 설정 값을 수정합니다.
  9. 저장을 클릭합니다.

출력 매개변수

출력 매개변수는 구성요소를 종료한 후에도 활성 상태로 유지되는 세션 매개변수입니다. 이러한 매개변수에는 구성요소에 의해 수집된 중요한 정보가 포함됩니다. 이 사전 빌드된 구성요소는 다음 출력 매개변수의 값을 제공합니다.

매개변수 이름 설명 출력 형식
phone_number 사용자를 식별하는 데 사용되는 국가 코드가 포함되지 않은 사용자의 현지 전화번호입니다. 문자열
transfer_reason 이 매개변수는 성공하지 않은 경우 흐름이 종료된 이유를 나타냅니다. 반환된 값은 다음 중 하나입니다.

agent: 최종 사용자가 대화 중 특정 시점에서 상담사를 요청했습니다.

denial_of_information: 최종 사용자가 구성 요소에서 요청한 정보 공유를 거부했습니다.

max_no_input: 대화가 입력되지 않은 이벤트에 대한 최대 재시도 횟수에 도달했습니다. no-input 기본 제공 이벤트를 참조하세요.

max_no_match: 대화가 일치하지 않는 이벤트의 최대 재시도 횟수에 도달했습니다. no-match 기본 제공 이벤트를 참조하세요.

webhook_error: 웹훅 오류가 발생했습니다. webhook.error 기본 제공 이벤트를 참조하세요.

webhook_not_found: 웹훅 URL에 연결할 수 없습니다. webhook.error.not-found 기본 제공 이벤트를 참조하세요.
문자열

기본 설정

이 사전 빌드된 구성요소를 설정하려면 다음 안내를 따르세요.

  1. 사전 빌드된 구성요소를 가져옵니다.
  2. Dialogflow 외부 서비스를 설명하는 구성으로 제공된 가변형 웹훅을 구성합니다. 아래 웹훅 설정을 참조하세요.

웹훅 설정

이 구성요소를 사용하려면 포함된 유연한 웹훅을 구성하여 외부 서비스에서 필요한 정보를 검색해야 합니다.

계정 가져오기

prebuilt_components_arrange_appointment:get_account 웹훅은 등록된 계정이 있는 경우 구성요소에서 제공된 전화번호의 계정 세부정보를 가져오는 데 사용됩니다.

API 요청 매개변수

다음 매개변수는 구성요소에서 API 요청에 대한 입력으로 제공됩니다.

매개변수 이름 설명 입력 형식
$session.params.phone_number 사용자를 식별하는 데 사용되는 국가 코드가 포함되지 않은 사용자의 현지 전화번호입니다. 문자열

API 응답 매개변수

다음 매개변수는 구성요소에서 사용할 API 응답에서 가져옵니다.

매개변수 이름 설명 출력 형식
account_count 등록된 전화 번호와 연결된 계정 수입니다. 정수
cards_count 등록된 전화번호와 연결된 카드 수입니다. 정수
loans_count 등록된 전화번호와 연결된 대출 수입니다. 정수
mortgage_count 등록된 전화번호와 연결된 주택담보대출 수입니다. 정수
branch_code 등록된 전화번호와 연결된 지점 코드로, 고유한 지점 위치를 식별하는 데 사용됩니다. 문자열

이 구성요소에 계정 가져오기 웹훅을 구성하려면 안내를 펼칩니다.

  1. Dialogflow CX 콘솔을 엽니다.
  2. Google Cloud 프로젝트를 선택합니다.
  3. 에이전트를 선택합니다.
  4. 관리 탭을 선택합니다.
  5. 웹훅을 클릭합니다.
  6. prebuilt_components_arrange_appointment:get_account 웹훅을 선택합니다.
  7. Dialogflow 웹훅 URL 필드의 URL을 통합하려는 서비스의 엔드포인트로 바꿉니다. 드롭다운에서 적절한 메서드를 선택합니다.
  8. 요청 본문을 검토하고 업데이트하여 웹훅에 적합한 요청 형식을 작성합니다.
  9. 응답 구성을 검토하고 업데이트하여 웹훅의 응답에서 특정 필드를 추출합니다. 구성요소에서 반환된 필드 값에 액세스해야 하므로 매개변수 이름을 수정하지 마세요.
  10. 필요에 따라 인증 설정을 검토하고 업데이트합니다.
  11. 저장을 클릭합니다.

브랜치 가져오기

지점 코드가 주어지면 지점 위치에 대한 정보를 검색하는 데 prebuilt_components_arrange_appointment:get_branch 웹훅을 사용합니다.

API 요청 매개변수

다음 매개변수는 구성요소에서 API 요청에 대한 입력으로 제공됩니다.

매개변수 이름 설명 입력 형식
$flow.branch_code 고유한 지점 위치를 식별하는 지점 코드입니다. 문자열

API 응답 매개변수

다음 매개변수는 구성요소에서 사용할 API 응답에서 가져옵니다.

매개변수 이름 설명 출력 형식
branch_address 지점 주소입니다. 문자열

이 구성요소에 지점 가져오기 웹훅을 구성하려면 안내를 펼칩니다.

  1. Dialogflow CX 콘솔을 엽니다.
  2. Google Cloud 프로젝트를 선택합니다.
  3. 에이전트를 선택합니다.
  4. 관리 탭을 선택합니다.
  5. 웹훅을 클릭합니다.
  6. prebuilt_components_arrange_appointment:get_branch 웹훅을 선택합니다.
  7. Dialogflow 웹훅 URL 필드의 URL을 통합하려는 서비스의 엔드포인트로 바꿉니다. 드롭다운에서 적절한 메서드를 선택합니다.
  8. 요청 본문을 검토하고 업데이트하여 웹훅에 적합한 요청 형식을 작성합니다.
  9. 응답 구성을 검토하고 업데이트하여 웹훅의 응답에서 특정 필드를 추출합니다. 구성요소에서 반환된 필드 값에 액세스해야 하므로 매개변수 이름을 수정하지 마세요.
  10. 필요에 따라 인증 설정을 검토하고 업데이트합니다.
  11. 저장을 클릭합니다.

사용 가능한 지점

우편번호가 주어질 때 구성요소가 가장 가까운 지점 위치를 가져오는 데 prebuilt_components_arrange_appointment:available_branch 웹훅이 사용됩니다.

API 요청 매개변수

다음 매개변수는 구성요소에서 API 요청에 대한 입력으로 제공됩니다.

매개변수 이름 설명 입력 형식
$flow.zip_code 최종 사용자가 제공하는 우편번호 문자열

API 응답 매개변수

다음 매개변수는 구성요소에서 사용할 API 응답에서 가져옵니다.

매개변수 이름 설명 출력 형식
branch_address 지점 주소입니다. 문자열

이 구성요소에 사용 가능한 지점 웹훅을 구성하려면 안내를 펼칩니다.

  1. Dialogflow CX 콘솔을 엽니다.
  2. Google Cloud 프로젝트를 선택합니다.
  3. 에이전트를 선택합니다.
  4. 관리 탭을 선택합니다.
  5. 웹훅을 클릭합니다.
  6. prebuilt_components_arrange_appointment:available_branch 웹훅을 선택합니다.
  7. Dialogflow 웹훅 URL 필드의 URL을 통합하려는 서비스의 엔드포인트로 바꿉니다. 드롭다운에서 적절한 메서드를 선택합니다.
  8. 요청 본문을 검토하고 업데이트하여 웹훅에 적합한 요청 형식을 작성합니다.
  9. 응답 구성을 검토하고 업데이트하여 웹훅의 응답에서 특정 필드를 추출합니다. 구성요소에서 반환된 필드 값에 액세스해야 하므로 매개변수 이름을 수정하지 마세요.
  10. 필요에 따라 인증 설정을 검토하고 업데이트합니다.
  11. 저장을 클릭합니다.

사용 가능한 시간대 가져오기

prebuilt_components_arrange_appointment:get_available_slots 웹훅은 구성요소에서 사용자가 선호하는 날짜 및 약속 유형에 대해 사용 가능한 시간대를 확인하는 데 사용됩니다.

API 요청 매개변수

다음 매개변수는 구성요소에서 API 요청에 대한 입력으로 제공됩니다.

매개변수 이름 설명 입력 형식
$flow.preferred_date 최종 사용자가 제공한 원하는 예약 날짜로, 'YYYY-MM-DD' 형식입니다. 문자열
$flow.appointment_type 예약의 예약 유형입니다. 문자열
$flow.branch_code 최종 사용자가 선택한 고유한 지점 위치를 식별하는 지점 코드 문자열

API 응답 매개변수

다음 매개변수는 구성요소에서 사용할 API 응답에서 가져옵니다.

매개변수 이름 설명 출력 형식
available_slots 지정된 날짜에 가능한 'HH:MM XM' 형식의 약속 시간 목록입니다(예: ["09:00 AM", "2:30 PM"]). 사용 가능한 시간대가 없으면 이 매개변수는 빈 목록 []입니다. 목록(문자열)

이 구성요소에 사용 가능한 시간대 가져오기 웹훅을 구성하려면 안내를 펼칩니다.

  1. Dialogflow CX 콘솔을 엽니다.
  2. Google Cloud 프로젝트를 선택합니다.
  3. 에이전트를 선택합니다.
  4. 관리 탭을 선택합니다.
  5. 웹훅을 클릭합니다.
  6. prebuilt_components_arrange_appointment:get_available_slots 웹훅을 선택합니다.
  7. Dialogflow 웹훅 URL 필드의 URL을 통합하려는 서비스의 엔드포인트로 바꿉니다. 드롭다운에서 적절한 메서드를 선택합니다.
  8. 요청 본문을 검토하고 업데이트하여 웹훅에 적합한 요청 형식을 작성합니다.
  9. 응답 구성을 검토하고 업데이트하여 웹훅의 응답에서 특정 필드를 추출합니다. 구성요소에서 반환된 필드 값에 액세스해야 하므로 매개변수 이름을 수정하지 마세요.
  10. 필요에 따라 인증 설정을 검토하고 업데이트합니다.
  11. 저장을 클릭합니다.

일정 제출

구성요소에서 사용자가 선택한 날짜, 시간, 지점, 예약 이유, 예약 유형에 대해 일정을 예약하는 데 prebuilt_components_arrange_appointment:submit_appointment 웹훅이 사용됩니다.

API 요청 매개변수

다음 매개변수는 구성요소에서 API 요청에 대한 입력으로 제공됩니다.

매개변수 이름 설명 입력 형식
$session.params.phone_number 사용자를 식별하는 데 사용되는 국가 코드가 포함되지 않은 사용자의 현지 전화번호입니다. 문자열
$flow.preferred_date 최종 사용자가 제공한 원하는 예약 날짜로, 'YYYY-MM-DD' 형식입니다. 문자열
$flow.preferred_slot 최종 사용자가 제공한 원하는 예약 날짜로, 'YYYY-MM-DD' 형식입니다. 문자열
$flow.appointment_reason 약속의 예약 이유입니다. 문자열
$flow.appointment_type 예약의 예약 유형입니다. 문자열
$flow.branch_code 최종 사용자가 선택한 고유한 지점 위치를 식별하는 지점 코드 문자열

API 응답 매개변수

다음 매개변수는 구성요소에서 사용할 API 응답에서 가져옵니다.

매개변수 이름 설명 출력 형식
request_number 예약된 약속의 요청 번호입니다. 정수

이 구성요소에 약속 제출 웹훅을 구성하려면 안내를 펼칩니다.

  1. Dialogflow CX 콘솔을 엽니다.
  2. Google Cloud 프로젝트를 선택합니다.
  3. 에이전트를 선택합니다.
  4. 관리 탭을 선택합니다.
  5. 웹훅을 클릭합니다.
  6. prebuilt_components_arrange_appointment:submit_appointment 웹훅을 선택합니다.
  7. Dialogflow 웹훅 URL 필드의 URL을 통합하려는 서비스의 엔드포인트로 바꿉니다. 드롭다운에서 적절한 메서드를 선택합니다.
  8. 요청 본문을 검토하고 업데이트하여 웹훅에 적합한 요청 형식을 작성합니다.
  9. 응답 구성을 검토하고 업데이트하여 웹훅의 응답에서 특정 필드를 추출합니다. 구성요소에서 반환된 필드 값에 액세스해야 하므로 매개변수 이름을 수정하지 마세요.
  10. 필요에 따라 인증 설정을 검토하고 업데이트합니다.
  11. 저장을 클릭합니다.

완료

이제 에이전트 및 웹훅이 설정되어 테스트할 수 있습니다.