根據預設,代理程式會使用靜態回應回覆已比對的意圖。如果您使用某個整合選項,可以使用執行要求提供更動態的回應。當您為意圖啟用執行要求時,Dialogflow 會呼叫您定義的服務,回應該意圖。舉例來說,如果使用者想要預約星期五剪髮,您的服務可以檢查資料庫,並以星期五是否可預約的資訊回應使用者。
每項意圖都含有啟用執行要求的設定。如果意圖需要系統動作或動態回應,則應為該意圖啟用執行要求。如果系統比對的是未啟用執行要求的意圖,Dialogflow 就會使用您為該項意圖定義的靜態回應。
如果系統比對的是已啟用執行要求的意圖,Dialogflow 則會將要求傳送至「Webhook」服務,並附上相符意圖的相關資訊。您的系統可以執行任何必要操作,並將操作進行方式回覆給 Dialogflow啟用執行要求後,只有在Webhook 服務失敗時,系統才會使用您為意圖定義的靜態回應。下圖呈現了執行要求的處理流程。
- 使用者輸入或說出表達內容。
- Dialogflow 比對出使用者表達內容與意圖相符並擷取參數。
- Dialogflow 將 Webhook 要求訊息傳送至您的 Webhook 服務,這則訊息中包含相符意圖、操作和參數的相關資訊,並提供為意圖定義的回應。
- 您的服務會視需要執行動作,例如進行資料庫查詢或外部 API 呼叫。
- 您的服務將 Webhook 回應訊息傳送給 Dialogflow,這則訊息中包含要傳送給使用者的回應。
- Dialogflow 將回應傳送給使用者。
- 使用者看到或聽到回應。