@startuml

Client -> Router : connect(ws, 'game-protocol')
Router -> GameModel : getGame(gameId)
GameModel -> Game : new Game(gameId)
GameModel -> GameModel : new WebSocket()
GameModel -> GameModel : ws.onopen = () => { ws.send('{gameId}') }
GameModel -> GameModel : ws.onmessage = (msg) => { game.handleMessage(msg) }

@enduml
