78 lines
2.7 KiB
JavaScript
78 lines
2.7 KiB
JavaScript
function websocket_init() {
|
|
window.addEventListener('ws_connected', () => {
|
|
console.log("tts.js ws_connected event triggered");
|
|
});
|
|
|
|
window.addEventListener('ws_disconnected', () => {
|
|
console.log("tts.js ws_disconnected event triggered");
|
|
|
|
});
|
|
window.addEventListener('ws_message', (event) => {
|
|
let rep = event.detail;
|
|
let cmd = rep.reply;
|
|
let data = rep.data;
|
|
if (cmd && cmd.length > 0) {
|
|
switch (cmd) {
|
|
case "start_generate_tts":
|
|
if (data && data.length>0 && "ok"===data){
|
|
add_to_list("TTS generation started.");
|
|
$('#startstopgeneration').text("Stop Generating");
|
|
}
|
|
break;
|
|
case "stop_generate_tts":
|
|
if (data && data.length>0 && "ok"===data){
|
|
add_to_list("TTS generation stopped.");
|
|
$('#startstopgeneration').text("Start Generating");
|
|
}
|
|
break;
|
|
case "tts_generate_progress":
|
|
if (data && data.length>0){
|
|
let xx = JSON.parse(data);
|
|
if ("progress" in xx){
|
|
if ("message" in xx){
|
|
add_to_list(xx.message + "(" + xx.progress+" %)");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
function add_to_list(message){
|
|
// add message to generatelogs list, with date time prefix
|
|
let li = document.createElement("li");
|
|
let now = new Date();
|
|
let datetime = now.toLocaleString();
|
|
li.appendChild(document.createTextNode("[" + datetime + "] " + message));
|
|
$('#generatelogs').append(li);
|
|
}
|
|
|
|
$(document).ready(function () {
|
|
console.log("TTS module loaded.");
|
|
websocket_init();
|
|
|
|
$('#uploadjson').on('click', function () {
|
|
// TODO upload JSON file and process it
|
|
});
|
|
$('#startstopgeneration').on('click', function () {
|
|
if ($('#startstopgeneration').text() === "Start Generating") {
|
|
// clear list generatelogs
|
|
$('#generatelogs').empty();
|
|
let data = {
|
|
voicetype: $('#voicetype').val(),
|
|
languagetogenerate: $('#languagetogenerate').val(),
|
|
databasesource: $('#databasesource').val(),
|
|
targetas: $('#targetas').val(),
|
|
fileoperation: $('input[name="fileoperation"]:checked').val(),
|
|
autoadd: $('input[name="autoadd"]:checked').val()
|
|
}
|
|
sendCommand("start_generate_tts", JSON.stringify(data));
|
|
} else {
|
|
sendCommand("stop_generate_tts", "");
|
|
}
|
|
|
|
|
|
|
|
});
|
|
}); |