Spaces:
Building
Building
Update chat_session/websocket_manager.py
Browse files
chat_session/websocket_manager.py
CHANGED
@@ -137,23 +137,30 @@ class WebSocketManager:
|
|
137 |
if connection:
|
138 |
await connection.close()
|
139 |
del self.connections[session_id]
|
140 |
-
|
141 |
# Remove message queue
|
142 |
if session_id in self.message_queues:
|
143 |
del self.message_queues[session_id]
|
144 |
-
|
145 |
log_info(
|
146 |
f"🔌 WebSocket disconnected",
|
147 |
session_id=session_id,
|
148 |
total_connections=len(self.connections)
|
149 |
)
|
150 |
-
|
151 |
# Publish disconnection event
|
152 |
await self.event_bus.publish(Event(
|
153 |
type=EventType.WEBSOCKET_DISCONNECTED,
|
154 |
session_id=session_id,
|
155 |
data={}
|
156 |
))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
157 |
|
158 |
async def handle_connection(self, websocket: WebSocket, session_id: str):
|
159 |
"""Handle WebSocket connection lifecycle"""
|
|
|
137 |
if connection:
|
138 |
await connection.close()
|
139 |
del self.connections[session_id]
|
140 |
+
|
141 |
# Remove message queue
|
142 |
if session_id in self.message_queues:
|
143 |
del self.message_queues[session_id]
|
144 |
+
|
145 |
log_info(
|
146 |
f"🔌 WebSocket disconnected",
|
147 |
session_id=session_id,
|
148 |
total_connections=len(self.connections)
|
149 |
)
|
150 |
+
|
151 |
# Publish disconnection event
|
152 |
await self.event_bus.publish(Event(
|
153 |
type=EventType.WEBSOCKET_DISCONNECTED,
|
154 |
session_id=session_id,
|
155 |
data={}
|
156 |
))
|
157 |
+
|
158 |
+
# ✅ Session'ı da sonlandır
|
159 |
+
await self.event_bus.publish(Event(
|
160 |
+
type=EventType.SESSION_ENDED,
|
161 |
+
session_id=session_id,
|
162 |
+
data={"reason": "websocket_disconnected"}
|
163 |
+
))
|
164 |
|
165 |
async def handle_connection(self, websocket: WebSocket, session_id: str):
|
166 |
"""Handle WebSocket connection lifecycle"""
|