Even thought it MIGHT be super hard to count users from different IP's, I think it would be the best way to do this. What about people on the same network (I have heaps of people connect through schools/ universities and work networks) as well as the previously mentioned National IP's. This could be a large problem.
I think if the you go the easy way in this instance, it could have some strange results.
i'm planning on using the LUM_IpHistory table. It has the following fields: IpHistoryID, RemoteIp, UserID, DateLogged
I can easily have it update this table with guest ip addresses, and filter it out that way. For every unique ip address, it's a new guest. It's a bit sloppy, but it will be close.
The alternative, I suppose, would be to store something different in the RemoteIp field. Maybe add something to the ip. Like 192.168.0.1a 192.168.0.1b 192.168.0.1c etc.
The problem with that is that I'm not being true to the real data that should be kept there. But, if that doesn't bother anyone else I can probably do that quite easily. There's an extra 15 characters in the field with a full ip address (xxx.xxx.xxx.xxx = 15 characters, field length=30).
I have no objections to that apporach. I think it is better.It gives a more realistic/ true represntation to how many users are actually online.
+1 for this idea.
I've done a fair amount of testing it. I can't see much of a speed difference with the guest count on. Not that my tests were anywhere near scientific. And my board is fairly low traffic. But still, let me know if you have any problems with it.
Yeah! Nice going.
I might have found a bug, though. I logged out, then logged back in. There were no guests online before, but then there was 1 after I had logged back in. I think it may have counted me as a guest when I logged out, and it kept that counter in addition to me who had just logged in.
Do you see what I mean? It might not be an error at all, just checking.
it would probably do that as it might not know that you were a guest and then you became yourself. In which case the guest would hang around for 5 minutes or so.
Technically a bug but unavoidable i would think.
You can cross reference the IPs on both guests and members to verify that they aren't the same and thus duplicates, correct?
Just a thought, it might take too much work as to not even make it worth implementing.
That would be my guess, although it could also be a bug. Or someone's cookies not working correctly. It's hard to say without being able to look at it myself.
If anyone is experiencing inflated guest counts with the extension, let it be known that I'm currently testing a fix for it. If I can verify that my fix is working, I'll post an updated version in a day or two.
Very useful extension. Thanks for the great work...
I adapted the few strings it uses for a Spanish-language forum, so if anybody wants it, you can download it from here:
http://www.frecuenciasalternas.com/disc/WhosOnline.phps.txt
Thanks again for this extension!
Has Anyone installed this extension recently? I'm getting multiple errors such as the following, among related sounding errors all in Framework.Class.SqlBuilder.php:
Missing argument 4 for addwhere() in library/Framework/Framework.Class.SqlBuilder.php on line 114
Undefined index: UserID in library/Framework/Framework.Class.SqlBuilder.php
I'm running Vanilla 0.9.3 and Version: 1.1 of Who's Online. I'm thinking that maybe 1.1 of who's online is only compatible w/ Vanilla 1.0
(I named the extenison default.php and put in in a dir named WhosOnline in my extensions folder for installation, then activated it of course)
Comments
i'm planning on using the LUM_IpHistory table. It has the following fields:
IpHistoryID, RemoteIp, UserID, DateLogged
I can easily have it update this table with guest ip addresses, and filter it out that way. For every unique ip address, it's a new guest. It's a bit sloppy, but it will be close.
The alternative, I suppose, would be to store something different in the RemoteIp field. Maybe add something to the ip. Like 192.168.0.1a 192.168.0.1b 192.168.0.1c etc.
The problem with that is that I'm not being true to the real data that should be kept there. But, if that doesn't bother anyone else I can probably do that quite easily. There's an extra 15 characters in the field with a full ip address (xxx.xxx.xxx.xxx = 15 characters, field length=30).
Thoughts?
Now includes a guest count!
I've done a fair amount of testing it. I can't see much of a speed difference with the guest count on. Not that my tests were anywhere near scientific. And my board is fairly low traffic. But still, let me know if you have any problems with it.
Fixes the inflated guest count bug.
You can pick it up from http://www.thirty5.net/code/vanilla/whosonline/
enjoy, and let me know if you find any other bugs, or have any feature requests.