I have Openfire 3.5.2 with the monitoring plugin, and I’ve found a way to monitor number of active users and number of active conversations.
These are the queries I’m using to get active users and conversations. I regard any conversation that has had activity in the last 10 minutes as “active”.
Active Users:
SELECT COUNT(bareJID) FROM ofconparticipant WHERE leftdate > UNIX_TIMESTAMP(DATE_SUB(NOW(),INTERVAL 10 MINUTE))*1000;
Active Conversations:
SELECT COUNT(conversationID) FROM ofconversation WHERE lastActivity > UNIX_TIMESTAMP(DATE_SUB(NOW(),INTERVAL 10 MINUTE))*1000;
It’s pretty trivial to wrap thos queries up so that the data can be fed into Cacti.
However, I would really like to be able to monitor the number of connected users as well. Is there any way to expose this via a database query, or some other method?
It would be great if the monitoring plugin was able to expose all the statistics via a URL which didn’t require authentication, like the Presence Service plugin does for presence information.