2017-03-07 111 views
2

我正在嘗試將一些Java代碼與Watson對話對話框集成。目前,我使用下面的代碼到一個簡單的文本輸入傳遞給沃森對話框:使用Java將變量傳遞給IBM Watson對話對話框

MessageRequest emptyReq = new MessageRequest.Builder().inputText(" ").build(); 

    MessageResponse response1 = service.message(workspaceId, emptyReq).execute(); 

    MessageRequest req1 = new MessageRequest.Builder().inputText("cancel my delivery").context(response1.getContext()).build(); 

    MessageResponse response2 = service.message(workspaceId, req1).execute(); 

此代碼按預期正常運行和響應是正確的。但是,我不確定如何在消息中傳遞變量,然後由對話框進行解釋。

例如,假設我在名爲「estimatedDeliveryDate」的變量中存儲日期。

我會發送消息「取消交貨」沃森,與estimatedDeliveryDate所以,「由於對estimatedDeliveryDate現已取消您的訂單」對話框將與響應一起。

任何幫助將不勝感激,謝謝。

回答

3

在工具中,轉到您的節點,單擊鉛筆進行編輯。然後加入

"context": { 
    "estimatedDeliveryDate": "today" 
} 

然後在輸出部分,你可以寫:

"output": { 
    "text": { 
     "values": [ 
     "Your reservation for <? $estimatedDeliveryDate ?> got canceled" 
     ] 
    } 

很明顯,你可以從輸入拍攝動態值替換today。用於@sys-date。請參閱https://www.ibm.com/watson/developercloud/doc/conversation/system-entities.html