Created by: JAMES HANDERMANN on 20-04-2010 02:14:29 AM I have a client with ICM 7.5.6 with a custom CTIOS Agent Desktop (Win32 CIL), client is using G3 / PBX. Calls are getting stuck on the CTIOS Agent Desktop GRID with the grid status of "CLEARED". I think this is occurring because they are doing adjuncts in routing call flow from a VRU. So, ICM may not be in control of the entire call. The client says they cannot remove the adjuncts. The error only occurs on some calls and always on the adjunct ANI / DNIS calls. The ERROR in the CTIOS LOG before the call get stuck in the GRID. 04/19/10 22:55:48.082 6480 StarTekCTIOS Thd(6800) CCtiOsSession:nEvent( eControlFailureConf ), EnablementMask = ffffffff 04/19/10 22:55:48.082 6480 StarTekCTIOS Thd(6800) CCtiOsSession:nEvent, (PeripheralID:5000 FailureCode:71 PeripheralErrorCode:15 AgentID:43418 UniqueObjectID:agent.5000.43418 MessageID:eControlFailureConf MessageType:eSetAgentStateRequest ErrorMessage:Unable to perform requested operation:: Domain or call is being<font size="3"></font> monitored by another adjunct FilterTarget:agent.5000.43418 TargetCILClientID:cinctx2bl12a-6480-6800). Any ideals how I can fix this issue in the CTIOS Agent Desktop code? One ideal i had was to loop throuh all the calls in the CIL's object cache via the "args = m_Session.GetAllCalls()" and issue a "aCall.Clear" or "aCall.ClearConnection" to the calls with a status of "LSC_NULL". OR uses the "args = m_Session.GetAllCalls()" then do and args.RemoveItem then update CIL's object. ???? Here is some code, but I get an error at "CilRefArg type is not defined", not sure if that has been replaced with a new lib. ???? Dim args AsNew Cisco.CTIOSCLIENTLib.Arguments args = m_Session.GetAllCalls() ' Iterate through all of the CILRefArg objects ' in the Arguments array. ' Dim i AsInteger For i = 1 To args.NumElements() Dim refArg As CilRefArg ' Retrieve the CILRefArg at each position in the ' array If (args.GetElement(i, refArg)) Then If ((refArg IsNothing) = False) Then ' The value method will return a reference ' to the call object referenced by the ' CILRefArg. ' Dim aCall As Cisco.CTIOSCLIENTLib.Call refArg.GetValue(aCall) Console.Out.WriteLine("--") Dim str AsString If (aCall IsNothing) Then Console.Out.WriteLine("Nothing") Else Console.Out.WriteLine(aCall.DumpProperties()) aCall.Clear() End If Console.Out.WriteLine("--") End If End If Next Thank you for your help!
Subject: RE: New Message from JAMES HANDERMANN in Computer Telephony Integration Obj Replied by: David Lender on 20-04-2010 03:40:40 PM CilRefArg is for C++, Java and .NET for VB, use a A pointer to a VARIANT containing a SAFEARRAY of pointers to ICalls. use code similar to that in Chapter 9 for Agent object method GetSkillGroups
In VB the GetSkillGroups method returns a variant array where each element is a reference to a CTIOSClientLib.SkillGroup object.
To retrieve references to skill group objects you need to do something similar to what is shown in the following code example.
"Skill Group Number: " & obSkill.GetValueInt(CStr("SkillGroupNumber"))
Next
End For
Subject: RE: New Message from JAMES HANDERMANN in Computer Telephony Integration Obj Replied by: JAMES HANDERMANN on 23-04-2010 07:29:57 PM Thank you David!
Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: