Я пытаюсь настроить приложение на управление определенными веб-страницами в зависимости от контекста в диалоге Watson Assistant.
Файлы, которые я использую, являются редактированием примеров файлов Watson Assistant (промежуточный) на github (https://github.com/watson-developer-cloud/assistant-intermediate).
Вот фрагмент кода (в api.js), который я отредактировал, чтобы заставить его работать:
var http = new XMLHttpRequest();
http.open('POST', messageEndpoint, true);
http.setRequestHeader('Content-type', 'application/json');
http.onreadystatechange = function() {
if (http.readyState === 4 && http.status === 200 && http.responseText) {
Api.setResponsePayload(http.responseText);
var json = JSON.parse(http.responseText);
context = json.context;
if(json.context.action === 'SocialMedia') {
document.getElementById("payload-column").setAttribute("style", "background-color: #ffffff;") //renders background white as without this line the webpage comes back with black hidden text for some reason
document.getElementById("payload-column").setAttribute("src", "https://www.csc2.ncsu.edu/faculty/healey/tweet_viz/tweet_app/?q=" + json.context.AnalysisSearchItem);
}
и соответствующая конфигурация в Watson Assistantрабочее пространство:
{
"context": {
"action": "SocialMedia"
},
"output": {
"text": {
"values": [
"Loading sentiment analysis from the Computer Science department of North Carolina State University..."
],
"selection_policy": "sequential"
}
}
}
Я подключен к рабочему пространству Watson Assistant, так как работает обычный диалог чат-бота, и строка
document.getElementById("payload-column").setAttribute("src", "https://www.csc2.ncsu.edu/faculty/healey/tweet_viz/tweet_app/?q=" + json.context.AnalysisSearchItem);
сама по себе меняет iframe на веб-сайт Iхочу (я определил iframe в файле index.html), просто условие IF
if(json.context.action === 'SocialMedia')
не выполняется успешно, когда контекст попадает в SocialMedia.
было бы оченьблагодарен, если кто-нибудь может помочь, как решить проблему ....!