SOA Session Termination Notification
SOA Session Termination Imminent Notification
SOA Session Heartbeat mechanism
Session Termination HandlingAACC CCT Open Interface sessions are initiated with a configurable session timeout value (Avaya default value = 120 min). Any subsequent method call over the interface (except getVersion calls,) will keep the session alive by resetting this session timeout value to the default value. Best practice is that OI clients use a short session timeout (5-10 minutes) and an accompanying heartbeat keep-alive mechanism. OI is based on Service Oriented Architecture, so it’s each OI Client’s responsibility to ensure that sessions are initiated and terminated correctly. The following should be considered by developers when creating clients basing on OI: - Big session timeout will enlarge the period before a session is destroyed automatically after session timer expires. In cases where the OI client crashes or other ungraceful exit this will lead to lost “zombie” session and subscription. OI will continue to count the agent as Logged In into CCT and to Terminal. Also that will consume OI resources as notification for created subscriptions will be sent anyway even if end-point is not responding. - Creating a lot of stale SOA Sessions could lead to memory consumption issues. Sessions have to be destroyed from client’s side when it’s no longer needed.
AACC CCT Open Interface provides the following asynchronous session event notification mechanisms to help clients handle session termination events. · SOA Session Termination notification. – Indicates that the session is terminated. · SOA Session Termination Imminent notification. – Indicates that the session termination is imminent. A session heartbeat mechanism is also available to enable clients to periodically poll to ensure that the session service is still active and kept alive. See Tutorial 4 for a simple implementation of the items discussed here. |
SOA Session Termination NotificationA client can listen for Session termination notification events. This event will provide basic information on termination reason. To date the following reasons are given: · Shutdown notification – Session is terminated because the AACC CCT SOA interface is shutting down. · Logout Notification – Session is terminated due to a logout. · Session Expired – Session is terminated because the session timeout value has been reached. · Unexpected Termination – Session is terminated for an unknown or unexpected reason. The session termination notification event can be switched on using a Subscription policy when subscribing for notifications using the User Service or the Notification Producer Service.
|
SOA Session Termination Imminent NotificationThe CCT SOA interface provides the capability to notify a client that a session termination is imminent for that client. If this feature is configured, the client will receive a notification that the session is about to terminate 1 minute before session timeout value is reached. A client could be coded to listen for these events and take appropriate action to reset the session by either making a valid method call, or using the session heartbeat mechanism. If a client performs an action over the interface, then the session timeout and session termination imminent timer will be reset. If the client does not respond within 1 minute, then AACC will terminate the session. |
SOA Session Heartbeat mechanismThe User Service provides a method called sessionHeartBeatAndHACheck(). When invoked, this method will return a SessionHeartBeatAndHACheckResponse. The response will contain two Booleans, isSessionUpdated() and isHASwitchOver(). If isSessionUpdated () returns true, it indicates that the session is up and the session termination timeout is reset.
|