Sobald Du Meine Chat Seite aufrufst, wird die Websocket-Verbindung hergestellt. Zu diesem Zeitpunkt steht der Nickname noch gar nicht fest, daher übergebe ich hier eine ID die bereits vorher feststeht und auch dem Browser bekannt ist als Session-ID. Infolge der Übergabe bereits beim Verbindungsaufbau ist diese ID auch serverseitig bekannt und eine eindeutige Zuordnung bidirektional möglich.
Wenn Du eine andere Lösung für diesen Challenge hast, lass es mich wissen 😉
Viel Erfolg!
PS: Der WebsocketChallenge ist in Wikipedia beschrieben, der Challenge an sich ist pure HTTP. Wenn es Dir gelingt, Sec-WebSocket-Key bzw. Sec-WebSocket-Accept so auszukoppeln, dass es in der Socket-Pipe verwendet werden kann, kannst Du selbstverständlich auf eine eigene SID verzichten. Evntl. gibt es ja mittlerweile Methoden für das Objekt und dann isses noch die Frage was Du am Server machen kannst.