diff --git a/app/backend/InputOutputHandler.tsx b/app/backend/InputOutputHandler.tsx index 646e924..07806d7 100644 --- a/app/backend/InputOutputHandler.tsx +++ b/app/backend/InputOutputHandler.tsx @@ -3,7 +3,11 @@ import React, { use, useEffect, useRef, useState } from "react"; import ConversationFrontend from "../components/ConversationFrontend"; import InputFrontend from "../components/InputFrontend"; import { sendToVoiceRecognition } from "./voice_backend" +import { AudioRecorder } from "./AudioRecorder"; import axios from "axios"; +import { resolve } from "path"; +import { FFmpeg } from "@ffmpeg/ffmpeg"; +import { fetchFile, toBlobURL } from "@ffmpeg/util" const InputOutputBackend: React.FC = () => { // # variables @@ -63,6 +67,10 @@ const InputOutputBackend: React.FC = () => { const mediaRecorderRef = useRef(null) const audioChunks = useRef([]) + + console.log(messages); + + useEffect(() => { getNewToken() @@ -95,9 +103,11 @@ const InputOutputBackend: React.FC = () => { }, []) const getNewToken = () => { + console.log("getting access"); axios.get("http://localhost:5000/interstellar_ai/api/ai_create") .then(response => { setAccessToken(response.data.access_token) + console.log(response.data.access_token); }) .catch(error => { console.log("error:", error.message); @@ -134,6 +144,7 @@ const InputOutputBackend: React.FC = () => { getWorkerRef.current.postMessage({ action: "terminate" }) getWorkerRef.current.terminate() getWorkerRef.current = null + console.log(messages); } } @@ -163,6 +174,7 @@ const InputOutputBackend: React.FC = () => { setInputDisabled(true) if (postWorkerRef.current) { addMessage("user", inputValue) + console.log("input:", inputValue); const type = localStorage.getItem('type') var api_key: string = "" if (type != null && type != 'local') { @@ -197,6 +209,7 @@ const InputOutputBackend: React.FC = () => { audioChunks.current = []; const text_voice = await sendToVoiceRecognition(audioBlob); + console.log(text_voice); resolve(text_voice); // Resolve the promise with the recognized text }; }); @@ -217,6 +230,7 @@ const InputOutputBackend: React.FC = () => { if (!isRecording) { const recognizedText = await startRecording(); setInputMessage(recognizedText); // Set the recognized text after recording + console.log("Set!") } else { stopRecording(); } @@ -233,9 +247,8 @@ const InputOutputBackend: React.FC = () => { } const handleEditClick = () => { - let newestMessage = messages[messages.length - 2].content - setInputMessage(newestMessage) - const updatedMessages = messages.slice(0, messages.length-2) + setInputMessage(messages[messages.length - 2]['content']) + const updatedMessages = messages.slice(0, -2) setMessages(updatedMessages) endGetWorker() getNewToken() diff --git a/app/backend/database.ts b/app/backend/database.ts index 78d7307..45fd103 100644 --- a/app/backend/database.ts +++ b/app/backend/database.ts @@ -24,9 +24,11 @@ export const sendToDatabase = async (data: any): Promise => { const status = response.data.status; const success = response.data.response; postMessage({ status, success }); + console.log(status); return success; } catch (error) { postMessage({ status: 500, success: false }); + console.log("NO"); return false; } }; diff --git a/app/backend/threads/GetWorker.js b/app/backend/threads/GetWorker.js index 5eedbb2..e035407 100644 --- a/app/backend/threads/GetWorker.js +++ b/app/backend/threads/GetWorker.js @@ -11,14 +11,18 @@ onmessage = (event) => { } } +console.log('starting get loop'); const fetchData = () => { + console.log(accesstoken); + const apiURL = "http://localhost:5000/interstellar_ai/api/ai_get?access_token=" + accesstoken axios.get(apiURL) .then(response => { const data = response.data + console.log(data); postMessage(data) setTimeout(fetchData, 100) }) diff --git a/app/backend/threads/PostWorker.js b/app/backend/threads/PostWorker.js index f63ad77..bae9989 100644 --- a/app/backend/threads/PostWorker.js +++ b/app/backend/threads/PostWorker.js @@ -12,10 +12,15 @@ onmessage = (e) => { api_key: api_key } + console.log(Message); + + axios.post("http://localhost:5000/interstellar_ai/api/ai_send", Message) .then(response => { const status = response.data.status + console.log(status); postMessage({ status }) + console.log('message posted'); }) .catch(error => { diff --git a/app/backend/voice_backend.ts b/app/backend/voice_backend.ts index 4bf0092..c91a058 100644 --- a/app/backend/voice_backend.ts +++ b/app/backend/voice_backend.ts @@ -1,12 +1,14 @@ import axios from "axios"; export const sendToVoiceRecognition = (audio_data: Blob): Promise => { + console.log("sending recording..."); const formdata = new FormData() formdata.append("audio", audio_data) return axios.post("http://localhost:5000/interstellar_ai/api/voice_recognition", formdata) .then((response) => { + console.log(response.data) return response.data.response }) .catch(error => { diff --git a/app/components/ConversationFrontend.tsx b/app/components/ConversationFrontend.tsx index f32e19a..fd17324 100644 --- a/app/components/ConversationFrontend.tsx +++ b/app/components/ConversationFrontend.tsx @@ -10,12 +10,17 @@ interface ConversationProps { onResendClick: () => void; onEditClick: () => void; onCopyClick: () => void; - isClicked: boolean + isClicked:boolean } const ConversationFrontend = React.forwardRef( ({ messages, onResendClick, onEditClick, onCopyClick, isClicked}, ref: ForwardedRef) => { const endOfMessagesRef = useRef(null); + + useEffect(() => { + console.log(isClicked); + + },[isClicked]) return (
diff --git a/app/components/InputFrontend.tsx b/app/components/InputFrontend.tsx index 7ae6fd7..5d51834 100644 --- a/app/components/InputFrontend.tsx +++ b/app/components/InputFrontend.tsx @@ -6,11 +6,11 @@ interface InputProps { onSendClick: (message: string, override: boolean) => void; onMicClick: () => void; inputDisabled: boolean; - isRecording: boolean; + isRecording: boolean } const InputFrontend = React.forwardRef( - ({ message, onSendClick, onMicClick, inputDisabled, isRecording}, ref: ForwardedRef) => { + ({ message, onSendClick, onMicClick, inputDisabled, isRecording }, ref: ForwardedRef) => { const [inputValue, setInputValue] = useState(''); useEffect(() => { @@ -31,13 +31,6 @@ const InputFrontend = React.forwardRef( } }; - const handleSendClick = () => { - if (inputValue.trim() !== "") { - onSendClick(inputValue, false); // Send message to parent component - setInputValue(''); // Clear input after sending - } - }; - return (
( onChange={handleInputChange} onKeyDown={handleKeyDown} /> -