Я бы дал другой совет относительно того, как разработать ваше приложение. Из того, что я понимаю, ваше намерение состоит в том, чтобы добавить больше logi c, чтобы понять, не активен ли пользователь в браузере. Это влечет за собой другую проблему: специфика браузера для реализации этого логика c. Имея это в виду, я бы вместо этого инвестировал в лучшую обработку ошибок , как на сервере, так и на клиенте.
Ошибки не будут зависеть от браузера c. Обработка этих данных сделает ваше приложение более устойчивым и независимым от изменений в браузере, что может в конечном итоге изменить, скажем, способ их перехода в спящий режим, любую другую функцию, которую поставщик может реализовать в будущем.
Это идея, которую вы можете найти в архитектуре сервисов, но тот же шаблон применим к любому веб-приложению. Возможно, вы захотите поискать Design-for-Fail
концепций:
Сложность делает невозможным предполагать надежность со стороны систем, на которые опирается. Вместо этого необходимо спроектировать системы и приложения на любом данном уровне в ИТ-стеке, чтобы предположить возможность отказа на более низких уровнях. Дизайн для отказа требует думать о отказоустойчивости на всех уровнях. Разработчики приложений больше не могут ограничиваться размышлениями о функциональности.
https://www.oreilly.com/library/view/designing-delivery/9781491903742/ch04.html