Solved

Is there a way to check if a user is logged in and when his last activity was?

  • 18 July 2022
  • 3 replies
  • 138 views

Badge

We need this because in the application we have workflow module and we have assign work items to active user only.  

Active user: user is logged in and his last activity is less then 45 minutes ago.

 

icon

Best answer by Arie V 21 July 2022, 20:45

View original

This topic has been closed for comments

3 replies

Userlevel 7
Badge +23

Hi Sandro,

You can build a logging mechanism in your application to record when users log-in, but the challenge would be in logging when users log-out.

Which GUI are you using for your application?

In the Windows GUI, you can use Start objects and also an extended property called ShutdownProcedure which you can use to, for example, ensure that sessions of the user are ended when they exit the application. But it wouldn't record a user being inactive for 45 or more minutes. 

In the Universal GUI, Start objects can also be used but there's no Extended property or shutdown method to know exactly that a user has logged out or closed the application.

I'm curious in hearing which GUI you are using as it may be different from GUI to GUI, but also curious if other Community members also implemented something similar and can help out 😀

Badge

Hi Mark,

 

We are using the Universal GUI. So the extended property is not an option.

Userlevel 6
Badge +10

Hi @Sandro Burger 

We also use the Universal GUI and before every PROD deploy we do a quick check with the following code on the IAM database:

USE [IAM_DB_NAME]
select *
from appl_claim
where sysutcdatetime() between claim_start_date_time and claim_end_date_time

Based on our experience, the claim_start_date_time is set as soon as someone logs in (and uses a certain Application - in case of multiple Applications you could see multiple records for a single user) and will by default have a claim_end_date_time of +20 minutes. If the user is still active at the moment of the claim_end_date_time it is again extended with 20 minutes.

Basically this ensures you that a user's activity is less than 20 minutes ago. Not exactly the 45 you're asking for but I would say this definitely helps.