ttttttttttttt

by velo_ninja

HTML

<!doctype html>
<html>
  <head>
    <style>
      #result {
        border: 2px solid black;
        height: 200px;
        border-radius: 3px;
        font-size: 14px;
        white-space: pre-wrap;
        overflow-y: auto;
        margin-bottom: 10px;
      }
      #finalText {
        border: 2px solid black;
        height: 100px;
        width: 600px;
        border-radius: 3px;
        font-size: 14px;
        white-space: pre-wrap;
        overflow-y: auto;
        margin-bottom: 10px;
      }
      button {
        position: absolute;
        top: 240px;
        left: 50%;
        margin-right: -50%;
        transform: translate(-50%, -50%);
      }
    </style>

    <script type="text/javascript">    
      let recognition;
      let isRecording = false;
      let stopRecordingTimeout;

      function init() {
        window.onmessage = (event) => {
          if (event.data) {
            console.log("HTML Code Element received a message!");
            console.log(event.data);
            startRecognition().then(result => {
              console.log('Result:', result);
              
              insertMessage(event.data);
            });
          }
        }
      }

      function startRecognition() {
        return new Promise(async (resolve) => {
          const resultDiv = document.getElementById("result");

          try {
            const stream = await navigator.mediaDevices.getUserMedia({ audio: true });
            initSpeechRecognition(stream);
          } catch (e) {
            console.error('Error accessing microphone:', e);
            resultDiv.innerText = "Error accessing microphone. Please check your browser settings.";
            resolve(null); // Resolve with null if there's an error
          }
        });
      }

      function initSpeechRecognition(stream) {
        recognition = new webkitSpeechRecognition();
        recognition.continuous = true;
        recognition.interimResults = true;
        recognition.lang =...