Is there a way to keep a client from launching more than one project at a time? Or set an inactivity timer up to close a project? We have operators that do not log off and end up having several of the same project open on one machine.
Sure, you can add a timer script that checks for inactivity and exits after a certain period of time:
if system.util.getInactivitySeconds() > 300:
Would you put that in Configuration, under Event Scripts (Client)?
Yes, I would create a timer script in the Event Scripts (Client) that checks every minute or so.
I would go with Travis’ suggestion about an inactivity logoff. It’s easy to deal with if it suits your needs.
To answer your first question, it’s a little bit hacky, but it would work fine to track open clients in a database table by computer name or IP address, with some sort of “last updated” timestamp. You would then have logon on logoff actions insert and remove records, respectively. A periodic script would update the “last updated” entry for that client or this could be done during window navigation. The idea being that a “stale” record in the database that is too old is disregarded as a client that wasn’t properly closed. You could also couple this approach with the inactivity timer that elegantly removes the client’s record prior to logging it off.