One thing to be aware of is that when pureconnect "conferences" it creates a new interaction ID for the conference and adds the conferenced calls as participants to that conference. Your developers are likely trying to conference these participants together, which then puts the previous participant on hold.
I think what you want to be do is create the conference interaction and then invite the next party to that interaction. I know you're using ICElib for this, but my reference point is ICWS. The concepts should be similar.
State of Utah - comments on this forum reflect my own personal opinions\observations and are separate from any entity I am otherwise involved in.
Original Message:
Sent: 11-08-2023 10:05
From: Dillon Bray
Subject: IceLib SDK, and conferencing
Hello Eric,
I'll build out the scenario for you.
There are 2 active calls to a stand alone station.
Our developers are using the API to manage interactions by logging into the this stand alone station, and manipulating active interactions with IceLib, with the purpose of creating a conferenced interaction.
As described, the observed behavior from the developers...
Party A, and Party B. When utilizing the API to log into a station, it puts call B on hold as soon as they start the call for party C, but with stationless the call to party C works fine, but when starting the conference call between A and C is when party B goes on hold. They tried combinations of both as well, but got similar behaviour.
They want to use the IceLib to bridge in an additional called party (conference) with an interaction, but when attempting to do so, one of the legs is always held.
From the way I understand it, they are effectively attempting to use consulted transfer via IceLib, but don't know how to bridge the legs together.
My initial suggestion was use the conferencing feature (whereby you can drag interactions together from Interaction Desktop), if that feature is available from the IceLib API. I'm just not familiar enough API to point them in the right direction.
Thanks,
------------------------------
Dillon Bray
ArcBest Technologies Inc.
Original Message:
Sent: 11-07-2023 17:19
From: Eric Berkshire
Subject: IceLib SDK, and conferencing
Hi Dillon,
Can you elaborate on what is occurring? What call is going on hold? Is it an active call that's already on the station?
Thanks,
Eric
------------------------------
Eric Berkshire
New American Funding, LLCEric Berkshire
New American Funding, LLC
Original Message:
Sent: 11-07-2023 16:27
From: Dillon Bray
Subject: IceLib SDK, and conferencing
Hello Community,
I've been asked by our developers to check with the community regarding some specialized use case related to the IceLib SDK, and conferencing.
When they try to use IceLib to manipulate conferencing for a logged in station, an unrelated call will go on hold.
Name Space: ININ.IceLib.Interactions
var mystationSettings = new WorkstationSettings(ServerEnv.IsProd ? "extension" : "extension", SupportedMedia.Call);_Session.Connect( sessionsettings, new HostSettings(new HostEndpoint("CIC Server", HostEndpoint.DefaultPort)), authSettings, mystationSettings);_Session.ConnectionStateChanged += _Session_ConnectionStateChanged;_InteractionsManager = InteractionsManager.GetInstance(_Session); var interactiondIdObj = new InteractionId(customerinteractionId); Interaction interaction = _InteractionsManager.CreateInteraction(interactiondIdObj); var watches = new string[] { "Eic_ObjectType","Capabilities", "InitiationTime", "ConsultCallId", "Eic_ConsultingId", "Eic_TransferConsultId", "Eic_ConsultId", "Eic_IntercomParty", "Eic_ConsultCallId", "Eic_ConsultingCallId", "Eic_ConsultTransferCallId" }; interaction.StartWatching(watches);var consultParms = new ConsultTransferParameters(state.context.ActionRequest.TransferTarget, interactiondIdObj);var consultCall = _InteractionsManager.MakeConsultTransfer(consultParms);
Any help would be appreciated.
Thanks,
#Integrations
#Unsure/Other
------------------------------
Dillon Bray
ArcBest Technologies Inc.
------------------------------