Протокол HTTP не позволяет определить Online ли находится посетитель. Он может только отследить обращения к страницам.
И тогда нужно принять некоторые положения: например, посетитель, обращавщийся к страницам менее 5 минут назад находится OnLine. Если более, то он OffLine. Естествено, период можно выбрать любой.