Всем привет!Недавно в чате было обсуждение - как организовывать статус пользователей. И если по статусам, получаемым от сервера(например, online, offline) все ясно, то как организовать статусы, которые только на клиенте можно отследить? Например, afk, idle и тп
Тогда я ответил, что скоро буду писать код, отвечающий за подобные статусы и поделюсь решением.
Первоначально, я планировал так - организовываю слежку за активностью пользователя (движения мыши, клики, нажатия клавиш), вешаю глобальным обработчиком, при смене статуса отправляю уведомление на сервер.
В жизни решил эту проблему так же, но гораздо проще))) Коллега подсказал просто супер билиотеку -
React Idle Timer. Простая в использовании, но очень мощная. Да, она для React, но уверен, что есть аналоги и для других фреймворков + можно посмотреть исходники))))
Хорошая, документация, примеры, TypeScript - короче, рекомендую!
зы
страничка на githubззы Прикреплю скрин - на Хуках весь код вышел в несколько строк! В документации в примерах все есть
#react