功能概述
全局服務是一種系統集成能力,允許在對話過程中調用外部HTTP接口、阿里云函數計算和阿里云短信服務,系統中“對話工廠”支持直接引用全局服務。例如在“對話工廠”中調用有關外部“查天氣”HTTP接口就可使機器人具備回應用戶查天氣需求,這極大擴展了機器人的對話能力。
功能入口
進入有關機器人空間后,選擇通用設置>全局服務,即可進入全局服務設置界面:
新建HTTP類型全局服務
內容配置
進入全局服務內容設置界面后,選擇服務類型為“HTTP服務”后,完成其他有關信息填寫后即可完成服務的新建。具體產品界面如下:
選擇服務類型為“HTTP服務”實質是調用外部HTTP接口。
有關服務的其他內容配置介紹如下:
服務名稱與類型
服務名稱:根據服務提供的功能, 可自定義服務名稱。
服務類型:當前支持的服務類型有“HTTP服務”、“阿里云函數計算”和“阿里云短信服務”三類,此處要選擇服務類型為“HTTP服務”。
調用方式設置
服務調用方式:
同步:服務調用方式若選擇同步,服務將在調用完成或超時的情況,生成response信息并返回結果。
異步:若選擇異步,需要調用方自主訪問接口,來獲取服務結果或超時信息。
是否輪詢:若選擇“是”,im、外呼等渠道端會對接口發起輪詢,如果異步服務有結果,則返回接口參數。
對于同步調用的執行,默認需要等待服務返回后才觸發后續流程,如果服務的返回結果會影響問答引擎后續動作,建議使用同步服務。
對于異步調用,會有兩種場景:
例如機器人返回答案同時需要給客戶發一條備忘短信,這種場景調用短信接口和后續問答無關,可以使用異步服務,“是否輪詢”選擇“否”,整體交互體驗會更優雅;
在某些場景中,服務的返回結果會影響問答引擎后續動作,同時業務接口實時較高(如訂車票類服務接口),在對話過程中調用這種服務并獲取結果會導致對話實時增加,對話交互體驗下降,可以使用異步服務,“是否輪詢”選擇“是”。im、外呼等渠道端會對接口發起輪詢,如果異步服務有結果,則返回接口參數。
說明
服務超時時間:設定調用服務超時時間,超時后,系統會返回timeout信息。
接收參數設置
服務接收參數:設置服務需要接收的參數。
功能配置
服務接口:該服務需要引用的第三方接口。
接口入參: 根據第三方接口要求提供入參,可通過${}引用上面的服務接收參數,例:${city}。
系統當前支持HTTP協議,GET和POST兩種服務接口。
服務返回參數
設置服務返回參數,可在服務節點,將該參數賦值到全局變量。
使用案例演示
參數說明:
服務接收參數:設置服務需要接收的參數,如查天氣需要指定城市 。
服務接口:該服務需要引用的第三方接口
請求類型:GET
請求URL: http://127.xx.xx.xx/smsapi
請求參數: 根據第三方接口要求提供入參, 可通過${}引用上面的服務接收參數, 例: ${city}。
接口出參:服務接口返回的結果 ${serviceOutput}, 賦值到的服務返回參數。
服務返回參數:設置服務返回參數,可在服務節點, 將該參數賦值到全局變量。
新建函數計算服務
進入全局服務內容設置界面后,選擇服務類型為“函數計算”后,完成其他有關信息填寫后即可完成服務的新建。
選擇該服務的前提是需要開通阿里云函數計算,有關阿里云函數計算的產品介紹可參考《阿里云函數計算-產品簡介》。
新建函數計算服務需要選擇服務內容和具體函數,其具體含義和內容配置的具體介紹參考《快速創建函數》。
新建短信服務
進入全局服務內容設置界面后,選擇服務類型為“短信服務”后,完成其他有關信息填寫后即可完成服務的新建。
選擇該服務的前提是需要開通阿里云短信服務,有關阿里云短信服務的產品介紹可參考《阿里云短信服務-產品簡介》。
新建短信服務需要選擇簽名和模板,其具體含義和內容配置的詳細介紹參考《通過控制臺使用短信服務》。