Determination of User Presence
ICE Server uses its knowledge of which clients maintain a WebSocket with it to infer the online/offline status and track license utilization. That is, as long as a user’s agent (ICE Desktop or ICE Mobile) is connected to the server, ICE will infer that the user is online and this presence will be broadcast to other users. To detect stale connections, ICE uses a ping/pong message (defined by the WebSocket standard) to quickly detect when the client has become detached from the server. Stale connections are closed; the impacted user’s presence state returns to 'offline' and their session license is returned to the pool.
Be aware that ICE Server tracks only a single, global online/offline status value for each user. A user is considered online if they are connected to ICE Server from one or more devices.
Each WebSocket connection will consume a mobile or desktop license. A single user logged into multiple devices will appear to consume multiple licenses. And, as mentioned previously, Administrators can forcibly end a user’s session from the license settings screen in ICE Desktop. Additionally, Administrators in ICE Desktop may toggle-off Allow Simultaneous Logins in the Configuration section of the Settings > Organization page. This prevents users from logging in with the same account on multiple devices.