Fulfillment

기본적으로 에이전트는 정적 응답으로 일치하는 인텐트에 응답합니다. 통합 옵션 중 하나를 사용하는 경우 fulfillment를 사용하여 보다 동적인 응답을 제공할 수 있습니다. 인텐트에 fulfillment를 사용 설정하면 Dialogflow는 정의한 서비스를 호출하여 해당 인텐트에 응답합니다. 예를 들어 최종 사용자가 금요일에 이발을 예약하려는 경우 서비스가 데이터베이스를 확인하여 최종 사용자에게 금요일의 예약 가능 정보를 응답할 수 있습니다.

인텐트에는 fulfillment를 사용하기 위한 설정이 있습니다. 인텐트에 시스템 작업 또는 동적 응답이 필요한 경우 인텐트에 대해 fulfillment를 사용 설정해야 합니다. Fulfillment가 사용 설정되지 않은 인텐트가 일치하는 경우 Dialogflow는 인텐트에 대해 정의된 정적 응답을 사용합니다.

Fulfillment가 사용 설정된 인텐트가 일치되는 경우 Dialogflow는 일치된 인텐트에 대한 정보와 함께 웹훅 서비스에 요청을 보냅니다. 시스템은 필요한 작업을 수행하고 진행 방법에 대한 정보를 포함한 응답을 Dialogflow에 제공할 수 있습니다. fulfillment가 사용 설정되면 웹훅 서비스 실패 시에만 인텐트에 대해 정의한 정적 응답이 사용됩니다. 다음 다이어그램은 fulfillment의 처리 흐름을 보여줍니다.

fulfillment 흐름을 보여주는 다이어그램
  1. 최종 사용자가 표현을 입력하거나 말합니다.
  2. Dialogflow가 최종 사용자 표현을 인텐트와 일치시키고 매개변수를 추출합니다.
  3. Dialogflow가 웹훅 서비스에 웹훅 요청 메시지를 보냅니다. 이 메시지에는 일치하는 인텐트, 작업, 매개변수, 인텐트에 정의된 응답에 대한 정보가 포함됩니다.
  4. 서비스가 필요에 따라 데이터베이스 쿼리 또는 외부 API 호출과 같은 작업을 수행합니다.
  5. 서비스에서 Dialogflow에 웹훅 응답 메시지를 보냅니다. 이 메시지에는 최종 사용자에게 전송되어야 하는 응답이 포함됩니다.
  6. Dialogflow가 이 응답을 최종 사용자에게 보냅니다.
  7. 최종 사용자가 응답을 보거나 듣습니다.