class WebsocketClient { constructor(onNewEffects, onNewState, onNewGrade, onReset, onRecordingDone, onNewCriteria, onNewCriteriaGrade) { this.socket = new WebSocket("ws://localhost:5000"); this.socket.addEventListener("open", (event) => { this.socket.send("connected"); console.log("connected") }); this.socket.onmessage = (event) => { let msg = JSON.parse(event.data); if (msg.type == "effects") { onNewEffects(msg.effects); } else if(msg.type == "state") { onNewState(msg.state); } else if(msg.type == "new_grade") { onNewGrade(msg.word); } else if(msg.type == "reset") { onReset(); } else if(msg.type == "recording_done") { onRecordingDone(); } else if(msg.type == "new_criteria") { onNewCriteria(msg.criteria) } else if(msg.type == "criteria_grade") { onNewCriteriaGrade(msg.grade); } }; } }