| 1234567891011121314151617181920212223242526272829303132333435363738 |
- // WebSocketManager.js (웹소켓 관리)
- import { state } from './state.js';
- import { elements } from './elements.js';
- import {UIManager} from "./UIManager.js";
- export const WebSocketManager = {
- init(URL) {
- state.websocket = new WebSocket(URL);
- state.websocket.onopen = () => {
- UIManager.updateStatus('WebSocket connected');
- console.log('WebSocket connected');
- };
- state.websocket.onmessage = (event) => {
- elements.transcriptionDiv.textContent = event.data;
- UIManager.updateStatus('Transcription complete');
- };
- state.websocket.onerror = (error) => {
- UIManager.updateStatus('WebSocket error');
- console.error('WebSocket error:', error);
- };
- state.websocket.onclose = () => {
- UIManager.updateStatus('WebSocket closed');
- console.log('WebSocket closed');
- };
- },
- sendData(data) {
- if (state.websocket?.readyState === WebSocket.OPEN) {
- state.websocket.send(data);
- }
- },
- closeConnection() {
- if (state.websocket) {
- state.websocket.close();
- state.websocket = null;
- UIManager.updateStatus('WebSocket connection closed manually');
- }
- }
- };
|