var routeSofia = location.href;
routeSofia = routeSofia.split('/');
var apiUrl = "/sofia/api";
// Variable for the conversation state.
var context = "";
$(function() {
//callBot('', true);
$('#btn-close-sofia').on('click', function() {
$('#modalSofia').hide();
$('body').removeClass('lock');
})
})
//Submeter Formulário
$("#mensagem").submit(function() {
//Caso o usuário envie uma mensagem vazia
if ($.trim($("#mensagem #texto").val()) != "") {
//Inicia método AJAX
callBot($("#mensagem #texto").val().replace(/(<([^>]+)>)/gi, ""));
}
return false;
});
function callBot(mensagem, isOpenChat) {
$.ajax({
//Substitua o caminho da URL pelo que você salvou o arquivo de backend
url: apiUrl,
type: "post", // Determina o tipo de retorno
data: {
message: mensagem,
context: context,
_token: $('meta[name="csrf-token"]').attr('content')
},
beforeSend: function() {
//Adiciona a mensagem de usuário à lista de mensagens.
if ($("#mensagem #texto").val() != '') {
$("#chat").append("
");
setTimeout(function() {
$(".mensagens").animate({ scrollTop: $("#chat").height() });
$('#header .pointerarrow').promise().done(function() {
});
}, 400);
} else {
var boxLoading = "";
boxLoading += '

';
boxLoading += "
";
$("#chat").append(boxLoading);
$(".mensagens").animate({ scrollTop: $("#chat").height() });
}
},
success: function(resposta) {
console.log(resposta);
//Limpa o que o usuário digitou e foca no input para próxima interação.
$("#mensagem #texto").val("");
$("#mensagem #texto").focus();
//Caso haja um erro, o Watson retornará a mensagem de erro ao usuário
//Basta ler o objeto error para o usuário.
if (resposta.error) {
$("#chat").append("");
return false;
}
//Colocar a resposta do Watson para o usuário ler
//A mensagem de texto pode ser lida a partir da lógica
//do json de exemplo da imagem no post
if (!isOpenChat) {
setTimeout(function() {
var boxLoading = "";
boxLoading += '

';
boxLoading += "
";
$("#chat").append(boxLoading);
$(".mensagens").animate({ scrollTop: $("#chat").height() });
setTimeout(function() {
$(".texto.chatbot").last().html(resposta.output.text[0]);
$(".mensagens").animate({ scrollTop: $("#chat").height() });
context = resposta.context;
}, 1000);
}, 500);
} else {
setTimeout(function() {
$(".texto.chatbot").last().html(resposta.output.text[0]);
$(".mensagens").animate({ scrollTop: $("#chat").height() });
context = resposta.context;
}, 1000);
}
}
});
}