этого использовать сокет, или можно обычный рест?
Можно
В тг например стоит таймаут, даже если приложение открыто и открыт чат через некоторое время бездействия, новые сообщения уже показывает как не прочитаные
Ну и статус офлайн
Обсуждают сегодня