UserDisconnected is firing before timeout is reach - WeOnlyDo Discussion board

UserDisconnected is firing before timeout is reach (General questions)

by D Waters, Thursday, January 27, 2005, 17:59 (7037 days ago)

I noticed that the UserDisconnected event is firing exactly 1 minute after a client connects (and no further activity). The wodWebServerCom.SessionTimout and .Timeout and set to 1200 seconds.

Is this a client side issue, or something within the wodWebServerCom? I can find no documentation that IE would close a socket 60 seconds after connecting.

The StateChange that occurs because of this is causing problems.

I am using wodWeb version 1.1.2.224, both Events and Call-backs are showing this issue - using the samples provided.

THanks.

Re: UserDisconnected is firing before timeout is r

by wodSupport, Thursday, January 27, 2005, 18:31 (7037 days ago) @ D Waters

D.,

if you go to command prompt, and type

telnet localhost 80

and leave connection open for more than 60 seconds - does same problem happen?

Re: UserDisconnected is firing before timeout is r

by D. Waters, Thursday, January 27, 2005, 20:06 (7037 days ago) @ wodSupport

Excellent test suggestion.

I tested it, and to my dismay, the connection stayed open, so I will have to figure out a way to manually maintain connection information. Has anyone else seen this issue, where the browser closes the connection automatically after 60 seconds?

To be accurate though, the Telnet test isn't an exact duplication of what happens when connecting with a browser. The browser based test is disconnecting after completing a request, moving to a State of '6', and then 60 seconds later, it disconnects. The Telnet test is only opening the connection, and moving to a State of '2', without a request.

If anyone else has insight into this, it would be appreciated.

Thanks!

Re: UserDisconnected is firing before timeout is r

by wodSupport, Thursday, January 27, 2005, 20:09 (7037 days ago) @ D. Waters

D.,

I think you can duplicate that too. Telnet there, and paste this:
[code]GET / HTTP/1.1
Host: localhost
Connection: keep-alive
[/code]and press ENTER twice. You should get response. Now leave it open.

Re: UserDisconnected is firing before timeout is r

by D. Waters, Thursday, January 27, 2005, 21:00 (7037 days ago) @ wodSupport

I tested with your suggestion, and the Telnet session stayed open, so it must be browsert specific. Do you think that because the web server is not responding with a 'Connection' header of Keep-Alive or Persist, the browser just closes the connection?

BTW - I tried sending Keep-Alive and Persist in my response to the IE client, but it still closes the connection after 60 seconds.

At this point, I guess the only way to maintain the connection would be to Send everything as a .Chunk, and never respond with a .Send to complete. Any thoughts?

Re: UserDisconnected is firing before timeout is r

by wodSupport, Thursday, January 27, 2005, 21:24 (7037 days ago) @ D. Waters

Correct (I think). Use chunks, so IE doesn't know when response is finished - thus he doesn't close the connection. I've seen such implementations before. It should work.

Re: UserDisconnected is firing before timeout is r

by D.Waters, Thursday, January 27, 2005, 22:33 (7037 days ago) @ wodSupport

The chunked approach doesn't make for a good end-user expierence. It appears that the browser never completes the download of the page.

For all who are interested, the mysetery is in the browser's default idle timeout. Unfortunately it is set unusually low (60 seconds). Refer to http://support.microsoft.com/kb/813827 for more information.

I just wish there was someway to keep this active... The problem is with the browser though, no the server.

Re: UserDisconnected is firing before timeout is r

by wodSupport, Thursday, January 27, 2005, 22:36 (7037 days ago) @ D.Waters

D.,

I don't understand. It's not good for you to keep connection open (chunked..) and it's not good to close it (60 seconds..)

Can you tell me exactly what are you trying to do? Perhaps there's some solution for that we could both figure out (of course, except for switching to Firefox :)

Re: UserDisconnected is firing before timeout is r

by D. Waters, Friday, January 28, 2005, 03:44 (7037 days ago) @ wodSupport

It would be nice to be able to maintain the user information over the entire connection to the website. If a client connects to your website, and reads a page for more than 60 seconds before cliking on the link to the next page, it is treated as a new connection.

It is not a fault of the wodWeb server, it is IE's fault. It closes the connection (closes the socket) after 60 seconds.

wodWeb rocks!

Re: UserDisconnected is firing before timeout is r

by wodSupport, Friday, January 28, 2005, 13:54 (7036 days ago) @ D. Waters

D.,

perhaps you could use META refresh tag so it refreshes the page each XXX seconds? In that case you don't care when he closes the socket, right?