The BOS does know the number of active users (as we count them) but does not expose that number today. We are looking at adding a feature to make that number available.
You can track who/how many users login and logout by implementing the IEntityLoginManager. No obvious way to decrement the count when someone just hangs up or crashes. We "time out" inactive users (after 30 minutes by default) but we don't tell you when.
You can guess when folks are timed-out. But that means keeping your own session table (hooking login/logout) and monitoring activity through the other interceptors so you can "time them out" yourself. I wouldn't want to have to do this myself.
Hope you can hang in there while we think of something.