@@ -302,7 +302,6 @@ def register_request(self, body: MatrixRegisterRequest) -> UUID:
302302 """
303303 uuid = uuid4 ()
304304 mapping = body .model_dump ()
305- print (mapping )
306305 self .redis .hset (get_redis_matrix_registrations_key (uuid ), mapping = mapping )
307306 return uuid
308307
@@ -357,7 +356,11 @@ async def accept_websocket(
357356 logger .info (f"🧑💻 Matrix client logged in: { login_result } " )
358357
359358 client .add_event_callback (
360- partial (self .on_matrix_text_message_received , websocket = websocket ),
359+ partial (
360+ self .on_matrix_text_message_received ,
361+ room_id = matrix_registration .room_id ,
362+ websocket = websocket ,
363+ ),
361364 RoomMessageText ,
362365 )
363366
@@ -381,7 +384,11 @@ async def remove_websocket(self, request_id: UUID, websocket: WebSocket) -> None
381384 await client .close ()
382385
383386 async def on_matrix_text_message_received (
384- self , room : MatrixRoom , event : RoomMessageText , websocket : WebSocket
387+ self ,
388+ room : MatrixRoom ,
389+ event : RoomMessageText ,
390+ room_id : str ,
391+ websocket : WebSocket ,
385392 ) -> None :
386393 """
387394 Callback for when a text message is received in a Matrix room.
@@ -391,6 +398,9 @@ async def on_matrix_text_message_received(
391398 if not isinstance (event , RoomMessageText ):
392399 return
393400
401+ if room .room_id != room_id :
402+ return
403+
394404 message = QMatrixChatTextMessage (
395405 author = room .user_name (event .sender ),
396406 text = event .body ,
0 commit comments