Closing the browser window instead of using the "End Chat" link in Live Agent, may leave the chat still visible in Salesforce

Knowledge Article Number

000214357

Description

Closing the browser (not ending the chat with the "End Chat" link) is not guaranteed to be detected by the browser.

Example Steps to Reproduce:

1. As Live Agent User, go Online in the Live Agent component in the Console 2. As visitor, go to site where the chat button is hosted and initiate a chat 3. As the Live Agent User, do NOT accept the chat 4. As the visitor, close out the chat window before it is accepted by an Agent 5. Accept the chat as the internal Agent 6. After a minute and a half, notice that the "Chat session ended by visitor" now alerts the agent and the session ends

Resolution

This is working as designed and does not affect just chats in the queue, but ALL chats.

When a chat is ended in this way, we use the timeout to know the end user is gone. For example, all connections are subject to a timeout - if we go more than 80 seconds without receiving a polling request from a connected client, we kill their session. This timeout has been designed over many iterations to provide the right balance between agent productivity and connection re-establishment on poor performing networks.

In some cases, we do an even better job than the timeout. For browsers that support it (Chrome and some versions of IE), we send out a message to the server while the page is being closed, indicating that the session should be destroyed immediately. For browsers that don't (like Firefox), we fallback to using the timeout to detect disconnect.