User:WikiMacaroons/talktowiki.js

window.SpeechRecognition = window.webkitSpeechRecognition || window.SpeechRecognition; let finalTranscript = ''; let recognition = new window.SpeechRecognition;

recognition.interimResults = true; recognition.maxAlternatives = 10; recognition.continuous = true;

recognition.onresult = (event) => { let interimTranscript = ''; for (let i = event.resultIndex, len = event.results.length; i < len; i++) { let transcript = event.results[i][0].transcript; if (event.results[i].isFinal) { finalTranscript += transcript; //alert(finalTranscript); if (finalTranscript == "main page"){ window.location.href = "https://en.wikipedia.org/wiki/Main_Page"; }     if (finalTranscript == "contents"){ window.location.href = "https://en.wikipedia.org/wiki/Wikipedia:Contents"; }     if (finalTranscript == "current events"){ window.location.href = "https://en.wikipedia.org/wiki/Portal:Current_events"; }     if (finalTranscript == "random page" || finalTranscript == "random"){ window.location.href = "https://en.wikipedia.org/wiki/Special:Random"; }     if (finalTranscript == "about wikipedia" || finalTranscript == "about"){ window.location.href = "https://en.wikipedia.org/wiki/Wikipedia:About"; }     if (finalTranscript == "contact us" || finalTranscript == "contact"){ window.location.href = "https://en.wikipedia.org/wiki/Wikipedia:Contact_Us"; }     if (finalTranscript == "donate"){ window.location.href = "https://donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_en.wikipedia.org&uselang=en"; }     if (finalTranscript == "pause" || finalTranscript == "stop"){ location.reload; speechSynthesis.cancel; }     if (finalTranscript == "read"){ funcread; }   } else { interimTranscript += transcript; } }

document.querySelector('body').innerHTML = finalTranscript + '' + interimTranscript + ''; }; recognition.start; //alert("Unfortunately, your browser does not support speech recognition");// REMEMBER TO CHANGE THIS TO TTS //alert("Does this work?"); function funcread{ if(window.speechSynthesis.getVoices.length === 0) { window.speechSynthesis.addEventListener('voiceschanged', function {			textToSpeech;		}); }	else { // languages list available, no need to wait textToSpeech; } } function textToSpeech{ // get all voices that browser offers var available_voices = window.speechSynthesis.getVoices;

// this will hold an english voice var english_voice = '';

// find voice by language locale "en-US" // if not then select the first voice for(var i=0; i<available_voices.length; i++) { if(available_voices[i].lang === 'en-US') { english_voice = available_voices[i]; break; }	}	if(english_voice === '') english_voice = available_voices[0];

// new SpeechSynthesisUtterance object var pagecontent = document.getElementById("mw-content-text").textContent; var utter = new SpeechSynthesisUtterance; utter.rate = 1; utter.pitch = 0.5; utter.text = pagecontent; utter.voice = english_voice;

// event after text has been spoken utter.onend = function { //alert('Speech has finished'); };

// speak location.reload; window.speechSynthesis.speak(utter); }