Does anyone know of a way that I can get the logged in Internet users programatically. I understand that this is viewable via Administrator - Server - Status - Internet users. But, I would like to be able to dynamically retrieve this information so that I can let other internet users know who is logged into our web application.
The easiest (but not most efficient) way to do this is to periodically call an agent from the web (via ?openagent) which issues the following console command (via NotesSession.SendConsoleCommand): show inetusers -xmlThe resulting XML string can then be processed via the NotesDOMParser class…
You can take a look at the webadmin.ntf template which does exactly that (on the Server\Status tab, click the “Internet Users” entry). The code for all that lives in the agent called “agReadTableData$UserL2”, beginning at line 503…
A more efficient way would be to write a DASPI filter which a) keeps a cache for every active http user and then makes that info available back to browsers, but that is considerably more work and harder to do, and requires the code to be written in ‘C’.