0
在我的示例中, 如果用戶單擊按鈕「是」將返回對話文本。但是,我希望它從我的輸出中返回一個值,從我的AJAX
Post
示例返回,該示例目前僅來自「alert (output.request.number)
」。 如何製作?按照代碼:如何在我的API代碼中使用Watson獲取文本/返回(JSON)?
在談話內容:#goodbye
和兩個實體:@goodbye:yes
和@goodbye:no
。如果我的客戶端識別了這個意圖,並且用戶點擊了「是」按鈕,會返回。
我的JSON高級(會話服務)
{
"output": {
"text": "You can finish the conversation? \n \n
<button id=\"button-yes\" onclick=\"OneFunction();\">Yes</button>
<button id=\"button-no\" onclick=\"OtherFunction();\">No</button>"
}
}
我需要的alert(output.request.number)
返回進來,如果用戶點擊該按鈕沃森的談話流動。
的JS代碼:
function OneFunction(firstParameter, secondParameter){
console.log(firstParameter);
$.ajax({
type: 'POST',
dataType: 'json',
contentType: "application/json",
url: 'http://xxxxxxxxxxxxxxxxxxxxxxxx/request/create',
data: JSON.stringify({
"dataOne":firstParameter,
"synchronize":false,
}
}),
success:function(output, input, response) {
console.log(output);
// alert(output.request.number);
var responseText = null;
var outputTest = {};
outputTest = output.request.number;
var latestResponse = Api.getResponsePayload();
// console.log(latestResponse);
var context = latestResponse.context;
Api.sendRequest = ("Yes", + outputTest); // THIS RETURN one number of request
}
不知道如果我完全得到它,但如果你想Watson返回一個腳本或方法調用它的文本響應那麼這不是一個很好的用例。更好的方法是在'context'或'output'字段返回這種信息。在JS中使用JSON應該很簡單,因此要訪問輸出字段,您應該可以編寫'var outputField = latestResponse.output;'。然後你會檢查是否有屬性'alert'和'output'字段中的一些文本,如果是,則向JS中的用戶顯示警報。 –
我想回到同一個對話中,而不是「提醒」。在用戶點擊yes後,它將執行此操作並返回一個我在對話中收到的響應值。 –
所以你想傳播點擊是的沃森對話。你可以通過簡單地向對話發送「是」文本輸入來實現,而在對話中你會在對話節點中處理「是」。現在你也可以通過在JSON請求的'input'部分設置特殊變量來處理這種特殊的輸入,並且你可以在對話節點中檢查它,但是對於這個特殊的用例,我只需要發送「click」作爲「是」文本輸入到服務... –