Have you tried "pinging" the serve thru an AJAX request?
You can use the JavaScript function setTimeout for this purpose.
Using AJAX this would be transparent to the user. Haven't tried if this refreshes the session with the server, but it should.
Don't forget to add a URL-parameter that changes with each request, to prevent caching of the AJAX request.
/J