No necesita el indicador en línea/fuera de línea, solo necesita guardar el tiempo de la última actividad. Al mostrar el estado del usuario, si el tiempo de la última actividad es menor que ahora + 15 minutos, entonces el usuario está en línea; de lo contrario, está fuera de línea.