# Инструкция по тестированию системы статуса пользователей ## Быстрый тест 1. **Запустите сервер**: ```bash node server.js ``` 2. **Откройте игру в браузере** и войдите в систему 3. **Откройте Telegram в игровом телефоне** и проверьте: - Отображается ли статус "Онлайн" для текущего пользователя - Есть ли зеленая точка рядом с аватаром - Показывает ли статус "Офлайн" для других пользователей ## Детальное тестирование ### Тест 1: Проверка API 1. Откройте `test_telegram_status.html` в браузере 2. Введите JWT токен из localStorage браузера 3. Нажмите "Тестировать API" 4. Проверьте, что возвращается список пользователей с полями: - `isOnline`: boolean - `lastSeen`: timestamp или null ### Тест 2: Проверка WebSocket событий 1. Откройте консоль браузера 2. Войдите в игру 3. Проверьте логи: ``` Статус пользователя изменился: {userId: X, isOnline: true} ``` ### Тест 3: Проверка реального времени 1. Откройте игру в двух вкладках браузера 2. Войдите под разными пользователями 3. В одной вкладке откройте Telegram 4. В другой вкладке закройте игру 5. Проверьте, что статус изменился на "Офлайн" в реальном времени ## Ожидаемые результаты - ✅ Статус "Онлайн" отображается только для пользователей, которые действительно в игре - ✅ Зеленая точка появляется рядом с аватаром онлайн пользователей - ✅ Статус обновляется в реальном времени при подключении/отключении - ✅ Время последнего онлайн отображается для офлайн пользователей - ✅ В консоли сервера видны логи подключения/отключения пользователей ## Возможные проблемы 1. **Статус не обновляется**: Проверьте WebSocket соединение 2. **API возвращает ошибку**: Проверьте JWT токен и права доступа 3. **Статус не синхронизируется**: Проверьте логи сервера на наличие ошибок ## Отладка - **Сервер**: Смотрите логи в консоли сервера - **Клиент**: Смотрите логи в консоли браузера - **WebSocket**: Проверьте соединение в Network tab браузера