So now I am seeing some really strange behavior (I think its strange). I have attached the handler that allows a Supervisor to "Join" the call between the Customer and the Agent. I have tested two scenarios where either the Agent disconnects or the Supervisor disconnects, leaving the Customer and either the Agent or Supervisor still on the call. The remaining call is still in a "Conference" and if the Agent or Supervisor, whomever is still on the call, disconnects, the Customer stays connected. In ICBM it shows the Customer call with a "State" of "ACD - Assigned: Test User" but on the "User" portion it does not show connected to anyone nor does it show any workgroup. If the Customer does not disconnect the call, it will stay connected forever. I have uploaded a screen shot of this and also my handler that creates the "Conference" between the Agent/Customer call and the Supervisor if it helps to figure out why this call is being stranded.
In the handler, I pass the following variables: sInteractionId, sUser and sAgent. The sInteractionId is the ID of the call between the Customer and the Agent. sUser is the Supervisor who picks up the work item and sAgent is the name of the Agent on the call with the Customer. I also set a custom attribute on the calls called "Custom_ConferenceCallDisconnect" so that when the CustomCallDisconnect handler fires, it will recognize this as part of the Conference I created and disconnect the "stranded" call. I am just wondering if possibly the way I am creating the "Conference" is causing the issue here?
Thanks,
Andrew