send file_uuids to websocket
This commit is contained in:
+10
-3
@@ -5,6 +5,7 @@ from channels.generic.websocket import WebsocketConsumer
|
||||
class MediaConsumer(WebsocketConsumer):
|
||||
def connect(self):
|
||||
self.accept()
|
||||
self.file_uuid = [] # List to store file uuids
|
||||
self.send(text_data=json.dumps({
|
||||
"message": "Connected to WebSocket server!"
|
||||
}))
|
||||
@@ -12,11 +13,17 @@ class MediaConsumer(WebsocketConsumer):
|
||||
def receive(self, text_data):
|
||||
data = json.loads(text_data)
|
||||
message = data.get("message", "")
|
||||
|
||||
if message == "ping":
|
||||
|
||||
# If message contains a file UUID, store it
|
||||
if "file_uuid" in data:
|
||||
uuid = data["file_uuid"]
|
||||
self.file_uuid.append(uuid)
|
||||
self.send(text_data=json.dumps({"response": f"UUID {uuid} stored."}))
|
||||
elif message == "ping":
|
||||
self.send(text_data=json.dumps({"response": "pong"}))
|
||||
else:
|
||||
self.send(text_data=json.dumps({"response": f"Received: {message}"}))
|
||||
|
||||
def disconnect(self, close_code):
|
||||
print("Disconnected from Websocket")
|
||||
print("Disconnected from Websocket")
|
||||
print("Stored file UUIDs:", self.file_uuid)
|
||||
@@ -16,12 +16,14 @@ import {
|
||||
Movie as MovieIcon,
|
||||
} from "@mui/icons-material";
|
||||
import StepperComponent from "../components/StepperComponent";
|
||||
import { useWebSocket } from "../contexts/WebSocketContext";
|
||||
import { useMediaContext } from "../contexts/MediaContext";
|
||||
import { formatLogMessage } from "../utils/logUtils";
|
||||
|
||||
function UploadPage() {
|
||||
const navigate = useNavigate();
|
||||
const theme = useTheme();
|
||||
const { socket, isConnected } = useWebSocket();
|
||||
const { setMediaFile, setResponse, response, setLogs } = useMediaContext();
|
||||
const [file, setFile] = useState<File | null>(null);
|
||||
const [isDragging, setIsDragging] = useState(false);
|
||||
@@ -141,6 +143,12 @@ function UploadPage() {
|
||||
spectrogram: res.data.spectrogram,
|
||||
spec_sr: res.data.spec_sr
|
||||
}));
|
||||
if (socket && isConnected){
|
||||
socket.send(JSON.stringify({ file_uuid: res.data.file_uuid }))
|
||||
} else {
|
||||
console.error("Websocket not connected!");
|
||||
}
|
||||
|
||||
setUpload(true);
|
||||
setLogs((prevLogs) => [...prevLogs, formatLogMessage(`freqsplit/input: Uploaded file successfully`)])
|
||||
setLogs((prevLogs) => [...prevLogs, formatLogMessage(`freqsplit/input: file_uuid: ${res.data.file_uuid}`)])
|
||||
|
||||
Reference in New Issue
Block a user