|  | <html>
 | 
						
						
						
							|  |     <head>
 | 
						
						
						
							|  |     </head>
 | 
						
						
						
							|  |     <body>
 | 
						
						
						
							|  |         <div id="messages"></div>
 | 
						
						
						
							|  |         <script>
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | function speak(text) {
 | 
						
						
						
							|  |     // Create a new SpeechSynthesisUtterance instance
 | 
						
						
						
							|  |     const utterance = new SpeechSynthesisUtterance(text);
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |     // Set voice properties (optional)
 | 
						
						
						
							|  |     utterance.lang = 'en-US'; // Set language (adjust as needed)
 | 
						
						
						
							|  |     utterance.pitch = 1;      // Adjust pitch (0 to 2)
 | 
						
						
						
							|  |     utterance.rate = 1;       // Adjust rate/speed (0.1 to 10)
 | 
						
						
						
							|  |     utterance.volume = 1;     // Adjust volume (0 to 1)
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |     // Speak the text
 | 
						
						
						
							|  |     window.speechSynthesis.speak(utterance);
 | 
						
						
						
							|  | }
 | 
						
						
						
							|  | let recognition;
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | function startSpeechRecognition() {
 | 
						
						
						
							|  |     // Check if the Web Speech API is supported
 | 
						
						
						
							|  |     if (!('SpeechRecognition' in window || 'webkitSpeechRecognition' in window)) {
 | 
						
						
						
							|  |         console.error('Web Speech API is not supported in this browser.');
 | 
						
						
						
							|  |         return;
 | 
						
						
						
							|  |     }
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |     // Initialize SpeechRecognition
 | 
						
						
						
							|  |     recognition = new (window.SpeechRecognition || window.webkitSpeechRecognition)();
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |     // Configure SpeechRecognition
 | 
						
						
						
							|  |     recognition.lang = 'en-US'; // Set the desired language
 | 
						
						
						
							|  |     recognition.continuous = true; // Allow continuous recognition
 | 
						
						
						
							|  |     recognition.interimResults = true; // Capture interim results
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |     // Event listener for speech recognition results
 | 
						
						
						
							|  |     recognition.onresult = (event) => {
 | 
						
						
						
							|  |         let transcript = '';
 | 
						
						
						
							|  |         for (let i = event.resultIndex; i < event.results.length; i++) {
 | 
						
						
						
							|  |             transcript += event.results[i][0].transcript;
 | 
						
						
						
							|  |         
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |         }
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |         console.log('Recognized Speech:', transcript);
 | 
						
						
						
							|  |     };
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |     // Handle errors
 | 
						
						
						
							|  |     recognition.onerror = (event) => {
 | 
						
						
						
							|  |         console.error('Speech Recognition Error:', event.error);
 | 
						
						
						
							|  |     };
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |     // Automatically restart recognition if it stops
 | 
						
						
						
							|  |     recognition.onend = () => {
 | 
						
						
						
							|  |         console.log('Speech recognition stopped. Restarting...');
 | 
						
						
						
							|  |         recognition.start();
 | 
						
						
						
							|  |     };
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |     // Start speech recognition
 | 
						
						
						
							|  |     recognition.start();
 | 
						
						
						
							|  |     console.log('Speech recognition started.');
 | 
						
						
						
							|  | }
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | // Start the speech recognition loop
 | 
						
						
						
							|  | startSpeechRecognition();
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |         </script>
 | 
						
						
						
							|  |     </body?>
 | 
						
						
						
							|  | </html>
 |