fix: sessionId type mismatch #19
3 changed files with 5 additions and 1 deletions
|
@ -539,7 +539,7 @@ class WebSocketHandler:
|
|||
async def _handle_set_session_id(self, message: SetSessionIdMessage) -> None:
|
||||
"""Handle setSessionId message."""
|
||||
display_identifier = message.payload.displayIdentifier
|
||||
session_id = message.payload.sessionId
|
||||
session_id = str(message.payload.sessionId) if message.payload.sessionId is not None else None
|
||||
|
||||
logger.info(f"[RX Processing] setSessionId for display {display_identifier}: {session_id}")
|
||||
|
||||
|
|
|
@ -380,6 +380,8 @@ class StreamManager:
|
|||
|
||||
def set_session_id(self, display_id: str, session_id: str):
|
||||
"""Set session ID for tracking integration."""
|
||||
# Ensure session_id is always a string for consistent type handling
|
||||
session_id = str(session_id) if session_id is not None else None
|
||||
with self._lock:
|
||||
for subscription_info in self._subscriptions.values():
|
||||
# Check if this subscription matches the display_id
|
||||
|
|
|
@ -474,6 +474,8 @@ class TrackingPipelineIntegration:
|
|||
display_id: Display identifier
|
||||
session_id: Session identifier
|
||||
"""
|
||||
# Ensure session_id is always a string for consistent type handling
|
||||
session_id = str(session_id) if session_id is not None else None
|
||||
self.active_sessions[display_id] = session_id
|
||||
logger.info(f"Set session {session_id} for display {display_id}")
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue