Ghost users are a known issue with all media servers.
What is a ghost user?
A ghost user is a user who’s disconnection from the media server has not been detected by the media server, thus the media server thinks he is still connected.
In a chat you will know there are ghost users when you see 2-3 persons in the users list having the same user name or persons staying for unusual lenghts of time in the chat without activity.
What causes ghost users?
They happen when a user suddenly disconnects from the Internet while connected to a media server (for example by suddenly disconnecting your Ethernet cable or loosing WiFi signal) but in other occasions too like when the user is over a slow connection (mobile connections) or behind some weird combination of network hardware + server software. IE and the way it handles Flash content might also produce ghost users.
How is AVChat 3 dealing with ghost users?
- every 3 seconds the client (swf file) sends a ping to the media server (this value can not be changed)
- every 10 seconds the media server (Red5/Wowza/FMIS) check if all clients have sent a ping within the last 10 seconds (already 3 pings should have been sent by every client) and disconnects everyone who has not.
This means that no ghost user will ever stay in the chat for more than 20 seconds.
Starting with build 741 (April) you can contol the above mechanism by changing the value of the checkForGhostConnectionsEveryXSeconds and ghostUsersAreIdleForYSeconds variables in settings.asc (FMIS) or avchat3.properties (Red5 and Wowza). If your users seem to get disconnected for no apparent reason increase the value of ghostUsersAreIdleForYSeconds to for example 20 seconds. Both variables are set by default to 10 seconds.
The IE exception
In some cases when closing a tab in IE, IE will not remove the client side swf (index.swf) from the memory, thus the ping calls will be made even tough the user has closed the tab containing the chat. Such ghost users can only be removed by :
- the user closing all IE tabs and windows
- an admin kicking him out of the chat
We are working on a fix for this exception.