So how we can kill Idle Sessions automatically?
If you check the service tier of NAV 2009 and Later, we have a parameter - NAV 2009 / NAV 2009 SP1 / NAV 2009 R2 - "ClientReconnectPeriod". NAV 2013 / NAV 2013 R2 - "Idle Client Timeout". This parameter can be used to acheive the same in easy way. And the best part is we don't need to code anything.
*The Default Value in the field is MaxValue.
How to use the Parameter - "ClientReconnectPeriod" OR "Idle Client Timeout". *Below Steps are performed in NAV 2013 R2 but steps remain same for all Three Tier Version released Till date. For 2009 you need to change them in the configuration file. 1. Open the Service Tier. 2. Edit the service that you want to set the Auto Kill Session. 3. Go to Client Services Tab. 4. Put the time delay in "Idle Client Timeout". 5. Format it Support is [dd.]hh:mm:ss[.ff] where dd (DAY) ff(fractions of a second) are optional. 6. Support you want to disconnect a client idle for 20 minutes then use - 00:20:00 7. In my case i am using 02 minutes. - 00:02:00 as shown below.
8. Save and Restart the service. DEMO - 1. I started two session of Client out of which i am using Session ID 14 as active while session ID 12 is IDLE(Minimized on my screen).
2. After Exactly 2 minutes the session with ID 12 will be removed from list.
3. When user from session 2 try to access the client he/she ends up with an error message.
Points to remember - For Other Features like WebServices/JetReports/NAS/Web Client/Sharepoint Client you need to create a separate service as they will be idle for the time you specified in "Idle Client Timeout".