dear all, how can i see who is "online", and show the total number of people on my web ? thanks -feng -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
On Apr 29, 2007, at 8:17 AM, Feng wrote:> how can i see who is "online", and show the total number of people > on my > web ?Being online is an ill-defined concept. An approximation that might be good enough is to maintain a field in the users table called last_seen_at. Update it at each request in a high-priority filter. Then define to be online using a time window, say 3 minutes: class User def online? Time.now - last_seen_at < 3.minutes end end -- fxn --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
You could also include an Ajax function in each page that hits a "I''m still here" URL on a timer, so you can tell if they''ve still got your page open even if they''re not requesting new pages. But, that demonstrates that Xavier''s assertion that "online is an ill-defined concept" is definitely true. Are they online if they opened your page 12 hours ago and haven''t been near their computer since? So maybe the function only runs up to N times and then stops unless the page refreshes or changes . . . But in the real world, if you want to know how many (most?) popular sites actually accomplish this - MySpace for example - they just use Userplane to do it for them. They''ve already figured it all out. On Apr 29, 4:29 am, Xavier Noria <f...-xlncskNFVEJBDgjK7y7TUQ@public.gmane.org> wrote:> Being online is an ill-defined concept. > > An approximation that might be good enough is to maintain a field in > the users table called last_seen_at. Update it at each request in a > high-priority filter. Then define to be online using a time window, > say 3 minutes: > > class User > def online? > Time.now - last_seen_at < 3.minutes > end > end > > -- fxn--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Thank you all :) Now I know what to do. thanks again :) -Feng -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---