Showing results for 
Search instead for 
Did you mean: 
Walkthrough Wednesdays

Issue with Java CIL built-in failover logic during PIM failover

This document was generated from CDN thread

Created by: Amudhan Viswanathan on 12-04-2010 09:06:31 PM
We have a custom desktop that was developed using Java CIL. I am encountering a problem with CIL's automatic handling of failover when a Call Manager PIM failover occurs.
The CTI OS Software Development Kit 7.0 for .NET has the following documentation to handle the "OnConnection" Event:
  ///If the Connect request was made in order to make 3rd part call control
  /// requests, and this OnConnection IS NOT the result of failover recovery, we
  /// will create a new Agent & use it to call SetAgent()-- this sets the Message
  /// Filter so we receive all events for this agent. We don't want to do it if this
  /// is a reconnect after failover, since the CIL's failover logic will do it.

    // m_ctiosServerConnectionLost will be true if we received an OnConnectionFailure after we
    // had established a successful connection with CTIOS Server. Therefore, only if it is false
    // when we establish the connection (i.e. get this event) should we call SetAgent because
    // this indicates that this is an explicit connection, not the result of a failover. If the
    // flag is true (i.e. there was a failover), the CIL's failover logic will call SetAgent()
    // automatically, so we don't want to do it here as well

This works fine when CTI/OS or CTI server is failed over - the CIL automatically calls SetAgent() and performs an automatic logout and re-login. This is good.
But, when the Call Manager PIM is failed over, the CIL does not perform an automatic logout and re-login. Instead it tries to perform a re-login without logging out (when already logged-on) and that results in the error: IPCC Error [10102]The agent is already LOGGED ON. And, I do not see a 'SetAgentState' request automatically sent by the CIL as suggested by the tool-kit documentation (please see above). No 'OnSetAgentStateConf' event received as a result.
The following are the events observed with the out-of-the-box CTI Agent Desktop, when a PIM failover happens:
* The Agent Desktop client is disconnected.
* After few seconds, the agent desktop is connected back to the CTI server.
* Automatic Logout happens (Login button gets enabled and Logout button gets disabled).
* Automatic Login happens (Logout button gets enabled and Login button gets disabled).
In my observation, it seems like the CTI Agent Desktop forces a logout and re-login in the PIM failover scenario as opposed to CIL handling it automatically.
So, I have two questions:
1. Is this a known problem with Java CIL (during Call Manager PIM failovers)?
2. Do I need to uniquely identify & intercept the PIM failover event and force a logout and re-login?
Any thoughts/comments would be much appreciated.
Thank you.
Content for Community-Ad

This widget could not be displayed.