Merge pull request 'fix: sessionId type mismatch' (#19) from dev into main
All checks were successful
Build Worker Base and Application Images / check-base-changes (push) Successful in 7s
Build Worker Base and Application Images / build-base (push) Has been skipped
Build Worker Base and Application Images / build-docker (push) Successful in 3m17s
Build Worker Base and Application Images / deploy-stack (push) Successful in 21s

Reviewed-on: #19
This commit is contained in:
Chawanwit Pornnatwuttigul 2025-09-29 10:43:59 +00:00
commit 7490430c05
3 changed files with 5 additions and 1 deletions

View file

@ -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}")

View file

@ -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

View file

@ -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}")