например, можно создать в паяти массив объектов, где держать в качестве полей username и socketID.
когда устанавливаем соединение - ждем пакет с именем пользователя и пихаем в глобальный массив ид сокета и юзернейм.
когда произошел дисконнект - в глобальном массиве юзернейм остается, но его сокет ид обнуляется.
при новом соединении проверяем, есть ли этот пользователь в глобальном массиве, и если да - то устаналиввем в массиве этот новый сокет ид .
в глобальный массив можно внести еще и время последнего подключения, чтобы впоследствии чистить этот массив по таймауту.
|