Skip to content
Snippets Groups Projects
Commit c3c34392 authored by v4nkor's avatar v4nkor
Browse files

Added WIP scrolling + working random recipe

parent de94e1db
Branches
No related tags found
No related merge requests found
...@@ -89,7 +89,7 @@ function listenForCristo(){ ...@@ -89,7 +89,7 @@ function listenForCristo(){
console.log('Listened'); console.log('Listened');
var speechResult = event.results[0][0].transcript.toLowerCase(); var speechResult = event.results[0][0].transcript.toLowerCase();
console.log(speechResult); console.log(speechResult);
heardSpan.innerText += " A entendu = " + speechResult; heardSpan.innerText = " A entendu = " + speechResult;
heardSpan.style.display = ""; heardSpan.style.display = "";
voiceSpan.style.display = "none"; voiceSpan.style.display = "none";
console.log('Confidence: ' + event.results[0][0].confidence); console.log('Confidence: ' + event.results[0][0].confidence);
...@@ -112,7 +112,7 @@ function listenForCristo(){ ...@@ -112,7 +112,7 @@ function listenForCristo(){
voiceBtn.textContent = 'Ecouter a nouveau'; voiceBtn.textContent = 'Ecouter a nouveau';
diagnosticPara.textContent = 'Error occurred in recognition: ' + event.error; diagnosticPara.textContent = 'Error occurred in recognition: ' + event.error;
voiceSpan.style.display = "none"; voiceSpan.style.display = "none";
heardSpan.innerText += " Erreur "; heardSpan.innerText = " Erreur ";
heardSpan.style.display = ""; heardSpan.style.display = "";
} }
recognition.onaudiostart = function(event) { recognition.onaudiostart = function(event) {
...@@ -166,15 +166,17 @@ function listenForCommand(){ ...@@ -166,15 +166,17 @@ function listenForCommand(){
console.log('Listened'); console.log('Listened');
var speechResult = event.results[0][0].transcript.toLowerCase(); var speechResult = event.results[0][0].transcript.toLowerCase();
console.log(speechResult); console.log(speechResult);
heardSpan.innerText += " A entendu = " + speechResult; heardSpan.innerText = " A entendu = " + speechResult;
heardSpan.style.display = ""; heardSpan.style.display = "";
voiceSpan.style.display = "none"; voiceSpan.style.display = "none";
console.log('Confidence: ' + event.results[0][0].confidence); console.log('Confidence: ' + event.results[0][0].confidence);
if(speechResult.toLowerCase().includes("descend")){ if(speechResult.toLowerCase().includes("descend")){
speak("Je vais descendre dans la page"); speak("Je vais descendre dans la page");
pageScrollDown();
} }
else if(speechResult.toLowerCase().includes("monte")){ else if(speechResult.toLowerCase().includes("monte")){
speak("Je vais monter dans la page"); speak("Je vais monter dans la page");
pageScrollUp();
} }
else if(speechResult.toLowerCase().includes("recette")){ else if(speechResult.toLowerCase().includes("recette")){
if(speechResult.toLowerCase().includes("précédente")){ if(speechResult.toLowerCase().includes("précédente")){
...@@ -185,6 +187,7 @@ function listenForCommand(){ ...@@ -185,6 +187,7 @@ function listenForCommand(){
} }
else if(speechResult.toLowerCase().includes("aléatoire")){ else if(speechResult.toLowerCase().includes("aléatoire")){
speak("Voici une recette aleatoire"); speak("Voici une recette aleatoire");
recetteAleatoire();
} }
} }
else { else {
...@@ -238,6 +241,39 @@ function listenForCommand(){ ...@@ -238,6 +241,39 @@ function listenForCommand(){
} }
} }
function listenForStop(){
var grammar = '#JSGF V1.0; grammar phrase; public <phrase> = stop | arrete;';
var recognition = new SpeechRecognition();
var speechRecognitionList = new SpeechGrammarList();
speechRecognitionList.addFromString(grammar, 1);
recognition.grammars = speechRecognitionList;
recognition.lang = 'fr-FR';
recognition.interimResults = false;
recognition.maxAlternatives = 1;
recognition.start();
console.log('Started first listening');
recognition.onresult = function(event) {
console.log('Listened');
var speechResult = event.results[0][0].transcript.toLowerCase();
console.log(speechResult);
heardSpan.innerText += " A entendu = " + speechResult;
heardSpan.style.display = "";
voiceSpan.style.display = "none";
console.log('Confidence: ' + event.results[0][0].confidence);
if(speechResult.toLowerCase().includes("stop")){
speak("Je vais arreter de descendre dans la page");
return true;
}
else if(speechResult.toLowerCase().includes("arrete")){
speak("Je vais arreter de descendre dans la page");
return true;
}
else {
return false;
}
}
}
function speak(text){ function speak(text){
if (synth.speaking) { if (synth.speaking) {
console.error("speechSynthesis.speaking"); console.error("speechSynthesis.speaking");
...@@ -271,6 +307,38 @@ function enableBtn(){ ...@@ -271,6 +307,38 @@ function enableBtn(){
voiceSpan.style.display = "none"; voiceSpan.style.display = "none";
} }
function pageScrollDown() {
window.scrollBy(0,1);
if ((window.innerHeight + Math.round(window.scrollY)) >= document.body.offsetHeight) {
speak("Bas de page atteind, j'arrete de descendre");
}
else{
scrolldelay = setTimeout(pageScrollDown,5);
}
}
function pageScrollUp() {
window.scrollBy(0,-1);
if ((window.innerHeight + Math.round(window.scrollY)) <= document.body.offsetHeight) {
speak("Haut de page atteind, j'arrete de monter");
}
else{
scrolldelay = setTimeout(pageScrollUp,5);
}
}
function getRandomInt(max) {
return Math.floor(Math.random() * max);
}
function recetteAleatoire(){
let recettes = ["cookie-au-chocolat", "soupe-au-potiron", "pain-perdu", "quiche-lorraine"]
let number = getRandomInt(recettes.length);
url = window.location;
window.location.href = url.origin+'/recette/'+recettes[number];
}
function scrollDown(){ function scrollDown(){
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment