/en/manuals/1702550/Table of ContentsCTI Product Description Guide for Cisco Unified Contact Center Enterprise1Contents3About This Guide5Purpose5Audience5Organization5Related Documentation6Obtaining Documentation and Submitting a Service Request7Documentation Feedback7What is CTI?9Computer Telephony Integration9What is a CTI-Enabled Application?9Screen Pop10Agent State Control10Third-Party Call Control10Leveraging CTI Application Event Flow10Asynchronous Events11Request-Response Paradigm11An Example of Cisco CTI at Work12An Example of a Positive Interaction13Introduction to Cisco CTI13What is Cisco CTI?13Cisco CTI Components14Product Offerings14Software15CTI OS and the CTI Driver for Siebel 7 CD15Cisco Agent Desktop Agent15Cisco Agent Desktop Server15Documentation16Support and Training16Cisco CTI Server Software17Cisco CTI Server17The CTI Server, CTI Clients, and Unified ICM18Network-to-Desktop CTI19Unified ICM Call Processing19Pre-Routed Call19Translation Route Call20Post-Routed Call20Transfer Call21Conference Call21CTI Server Application Models22Agent Workstation (Client Events) Application22CTI Bridge (All Devices) Application23CTI Server Configurations24Simplex/Duplex Configuration24Cisco CTI Object Server (CTI OS) Software25Overview of CTI OS25Cisco CTI Toolkit Agent Desktop26Cisco CTI Toolkit IPCC Supervisor Desktop26Silent Monitor27CTI OS Server-Client Security28Multi-Tenancy/Multi-Instance CTI OS28Quality of Service (QoS)28Cisco CTI Driver for Siebel 728Test Environment29Using the Samples29Cisco Agent Desktop (CAD) Software31Cisco Agent Desktop31Index33A33B33C33D33E33F34I34M34P34R34S34T34U34W34Size: 737 KBPages: 34Language: EnglishOpen manual
Developer's GuideTable of ContentsCTI OS Developer's Guide for Cisco Unified ICM/Contact Center Enterprise & Hosted1Contents3About This Guide19Purpose19Audience19Organization19Related Documentation20Conventions21Obtaining Documentation and Submitting a Service Request21Documentation Feedback21Introduction23Introduction to CTI23What is a CTI-Enabled Application?23Screen Pop23Agent State Control24Third-Party Call Control24Leveraging CTI Application Event Flow24Asynchronous Events24Request-Response Paradigm25Overview of CTI OS26Advantages of CTI OS as a CTI Development Interface27Key Benefits of CTI OS for CTI Application Developers28Illustrative Code Fragments28CTI OS Client Interface Library Architecture29Object Server Architecture29Client Interface Library Architecture29Connection Layer30Service Layer30Object Interface Layer31Custom Application31CIL Object Model31Session Object31Session Modes32Agent Object32Call Object32SkillGroup Object32Object Creation and Lifetime33Reference Counting33Call Object Lifetime33Agent Object Lifetime33SkillGroup Object Lifetime34Methods that Call AddRef()34Where To Go From Here39CIL Coding Conventions41CTI OS CIL Data Types41Asynchronous Program Execution42CIL Error Codes43COM Error Codes47Generic Interfaces47Arguments48Accessing Properties and Parameters with GetValue48Setting Object Properties and Request Parameters with SetValue49UniqueObjectID49Obtaining Objects from UniqueObjectIDs51Using Button Enablement Masks51Building Your Application53Setting Up Your Environment for .NET53Integrating with Microsoft Visual Studio .NET 200554Adding CTI OS Toolkit 8.0(1) Components to the “Add Reference” Dialog Box55Adding Cisco CTI OS ActiveX 8.0(1) Controls to the Toolbox55Integrating your Application with CTI OS via the CIL56Planning and Designing Your Integration56What Language and Interface to Use56Testing CTI Applications57Developing a Test Plan57Test Environment58Using the Samples58Using The CTI OS ActiveX Controls60Building a Simple Softphone with ActiveX Controls60Adding a Hook for Screenpops61CTI OS SessionResolver61Sample VB .NET code to Retrieve CallVariable162Using the COM CIL in Visual C++ 8.0(1)63COM Client Interface Library (COM CIL.)63Adding COM Support to your Application64Important Note About COM Method Syntax64Using the CIL Dynamic Link Libraries64Creating an Instance of a COM Object65Subscribing and Unsubscribing to COM Events in C++65Next Steps66Using the C++ CIL and Static Libraries66Header Files and Libraries66Project Settings for Compiling and Linking67Subscribing for Events in C++69STLPort70Next Steps70Using the Java CIL Libraries70Next Steps71Using the .NET CIL Libraries71Next Steps71Connecting to the CTI OS Server72How to Create the Session Instance72Session Object Lifetime (C++ only)72How to Set the Event Listener and Subscribe to Events73How to Set Connection Parameters for the Session73How to Connect the Session to the CTI OS Server73Dealing with Connection Failures74Connection Failure Events74Connection Attempt Error Codes in Java and .NET CIL74Configuring the Agent to Automatically Log In after Failover75Stopping the Failover Procedure75How to Set the Connection Mode75Setting the Connection Mode in the OnConnection() Event Handler75When to Use Agent Mode76How to Select Agent Mode76When to Use Monitor Mode76Monitor Mode Filters77How to Select Monitor Mode78How to Deal with Failover In Monitor Mode79Settings Download80Disconnecting from CTI OS Server81Logging In and Logging Out an Agent82How to Log In an Agent82How to Handle Duplicate Log In Attempts83Overview83How to Create Values in the CTI OS Server Registry to Control Duplicate Log In Attempts83How to Prevent Another Agent Log In with Incorrect Credentials84How to Get Registry Configuration Values to Your Desktop Application85How to Detect the Duplicate Log In Attempt in the Desktop Application86How to Handle Duplicate Log In Attempts in the Desktop Application87How to Log Out an Agent87Typical Logout Procedure87Working with Calls89Handling Multiple Calls89What is the Current Call?89How to Get a Call Object90How to Set the Current Call for the Session90Call Wrapup90Logout and NotReady Reason Codes91When Does the Application Receive the OnButtonEnablementChange() Event?91What to do in the OnButtonEnablementChange() Event92Checking Not Ready Bitmasks in OnButtonEnablementChange() Event92OnButtonEnablementChange() Event in Supervisor Desktop Applications93Making Requests94Preventing Multiple Duplicate Requests94Working with Events95Handling Events in Order95Coding Considerations for CIL Event Handling95Monitoring the OnCallEnd() Event95Working with Agent Statistics96Overview96How to Set Up an Agent Application to Receive Agent Statistics96How to Set Up a Monitor-Mode Application to Receive Agent Statistics97Accessing Agent Statistics100Overview100Registering to the eOnNewAgentStatisticsEvent() (JAVA)100Registering to the OnAgentStatistics() (C++, COM, and VB)100How to Get Agent Statistics through the Agent Instance100Changing Which Agent Statistics are Sent101Agent Statistics Computed by the Sample CTI OS Desktop101Working with Skill Group Statistics101Overview101How to Set Up a Monitor-Mode Application to Receive Skill Group Statistics102Accessing Skill Group Statistics103Overview103Registering to the eOnNewSkillGroupStatisticsEvent() (JAVA)104Registering to the OnSkillGroupStatisticsUpdated() (C++, COM, and VB)104Changing Which Skill Group Statistics are Sent104Skill Group Statistics Computed by the Sample CTI OS Desktop104Enabling Silent Monitor in Your Application105Enabling CTI OS Based Silent Monitoring in Your Application105Creating a Silent Monitor Object106Setting the Session Mode106Initiating and Ending a Silent Monitor Session107Shutting Down Silent Monitor Manager108Initiating SilentMonitor from Monitor Mode Applications109Enabling Unified CM Based Silent Monitoring in your Application109CCM Based Silent Monitor Overview109CTI OS Monitor Mode Applications109Initiating a CCM Based Silent Monitor Request109Determining if the Current Agent is Being Silently Monitored111Ending a CCM Based Silent Monitor Request111Determining the Silent Monitor Mode113Deployment of Custom CTI OS Applications113Deploying Applications Using the ActiveX Controls113Deploying Applications Using COM (But Not ActiveX Controls)119Deploying Applications using C++ CIL119Deploying Applications using .NET CIL120Custom Application and CTI OS Security120Building Supervisor Applications120General Flow121Monitored and Unmonitored Events121Requesting and Monitoring the Supervisor’s Teams121OnNewAgentTeamMember123OnNewAgentTeamMember Events and Supervisors123OnMonitoredAgentStateChange Events124OnMonitoredAgentInfo Event124Time in State124OnSkillInfo Event124Populating an Agent Grid125Monitoring Agents127OnSupervisorButtonChange129Monitored Call Events130Making Agents Ready and Logging Agents Out130Monitoring Calls131MonitoredCallEvents131Barging into Calls132Intercepting Calls133Updating Monitored Call Data134Sample Code in the CTI OS Toolkit134.NET Samples134CTI Toolkit Combo Desktop.NET134CtiOs Data Grid.NET136All Agents Sample.NET136All Calls Sample.NET136Java CIL Samples136Win32 Samples136CTI OS ActiveX Controls137Property Pages139Button Controls and Grid Controls139Button Controls144Grid Controls144Supervisor Status Bar144CTI OS ActiveX Control Descriptions144AgentStateCtl144Related Methods147Related Events148AgentSelectCtl150Methods151AgentStatisticsCtl155Methods155AlternateCtl159AnswerCtl159BadLineCtl160CallAppearanceCtl160Related Methods161Related Events161Methods161ChatCtl165Methods165ConferenceCtl168EmergencyAssistCtl170HoldCtl170MakeCallCtl171ReconnectCtl172SkillgroupStatisticsCtl172Methods173StatusBarCtl176SupervisorOnlyCtl177RecordCtl178TransferCtl179The Silent Monitor StandAlone ActiveX Control180Connect180Disconnect181StartMonitoring181StopMonitoring181SilentMonitor Com Object Events181Deployment182Sample Usage in Visual Basic 6.0182Event Interfaces and Events185Event Publication Model185ISessionEvents Interface186OnConnection186Syntax186Parameters186OnConnectionClosed186OnConnectionFailure187Syntax187Parameters187OnConnectionRejected187Syntax187Parameters187OnCTIOSFailure187Syntax188Parameters188Remarks189OnCurrentAgentReset189Syntax189Parameters189OnCurrentCallChanged189Syntax190Parameters190OnFailure Event190OnGlobalSettingsDownloadConf190Syntax191Parameters191OnHeartbeat199Syntax200Parameters200OnMissingHeartbeat200Syntax200Parameters200OnMonitorModeEstablished201Syntax201Parameters201OnSnapshotDeviceConf201Syntax201Parameters202Remarks202OnSnapshotSkillGroupList202OnTranslationRoute202Syntax203Parameters203ICallEvents Interface204OnAgentPrecallEvent204Syntax204Parameters205OnAgentPrecallAbortEvent206Syntax206Parameters206OnAlternateCallConf206Syntax207Parameters207OnAnswerCallConf207Syntax207Parameters207OnCallBegin207Syntax208Parameters208OnCallCleared209Syntax210Parameters210OnCallConnectionCleared210Syntax210Parameters211OnCallConferenced211Syntax211Parameters211OnCallDataUpdate213Syntax213Parameters214OnCallDelivered215Syntax215Parameters216OnCallDequeuedEvent216Syntax216Parameters217OnCallDiverted217Syntax217Parameters217OnCallEnd218Syntax218Parameters219OnCallEstablished219Syntax219Parameters219OnCallFailed220Syntax220Parameters221OnCallHeld221Syntax221Parameters221OnCallOriginated222Syntax222Parameters222OnCallQueuedEvent223Syntax223Parameters223OnCallReachedNetworkEvent224Syntax224Parameters224OnCallRetrieved225Syntax225Parameters225OnCallServiceInitiatedEvent225Syntax225Parameters226OnCallStartRecordingConf226Syntax226Parameters226OnCallStopRecordingConf227Syntax227Parameters227OnCallTransferred227Syntax227Parameters227OnClearCallConf229Syntax229Parameters229OnClearConnectionConf229Syntax230Parameters230OnConferenceCallConf230Syntax230Parameters230OnConsultationCallConf230Syntax230Parameters231OnControlFailureConf231Syntax231Parameters231OnHoldCallConf231Syntax232Parameters232OnMakePredictiveCallConf232OnReconnectCallConf232Syntax232Parameters232OnReleaseCallConf232OnRetrieveCallConf233Syntax233Parameters233OnSendDTMFConf233Syntax233Parameters233OnSetCallDataConf233Syntax233Parameters234OnSnapshotCallConf234Syntax234Parameters235OnTransferCallConf237Syntax237Parameters237IAgentEvents Interface237OnAgentDeskSettingsConf237Syntax237Parameters237OnAgentInfoEvent239Syntax239Parameters240OnAgentStateChange240Syntax240Parameters240OnAgentStatistics242Syntax242Parameters243OnChatMessage243Syntax243Parameters243OnControlFailureConf244Syntax244Parameters244OnEmergencyCall249Syntax249Parameters249Remarks250OnLogoutFailed250Syntax250Parameters250OnMakeCallConf250Syntax250Parameters250OnNewAgentTeamMember251Syntax251Parameters251OnPostLogout253Syntax253Parameters253Remarks254OnPreLogout254Syntax254Parameters254OnQueryAgentStateConf255Syntax255Parameters255OnSetAgentModeEvent257Syntax257Parameters257OnSetAgentStateConf258Syntax258Parameters258OnStartMonitoringAgent258Syntax258Parameters258Remarks259OnStopMonitoringAgent259Syntax259Parameters259Remarks260OnUserMessageConf260ISkillGroupEvents Interface260OnSkillGroupStatisticsUpdated260Syntax260Parameters260OnSkillInfoEvent261Parameters261IButtonEnablementEvents261OnButtonEnablementChange261Parameters261OnSupervisorButtonChange264Parameters264Remarks264IMonitoredAgentEvents Interface264IMonitoredCallEvents Interface265ISilentMonitorEvents266OnCallRTPStarted266Syntax266Parameters266OnCallRTPStopped267Syntax267Parameters267OnStartSilentMonitorConf268Syntax268Parameters268OnSilentMonitorStartedEvent269For CTI OS Based Silent Monitor269For CCM Based Silent Monitor270OnSilentMonitorStartRequestedEvent270Syntax271Parameters271OnSilentMonitorSessionDisconnected272Syntax272Parameters272OnSilentMonitorStopRequestedEvent272For CTI OS Based Silent Monitor272For CCM Based Silent Monitor273OnSilentMonitorStatusReportEvent274Syntax274Parameters274OnStopSilentMonitorConf276Syntax276Parameters276OnRTPStreamTimedoutEvent277Syntax277Parameters277IGenericEvents Interface277OnEvent277Syntax277Java Adapter Classes278IAllInOne278IAgentEvents278IButtonEnablementEvents278ICallEvents278ISkillGroupEvents278Events in Java CIL279Events in .NET CIL279Getting All Event Parameters280How to Get All Parameters from an Event280CtiOs Object289Methods289DumpProperties290Syntax290Parameters290Return Value290GetAllProperties290Syntax290Parameters291Return Value291GetElement291Syntax291Parameters291Return Value292GetLastError (Java and .NET only)292Syntax292Parameters292Returns292Remarks292GetNumProperties293Syntax293Parameters293Return Value293GetPropertyName293Syntax293Parameters293Return Value293GetPropertyType294Syntax294Parameters294Return Value294GetValue295Syntax295Parameters295Return Value295GetValueArray295Syntax295Parameters296Return Value296GetValueBoolObj (Java and .NET only)296Syntax296Parameters296Returns296GetValueInt296Syntax297Parameters297Return Value297GetValueIntObj (Java only)297Syntax297Parameters298Returns298GetValueShortObj (Java only)298Syntax298Parameters298Return Value298GetValueString298Syntax298Parameters299Return Value299GetValueUIntObj (Java only)299Syntax299Parameters299Returns299GetValueUShortObj (Java only)300Syntax300Parameters300Returns300IsValid300Syntax300Parameters300Return Value301ReportError (Java and .NET only)301Syntax301Parameters301Returns301SetValue (Java and .NET)301Syntax301Parameters302Returns302SetValue (C++, COM, and VB)302Syntax302Parameters302Return Values302Remarks303Session Object305Session Object Properties305Methods307AddEventListener (Java and .NET only)308Syntax308Parameters308Returns309AddListener Methods (C++ only)309Syntax309Remarks309Connect309Syntax309Parameters310Return Values310Remarks310CreateSilentMonitorManager311Syntax311Parameters312Return Value312Remarks312CreateWaitObject (C++, Java, and .NET)312Syntax312Parameters312Return Values312DestroySilentMonitorManager313Syntax313Parameters313Return Values313Remarks313DestroyWaitObject (C++ , Java, and .NET)313Syntax313Parameters313Return Values314Remarks314DisableSkillGroupStatistics (C++ , Java, and .NET)314Syntax314Parameters314Return Value314Remarks314Disconnect314Syntax314Parameters315Return Values315DumpProperties315EnableSkillGroupStatistics (C++, Java, and .NET)315Syntax315Parameters315Return Value315Remarks316GetAllAgents316Syntax316Parameters316Return Values316Remarks317GetAllCalls318Syntax318Parameters319Return Values319Remarks320GetAllProperties321GetAllSkillGroups321Syntax321Parameters322Return Values322GetCurrentAgent322Syntax322Parameters322Return Values322GetCurrentCall323Syntax323Parameters323Return Values323GetCurrentSilentMonitor323Syntax323Return Values323GetElement324GetNumProperties324GetObjectFromObjectID324Syntax324Parameters324Return Values324Remarks325GetPropertyName325GetPropertyType325GetSystemStatus (Java, .NET, and C++ only)325Syntax325Parameters325Returns325GetValue Methods325IsAgent325Syntax326Parameters326Return Values326IsCCMSilentMonitor326Syntax326Parameters326Return Values326IsSupervisor326Syntax326Parameters327Return Values327IsValid327RemoveEventListener (Java and .NET)327Syntax327Parameters327Returns327RemoveListener Methods (C++ only)327Syntax327Remarks328RequestDesktopSettings328Syntax328Parameters328Return Values329Remarks329SetAgent329Syntax329Parameters329Return Values329SetCurrentCall330Syntax330Parameters331Return Values331Remarks331SetCurrentSilentMonitor331Syntax331Parameters331Return Values331Remarks332SetMessageFilter332Syntax332Parameters332Return Values332Remarks332SetSupervisorMonitorMode332Syntax332Parameters333Return Values333Notes On Message Filters333Message Filter Syntax333A Simple Example334General Form of Filter Syntax334Combining Filters334Filtering for Specific Events335Events Not Allowed In Filter Expressions335Filtering Skillgroup Statistics336Filtering CCM Based Silent Monitor Calls337Agent Object339Agent Object Properties339Agent Statistics340Methods347Arguments Parameters349DisableAgentStatistics349Syntax349Parameters350Return Value350DisableSkillGroupStatistics350Syntax350Parameters350Return Value350EnableAgentStatistics351Syntax351Parameters351Return Value351Remarks351EnableSkillGroupStatistics351Syntax351Parameters352Return Value352Remarks352GetAgentState352Syntax352Parameters352Return Value353GetAllProperties353GetElement353GetMonitoredAgent353Syntax353Parameters353Return Value353Remarks353GetMonitoredCall353Syntax353Parameters354Return Value354Remarks354GetNumProperties354GetPropertyName354GetPropertyType354GetSkillGroups354Syntax355Parameters355Return Value355GetValue Methods356IsAgent357Syntax357Parameters357Return Value357IsSupervisor357Syntax357Parameters357Return Values357Login358Syntax358Input Parameters358Return Values359Remarks359Logout360Syntax360Input Parameters360Return Values361Remarks361MakeCall361Syntax361Input Parameters361Return Value365Remarks365MakeEmergencyCall366Syntax366Parameters366Return Value366Remarks366QueryAgentState367Syntax367Input Parameters367Return Values367Remarks367ReportBadCallLine367Syntax368Parameters368Return Values368RequestAgentTeamList368Syntax368Parameters368Return Value369Remarks369RequestSupervisorAssist369Syntax369Parameters369Return Values369Remarks369SendChatMessage370Syntax370Parameters370Return Values370Remarks371SetAgentState371Syntax371Input Parameters371Return Values372Remarks372StartMonitoringAgent372Syntax372Parameters372Return Value373Remarks373StartMonitoringAgentTeam373Syntax373Parameters373Return Value373Remarks374StartMonitoringAllAgentTeams374Syntax374Parameters374Return Value374Remarks374StartMonitoringCall375Description375Syntax375Parameters375Return Value375Remarks375StopMonitoringAgent375Syntax375Parameters376Return Value376Remarks376StopMonitoringAgentTeam376Syntax376Parameters376Return Value376Remarks377StopMonitoringAllAgentTeams377Syntax377Parameters377Return Value377Remarks377SuperviseCall377Syntax378Parameters378Return Values378Remarks378Call Object381Current Call Concept381Accessing ECC Variables382Considerations for Passing Call Variables382Retrieving ECC Variable Values382Adding ECC Values383Properties384Methods386Arguments Parameters388Alternate388Syntax388Parameters388Return Values388Remarks388Answer389Syntax389Parameters389Return Value389Remarks389Clear390Syntax390Parameters390Return Value390Remarks390ClearConnection391Syntax391Parameters391Return Value391Remarks391Conference392Syntax392Parameters392Return Value392Remarks392GetCallContext393Syntax393Parameters393Return Value393Remarks394GetCallData394Syntax394Parameters394Return Value395Remarks395Hold395Syntax395Parameters395Return Value396Remarks396MakeConsultCall396Syntax396Parameters396Return Values400Remarks400Reconnect400Syntax401Parameters401Return Values401Remarks401Retrieve401Syntax402Parameters402Return Values402Remarks402SendDTMFSignal402Syntax402Parameters402Return Values403Remarks403SetCallData403Syntax404Parameters404Return Values404Remarks404SingleStepConference404Syntax404Parameters405Return Values406Remarks406SingleStepTransfer406Syntax406Parameters407Return Values407Snapshot407Syntax407Parameters407Return Values408Remarks408StartRecord408Syntax408Parameters408Return Value408Remarks408StopRecord409Syntax409Parameters409Return Value409Remarks409Transfer409Syntax409Parameters410Return Values410Remarks410SkillGroup Object411Properties411Statistics412Methods426DisableSkillGroupStatistics426Syntax426Parameters426Return Value427Remarks427DumpProperties427EnableSkillGroupStatistics427Syntax427Parameters427Return Value428Remarks428GetElement428GetValue Methods428IsValid428SetValue428Helper Classes429Arg Class430AddRef430Syntax430Parameters431Return Values431Clone431Syntax431Output Parameters431Return Values431CreateInstance431Syntax431Parameters432Return Values432Remarks432DumpArg432Syntax432Parameters432Return Values432GetArgType (.NET only)432Syntax433Parameters433Returns433GetType433Syntax433Output Parameters433Return Values433GetValue Methods434Syntax434Parameters435Return Values435Release435Syntax435Parameters436Return Values436SetValue436Syntax436Parameters436Return Values437Arguments Class437Usage Notes438AddItem (C++, COM, VB only)439Syntax439Parameters440Return Value440AddRef (C++ and COM only)440Syntax440Parameters440Return Values440Clear441Syntax441Parameters441Return Value441Clone441Syntax441Parameters441Return Value442CreateInstance (C++ and COM only)442Syntax442Parameters442Return Value442Remarks442DumpArgs442Syntax442Parameters443Return Values443GetElement Methods443Syntax443Parameters444Return Value444GetValue Methods444Syntax444Parameters446Return Values446Remarks447IsValid447Syntax447Parameters447Return Values447NumElements447Syntax448Parameters448Return Value448Release (C++ and COM only)448Syntax448Parameters448Return Values448RemoveItem448Syntax448Parameters449Return Values449SetElement (C++, COM, and VB only)449Syntax449Parameters449Return Values450SetValue450Syntax450Parameters451Return Values451Remarks451CILRefArg Class (C++, Java, and .NET only)452GetType452Syntax452Output Parameters452Return Values452GetUniqueObjectID (Java and .NET only)452Syntax453Parameters453Return Values453Remarks453GetValue453Syntax453Output Parameters453Return Values453SetValue453Syntax453Input Parameters454Return Values454CCtiOsException Class (C++, Java, and .NET only)454CCtiosException Constructor454Syntax454Input Parameters454Return Values455GetCode455Syntax455Parameters455Return Values455GetStatus455Syntax455Parameters455Return Values455GetString455Syntax456Parameters456Return Values456What456Syntax456Parameters456Return Values456CWaitObject Class456Methods457CreateWaitObject457DestroyWaitObject457DumpEventMask457Syntax457Parameters457Return Values458GetMask458Syntax458Parameters458Return Values458GetTriggerEvent458Syntax458Parameters458Return Values458InMask459Syntax459Parameters459Return Values459SetMask459Syntax459Parameters459Return Values459WaitOnMultipleEvents459Syntax460Parameters460Return Values460Logger Class (.NET and Java Only)460Methods460Logger() Constructor461Syntax461Parameters461Return Values461GetTraceMask461Syntax461Parameters461Return Values461SetTraceMask462Syntax462Parameters462Return Values462AddLogListener462Syntax462Parameters462Return Values462RemoveLogListener462Syntax462Parameters463Return Values463Trace463Syntax463Parameters463Return Values463LogWrapper Class (.NET and Java Only)463Methods464LogWrapper() Constructor465Syntax465Parameters465Return Values465LogWrapper(String filename) Constructor465Syntax465Parameters465Return Values465LogWrapper(string, int, int, int) Constructor465Syntax466Parameters466Return Values466Dispose (.NET Only)466Syntax466Parameters466Return Values467GetMaxDaysBeforeExpire (.NET Only)467Syntax467Parameters467Return Values467SetMaxNumberFiles467Syntax467Parameters467Return Values467GetMaxNumberFiles (.NET Only)467Syntax468Parameters468Return Values468SetMaxDaysBeforeExpire468Syntax468Parameters468Return Values468ProcessConfigFile468Syntax468Parameters468Return Values469SilentMonitorManager Object471Properties472Methods473Argument Parameter Rules474AcceptSilentMonitoring474Syntax474Parameters474Return Values475GetIPPhoneInfo475Syntax475Parameters475Return Value475GetSessionInfo476Syntax476Parameters476Return Values477GetSMSessionList477Syntax477Parameters478Return Values478IsMonitoredTarget478Syntax478Parameters478Return Value478SetIPPhoneInfo478Syntax479Parameters479Return Values480StartSilentMonitorRequest480Syntax480Parameters480Return Values481Remarks481StartSMMonitoredMode481Syntax481Parameters481Return Values482StartSMMonitoringMode482Syntax482Parameters483Return Values483StopSilentMonitorMode483Syntax483Parameters483Return Values484StopSilentMonitorRequest484Syntax484Parameters484Return Values484CTI OS Keywords and Enumerated Types485Keywords485Java CIL Keywords486.NET CIL Keywords486Enumerated Types486Java Interfaces487CTI OS Logging489Creating CTI OS Client Logs (COM and C++)489How to Install the Tracing Mechanism (COM and C++)489Setting Trace Levels (COM and C++)490Configuring Tracing (COM and C++)490Java CIL Logging Utilities491ILogEvents491LogEvent491Logger492Syntax492LogEventsAdapter492Syntax493Logging and Tracing (Java)493Logging and Tracing (.NET)493Using the Default Logging Mechanism494How to Log Trace Events Using the LogWrapper Class494Creating a Custom Logging Mechanism496How to Log Trace Events Using the Logger Class496Configuring Tracing (Java and .NET)496Migrating From CTI OS 7.1(x) or 7.2(x)499Introduction499Migrating a C++ CIL application499Migrating a COM CIL Application500Migrating a C++ Application that uses COM CIL500Migrate to Visual Basic .NET and use .COM CIL500Migrating a Visual Basic 6.0 to Use COM CIL501Migrate to Visual Basic .NET and use CTI OS ActiveX Controls501Index503Size: 3.92 MBPages: 508Language: EnglishOpen manual
Reference GuideTable of ContentsCTI Server Message Reference Guide (Protocol Version 14) for Cisco Unified ICM/Contact Center Enterprise & Hosted1Contents3About This Guide9Related Documentation10Obtaining Documentation and Submitting a Service Request11Documentation Feedback11CTI Server Overview13How CTI Server Works13Unified ICM Call Processing14Pre-Routed (“Normal”) Call14Translation Route Call14Post Route Call15Transfer Call15Conference Call16CTI Server Configurations16Simplex/Duplex Configuration16CTI Bridge Configuration17CTI Server Message Set18CTI Client Application Guidelines21InvokeIDs21Heartbeat Messages21Generic vs. ACD-Specific Applications22Message Masks22Message Order22Definitions of Symbolic Constants22Side A/B Selection and TCP/IP Connections23Alignment of Data Elements23Incompatible Changes to Reported Call ConnectionIDs23CTI Server Operations During Unified ICM Failures24Messaging Conventions25Message Types25Data Types36Message Formats39Floating Fields39Invoke IDs40Call Event Data40Device IDs40CTI Client History41Event Cause Codes41Call Identification41Failure Indication Messages42Session Management43Configuring TCP/IP Transport Services43Connection Management43Session Initialization44CTI Service Masks44OPEN_REQ Message45OPEN_CONF Message50Session Maintenance52Session Termination54Application Level Interfaces57Client Events Service57BEGIN_CALL_EVENT59END_CALL_EVENT62CALL_DATA_UPDATE_EVENT63CALL_DELIVERED_EVENT66CALL_ESTABLISHED_EVENT69CALL_HELD_EVENT72CALL_RETRIEVED_EVENT73CALL_CLEARED_EVENT74CALL_CONNECTION_CLEARED_EVENT75CALL_ORIGINATED_EVENT76CALL_FAILED_EVENT78CALL_CONFERENCED_EVENT79CALL_TRANSFERRED_EVENT81CALL_DIVERTED_EVENT84CALL_SERVICE_INITIATED_EVENT85AGENT_STATE_EVENT88CALL_REACHED_NETWORK_EVENT92CALL_QUEUED_EVENT93CALL_DEQUEUED_EVENT96CALL_ATTRIBUTE_CHANGE_EVENT98AGENT_PRE_CALL_EVENT99AGENT_PRE_CALL_ABORT_EVENT102RTP_STARTED_EVENT102RTP_STOPPED_EVENT104All Events Service105CALL_DELIVERED_EVENT106CALL_TRANSLATION_ROUTE_EVENT106Peripheral Monitor Service107MONITOR_START_REQ108MONITOR_STOP_REQ110CHANGE_MONITOR_MASK_REQ110Client Monitor Service112CLIENT_SESSION_OPENED_EVENT113CLIENT_SESSION_CLOSED_EVENT114SESSION_MONITOR_START_REQ115SESSION_MONITOR_STOP_REQ116Supervisor Service117SUPERVISE_CALL_REQ117EMERGENCY_CALL_REQ120EMERGENCY_CALL_EVENT122AGENT_TEAM_CONFIG_EVENT122LIST_AGENT_TEAM_REQ124MONITOR_AGENT_TEAM_START_REQ125MONITOR_AGENT_TEAM_STOP_REQ125Call Data Update Service126SET_CALL_DATA_REQ127RELEASE_CALL_REQ129SET_DEVICE_ATTRIBUTES_REQ131Miscellaneous Service132SYSTEM_EVENT133CLIENT_EVENT_REPORT_REQ134USER_MESSAGE_REQ136USER_MESSAGE_EVENT138QUERY_AGENT_STATISTICS_REQ138QUERY_SKILL_GROUP_STATISTICS_REQ145REGISTER_VARIABLES_REQ155SET_APP_DATA_REQ157START_RECORDING_REQ158STOP_RECORDING_REQ161AGENT_DESK_SETTINGS_REQ163Connection Monitor Service165Client Control Service165QUERY_AGENT_STATE_REQ168SET_AGENT_STATE_REQ172ALTERNATE_CALL_REQ174ANSWER_CALL_REQ175CLEAR_CALL_REQ176CLEAR_CONNECTION_REQ177CONFERENCE_CALL_REQ178CONSULTATION_CALL_REQ181DEFLECT_CALL_REQ184HOLD_CALL_REQ185MAKE_CALL_REQ186MAKE_PREDICTIVE_CALL_REQ188RECONNECT_CALL_REQ191RETRIEVE_CALL_REQ192TRANSFER_CALL_REQ193QUERY_DEVICE_INFO_REQ197SNAPSHOT_CALL_REQ201SNAPSHOT_DEVICE_REQ204SEND_DTMF_SIGNAL_REQ206SUPERVISOR_ASSIST_REQ207EMERGENCY_CALL_REQ209BAD_CALL_REQ212Server Service213REGISTER_SERVICE_REQ214UNREGISTER_SERVICE_REQ215Constants and Status Codes217Failure Indication Message Status Codes217SystemEventID Values223Special Values224Tag Values225AgentState Values236PGStatusCode Values238PeripheralType Values238LocalConnectionState Values239EventCause Values240DeviceIDType Values243CallType Values244ConnectionDeviceIDType Values245LineType Values246ControlFailureCode Values246AllocationState Values251ForwardType Values252TypeOfDevice Values252ClassOfDevice Values253CallPlacementType Values253CallMannerType Values254CallOption Values254ConsultType Values255FacilityType Values255AnsweringMachine Values255AnswerDetectMode Values256AgentWorkMode Values256DestinationCountry Values257CTI Service Masks257Disposition Code Values258Agent Service Request Masks260Silent Monitor Status Values260Changes and Additions261Protocol Version 14261Protocol Versions 10-13263Protocol Version 9264Protocol Version 8265Protocol Version 7266Protocol Version 6266Protocol Version 5268Index271Size: 9.07 MBPages: 276Language: EnglishOpen manual
Installation GuideTable of ContentsCover Page1Table of Contents3Preface5Purpose5Audience5Organization5Related Documentation6Conventions6Obtaining Documentation and Submitting a Service Request7Documentation Feedback7Chapter 1: Unified CCE 8.5(1) Overview9About Unified CCE 8.5(1)9What is Covered in this Guide9Baseline Requirements for the Unified ICM and CTI OS 8.5(1) Installation10New Features / Changes Overview11When to Upgrade to Unified CCE 8.5(1)12Preparing for WebView Removal12How WebView Removal Works13Suggested Practices for WebView Removal13WebView Removal and Silent Install of 8.5(1)14Collecting Rollback Information for WebView14Where to Get Unified CCE 8.5(1) Software14Adding Unified ICM Components After 8.5(1) Installation15Chapter 2: Deployment Sequence for Upgrading ICM and CTI OS Components17Installation Sequence17Uninstallation Sequence20Chapter 3: Upgrading ICM Components to 8.5(1)23About the ICM 8.5(1) Installer23How to run the 8.5(1) Installer on ICM Components24Installing the Language Pack24Installing the Language Pack25How to Check the Language Setting25How to Set Up Windows Multilingual User Interface (MUI) Pack on Windows Server 200325How to Uninstall Unified CCE 8.5(1)26Chapter 4: Upgrading CTI OS to 8.5(1)27CTI OS Upgrade Prerequisites27About the CTI OS 8.5(1) Installer27CTI OS Deployment Checklist27Deployment Order for Redundant Components28How to Install CTI OS 8.5(1)29How to Test Your CTI OS Install30How to Uninstall CTI OS 8.5(1)30Chapter 5: Silent Installation and Recovery from Installer Failures33How to Perform a Silent Install33WebView Removal and Silent Install of 8.5(1)35Recovering from Installer Failures35How to Manually Return a Failed Installation to the Pre-installation State36How to Re-Install WebView After a Failed Installation36Chapter 6: Installing Additional 8.5(1) Software39Cisco Unified Customer Voice Portal (Unified CVP) 8.5(1)39Cisco Unified Communications Manager (Unified CM) 8.5(1)40Cisco Unified Intelligence Center (Unified IC) 8.5(1)40Cisco Agent Desktop (CAD) 8.5(1)40Cisco Unified Contact Center Management Portal (CCMP) 8.5(1)40Index41Size: 1.21 MBPages: 41Language: EnglishOpen manual
Troubleshooting GuideTable of ContentsTitle1Contents3About This Guide7Purpose7How to Use this Manual7What if I can’t resolve the problem?8Other Useful Resources8Audience8Organization9Conventions9Other Publications10Obtaining Documentation10Cisco.com10Ordering Documentation10Documentation Feedback11Obtaining Technical Assistance11Cisco TAC Website11Opening a TAC Case12TAC Case Priority Definitions12Obtaining Additional Publications and Information13Chapter 1: Problems and Symptoms15CTI OS Server Problems15CTI OS Server Cannot Connect to CtiDriver15CtiDriver Cannot Connect to CTI Server16Problems Using Multiple Peripherals17General Softphone/Desktop Problems18Startup Problems18Login Problems18Logout Problems21Miscellaneous Button Problems22Miscellaneous Behavior Problems23Problems Making Calls24Problems Receiving Calls25Problems While Talking on a Call26Problems After Call Ends27Statistics Problems29Problems with ECC Variables30Failover Problems31Emergency and Supervisor Assist Problems33Chat Problems34Supervisor Feature Problems (IPCC Only)35Supervisor Button Problems35Problems with Real Time Status Window36Media Termination Problems37Login Problems38Sound Problems38Silent Monitor Problems (IPCC Only)40Chapter 2: Resolutions to Common Problems47Incorrect or Unreachable Configuration Server47Incorrect or Unreachable CTI OS Server in Connection Profile48Incorrect Configuration of Peripheral ID or Peripheral Type During Server Install50Incorrect Configuration of the Peripheral ID in the Connection Profile51Media Termination Cannot Find Wave Files52Volume is Too Low or Too High53Media Termination Did Not Release Sound Resources53Appendix A: Obtaining Logs for Support55Taking CTI OS Server logs56How to Set Trace Levels57Taking CTI OS Client Logs57How to Set Trace Levels58Appendix B: CTI OS FAQs59Index69C69E69F69I69M69P69S69T70Size: 863 KBPages: 70Language: EnglishOpen manual
Troubleshooting GuideTable of ContentsCTI OS Troubleshooting Guide for Cisco ICM/Contact Center Enterprise & Hosted1Contents3About This Guide5Purpose5How to Use this Manual5What if I cannot resolve the problem?5Audience5Organization6Related Documentation6Conventions7Obtaining Documentation and Submitting a Service Request7Documentation Feedback7Problems and Symptoms9CTI OS Server Problems9CTI OS Server Cannot Connect to CTI Server9Problems Using Multiple Peripherals10General Softphone/Desktop Problems11Startup Problems11Login Problems11Logout Problems14Miscellaneous Button Problems15Miscellaneous Behavior Problems15Problems Making Calls17Problems Receiving Calls17Problems While Talking on a Call19Problems After Call Ends19Statistics Problems20Problems with ECC Variables21Failover Problems22Emergency and Supervisor Assist Problems23Chat Problems24CTI Server Connection-Loss Problems24Supervisor Feature Problems (IPCC Only)25Supervisor Button Problems25Problems with Real Time Status Window25Silent Monitor Problems (IPCC Only)27Troubleshooting CTI OS Based Silent Monitor Problems27Troubleshooting Cisco CallManager Based Silent Monitor Problems31Trace Levels32Troubleshooting - Initiating Silent Monitor32Troubleshooting - Silent Monitor Established33Troubleshooting - Stopping Silent Monitor35Troubleshooting - PG Error Codes37Troubleshooting - Legacy Supervisor39Silent Monitor: Developer Information39ToS/QoS Problems40Resolutions to Common Problems41Incorrect or Unreachable Configuration Server41Incorrect or Unreachable CTI OS Server in Connection Profile42Incorrect Configuration of Peripheral ID or Peripheral Type During Server Install43Incorrect Configuration of the Peripheral ID in the Connection Profile44Determining if a PC can Capture Audio Packets sent from an IP Phone44Installing WinPcap45Troubleshooting Checklist47Obtaining Logs for Support49Taking CTI OS Server Logs49How to Set Trace Levels50Setting CTI OS Server Trace Levels50Setting CTI OS Client Trace Levels51Setting Point-to-Point Silent Monitor Trace Levels (Client only)51Taking CTI Toolkit Logs56How to Set Trace Levels56CTI OS FAQs57Index69Size: 1.65 MBPages: 70Language: EnglishOpen manual
Troubleshooting GuideTable of ContentsCTI OS Troubleshooting Guide for Cisco ICM/IPCC Enterprise & Hosted Editions1Contents3About This Guide7Purpose7How to Use this Manual7What if I can’t resolve the problem?8Other Useful Resources8Audience9Organization9Conventions10Other Publications10Obtaining Documentation10Cisco.com11Product Documentation DVD11Ordering Documentation12Documentation Feedback12Cisco Product Security Overview13Reporting Security Problems in Cisco Products13Obtaining Technical Assistance14Cisco Technical Support & Documentation Website14Submitting a Service Request15Definitions of Service Request Severity16Obtaining Additional Publications and Information16Chapter 1. Problems and Symptoms19CTI OS Server Problems19CTI OS Server Cannot Connect to CTI Server19Problems Using Multiple Peripherals20General Softphone/Desktop Problems22Startup Problems23Login Problems23Logout Problems27Miscellaneous Button Problems28Miscellaneous Behavior Problems29Problems Making Calls32Problems Receiving Calls33Problems While Talking on a Call35Problems After Call Ends36Statistics Problems38Problems with ECC Variables39Failover Problems40Emergency and Supervisor Assist Problems42Chat Problems43CTI Server Connection-Loss Problems44Supervisor Feature Problems (IPCC Only)44Supervisor Button Problems44Problems with Real Time Status Window45Silent Monitor Problems (IPCC Only)47Silent Monitor: Developer Information52ToS/QoS Problems53Chapter 2. Resolutions to Common Problems55Incorrect or Unreachable Configuration Server55Incorrect or Unreachable CTI OS Server in Connection Profile56Incorrect Configuration of Peripheral ID or Peripheral Type During Server Install59Incorrect Configuration of the Peripheral ID in the Connection Profile60Determining if a PC can Capture Audio Packets sent from an IP Phone61Installing WinPcap62Appendix A. Troubleshooting Checklist63Appendix B. Obtaining Logs for Support65Taking CTI OS Server logs66How to Set Trace Levels66Taking CTI Toolkit Logs67How to Set Trace Levels67Appendix C. CTI OS FAQs69Index85C85E85F85I85M85P85S85T86Size: 630 KBPages: 86Language: EnglishOpen manual
Troubleshooting GuideTable of ContentsCTI OS Troubleshooting Guide for Cisco ICM/IPCC Enterprise & Hosted Editions1Contents3About This Guide7Purpose7How to Use this Manual7What if I can’t resolve the problem?8Other Useful Resources8Audience9Organization9Conventions10Other Publications10Obtaining Documentation10Cisco.com11Product Documentation DVD11Ordering Documentation12Documentation Feedback12Cisco Product Security Overview13Reporting Security Problems in Cisco Products13Obtaining Technical Assistance14Cisco Technical Support & Documentation Website14Submitting a Service Request15Definitions of Service Request Severity16Obtaining Additional Publications and Information16Problems and Symptoms19CTI OS Server Problems19CTI OS Server Cannot Connect to CTI Server19Problems Using Multiple Peripherals20General Softphone/Desktop Problems22Startup Problems23Login Problems23Logout Problems27Miscellaneous Button Problems28Miscellaneous Behavior Problems29Problems Making Calls32Problems Receiving Calls33Problems While Talking on a Call35Problems After Call Ends36Statistics Problems38Problems with ECC Variables39Failover Problems40Emergency and Supervisor Assist Problems42Chat Problems43CTI Server Connection-Loss Problems44Supervisor Feature Problems (IPCC Only)44Supervisor Button Problems44Problems with Real Time Status Window45Silent Monitor Problems (IPCC Only)47Silent Monitor: Developer Information52ToS/QoS Problems53Resolutions to Common Problems55Incorrect or Unreachable Configuration Server55Incorrect or Unreachable CTI OS Server in Connection Profile56Incorrect Configuration of Peripheral ID or Peripheral Type During Server Install59Incorrect Configuration of the Peripheral ID in the Connection Profile60Determining if a PC can Capture Audio Packets sent from an IP Phone61Installing WinPcap62Troubleshooting Checklist63Obtaining Logs for Support65Taking CTI OS Server logs66How to Set Trace Levels66Taking CTI Toolkit Logs67How to Set Trace Levels67CTI OS FAQs69Index85C85E85F85I85M85P85S85T86Size: 831 KBPages: 86Language: EnglishOpen manual
Troubleshooting GuideTable of ContentsCTI OS Troubleshooting Guide for Cisco ICM/IPCC Enterprise & Hosted Editions1Contents3About This Guide7Purpose7How to Use this Manual7What if I can’t resolve the problem?7Other Useful Resources8Audience8Organization8Conventions9Other Publications9Obtaining Documentation9Cisco.com9Product Documentation DVD10Ordering Documentation10Documentation Feedback10Cisco Product Security Overview11Reporting Security Problems in Cisco Products11Obtaining Technical Assistance12Cisco Technical Support & Documentation Website12Submitting a Service Request12Definitions of Service Request Severity13Obtaining Additional Publications and Information13Problems and Symptoms15CTI OS Server Problems15CTI OS Server Cannot Connect to CTI Server15Problems Using Multiple Peripherals16General Softphone/Desktop Problems17Startup Problems17Login Problems17Logout Problems20Miscellaneous Button Problems21Miscellaneous Behavior Problems21Problems Making Calls23Problems Receiving Calls24Problems While Talking on a Call25Problems After Call Ends25Statistics Problems27Problems with ECC Variables28Failover Problems28Emergency and Supervisor Assist Problems29Chat Problems30CTI Server Connection-Loss Problems31Supervisor Feature Problems (IPCC Only)31Supervisor Button Problems31Problems with Real Time Status Window32Silent Monitor Problems (IPCC Only)33Troubleshooting CTI OS Based Silent Monitor Problems33Troubleshooting CCM Based Silent Monitor Problems37Trace Levels38Troubleshooting - Initiating Silent Monitor38Troubleshooting - Silent Monitor Established39Troubleshooting - Stopping Silent Monitor41Troubleshooting - PG Error Codes43Troubleshooting - Legacy Supervisor45Silent Monitor: Developer Information45ToS/QoS Problems46Resolutions to Common Problems47Incorrect or Unreachable Configuration Server47Incorrect or Unreachable CTI OS Server in Connection Profile48Incorrect Configuration of Peripheral ID or Peripheral Type During Server Install49Incorrect Configuration of the Peripheral ID in the Connection Profile50Determining if a PC can Capture Audio Packets sent from an IP Phone50Installing WinPcap51Troubleshooting Checklist53Obtaining Logs for Support55Taking CTI OS Server Logs55How to Set Trace Levels56Setting CTI OS Server Trace Levels56Setting CTI OS Client Trace Levels57Setting Point-to-Point Silent Monitor Trace Levels (Client only)57Taking CTI Toolkit Logs62How to Set Trace Levels62CTI OS FAQs63Index75Size: 1.77 MBPages: 76Language: EnglishOpen manual
Reference GuideTable of ContentsTitle1Contents3About This Guide7Purpose7Audience7Organization7Conventions8Other Publications9Obtaining Documentation9Cisco.com9Documentation CD-ROM9Ordering Documentation10Documentation Feedback10Obtaining Technical Assistance11Cisco TAC Website11Opening a TAC Case11TAC Case Priority Definitions12Obtaining Additional Publications and Information12http://www.cisco.com/en/US/learning/index.htmlObtaining Documentation13Cisco.com14Ordering Documentation14Documentation Feedback14Obtaining Technical Assistance15Cisco TAC Website15Opening a TAC Case15TAC Case Priority Definitions16Obtaining Additional Publications and Information17Chapter 1: Introduction19Introduction to Cisco ICM/CTI OS20Introduction to Siebel 7 Architecture20Siebel 7 Multiple Site Architecture22Difference Between Siebel 6.x and Siebel 7.x Drivers25Supported Features26Minimum Software Requirements26Versioning Information27Chapter 2: Installation29Installation Instructions29Uninstalling Cisco Driver for Siebel 736Cisco Data Store: Installing37Cisco Data Store Installation37How to install Cisco Data Store37How to start Cisco Data Store38How to Uninstall Cisco Data Store39Guidelines for Configuring the CTI Driver for Siebel 739Profiles39Configuration Guidelines41Chapter 3: Customization43Siebel Customization Basics44Reading the DEF File46Siebel Commands57Client Tracing Control67Chapter 4: Broadcast Statistics69Introduction69Configuring Broadcast Statistics70Agent Statistics71Skill Group Statistics73Business Services76How to create a Siebel business service for message broadcast76Invoking Service Methods77AddUserToBroadcast Function ddUserToBroadcast(strUserName, strMsgAbstract)78ClearAgentBroadcasts Function ClearAgentBroadcasts(strUserName, strPrefix)79RemoveUserFromBroadcast Function RemoveUserFromBroadcast(strUserName, strMsgAbstract)82Chapter 5: Troubleshooting and Testing85Set Trace Level85Service:AutoLogout Parameter86Locating Siebel Client Logs87Using Siebel Macros87Using Siebel Macros on Login87Supported Switches89Switch-specific Information89Alcatel89Aspect89Nortel Meridian90Nortel Symposium90Rockwell Spectrum90Siemens HiCom (North America Only)91Troubleshooting Problems92Appendix A: Business Service Script95Sample Script95Configuring Broadcast Statistics Within the DEF File106Driver Parameters106Appendix B: Configuring Agent State Toggling109Configuring Agent State Toggling Within the DEF File109Index149A149B149C149D150I150L150M150N150P150R151S151T151U151V152Size: 1.72 MBPages: 152Language: EnglishOpen manual
Reference GuideTable of ContentsCTI Driver for Siebel 7 Reference Guide for Cisco ICM/IPCC Enterprise & Hosted Editions1Contents3About This Guide7Purpose7Audience7Organization7Conventions8Other Publications9Obtaining Documentation9Cisco.com9Product Documentation DVD9Ordering Documentation10Documentation Feedback11Cisco Product Security Overview11Reporting Security Problems in Cisco Products12Obtaining Technical Assistance12Cisco Technical Support & Documentation Website13Submitting a Service Request13Definitions of Service Request Severity14Obtaining Additional Publications and Information15Chapter 1. Introduction17Introduction to Cisco ICM/CTI OS18Introduction to Siebel 7 Architecture18Siebel 7 Multiple Site Architecture20Difference Between Siebel 6.x and Siebel 7.x Drivers23Supported Features24Minimum Software Requirements24Chapter 2. Installation25Installation Instructions25Uninstalling Cisco Driver for Siebel 732Cisco Data Store: Installing33Cisco Data Store Installation33How to install Cisco Data Store33How to start Cisco Data Store34How to Uninstall Cisco Data Store35Guidelines for Configuring the CTI Driver for Siebel 735Profiles35Configuration Guidelines37Chapter 3. Customization39Siebel Customization Basics40Reading the DEF File42Siebel Commands55Client Tracing Control65Outbound Option Support66Supported Combinations71Chapter 4. Broadcast Statistics73Introduction73Configuring Broadcast Statistics74Agent Statistics75Skill Group Statistics77Detection of Skill Group Numbers80Business Services81How to create a Siebel business service for message broadcast81Invoking Service Methods82AddUserToBroadcast Function ddUserToBroadcast(strUserName, strMsgAbstract)83ClearAgentBroadcasts Function ClearAgentBroadcasts(strUserName, strPrefix)84RemoveUserFromBroadcast Function RemoveUserFromBroadcast(strUserName, strMsgAbstract)87Chapter 5. Troubleshooting and Testing91Set Trace Level91Service:AutoLogout Parameter93Locating Siebel Client Logs93Using Siebel Macros94Using Siebel Macros on Login94Supported Switches95Switch-specific Information95Alcatel95Aspect96Nortel Meridian96Nortel Symposium96Rockwell Spectrum97Siemens HiCom (North America Only)98Troubleshooting Problems99Appendix A. Business Service Script103Sample Script103Configuring Broadcast Statistics Within the DEF File114Driver Parameters114Appendix B. Configuring Agent State Toggling117Configuring Agent State Toggling Within the DEF File117Index157A157B157C157D158I158L158M158N158P158R159S159T159U159Size: 1.13 MBPages: 160Language: EnglishOpen manual
Reference GuideTable of ContentsCTI Driver for Siebel 7 Reference Guide for Cisco ICM/IPCC Enterprise & Hosted Editions1Contents3About This Guide7Purpose7Audience7Organization7Conventions8Other Publications8Obtaining Documentation8Cisco.com8Product Documentation DVD9Ordering Documentation9Documentation Feedback9Cisco Product Security Overview10Reporting Security Problems in Cisco Products10Obtaining Technical Assistance11Cisco Technical Support & Documentation Website11Submitting a Service Request11Definitions of Service Request Severity12Obtaining Additional Publications and Information12Introduction15Introduction to Cisco ICM/CTI OS15Introduction to Siebel 7 Architecture16Siebel 7 Multiple Site Architecture17Difference Between Siebel 6.x and Siebel 7.x Drivers18Supported Features19Minimum Software Requirements19Installation21Installation Instructions21Uninstalling Cisco Driver for Siebel 726Cisco Data Store: Installing26Cisco Data Store Installation26How to install Cisco Data Store26How to start Cisco Data Store27How to Uninstall Cisco Data Store28Guidelines for Configuring the CTI Driver for Siebel 728Profiles28Configuration Guidelines29Customization31Siebel Customization Basics31Reading the DEF File33Siebel Commands42Client Tracing Control50Outbound Option Support50Supported Combinations54CCM Silent Monitor Support54Broadcast Statistics57Introduction57Configuring Broadcast Statistics57Agent Statistics58Skill Group Statistics60Detection of Skill Group Numbers62Business Services62Invoking Service Methods64AddUserToBroadcast Function addUserToBroadcast(strUserName, strMsgAbstract)64ClearAgentBroadcasts Function ClearAgentBroadcasts(strUserName, strPrefix)65RemoveUserFromBroadcast Function RemoveUserFromBroadcast(strUserName, strMsgAbstract)67Troubleshooting and Testing69Set Trace Level69Service:AutoLogout Parameter70Locating Siebel Client Logs70Using Siebel Macros71Using Siebel Macros on Login71Supported Switches71Switch-specific Information72Alcatel72Aspect72Nortel Meridian72Nortel Symposium72Rockwell Spectrum73Siemens HiCom (North America Only)73Troubleshooting Problems74Business Service Script77Sample Script77Configuring Broadcast Statistics Within the DEF File85Driver Parameters85Configuring Agent State Toggling87Configuring Agent State Toggling Within the DEF File87Index117Size: 2.67 MBPages: 120Language: EnglishOpen manual
Technical ReferencesTable of ContentsCTI Server Message Reference Guide (Protocol Version 16) for Cisco Unified Contact Center Enterprise1Contents3Preface9Change History9About this Guide9Audience9Organization of this Guide10Related Documentation10Documentation and Support11Field Alerts and Field Notices11Documentation Feedback11Conventions11CTI Server Overview13How CTI Server Works13Unified CCE Call Processing14Pre-Routed (“Normal”) Call14Translation Route Call15Post Route Call15Transfer Call16Conference Call16CTI Server Configurations16Simplex/Duplex Configuration16CTI Bridge Configuration17CTI Server Message Set18CTI Client Application Guidelines21InvokeIDs21Heartbeat Messages21Generic vs. ACD-Specific Applications22Message Masks22Message Order22Definitions of Symbolic Constants22Side A/B Selection and TCP/IP Connections23Alignment of Data Elements23Incompatible Changes to Reported Call ConnectionIDs23CTI Server Operations During Unified CCE Failures24Messaging Conventions25Message Types26Data Types35Message Formats38Floating Fields38Invoke IDs39Call Event Data39Device IDs39CTI Client History39Event Cause Codes40Call Identification40Failure Indication Messages41Session Management43Configuring TCP/IP Transport Services43Connection Management43Session Initialization44CTI Service Masks44OPEN_REQ Message45OPEN_CONF Message50Session Maintenance52Session Termination54Application Level Interfaces57Client Events Service58BEGIN_CALL_EVENT59END_CALL_EVENT62CALL_AGENT_GREETING_EVENT63CALL_DATA_UPDATE_EVENT64CALL_DELIVERED_EVENT66CALL_ESTABLISHED_EVENT69CALL_HELD_EVENT71CALL_RETRIEVED_EVENT72CALL_CLEARED_EVENT73CALL_CONNECTION_CLEARED_EVENT74CALL_ORIGINATED_EVENT75CALL_FAILED_EVENT76CALL_CONFERENCED_EVENT77CALL_TRANSFERRED_EVENT79CALL_DIVERTED_EVENT81CALL_SERVICE_INITIATED_EVENT82AGENT_STATE_EVENT84CALL_REACHED_NETWORK_EVENT87CALL_QUEUED_EVENT88CALL_DEQUEUED_EVENT90CALL_ATTRIBUTE_CHANGE_EVENT91AGENT_PRE_CALL_EVENT92AGENT_PRE_CALL_ABORT_EVENT94RTP_STARTED_EVENT94RTP_STOPPED_EVENT96All Events Service97CALL_DELIVERED_EVENT98CALL_TRANSLATION_ROUTE_EVENT98Peripheral Monitor Service99MONITOR_START_REQ100MONITOR_STOP_REQ101CHANGE_MONITOR_MASK_REQ102Client Monitor Service104CLIENT_SESSION_OPENED_EVENT105CLIENT_SESSION_CLOSED_EVENT106SESSION_MONITOR_START_REQ107SESSION_MONITOR_STOP_REQ108Supervisor Service109SUPERVISE_CALL_REQ109EMERGENCY_CALL_REQ112EMERGENCY_CALL_EVENT114AGENT_TEAM_CONFIG_EVENT114LIST_AGENT_TEAM_REQ116MONITOR_AGENT_TEAM_START_REQ117MONITOR_AGENT_TEAM_STOP_REQ117Call Data Update Service118SET_CALL_DATA_REQ119RELEASE_CALL_REQ121SET_DEVICE_ATTRIBUTES_REQ123Miscellaneous Service124SYSTEM_EVENT125CLIENT_EVENT_REPORT_REQ126USER_MESSAGE_REQ128USER_MESSAGE_EVENT129QUERY_AGENT_STATISTICS_REQ130QUERY_SKILL_GROUP_STATISTICS_REQ136REGISTER_VARIABLES_REQ146SET_APP_DATA_REQ148START_RECORDING_REQ149STOP_RECORDING_REQ152AGENT_DESK_SETTINGS_REQ154Connection Monitor Service156Client Control Service156QUERY_AGENT_STATE_REQ159SET_AGENT_STATE_REQ163ALTERNATE_CALL_REQ165ANSWER_CALL_REQ166CLEAR_CALL_REQ167CLEAR_CONNECTION_REQ168CONFERENCE_CALL_REQ169CONSULTATION_CALL_REQ172DEFLECT_CALL_REQ175HOLD_CALL_REQ176MAKE_CALL_REQ177MAKE_PREDICTIVE_CALL_REQ179RECONNECT_CALL_REQ182RETRIEVE_CALL_REQ183TRANSFER_CALL_REQ184QUERY_DEVICE_INFO_REQ188SNAPSHOT_CALL_REQ193SNAPSHOT_DEVICE_REQ196SEND_DTMF_SIGNAL_REQ198SUPERVISOR_ASSIST_REQ199EMERGENCY_CALL_REQ201BAD_CALL_REQ204AGENT_GREETING_CONTROL_REQ205Server Service206REGISTER_SERVICE_REQ207UNREGISTER_SERVICE_REQ209Constants and Status Codes211Failure Indication Message Status Codes211SystemEventID Values216Special Values217Tag Values218AgentState Values227PGStatusCode Values228PeripheralType Values229LocalConnectionState Values230EventCause Values230DeviceIDType Values234CallType Values234ConnectionDeviceIDType Values236LineType Values237ControlFailureCode Values237AllocationState Values242ForwardType Values243TypeOfDevice Values243ClassOfDevice Values244CallPlacementType Values244CallMannerType Values245CallOption Values245ConsultType Values245FacilityType Values246AnsweringMachine Values246AnswerDetectMode Values246AgentWorkMode Values247DestinationCountry Values247CTI Service Masks248Disposition Code Values249Agent Service Request Masks250Silent Monitor Status Values251Agent’s Internal States and their Message Values251Changes and Additions253Protocol Version 16253Protocol Version 15253Protocol Version 14254Protocol Versions 10-13256Protocol Version 9257Protocol Version 8257Protocol Version 7259Protocol Version 6259Protocol Version 5261Index263Size: 2.09 MBPages: 274Language: EnglishOpen manual
Release NotesTable of ContentsRelease Notes for Cisco CTI OS Software Release 6.0(0) September 20051contents3Introduction7Note to CTI Desktop Customers7Cisco CTI Driver for Siebel 78Supported Siebel Versions8Version Restrictions within a Peripheral Gateway8CTI OS/Siebel Driver Compatibility8Installation Packages and Version Support9Cisco Data Store9Siebel Release Restriction10Cisco Data Store Capacity with Siebel 7 Driver10Cisco Data Store Data Transfer Limitation11Caveats Resolved in this Release11Severity 211Severity 313Known Limitations in this Release13CTI OS14JavaTM CIL14Functionality Not In Java CIL Release 6.014Installation14Java CIL Scalability for Server-to-Server Integrations15Javadoc17Agent Availability17Silent Monitor18Known Silent Monitor Limitations in Release 6.018Silent Monitor: Developer Information20Cisco Secure Agent (CSA) Limitation20Volume Control Removed21Citrix and Windows Terminal Services Not Supported21Supervisor Controls and Agent Not Ready21Important Notes about Server to Server Integration21Development Environments Not Supported22CTI OS Agents and CAD Agents Cannot Share a PG22CTI OS Release 6.0 Compatibility22Interoperability with Previous CTI OS Versions22Supported CTI OS Server Platforms22Supported CTI OS Client Component Platforms23CTI OS Server/ICM Compatibility23Hardware Requirements23CTI OS Server Capacity23Supported ACDs27CTI OS/Call Manager Compatibility27IPCC Media Termination Limitation28Documentation28Technical Notes28Network Address Translation (NAT) Configurations28Skill Group Statistics and the Default Skill Group28Caveats Resolved in this Release29Severity 129Severity 230Severity 333Known Limitations in this Release35Known Caveats in this Release37Severity 237Severity 337Obtaining Technical Assistance46Cisco.com46Technical Assistance Center47Cisco TAC Website47Cisco TAC Escalation Center48Obtaining Additional Publications and Information48Size: 445 KBPages: 50Language: EnglishOpen manual
Developer's GuideTable of ContentsTitle1Contents3About This Guide21Purpose21Audience21Conventions21Organization22Other Publications23Obtaining Documentation24Cisco.com24Documentation CD-ROM24Ordering Documentation25Documentation Feedback25Obtaining Technical Assistance25Cisco.com26Technical Assistance Center26Cisco TAC Website27Cisco TAC Escalation Center28Obtaining Additional Publications and Information28Chapter 1: Introduction31Introduction to CTI31What is a CTI-Enabled Application?32Screen Pop32Agent State Control32Third-Party Call Control33Leveraging CTI Application Event Flow33Asynchronous Events33Request-Response Paradigm34Overview of CTI OS35Advantages of CTI OS as Interface to ICM36Key Benefits of CTI OS for CTI Application Developers37Chapter 2: CTI OS Client Interface Library Architecture39Object Server Architecture39Client Interface Library Architecture40Connection Layer41Service Layer41Object Interface Layer42Custom Application42CIL Object Model42Session Object43Session Modes43Agent Object44Call Object44SkillGroup Object45Object Creation and Lifetime45Reference Counting45Call Object Lifetime46Agent Object Lifetime46Where To Go From Here47Chapter 3: CIL Coding Conventions49CTIOS CIL Data Types50Asynchronous Program Execution51CIL Error Codes52COM Error Codes57Generic Interfaces58Arguments59Accessing Properties and Parameters with GetValue60Setting Request Parameters with AddItem61Setting Object Properties with SetValue61UniqueObjectID62Obtaining Objects from UniqueObjectIDs64Using Button Enablement Masks65Chapter 4: Building Your Application67Integrating your Application with CTI OS via the CIL68Planning and Designing Your Integration68What Language and Interface to Use69Testing CTI Applications70Developing a Test Plan70Test Environment71Using the Samples71Using The CTI OS ActiveX Controls73Building a Simple Softphone with ActiveX Controls73Adding a Hook for Screenpops76CTIOS SessionResolver77Sample VB code to Retrieve CallVariable177Using the COM CIL in Visual Basic79Referencing COM Components in Visual Basic80Registering for Events in Visual Basic81Next Steps81Using the COM CIL in C++82Adding COM Support to your Application82Important Note About COM Method Syntax83Using the CIL Dynamic Link Libraries83Creating an Instance of a COM Object84Subscribing and Unsubscribing to COM Events in C++84Next Steps85Using the C++ CIL and static libraries85Header Files and Libraries85Project Settings for Compiling and Linking86Subscribing for Events in C++90STLport90Why CTI OS Uses the STLport91Next Steps91Using the Java CIL Libraries92Next Steps92Connecting to the CTI OS Server93How to Create the Session Instance93Session Object Lifetime (C++ only)93How to Set the Event Listener and Subscribe to Events94How to Set Connection Parameters for the Session94How to Connect the Session to the CTI OS Server95Dealing with Connection Failures95Connection Failure Events95Connection Attempt Error Codes in Java CIL96Configuring the Agent to Automatically Log In after Failover97Stopping the Failover Procedure97How to Set the Connection Mode97Setting the Connection Mode in the OnConnection() Event Handler98When to Use Agent Mode98How to Select Agent Mode98When to Use Monitor Mode99Monitor Mode Filters100How to Select Monitor Mode102How to Deal with Failover In Monitor Mode103Logging In and Logging Out an Agent104How to Log In an Agent104How to Handle Duplicate Log In Attempts105Overview105How to Create Values in the CTI OS Server Registry to Control Duplicate Log In Attempts106How to Get Registry Configuration Values to Your Desktop Application107How to Detect the Duplicate Log In Attempt in the Desktop Application109How to Handle Duplicate Log In Attempts in the Desktop Application110How to Log Out an Agent110Working with Calls111Handling Multiple Calls111What is the Current Call?112How to Get a Call Object112How to Set the Current Call for the Session113When Does the Application Receive the OnButtonEnablementChange() Event?113What to do in the OnButtonEnablementChange() Event113Checking Not Ready Bitmasks in OnButtonEnablementChange() Event114OnButtonEnablementChange() Event in Supervisor Desktop Applications116Working with Events116Handling Events in Order116Coding Considerations for CIL Event Handling116Monitoring the OnCallEnd() Event117Working with Agent Statistics117Overview117How to Set Up an Agent Application to Receive Agent Statistics118How to Set Up a Monitor-Mode Application to Receive Agent Statistics119Accessing Agent Statistics123Overview123Registering to the eOnNewAgentStatisticsEvent() (JAVA)123Registering to the OnAgentStatistics() (C++, COM, and VB)124How to Get Agent Statistics through the Agent Instance124Changing Which Agent Statistics are Sent124Agent Statistics Computed by the Sample CTI OS Desktop124Working with Skill Group Statistics125Overview125How to Set Up a Monitor-Mode Application to Receive Skill Group Statistics126Accessing Skill Group Statistics128Overview128Registering to the eOnNewSkillGroupStatisticsEvent() (JAVA)129Registering to the OnSkillGroupStatisticsUpdated() (C++, COM, and VB)129Changing Which Skill Group Statistics are Sent129Skill Group Statistics Computed by the Sample CTI OS Desktop129Enabling Silent Monitor in your Application131Creating a Silent Monitor Object131Setting the Session Mode132Monitoring Mode132Monitored Mode132Initiating and Ending a Silent Monitor Session133Monitoring Client Code Sample133Monitored Client Code Sample134Shutting Down Silent Monitor Manager135Deployment of Custom CTI OS Applications135Applications Using the ActiveX Controls135Applications Using COM (But Not ActiveX Controls)139Deployment of C++ Applications139Chapter 5: CTI OS ActiveX Softphone Controls141Property Pages143Button Controls and Grid Controls144Button Controls144Grid Controls144CTI OS ActiveX Control Descriptions145AgentStateCtl145AgentSelectCtl149AgentStatisticsCtl150AlternateCtl150AnswerCtl150BadLineCtl151CallAppearanceCtl151ChatCtl153ConferenceCtl153EmergencyAssistCtl155HoldCtl156MakeCallCtl157ReconnectCtl158SkillgroupStatisticsCtl159StatusBarCtl159SupervisorOnlyCtl160RecordCtl162TransferCtl162The Silent Monitor StandAlone Com Object164Connect165Disconnect165StartMonitoring165StopMonitoring166SilentMonitor Com Object Events166Deployment168Sample Usage in Visual Basic168AllagentsMonitor Sample169Chapter 6: Event Interfaces and Events173Event Publication Model173ISessionEvents Interface174OnCallTranslationRouteEvent175Syntax175Parameters175OnConnection177Syntax177Parameters177OnConnectionClosed177OnConnectionFailure178Syntax178Parameters178OnConnectionRejected178Syntax178Parameters179OnCTIOSFailure179Syntax179Parameters179Remarks181OnCurrentAgentReset181Syntax181Parameters181OnCurrentCallChanged181Syntax181Parameters182OnFailureEvent182OnGlobalSettingsDownloadConf182Syntax183Parameters183OnHeartbeat187Syntax187Parameters187OnMissingHeartbeat188Syntax188Parameters188OnMonitorModeEstablished188Syntax189Parameters189OnSnapshotDeviceConf189Syntax189Parameters189Remarks190OnSnapshotSkillGroupList190ICallEvents Interface191OnAlternateCallConf191Syntax191Parameters191OnAnswerCallConf192Syntax192Parameters192OnCallBegin192Syntax192Parameters193OnCallEnd195Syntax195Parameters196OnCallDataUpdate196Syntax196Parameters196OnCallDelivered200Syntax200Parameters200OnCallEstablished202Syntax202Parameters202OnCallHeld204Syntax204Parameters204OnCallRetrieved205Syntax205Parameters205OnCallCleared205Syntax205Parameters206OnCallConnectionCleared206Syntax206Parameters206OnCallOriginated207Syntax207Parameters207OnCallFailed209Syntax209Parameters209OnCallTransferred210Syntax210Parameters210OnCallConferenced213Syntax213Parameters213OnCallDiverted215Syntax216Parameters216OnAgentPrecallEvent217OnAgentPrecallAbortEvent217TOnCallServiceInitiatedEvent217Syntax217Parameters218OnCallQueuedEvent219Syntax219Parameters219OnCallDequeuedEvent221Syntax221Parameters221OnCallReachedNetworkEvent222Syntax223Parameters223OnCallStartRecordingConf224Syntax224Parameters224OnCallStopRecordingConf224Syntax224Parameters225OnClearCallConf225Syntax225Parameters225OnClearConnectionConf225Syntax226Parameters226OnConferenceCallConf226Syntax226Parameters226OnControlFailureConf227Syntax227Parameters227OnConsultationCallConf228Syntax228Parameters228OnHoldCallConf229Syntax229Parameters229OnMakePredictiveCallConf229OnReconnectCallConf229Syntax229Parameters230OnReleaseCallConf230OnRetrieveCallConf230Syntax230Parameters230OnSendDTMFConf231Syntax231Parameters231OnSnapshotCallConf231Syntax231Parameters231OnTransferCallConf234Syntax234Parameters235IAgentEvents Interface235OnAgentStateChange235Syntax235Parameters235OnAgentStatistics238Syntax239Parameters239OnChatMessage248Syntax249Parameters249OnControlFailureConf249Syntax249Parameters249OnMakeCallConf257Syntax257Parameters257OnPostLogout257Syntax258Parameters258Remarks259OnPreLogout259Syntax259Parameters260OnSetAgentModeEvent261Syntax261Parameters261OnSetAgentStateConf262Syntax262Parameters262OnLogoutFailed263Syntax263Parameters263OnNewAgentTeamMember263Syntax263Parameters264OnEmergencyCall265Syntax265Parameters265Remarks266OnStartMonitoringAgent266Syntax266Parameters267Remarks267OnStopMonitoringAgent267Syntax267Parameters268Remarks268OnQueryAgentStateConf268Syntax268Parameters269OnAgentInfoEvent271Syntax271Parameters271OnSilentMonitorStartRequest272Syntax272Parameters272Remarks273OnSilentMonitorStopRequest273Description273Syntax273Parameters273Remarks274OnUserMessageConf274SkillGroupEvents Interface274OnSkillGroupStatisticsUpdated274Syntax274Parameters274IButtonEnablementEvents275OnButtonEnablementChange275Parameters276OnSupervisorButtonChange278Parameters279Remarks279ISilentMonitorEvents279OnSilentMonitorStartRequestedEvent279Syntax280Parameters280OnSilentMonitorStartedEvent281Syntax281Parameters282OnSilentMonitorStopRequestedEvent283Syntax283Parameters283OnSilentMonitorStatusReportEvent284Syntax284Parameters284OnStartSilentMonitorConf286Syntax286Parameters287OnStopSilentMonitorConf288Syntax288Parameters288OnSilentMonitorSessionDisconnected289Syntax289Parameters289OnRTPStreamTimedoutEvent290Syntax290Parameters290IMonitoredAgentEvents Interface291IMonitoredCallEvents Interface291Events in Java CIL292Chapter 7: CtiOs Object295Methods296DumpProperties296Syntax296Parameters297Return Value297GetAllProperties297Syntax297Parameters297Return Value298GetElement298Syntax298Parameters298Return Value299GetLastError (Java only)299Syntax299Parameters299Returns299GetNumProperties299Syntax299Parameters300Return Value300GetPropertyName300Syntax300Parameters300Return Value300GetPropertyType301Syntax301Parameters301Return Value301GetValue302Syntax302Parameters302Return Value303GetValueArray303Syntax303Parameters303Return Value304GetValueBoolObj (Java only)304Syntax304Parameters304Returns304GetValueInt304Syntax304Parameters305Return Value305GetValueIntObj (Java only)305Syntax305Parameters305Returns306GetValueShortObj (Java only)306Syntax306Parameters306Returns306GetValueString306Syntax306Parameters307Return Value307GetValueUIntObj (Java only)307Syntax307Parameters307Returns307GetValueUShortObj (Java only)308Syntax308Parameters308Returns308IsValid308Syntax308Parameters308Return Value309ReportError (Java only)309Syntax309Parameters309Returns309SetValue (Java only)310Syntax310Parameters310Returns310Chapter 8: Session Object311Session Object Properties312Methods314AddEventListener (Java only)316Syntax316Parameters316Returns317AddListener Methods (C++ only)317Syntax317Remarks317Connect318Syntax318Parameters318Return Values318Remarks319CreateSilentMonitorManager320Syntax320Parameters321Return Value321Remarks321CreateWaitObject (C++ and Java only)321Syntax321Parameters322Return Values322DestroySilentMonitorManager322Syntax322Parameters322Return Values323Remarks323DestroyWaitObject (C++ only)323Syntax323Parameters323Return Values323Remarks323DisableSkillGroupStatistics (C++ and Java only)324Syntax324Parameters324Return Value324Remarks324Disconnect325Syntax325Parameters325Return Values325DumpProperties325EnableSkillGroupStatistics (C++ and Java only)326Syntax326Parameters326Return Value326Remarks326GetAllAgents327Syntax327Parameters327Return Values327GetAllCalls327Syntax328Parameters328Return Values328GetAllProperties328GetAllSkillGroups328Syntax328Parameters329Return Values329GetCurrentAgent329Syntax329Parameters329Return Values330GetCurrentCall330Syntax330Parameters330Return Values330GetCurrentSilentMonitor331Syntax331Return Values331GetElement331GetNumProperties331GetObjectFromObjectID331Syntax331Parameters332Return Values332Remarks332GetPropertyName332GetPropertyType333GetSystemStatus (Java and C++ only)333Syntax333Parameters333Returns.333GetValue Methods333IsAgent333Syntax333Parameters334Return Values334IsSupervisor334Syntax334Parameters334Return Values334IsValid335LogToServer335Syntax335Parameters335Return Values335RemoveEventListener (Java only)336Syntax336Parameters336Returns336RemoveListener Methods (C++ only)336Syntax336Remarks337RequestDesktopSettings337Syntax337Parameters337Return Values338Remarks338SetAgent338Syntax338Parameters338Return Values339SetCurrentCall340Syntax340Parameters340Return Values340Remarks340SetCurrentSilentMonitor340Syntax341Parameters341Return Values341Remarks341SetMessageFilter341Syntax341Parameters342Return Values342Remarks342SetSupervisorSilentMonitorMode342Syntax342Parameters343Return Values343Notes On Message Filters343Message Filter Syntax343A Simple Example344General Form of Filter Syntax344Combining Filters345Filtering for Specific Events345Events Not Allowed In Filter Expressions346Filtering Skillgroup Statistics347Chapter 9: Agent Object351Agent Object Properties351Agent Statistics353Methods362Arguments Parameters364DisableAgentStatistics365Syntax365Parameters365Return Value365DisableSkillGroupStatistics366Syntax366Parameters366Return Value366EnableAgentStatistics366Syntax367Parameters367Return Value367Remarks367EnableSkillGroupStatistics367Syntax367Parameters368Return Value368Remarks368GetAgentState368Syntax368Parameters369GetAllProperties369GetElement369GetMonitoredAgent369Syntax369Parameters369Return Value370Remarks370GetMonitoredCall370Syntax370Parameters370Return Value370Remarks370GetNumProperties371GetPropertyName371GetPropertyType371GetSkillGroups371Syntax371Parameters371Return Value371GetValue Methods373IsAgent374Syntax374Parameters374Return Values374IsSupervisor374Syntax374Parameters375Return Values375Login375Syntax375Input Parameters375Return Values377Remarks377Logout377Syntax377Input Parameters378Return Values379Remarks379MakeCall379Syntax379Input Parameters379Return Value384Remarks384MakeEmergencyCall384Syntax385Parameters385Return Value385Remarks385QueryAgentState386Syntax386Input Parameters386Return Values387Remarks387ReportBadCallLine387Syntax387Parameters387Return Values388RequestAgentTeamList388Syntax388Parameters388Return Value388Remarks389RequestSupervisorAssist389Syntax389Parameters389Return Values389Remarks390SendChatMessage390Syntax390Input Parameters390Return Values391Remarks391SetAgentState391Syntax391Input Parameters391Return Values393Remarks393SetValue393Syntax393Parameters393Return Values394Remarks394StartMonitoringAgent394Syntax394Parameters395Return Value395Remarks395StartMonitoringAgentTeam395Syntax395Parameters396Return Value396Remarks396StartMonitoringAllAgentTeams396Syntax396Parameters397Return Value397Remarks397StartMonitoringCall397Description397Syntax397Parameters398Return Value398Remarks398StopMonitoringAgent398Syntax398Parameters399Return Value399Remarks399StopMonitoringAgentTeam399Syntax399Parameters400Return Value400Remarks400StopMonitoringAllAgentTeams400Syntax400Parameters401Return Value401Remarks401SuperviseCall401Syntax401Input Parameters402Return Values402Remarks402Chapter 10: Call Object403Current Call Concept403Accessing ECC Variables404Retrieving ECC Variable Values404Adding ECC Values406Properties407Methods410Arguments Parameters412Alternate412Syntax412Parameters412Return Values413Remarks413Answer413Syntax413Parameters414Return Value414Remarks414Clear414Syntax414Parameters415Return Value415Remarks415ClearConnection416Syntax416Parameters416Return Value416Remarks416Conference417Syntax417Parameters417Return Value418Remarks418GetCallContext419Syntax419Parameters419Return Value419Remarks420GetCallData420Syntax421Parameters421Return Value421Remarks421GetLastError (Java only)422Syntax422Returns422GetValue Methods422GetValueBoolObj (Java only)422Syntax422Parameters423Returns423GetValueIntObj (Java only)423Syntax423Parameters423Returns423GetValueShortObj (Java only)423Syntax423Parameters424Returns424GetValueUIntObj (Java only)424Syntax424Parameters424Returns424GetValueUShortObj (Java only)424Syntax424Parameters425Returns425Hold425Syntax425Parameters425Return Value425Remarks426MakeConsultCall426Syntax426Input Parameters426Return Values431Remarks431Reconnect432Syntax432Parameters432Return Values432Remarks433Retrieve433Syntax433Parameters434Return Values434Remarks434SendDTMFSignal434Syntax434Parameters435Return Values436Remarks436SetCallData437Syntax437Input Parameters437Return Values437Remarks437SingleStepConference438Syntax438Parameters438Return Values440Remarks440SingleStepTransfer441Syntax441Input Parameters441Return Values442Snapshot442Syntax442Parameters442Return Values442Remarks443StartRecord443Syntax443Parameters443Return Value443Remarks444StopRecord444Syntax444Parameters444Return Value444Remarks445Transfer445Syntax445Input Parameters445Return Values446Remarks446Chapter 11: SkillGroup Object449Properties449Statistics450Methods470DisableSkillGroupStatistics471Syntax471Parameters471Return Value471Remarks471DumpProperties472EnableSkillGroupStatistics472Syntax472Parameters472Return Value473Remarks473GetElement473GetValue Methods473IsValid473SetValue473Chapter 12: Helper Classes475Arg Class476AddRef477Syntax477Parameters477Return Values477Clone478Syntax478Output Parameters478Return Values478CreateInstance478Syntax479Parameters479Return Values479Remarks479Dump Arg479Syntax480Parameters480Return Values480GetType480Syntax480Output Parameters480Return Values481GetValue Methods481Syntax481Parameters482Return Values482Release483Syntax483Parameters483Return Values483SetValue483Syntax484Parameters484Return Values485Arguments Class485Usage Notes487AddItem488Syntax488Parameters489Return Value489AddRef489Syntax490Parameters490Return Values490Clear490Syntax490Parameters490Return Value490Clone491Syntax491Parameters491Return Value491CreateInstance491Syntax492Parameters492Return Value492Remarks492DumpArgs492Syntax492Parameters493Return Values493GetElement Methods493Syntax493Parameters494Return Value494GetValue Methods495Syntax495Parameters497Return Values497Remarks497IsValid497Syntax497Parameters498Return Values498NumElements498Syntax498Parameters499Return Value499Release499Syntax499Parameters499Return Values499RemoveItem500Syntax500Parameters500Return Values500SetElement500Syntax500Parameters501Return Values501SetValue502Syntax502Parameters503Return Values503Remarks503CILRefArg Class (C++ and Java only)504GetType504GetUniqueObjectID (Java only)504Syntax504Parameters505Return Values505Remarks505GetValue505Syntax505Parameters505Return Values505SetValue505Syntax506Input Parameters506Return Values506CCtiOsException Class (C++ and Java only)506CCtiosException Constructor507Syntax507Input Parameters507Return Values507GetCode507Syntax507Parameters508Return Values508GetStatus508Syntax508Parameters508Return Values508GetString508Syntax508Parameters509Return Values509What509Syntax509Parameters509Return Values509CWaitObject Class (C++ and Java only)509Methods510CreateWaitObject510DestroyWaitObject511DumpEventMask511Syntax511Parameters511Return Values511GetMask511Syntax511Parameters511Return Values512GetTriggerEvent512Syntax512Parameters512Return Values512InMask512Syntax512Parameters513Return Values513SetMask513Syntax513Parameters513Return Values513WaitOnMultipleEvents513Syntax514Parameters514Return Values514Chapter 13: SilentMonitorManager Object515Properties516Methods517Argument Parameter Rules518AcceptSilentMonitoring518Syntax519Parameters519Return Values520GetIPPhoneInfo520Syntax520Parameters521Return Value521GetSessionInfo522Syntax522Parameters522Return Values523GetSMSessionList524Syntax524Parameters524Return Values524IsMonitoredTarget525Syntax525Parameters525Return Value525SetIPPhoneInfo525Syntax525Parameters526Return Values527StartSilentMonitorRequest527Syntax527Parameters528Return Values528Remarks529StartSMMonitoredMode529Syntax529Parameters529Return Values530StartSMMonitoringMode530Syntax530Parameters530Return Values530StopSilentMonitorMode530Syntax531Parameters531Return Values531StopSilentMonitorRequest531Syntax531Parameters531Return Values532Appendix A: CTI OS Keywords and Enumerated Types533Keywords533Java CIL Keywords534Enumerated Types534Appendix B: CTI OS Logging535Taking CTI OS Client Logs535How to Set Trace Levels536Java CIL Logging and Tracing536Index537Size: 4.69 MBPages: 546Language: EnglishOpen manual
Developer's GuideTable of ContentsCTI Server Message Reference Guide (Protocol Version 9)1January 20081Contents3About This Guide9CTI Server Overview17How CTI Server Works17ICM Call Processing18Pre-Routed (“Normal”) Call18Translation Route Call18Post Route Call19Transfer Call19Conference Call20CTI Server Configurations20Simplex/Duplex Configuration20Combined/Separate PG/CTI Server Configuration21CTI Bridge Configuration22CTI Server Message Set23CTI Client Application Guidelines25InvokeIDs25Heartbeat Messages25Generic vs. ACD-Specific Applications26Message Masks26Message Order26Definitions of Symbolic Constants26Side A/B Selection and TCP/IP Connections27Alignment of Data Elements27Incompatible Changes to Reported Call ConnectionIDs27CTI Server Operations During ICM Failures28Messaging Conventions29Message Types29Data Types36Message Formats39Floating Fields40Invoke IDs41Call Event Data41Device IDs41CTI Client History41Event Cause Codes42Call Identification42Failure Indication Messages43Session Management45Configuring TCP/IP Transport Services45Connection Management45Session Initialization45OPEN_REQ Message46OPEN_CONF Message50Session Maintenance52Session Termination54Application Level Interfaces57Client Events Service57BEGIN_CALL_EVENT59END_CALL_EVENT62CALL_DATA_UPDATE_EVENT63CALL_DELIVERED_EVENT66CALL_ESTABLISHED_EVENT69CALL_HELD_EVENT71CALL_RETRIEVED_EVENT72CALL_CLEARED_EVENT73CALL_CONNECTION_CLEARED_EVENT74CALL_ORIGINATED_EVENT75CALL_FAILED_EVENT77CALL_CONFERENCED_EVENT78CALL_TRANSFERRED_EVENT80CALL_DIVERTED_EVENT83CALL_SERVICE_INITIATED_EVENT84AGENT_STATE_EVENT86CALL_REACHED_NETWORK_EVENT90CALL_QUEUED_EVENT91CALL_DEQUEUED_EVENT93AGENT_PRE_CALL_EVENT95AGENT_PRE_CALL_ABORT_EVENT98RTP_STARTED_EVENT99RTP_STOPPED_EVENT100All Events Service102CALL_DELIVERED_EVENT102CALL_TRANSLATION_ROUTE_EVENT102Peripheral Monitor Service104MONITOR_START_REQ104MONITOR_STOP_REQ106CHANGE_MONITOR_MASK_REQ107Client Monitor Service109CLIENT_SESSION_OPENED_EVENT109CLIENT_SESSION_CLOSED_EVENT111SESSION_MONITOR_START_REQ112SESSION_MONITOR_STOP_REQ113Supervisor Service114SUPERVISE_CALL_REQ115EMERGENCY_CALL_REQ118AGENT_TEAM_CONFIG_EVENT121LIST_AGENT_TEAM_REQ122MONITOR_AGENT_TEAM_START_REQ124MONITOR_AGENT_TEAM_STOP_REQ124Call Data Update Service125SET_CALL_DATA_REQ126RELEASE_CALL_REQ128SET_DEVICE_ATTRIBUTES_REQ131Miscellaneous Service133SYSTEM_EVENT134CLIENT_EVENT_REPORT_REQ135USER_MESSAGE_REQ136USER_MESSAGE_EVENT138QUERY_AGENT_STATISTICS_REQ138QUERY_SKILL_GROUP_STATISTICS_REQ146REGISTER_VARIABLES_REQ161SET_APP_DATA_REQ163START_RECORDING_REQ164STOP_RECORDING_REQ167AGENT_DESK_SETTINGS_REQ170Connection Monitor Service173Client Control Service173QUERY_AGENT_STATE_REQ175SET_AGENT_STATE_REQ179ALTERNATE_CALL_REQ182ANSWER_CALL_REQ183CLEAR_CALL_REQ184CLEAR_CONNECTION_REQ185CONFERENCE_CALL_REQ186CONSULTATION_CALL_REQ190DEFLECT_CALL_REQ193HOLD_CALL_REQ195MAKE_CALL_REQ196MAKE_PREDICTIVE_CALL_REQ199RECONNECT_CALL_REQ202RETRIEVE_CALL_REQ203TRANSFER_CALL_REQ204QUERY_DEVICE_INFO_REQ209SNAPSHOT_CALL_REQ213SNAPSHOT_DEVICE_REQ217SEND_DTMF_SIGNAL_REQ219SUPERVISOR_ASSIST_REQ220EMERGENCY_CALL_REQ222BAD_CALL_REQ225Server Service227REGISTER_SERVICE_REQ227UNREGISTER_SERVICE_REQ228Constants and Status Codes231Failure Indication Message Status Codes231SystemEventID Values237Special Values238Tag Values238AgentState Values244PGStatusCode Values246PeripheralType Values246LocalConnectionState Values247EventCause Values248DeviceIDType Values251CallType Values251ConnectionDeviceIDType Values252LineType Values253ControlFailureCode Values253AllocationState Values258ForwardType Values259TypeOfDevice Values259ClassOfDevice Values260CallPlacementType Values260CallMannerType Values261CallOption Values261ConsultType Values262FacilityType Values262AnsweringMachine Values262AnswerDetectMode Values263AgentWorkMode Values263DestinationCountry Values263CTI Service Masks264Changes and Additions267Protocol Version 9267Protocol Version 8267Protocol Version 7269Protocol Version 6269Protocol Version 5271Index273Size: 9.15 MBPages: 278Language: EnglishOpen manual
Developer's GuideTable of ContentsCTI Server Message Reference Guide (Protocol Version 15) for Cisco Unified Contact Center Enterprise1Contents3About This Guide9CTI Server Overview13CTI Client Application Guidelines21Messaging Conventions25Session Management43Application Level Interfaces57Constants and Status Codes207Changes and Additions247Index257Size: 3.2 MBPages: 262Language: EnglishOpen manual
Developer's GuideTable of Contents1 INTRODUCTION52 EDITING MESSAGE FILES93 BUILDING A LANGUAGE LIBRARY114 LOCALIZING YOUR APPLICATION175 INSTALLING LOCALIZED LIBRARIES176 PROGRAMMER’S GUIDE187 LOCALIZING CTI OS AGENT AND SUPERVISOR SOFTPHONES26Size: 814 KBPages: 33Language: EnglishOpen manual
Developer's GuideTable of ContentsIntroduction5Localization Process5What Is Provided on the CD7Editing Message Files10Suggestion10Message File10Comments11LanguageNames11Message Definitions12Building a Language Library12Using Microsoft Visual Studio 6.012Using Visual Studio .NET 200317Localizing your Application18Installing Localized Libraries18Programmer’s Guide19IGetLanguage Interface19Using the International Resource Loader in an Application21Localizing a VB 6.0 Application21Localizing a Visual Basic.NET Application23Localizing a C++ and COM Application25Localizing CTI OS Agent and Supervisor Softphones28Level of Localization28Planning Localization28Translating *.mc File31Translating Column Headers32Column Headers for Call Appearance32Column Headers for Agent Statistics33Column Headers for Skill Group Statistics34Column Headers for Blended Agent35Size: 493 KBPages: 35Language: EnglishOpen manual
Developer's GuideTable of ContentsCTI OS Developer’s Guide for Cisco Unified Contact Center Enterprise1Contents3About This Guide19Purpose19Audience19Organization19Related Documentation20Conventions21Obtaining Documentation and Submitting a Service Request21Documentation Feedback21Introduction23Introduction to CTI23What is a CTI-Enabled Application?23Screen Pop23Agent State Control24Third-Party Call Control24Leveraging CTI Application Event Flow24Asynchronous Events24Request-Response Paradigm25Overview of CTI OS26Advantages of CTI OS as a CTI Development Interface27Key Benefits of CTI OS for CTI Application Developers28Illustrative Code Fragments28CTI OS Client Interface Library Architecture29Object Server Architecture29Client Interface Library Architecture29Connection Layer30Service Layer30Object Interface Layer31Custom Application31CIL Object Model31Session Object31Session Modes32Agent Object32Call Object32SkillGroup Object32Object Creation and Lifetime33Reference Counting33Lifetime33Agent Object Lifetime34SkillGroup Object Lifetime34Methods that Call AddRef()34Where To Go From Here39CIL Coding Conventions41CTI OS CIL Data Types41Asynchronous Program Execution42CIL Error Codes43COM Error Codes47Generic Interfaces47Arguments48Accessing Properties and Parameters with GetValue48Setting Object Properties and Request Parameters with SetValue49UniqueObjectID49Obtaining Objects from UniqueObjectIDs51Using Button Enablement Masks51Building Your Application55Setting Up Your Environment for .NET55Integrating with Microsoft Visual Studio .NET 200556Adding CTI OS Toolkit Components to the “Add Reference” Dialog Box57Adding Cisco CTI OS ActiveX Controls to the Toolbox57Integrating your Application with CTI OS via the CIL58Planning and Designing Your Integration58What Language and Interface to Use58Testing CTI Applications59Developing a Test Plan59Test Environment60Using the Samples60Using The CTI OS ActiveX Controls62Building a Simple Softphone with ActiveX Controls62Adding a Hook for Screenpops63CTI OS SessionResolver63Sample VB .NET code to Retrieve CallVariable164Using the COM CIL in Visual C++ 8.0(1)65COM Client Interface Library (COM CIL.)65Adding COM Support to your Application66Important Note About COM Method Syntax66Using the CIL Dynamic Link Libraries66Creating an Instance of a COM Object67Subscribing and Unsubscribing to COM Events in C++67Next Steps68Using the C++ CIL and Static Libraries68Header Files and Libraries68Project Settings for Compiling and Linking69Subscribing for Events in C++71STLPort72Next Steps72Using the Java CIL Libraries72Next Steps73Using the .NET CIL Libraries73Next Steps73Connecting to the CTI OS Server74How to Create the Session Instance74Session Object Lifetime (C++ only)74How to Set the Event Listener and Subscribe to Events75How to Set Connection Parameters for the Session75How to Connect the Session to the CTI OS Server75Dealing with Connection Failures76Connection Failure Events76Connection Attempt Error Codes in Java and .NET CIL76Configuring the Agent to Automatically Log In after Failover77Stopping the Failover Procedure77How to Set the Connection Mode77Setting the Connection Mode in the OnConnection() Event Handler77When to Use Agent Mode78How to Select Agent Mode78When to Use Monitor Mode78Monitor Mode Filters79How to Select Monitor Mode80How to Deal with Failover In Monitor Mode81Settings Download82Disconnecting from CTI OS Server83Logging In and Logging Out an Agent84How to Log In an Agent84How to Handle Duplicate Log In Attempts85Overview85How to Create Values in the CTI OS Server Registry to Control Duplicate Log In Attempts85How to Prevent Another Agent Log In with Incorrect Credentials86How to Get Registry Configuration Values to Your Desktop Application87How to Detect the Duplicate Log In Attempt in the Desktop Application88How to Handle Duplicate Log In Attempts in the Desktop Application89How to Log Out an Agent89Typical Logout Procedure89Working with Calls91Handling Multiple Calls91What is the Current Call?91How to Get a Call Object92How to Set the Current Call for the Session92Call Wrapup92Logout and NotReady Reason Codes93When Does the Application Receive the OnButtonEnablementChange() Event?93What to do in the OnButtonEnablementChange() Event94Checking Not Ready Bitmasks in OnButtonEnablementChange() Event94OnButtonEnablementChange() Event in Supervisor Desktop Applications95Making Requests96Preventing Multiple Duplicate Requests96Working with Events97Handling Events in Order97Coding Considerations for CIL Event Handling97Monitoring the OnCallEnd() Event97Working with Agent Statistics98Overview98How to Set Up an Agent Application to Receive Agent Statistics98How to Set Up a Monitor-Mode Application to Receive Agent Statistics99Accessing Agent Statistics102Overview102Registering to the eOnNewAgentStatisticsEvent() (JAVA)102Registering to the OnAgentStatistics() (C++, COM, and VB)102How to Get Agent Statistics through the Agent Instance102Changing Which Agent Statistics are Sent103Agent Statistics Computed by the Sample CTI OS Desktop103Working with Skill Group Statistics103Overview103How to Set Up a Monitor-Mode Application to Receive Skill Group Statistics104Accessing Skill Group Statistics105Overview105Registering to the eOnNewSkillGroupStatisticsEvent() (JAVA)106Registering to the OnSkillGroupStatisticsUpdated() (C++, COM, and VB)106Changing Which Skill Group Statistics are Sent106Skill Group Statistics Computed by the Sample CTI OS Desktop106Enabling Silent Monitor in Your Application107Enabling CTI OS Based Silent Monitoring in Your Application107Creating a Silent Monitor Object108Setting the Session Mode108Initiating and Ending a Silent Monitor Session109Shutting Down Silent Monitor Manager110Initiating SilentMonitor from Monitor Mode Applications111Enabling Unified CM Based Silent Monitoring in your Application111CCM Based Silent Monitor Overview111CTI OS Monitor Mode Applications111Initiating a CCM Based Silent Monitor Request111Determining if the Current Agent is Being Silently Monitored113Ending a CCM Based Silent Monitor Request113Determining the Silent Monitor Mode115Working with Agent Greeting115Deployment of Custom CTI OS Applications115Deploying Applications Using the ActiveX Controls115Deploying Applications Using COM (But Not ActiveX Controls)121Deploying Applications using C++ CIL122Deploying Applications using .NET CIL122Custom Application and CTI OS Security122Building Supervisor Applications123General Flow123Monitored and Unmonitored Events123Requesting and Monitoring the Supervisor’s Teams124OnNewAgentTeamMember125OnNewAgentTeamMember Events and Supervisors125OnMonitoredAgentStateChange Events126OnMonitoredAgentInfo Event126Time in State126OnSkillInfo Event127Populating an Agent Grid127Monitoring Agents129OnSupervisorButtonChange131Monitored Call Events132Making Agents Ready and Logging Agents Out132Monitoring Calls133MonitoredCallEvents133Barging into Calls134Intercepting Calls135Updating Monitored Call Data136Sample Code in the CTI OS Toolkit136.NET Samples136CTI Toolkit Combo Desktop.NET136CtiOs Data Grid.NET138All Agents Sample.NET138All Calls Sample.NET138Java CIL Samples138Win32 Samples138CTI OS ActiveX Controls139Property Pages141Button Controls and Grid Controls141Button Controls146Grid Controls146Supervisor Status Bar146CTI OS ActiveX Control Descriptions146AgentStateCtl146Related Methods149Related Events150AgentSelectCtl152Methods153AgentStatisticsCtl157Methods157AlternateCtl161AnswerCtl161BadLineCtl162CallAppearanceCtl162CallAppearanceCtl163Related Methods163Related Events163Methods163ChatCtl167Methods167ConferenceCtl170EmergencyAssistCtl172HoldCtl172MakeCallCtl173ReconnectCtl174SkillgroupStatisticsCtl174Methods175StatusBarCtl178SupervisorOnlyCtl179RecordCtl180TransferCtl181The Silent Monitor StandAlone ActiveX Control182Connect182Disconnect183StartMonitoring183StopMonitoring183SilentMonitor Com Object Events183Deployment184Sample Usage in Visual Basic 6.0184Event Interfaces and Events187Event Publication Model187ISessionEvents Interface188OnConnection188Syntax188Parameters188OnConnectionClosed188OnConnectionFailure189Syntax189Parameters189OnConnectionRejected189Syntax189Parameters189OnCTIOSFailure190Syntax190Parameters190Remarks192OnCurrentAgentReset192Syntax192Parameters192OnCurrentCallChanged192Syntax193Parameters193OnFailure Event193OnGlobalSettingsDownloadConf193Syntax194Parameters194OnHeartbeat202Syntax203Parameters203OnMissingHeartbeat203Syntax203Syntax203Parameters203OnMonitorModeEstablished204Syntax204Parameters204OnSnapshotDeviceConf204Syntax204Parameters205Remarks205OnSnapshotSkillGroupList205OnTranslationRoute205Syntax206Parameters206ICallEvents Interface207OnAgentPrecallEvent207Syntax207Parameters208OnAgentPrecallAbortEvent209Syntax209Parameters209OnAlternateCallConf209Syntax210Parameters210OnAnswerCallConf210Syntax210Parameters210OnCallBegin210Syntax211Parameters211OnCallCleared212Syntax213Parameters213OnCallConnectionCleared213Syntax213Parameters214OnCallConferenced214Syntax214Parameters214OnCallDataUpdate216Syntax216Parameters217OnCallDelivered218Syntax218Parameters219OnCallDequeuedEvent219Syntax219Parameters220OnCallDiverted220Syntax220Parameters220OnCallEnd221Syntax221Parameters222OnCallEstablished222Syntax222Parameters222OnCallFailed223Syntax223Parameters224OnCallHeld224Syntax224Parameters224OnCallOriginated225Syntax225Parameters225OnCallQueuedEvent226Syntax226Parameters226OnCallReachedNetworkEvent227Syntax227Parameters227OnCallRetrieved228Syntax228Parameters228OnCallServiceInitiatedEvent228Syntax228Parameters229OnCallStartRecordingConf229Syntax229Parameters229OnCallStopRecordingConf230Syntax230Parameters230OnCallTransferred230Syntax230Parameters230OnClearCallConf232Syntax232Parameters232OnClearConnectionConf232Syntax233Parameters233OnConferenceCallConf233Syntax233Parameters233OnConsultationCallConf233Syntax233Parameters234OnControlFailureConf234Syntax234Parameters234OnHoldCallConf234Syntax235Parameters235OnMakePredictiveCallConf235OnReconnectCallConf235Syntax235Parameters235OnReleaseCallConf235OnRetrieveCallConf236Syntax236Parameters236OnSendDTMFConf236Syntax236Parameters236OnSetCallDataConf236Syntax236Parameters237OnSnapshotCallConf237Syntax237Parameters238OnTransferCallConf240Syntax240Parameters240IAgentEvents Interface240OnAgentDeskSettingsConf240Syntax240Parameters240OnAgentGreetingControlConf242Syntax242Parameters243OnAgentInfoEvent243Syntax243Parameters243OnAgentStateChange243Syntax243Parameters244OnAgentStatistics245Syntax245Parameters246OnChatMessage246Syntax246Parameters246OnControlFailureConf247Syntax247Parameters247OnEmergencyCall252Syntax252Parameters252Remarks253OnLogoutFailed253Syntax253Parameters253OnMakeCallConf253Syntax253Parameters253OnNewAgentTeamMember254Syntax254Parameters254OnPostLogout256Syntax256Parameters256Remarks257OnPreLogout257Syntax257Parameters257OnQueryAgentStateConf258Syntax258Parameters258OnSetAgentModeEvent260Syntax260Parameters260OnSetAgentStateConf261Syntax261Parameters261OnStartMonitoringAgent261Syntax261Parameters261Remarks262OnStopMonitoringAgent262Syntax262Parameters262Remarks263OnUserMessageConf263ISkillGroupEvents Interface263OnSkillGroupStatisticsUpdated263Syntax263Parameters263OnSkillInfoEvent264Parameters264IButtonEnablementEvents264OnButtonEnablementChange264Parameters264OnSupervisorButtonChange267Parameters267Remarks267IMonitoredAgentEvents Interface267IMonitoredCallEvents Interface268ISilentMonitorEvents269OnCallRTPStarted269Syntax269Parameters269OnCallRTPStopped270Syntax270Parameters270OnStartSilentMonitorConf271Syntax271Parameters271OnSilentMonitorStartedEvent272For CTI OS Based Silent Monitor272For CCM Based Silent Monitor273OnSilentMonitorStartRequestedEvent273Syntax274Parameters274OnSilentMonitorSessionDisconnected275Syntax275Parameters275OnSilentMonitorStopRequestedEvent275For CTI OS Based Silent Monitor275For CCM Based Silent Monitor276OnSilentMonitorStatusReportEvent277Syntax277Parameters277OnStopSilentMonitorConf279Syntax279Parameters279OnRTPStreamTimedoutEvent280Syntax280Parameters280IGenericEvents Interface280OnEvent280Syntax280Java Adapter Classes281IAllInOne281IAgentEvents281IButtonEnablementEvents281ICallEvents281ISkillGroupEvents281Events in Java CIL282Events in .NET CIL282Getting All Event Parameters283How to Get All Parameters from an Event283CtiOs Object291Methods291DumpProperties292Syntax292Parameters292Return Value292GetAllProperties292Syntax292Parameters293Return Value293GetElement293Syntax293Parameters293Return Value294GetLastError (Java and .NET only)294Syntax294Parameters294Returns294Remarks294GetNumProperties295Syntax295Parameters295Return Value295GetPropertyName295Syntax295Parameters295Return Value295GetPropertyType296Syntax296Parameters296Return Value296GetValue297Syntax297Parameters297Return Value297GetValueArray297Syntax297Parameters298Return Value298GetValueBoolObj (Java and .NET only)298Syntax298Parameters298Returns298GetValueInt298Syntax299Parameters299Return Value299GetValueIntObj (Java only)299Syntax299Parameters300Returns300GetValueShortObj (Java only)300Syntax300Parameters300Return Value300GetValueString300Syntax300Parameters301Return Value301GetValueUIntObj (Java only)301Syntax301Parameters301Returns301GetValueUShortObj (Java only)302Syntax302Parameters302Returns302IsValid302Syntax302Parameters302Return Value303ReportError (Java and .NET only)303Syntax303Parameters303Returns303SetValue (Java and .NET)303Syntax303Parameters304Returns304SetValue (C++, COM, and VB)304Syntax304Parameters304Return Values304Remarks305Session Object307Session Object Properties307Methods309AddEventListener (Java and .NET only)310Syntax310Parameters310Returns311AddListener Methods (C++ only)311Syntax311Remarks311Connect311Syntax311Parameters312Return Values312Remarks312CreateSilentMonitorManager313Syntax313Parameters314Return Value314Remarks314CreateWaitObject (C++, Java, and .NET)314Syntax314Parameters314Return Values314DestroySilentMonitorManager315Syntax315Parameters315Return Values315Remarks315DestroyWaitObject (C++ , Java, and .NET)315Syntax315Parameters315Return Values316Remarks316DisableSkillGroupStatistics (C++ , Java, and .NET)316Syntax316Parameters316Return Value316Remarks316Disconnect316Syntax316Parameters317Return Values317DumpProperties317EnableSkillGroupStatistics (C++, Java, and .NET)317Syntax317Parameters317Return Value317Remarks318GetAllAgents318Syntax318Parameters318Return Values318Remarks319GetAllCalls320Syntax320Parameters321Return Values321Remarks322GetAllProperties323GetAllSkillGroups323Syntax323Parameters324Return Values324GetCurrentAgent324Syntax324Parameters324Return Values324GetCurrentCall325Syntax325Parameters325Return Values325GetCurrentSilentMonitor325Syntax325Return Values325GetElement326GetNumProperties326GetObjectFromObjectID326Syntax326Parameters326Return Values326Remarks327GetPropertyName327GetPropertyType327GetSystemStatus (Java, .NET, and C++ only)327Syntax327Parameters327Returns327GetValue Methods327IsAgent327Syntax328Parameters328Return Values328IsCCMSilentMonitor328Syntax328Parameters328Return Values328IsSupervisor328Syntax328Parameters329Return Values329IsValid329RemoveEventListener (Java and .NET)329Syntax329Parameters329Returns329RemoveListener Methods (C++ only)329Syntax329Remarks330RequestDesktopSettings330Syntax330Parameters330Return Values331Remarks331SetAgent331Syntax331Parameters331Return Values331SetCurrentCall332Syntax332Parameters333Return Values333Remarks333SetCurrentSilentMonitor333Syntax333Parameters333Return Values333Remarks334SetMessageFilter334Syntax334Parameters334Return Values334Remarks334SetSupervisorMonitorMode334Syntax334Parameters335Return Values335Notes On Message Filters335Message Filter Syntax335A Simple Example336General Form of Filter Syntax336Combining Filters336Filtering for Specific Events337Events Not Allowed In Filter Expressions337Filtering Skillgroup Statistics338Filtering CCM Based Silent Monitor Calls339Agent Object341Agent Object Properties341Agent Statistics342Methods349Arguments Parameters351DisableAgentStatistics351Syntax351Parameters352Return Value352DisableSkillGroupStatistics352Syntax352Parameters352Return Value352EnableAgentStatistics353Syntax353Parameters353Return Value353Remarks353EnableSkillGroupStatistics353Syntax353Parameters354Return Value354Remarks354GetAgentState354Syntax354Parameters354Return Value355GetAllProperties355GetElement355GetMonitoredAgent355Syntax355Parameters355Return Value355Remarks355GetMonitoredCall355Syntax355Parameters356Return Value356Remarks356GetNumProperties356GetPropertyName356GetPropertyType356GetSkillGroups356Syntax357Parameters357Return Value357GetValue Methods358IsAgent359Syntax359Parameters359Return Value359IsSupervisor359Syntax359Parameters359Return Values359Login360Syntax360Input Parameters360Return Values361Remarks361Logout362Syntax362Input Parameters362Return Values363Remarks363MakeCall363Syntax363Input Parameters363Return Value367Remarks367MakeEmergencyCall368Syntax368Parameters368Return Value368Remarks368QueryAgentState369Syntax369Input Parameters369Return Values369Remarks369ReportBadCallLine369Syntax370Parameters370Return Values370RequestAgentTeamList370Syntax370Parameters370Return Value371Remarks371RequestSupervisorAssist371Syntax371Parameters371Return Values371Remarks371SendChatMessage372Syntax372Parameters372Return Values372Remarks373SetAgentGreetingAction373Syntax373Input Parameters373Return Values373Remarks373SetAgentState373Syntax374Input Parameters374Return Values375Remarks375StartMonitoringAgent375Syntax375Parameters375Return Value375Remarks376StartMonitoringAgentTeam376Syntax376Parameters376Return Value376Remarks376StartMonitoringAllAgentTeams377Syntax377Parameters377Return Value377Remarks377StartMonitoringCall377Description377Syntax377Parameters378Return Value378Remarks378StopMonitoringAgent378Syntax378Parameters378Return Value379Remarks379StopMonitoringAgentTeam379Syntax379Parameters379Return Value379Remarks379StopMonitoringAllAgentTeams379Syntax380Parameters380Return Value380Remarks380SuperviseCall380Syntax380Parameters381Return Values381Remarks381Call Object383Current Call Concept383Accessing ECC Variables384Considerations for Passing Call Variables384Retrieving ECC Variable Values384Adding ECC Values385Properties386Methods388Arguments Parameters390Alternate390Syntax390Parameters390Return Values390Remarks390Answer391Syntax391Parameters391Return Value391Remarks391Clear392Syntax392Parameters392Return Value392Remarks392ClearConnection393Syntax393Parameters393Return Value393Remarks393Conference394Syntax394Parameters394Return Value394Remarks394GetCallContext395Syntax395Parameters395Return Value395Remarks396GetCallData396Syntax396Parameters396Return Value397Remarks397Hold397Syntax397Parameters397Return Value398Remarks398MakeConsultCall398Syntax398Parameters398Return Values402Remarks402Reconnect402Syntax403Parameters403Return Values403Remarks403Retrieve403Syntax404Parameters404Return Values404Remarks404SendDTMFSignal404Syntax404Parameters404Return Values405Remarks405SetCallData405Syntax406Parameters406Return Values406Remarks406SingleStepConference406Syntax406Parameters407Return Values408Remarks408SingleStepTransfer408Syntax409Parameters409Return Values409Snapshot409Syntax409Parameters409Return Values410Remarks410StartRecord410Syntax410Parameters410Return Value410Remarks410StopRecord411Syntax411Parameters411Return Value411Remarks411Transfer411Syntax411Parameters412Return Values412Remarks412SkillGroup Object413Properties413Statistics414Methods428DisableSkillGroupStatistics428Syntax428Parameters428Return Value429Remarks429DumpProperties429EnableSkillGroupStatistics429Syntax429Parameters429Return Value430Remarks430GetElement430GetValue Methods430IsValid430SetValue430Helper Classes431Arg Class432AddRef432Syntax432Parameters433Return Values433Clone433Syntax433Output Parameters433Return Values433CreateInstance433Syntax433Parameters434Return Values434Remarks434DumpArg434Syntax434Parameters434Return Values434GetArgType (.NET only)434Syntax435Parameters435Returns435GetType435Syntax435Output Parameters435Return Values435GetValue Methods436Syntax436Parameters437Return Values437Release437Syntax437Parameters438Return Values438SetValue438Syntax438Parameters438Return Values439Arguments Class439Usage Notes440AddItem (C++, COM, VB only)441Syntax441Parameters442Return Value442AddRef (C++ and COM only)442Syntax442Parameters442Return Values442Clear443Syntax443Parameters443Return Value443Clone443Syntax443Parameters443Return Value444CreateInstance (C++ and COM only)444Syntax444Parameters444Return Value444Remarks444DumpArgs444Syntax444Parameters445Return Values445GetElement Methods445Syntax445Parameters446Return Value446GetValue Methods446Syntax446Parameters448Return Values448Remarks449IsValid449Syntax449Parameters449Return Values449NumElements449Syntax450Parameters450Return Value450Release (C++ and COM only)450Syntax450Parameters450Return Values450RemoveItem450Syntax450Parameters451Return Values451SetElement (C++, COM, and VB only)451Syntax451Parameters451Return Values452SetValue452Syntax452Parameters453Return Values453Remarks453CILRefArg Class (C++, Java, and .NET only)454GetType454Syntax454Output Parameters454Return Values454GetUniqueObjectID (Java and .NET only)454Syntax455Parameters455Return Values455Remarks455GetValue455Syntax455Output Parameters455Return Values455SetValue455Syntax455Input Parameters456Return Values456CCtiOsException Class (C++, Java, and .NET only)456CCtiosException Constructor456Syntax456Input Parameters456Return Values457GetCode457Syntax457Parameters457Return Values457GetStatus457Syntax457Parameters457Return Values457GetString457Syntax458Parameters458Return Values458What458Syntax458Parameters458Return Values458CWaitObject Class458Methods459CreateWaitObject459DestroyWaitObject459DumpEventMask459Syntax459Parameters459Return Values460GetMask460Syntax460Parameters460Return Values460GetTriggerEvent460Syntax460Parameters460Return Values460InMask461Syntax461Parameters461Return Values461SetMask461Syntax461Parameters461Return Values461WaitOnMultipleEvents461Syntax462Parameters462Return Values462Logger Class (.NET and Java Only)462Methods462Logger() Constructor463Syntax463Parameters463Return Values463GetTraceMask463Syntax463Parameters463Return Values463SetTraceMask464Syntax464Parameters464Return Values464AddLogListener464Syntax464Parameters464Return Values464RemoveLogListener464Syntax464Parameters465Return Values465Trace465Syntax465Parameters465Return Values465LogWrapper Class (.NET and Java Only)465Methods466LogWrapper() Constructor467Syntax467Parameters467Return Values467LogWrapper(String filename) Constructor467Syntax467Parameters467Return Values467LogWrapper(string, int, int, int) Constructor467Syntax468Parameters468Return Values468Dispose (.NET Only)468Syntax468Parameters468Return Values469GetMaxDaysBeforeExpire (.NET Only)469Syntax469Parameters469Return Values469SetMaxNumberFiles469Syntax469Parameters469Return Values469GetMaxNumberFiles (.NET Only)469Syntax470Parameters470Return Values470SetMaxDaysBeforeExpire470Syntax470Parameters470Return Values470ProcessConfigFile470Syntax470Parameters470Return Values471SilentMonitorManager Object473Properties474Methods475Argument Parameter Rules476AcceptSilentMonitoring476Syntax476Parameters476Return Values477GetIPPhoneInfo477Syntax477Parameters477Return Value477GetSessionInfo478Syntax478Parameters478Return Values479GetSMSessionList479Syntax479Parameters480Return Values480IsMonitoredTarget480Syntax480Parameters480Return Value480SetIPPhoneInfo480Syntax481Parameters481Return Values482StartSilentMonitorRequest482Syntax482Parameters482Return Values483Remarks483StartSMMonitoredMode483Syntax483Parameters483Return Values484StartSMMonitoringMode484Syntax484Parameters485Return Values485StopSilentMonitorMode485Syntax485Parameters485Return Values486StopSilentMonitorRequest486Syntax486Parameters486Return Values486CTI OS Keywords and Enumerated Types487Keywords487Java CIL Keywords488.NET CIL Keywords488Enumerated Types488Java Interfaces489CTI OS Logging491Creating CTI OS Client Logs (COM and C++)491How to Install the Tracing Mechanism (COM and C++)491Setting Trace Levels (COM and C++)492Configuring Tracing (COM and C++)492Java CIL Logging Utilities493ILogEvents493LogEvent493Logger494Syntax494LogEventsAdapter494Syntax495Logging and Tracing (Java)495Logging and Tracing (.NET)495Using the Default Logging Mechanism496How to Log Trace Events Using the LogWrapper Class496Creating a Custom Logging Mechanism498How to Log Trace Events Using the Logger Class498Configuring Tracing (Java and .NET)498Index501Size: 3.98 MBPages: 506Language: EnglishOpen manual
Developer's GuideTable of ContentsCTI OS Developer's Guide for Cisco Unified ICM/Contact Center Enterprise & Hosted1Contents3About This Guide19Purpose19Audience19Organization19Related Documentation20Conventions21Obtaining Documentation and Submitting a Service Request21Documentation Feedback21Introduction23Introduction to CTI23What is a CTI-Enabled Application?23Screen Pop23Agent State Control24Third-Party Call Control24Leveraging CTI Application Event Flow24Asynchronous Events24Request-Response Paradigm25Overview of CTI OS26Advantages of CTI OS as a CTI Development Interface27Key Benefits of CTI OS for CTI Application Developers28Illustrative Code Fragments28CTI OS Client Interface Library Architecture29Object Server Architecture29Client Interface Library Architecture29Connection Layer30Service Layer30Object Interface Layer31Custom Application31CIL Object Model31Session Object31Session Modes32Agent Object32Call Object32SkillGroup Object32Object Creation and Lifetime33Reference Counting33Call Object Lifetime33Agent Object Lifetime33Methods that Call AddRef()34Where To Go From Here39CIL Coding Conventions41CTIOS CIL Data Types41Asynchronous Program Execution42CIL Error Codes43COM Error Codes47Generic Interfaces47Arguments48Accessing Properties and Parameters with GetValue48Setting Object Properties and Request Parameters with SetValue49UniqueObjectID49Obtaining Objects from UniqueObjectIDs51Using Button Enablement Masks51Building Your Application55Setting Up Your Environment for .NET55Integrating with Microsoft Visual Studio .NET 200556Adding CTIOS Toolkit 7.5(1) Components to the “Add Reference” Dialog Box56Adding Cisco CTI OS ActiveX 7.5(1) Controls to the Toolbox57Integrating your Application with CTI OS via the CIL58Planning and Designing Your Integration58What Language and Interface to Use58Testing CTI Applications59Developing a Test Plan59Test Environment60Using the Samples60Using The CTI OS ActiveX Controls61Building a Simple Softphone with ActiveX Controls61Adding a Hook for Screenpops63CTIOS SessionResolver63Sample VB .NET code to Retrieve CallVariable164Using the COM CIL in Visual C++ 7.5(1)65COM Client Interface Library (COM CIL.)65Adding COM Support to your Application66Important Note About COM Method Syntax66Using the CIL Dynamic Link Libraries66Creating an Instance of a COM Object67Subscribing and Unsubscribing to COM Events in C++67Next Steps68Using the C++ CIL and Static Libraries68Header Files and Libraries68Project Settings for Compiling and Linking69Subscribing for Events in C++72STLPort72Next Steps72Using the Java CIL Libraries73Next Steps73Using the .NET CIL Libraries73Next Steps74Connecting to the CTI OS Server74How to Create the Session Instance74Session Object Lifetime (C++ only)74How to Set the Event Listener and Subscribe to Events75How to Set Connection Parameters for the Session75How to Connect the Session to the CTI OS Server75Dealing with Connection Failures76Connection Failure Events76Connection Attempt Error Codes in Java and .NET CIL76Configuring the Agent to Automatically Log In after Failover77Stopping the Failover Procedure77How to Set the Connection Mode77Setting the Connection Mode in the OnConnection() Event Handler77When to Use Agent Mode78How to Select Agent Mode78When to Use Monitor Mode79Monitor Mode Filters79How to Select Monitor Mode80How to Deal with Failover In Monitor Mode81Settings Download82Disconnecting from CTI OS Server83Logging In and Logging Out an Agent84How to Log In an Agent84How to Handle Duplicate Log In Attempts85Overview85How to Create Values in the CTI OS Server Registry to Control Duplicate Log In Attempts85How to Get Registry Configuration Values to Your Desktop Application86How to Detect the Duplicate Log In Attempt in the Desktop Application88How to Handle Duplicate Log In Attempts in the Desktop Application88How to Log Out an Agent89Typical Logout Procedure89Working with Calls91Handling Multiple Calls91What is the Current Call?91How to Get a Call Object92How to Set the Current Call for the Session92Call Wrapup92Logout and NotReady Reason Codes93When Does the Application Receive the OnButtonEnablementChange() Event?93What to do in the OnButtonEnablementChange() Event94Checking Not Ready Bitmasks in OnButtonEnablementChange() Event94OnButtonEnablementChange() Event in Supervisor Desktop Applications95Making Requests96Preventing Multiple Duplicate Requests96Working with Events97Handling Events in Order97Coding Considerations for CIL Event Handling97Monitoring the OnCallEnd() Event97Working with Agent Statistics98Overview98How to Set Up an Agent Application to Receive Agent Statistics98How to Set Up a Monitor-Mode Application to Receive Agent Statistics99Accessing Agent Statistics102Overview102Registering to the eOnNewAgentStatisticsEvent() (JAVA)102Registering to the OnAgentStatistics() (C++, COM, and VB)102How to Get Agent Statistics through the Agent Instance102Changing Which Agent Statistics are Sent103Agent Statistics Computed by the Sample CTI OS Desktop103Working with Skill Group Statistics103Overview103How to Set Up a Monitor-Mode Application to Receive Skill Group Statistics104Accessing Skill Group Statistics105Overview105Registering to the eOnNewSkillGroupStatisticsEvent() (JAVA)106Registering to the OnSkillGroupStatisticsUpdated() (C++, COM, and VB)106Changing Which Skill Group Statistics are Sent106Skill Group Statistics Computed by the Sample CTI OS Desktop106Enabling Silent Monitor in Your Application107Enabling CTI OS Based Silent Monitoring in Your Application107Creating a Silent Monitor Object108Setting the Session Mode108Initiating and Ending a Silent Monitor Session109Shutting Down Silent Monitor Manager110Initiating SilentMonitor from Monitor Mode Applications111Enabling Unified CM Based Silent Monitoring in your Application111CCM Based Silent Monitor Overview111CTI OS Monitor Mode Applications111Initiating a CCM Based Silent Monitor Request111Determining if the Current Agent is Being Silently Monitored113Ending a CCM Based Silent Monitor Request113Determining the Silent Monitor Mode115Deployment of Custom CTI OS Applications115Deploying Applications Using the ActiveX Controls115Deploying Applications Using COM (But Not ActiveX Controls)121Deploying Applications using C++ CIL121Deploying Applications using .NET CIL122Custom Application and CTI OS Security122Building Supervisor Applications122General Flow123Monitored and Unmonitored Events123Requesting and Monitoring the Supervisor’s Team(s)123OnNewAgentTeamMember124OnNewAgentTeamMember Events and Supervisors125OnMonitoredAgentStateChange Events125OnMonitoredAgentInfo Event126Time in State126OnSkillInfo Event126Populating an Agent Grid126Monitoring Agents128OnSupervisorButtonChange130Monitored Call Events131Making Agents Ready and Logging Agents Out131Monitoring Calls132MonitoredCallEvents132Barging into Calls133Intercepting Calls134Updating Monitored Call Data134Sample Code in the CTI OS Toolkit135.NET Samples135CTI Toolkit Combo Desktop.NET135CtiOs Data Grid.NET136All Agents Sample.NET137All Calls Sample.NET137Java CIL Samples137Win32 Samples137CTI OS ActiveX Controls139Property Pages141Button Controls and Grid Controls141Button Controls141Grid Controls141Supervisor Status Bar142CTI OS ActiveX Control Descriptions142AgentStateCtl142Related Methods144Related Events145AgentSelectCtl147Methods148AgentStatisticsCtl152Methods152AlternateCtl156AnswerCtl156BadLineCtl157CallAppearanceCtl157Related Methods157Related Events158Methods158ChatCtl162Methods162ConferenceCtl165EmergencyAssistCtl167HoldCtl167MakeCallCtl167ReconnectCtl169SkillgroupStatisticsCtl169Methods169StatusBarCtl173SupervisorOnlyCtl173RecordCtl175TransferCtl175The Silent Monitor StandAlone ActiveX Control177Connect177Disconnect177StartMonitoring177StopMonitoring178SilentMonitor Com Object Events178Deployment179Sample Usage in Visual Basic 6.0179Event Interfaces and Events181Event Publication Model181ISessionEvents Interface182OnConnection182Syntax182Parameters182OnConnectionClosed182OnConnectionFailure183Syntax183Parameters183OnConnectionRejected183Syntax183Parameters183OnCTIOSFailure183Syntax184Parameters184Remarks185OnCurrentAgentReset185Syntax185Parameters185OnCurrentCallChanged185Syntax186Parameters186OnFailure Event186OnGlobalSettingsDownloadConf186Syntax187Parameters187OnHeartbeat194Syntax195Parameters195OnMissingHeartbeat195Syntax195Parameters195OnMonitorModeEstablished195Syntax196Parameters196OnSnapshotDeviceConf196Syntax196Parameters197Remarks197OnSnapshotSkillGroupList197OnTranslationRoute197Syntax197Parameters198ICallEvents Interface199OnAgentPrecallEvent199Syntax199Parameters199OnAgentPrecallAbortEvent200Syntax201Parameters201OnAlternateCallConf201Syntax201Parameters201OnAnswerCallConf202Syntax202Parameters202OnCallBegin202Syntax202Parameters202OnCallCleared204Syntax204Parameters204OnCallConnectionCleared205Syntax205Parameters205OnCallConferenced205Syntax206Parameters206OnCallDataUpdate207Syntax207Parameters208OnCallDelivered209Syntax209Parameters210OnCallDequeuedEvent210Syntax210Parameters211OnCallDiverted211Syntax211Parameters211OnCallEnd212Syntax212Parameters212OnCallEstablished213Syntax213Parameters213OnCallFailed214Syntax214Parameters214OnCallHeld214Syntax214Parameters215OnCallOriginated215Syntax215Parameters215OnCallQueuedEvent216Syntax216Parameters216OnCallReachedNetworkEvent217Syntax217Parameters217OnCallRetrieved218Syntax218Parameters218OnCallServiceInitiatedEvent218Syntax218Parameters219OnCallStartRecordingConf219Syntax219Parameters219OnCallStopRecordingConf220Syntax220Parameters220OnCallTransferred220Syntax220Parameters220OnClearCallConf222Syntax222Parameters222OnClearConnectionConf222Syntax222Parameters223OnConferenceCallConf223Syntax223Parameters223OnConsultationCallConf223Syntax223Parameters224OnControlFailureConf224Syntax224Parameters224OnHoldCallConf224Syntax224Parameters225OnMakePredictiveCallConf225OnReconnectCallConf225Syntax225Parameters225OnReleaseCallConf225OnRetrieveCallConf225Syntax226Parameters226OnSendDTMFConf226Syntax226Parameters226OnSetCallDataConf226Syntax226Parameters226OnSnapshotCallConf227Syntax227Parameters228OnTransferCallConf229Syntax229Parameters230IAgentEvents Interface230OnAgentDeskSettingsConf230Syntax230Parameters230OnAgentInfoEvent232Syntax232Parameters232OnAgentStateChange233Syntax233Parameters233OnAgentStatistics234Syntax234Parameters235OnChatMessage235Syntax235Parameters235OnControlFailureConf235Syntax236Parameters236OnEmergencyCall241Syntax241Parameters241Remarks241OnLogoutFailed241Syntax242Parameters242OnMakeCallConf242Syntax242Parameters242OnNewAgentTeamMember243Syntax243Parameters243OnPostLogout244Syntax245Parameters245Remarks246OnPreLogout246Syntax246Parameters246OnQueryAgentStateConf247Syntax247Parameters247OnSetAgentModeEvent250Syntax250Parameters250OnSetAgentStateConf250Syntax251Parameters251OnStartMonitoringAgent251Syntax251Parameters251Remarks251OnStopMonitoringAgent251Syntax252Parameters252Remarks252OnUserMessageConf252ISkillGroupEvents Interface252OnSkillGroupStatisticsUpdated252Syntax252Parameters253OnSkillInfoEvent253Parameters253IButtonEnablementEvents253OnButtonEnablementChange253Parameters254OnSupervisorButtonChange256Parameters256Remarks256IMonitoredAgentEvents Interface256IMonitoredCallEvents Interface257ISilentMonitorEvents258OnCallRTPStarted258Syntax258Parameters258OnCallRTPStopped259Syntax259Parameters259OnStartSilentMonitorConf260Syntax260Parameters260OnSilentMonitorStartedEvent261For CTI OS Based Silent Monitor261For CCM Based Silent Monitor262OnSilentMonitorStartRequestedEvent262Syntax262Parameters263OnSilentMonitorSessionDisconnected263Syntax263Parameters264OnSilentMonitorStopRequestedEvent264For CTI OS Based Silent Monitor264For CCM Based Silent Monitor265OnSilentMonitorStatusReportEvent265Syntax265Parameters266OnStopSilentMonitorConf267Syntax267Parameters268OnRTPStreamTimedoutEvent268Syntax268Parameters268IGenericEvents Interface269OnEvent269Syntax269Java Adapter Classes269IAllInOne269IAgentEvents269IButtonEnablementEvents269ICallEvents270ISkillGroupEvents270Events in Java CIL270Events in .NET CIL270Getting All Event Parameters271How to Get All Parameters from an Event271CtiOs Object279Methods279DumpProperties280Syntax280Parameters280Return Value280GetAllProperties280Syntax280Parameters281Return Value281GetElement281Syntax281Parameters281Return Value282GetLastError (Java and .NET only)282Syntax282Parameters282Returns282Remarks282GetNumProperties283Syntax283Parameters283Return Value283GetPropertyName283Syntax283Parameters283Return Value283GetPropertyType284Syntax284Parameters284Return Value284GetValue285Syntax285Parameters285Return Value285GetValueArray285Syntax285Parameters286Return Value286GetValueBoolObj (Java and .NET only)286Syntax286Parameters286Returns286GetValueInt286Syntax287Parameters287Return Value287GetValueIntObj (Java only)287Syntax287Parameters288Returns288GetValueShortObj (Java only)288Syntax288Parameters288Return Value288GetValueString288Syntax288Parameters289Return Value289GetValueUIntObj (Java only)289Syntax289Parameters289Returns289GetValueUShortObj (Java only)290Syntax290Parameters290Returns290IsValid290Syntax290Parameters290Return Value291ReportError (Java and .NET only)291Syntax291Parameters291Returns291SetValue (Java and .NET)291Syntax291Parameters292Returns292SetValue (C++, COM, and VB)292Syntax292Parameters292Return Values292Remarks293Session Object295Session Object Properties295Methods297AddEventListener (Java and .NET only)298Syntax298Parameters298Returns299AddListener Methods (C++ only)299Syntax299Remarks299Connect299Syntax299Parameters300Return Values300Remarks300CreateSilentMonitorManager301Syntax301Parameters302Return Value302Remarks302CreateWaitObject (C++, Java, and .NET)302Syntax302Parameters302Return Values302DestroySilentMonitorManager303Syntax303Parameters303Return Values303Remarks303DestroyWaitObject (C++ , Java, and .NET)303Syntax303Parameters303Return Values304Remarks304DisableSkillGroupStatistics (C++ , Java, and .NET)304Syntax304Parameters304Return Value304Remarks304Disconnect304Syntax304Parameters305Return Values305DumpProperties305EnableSkillGroupStatistics (C++, Java, and .NET)305Syntax305Parameters305Return Value305Remarks306GetAllAgents306Syntax306Parameters306Return Values306Remarks307GetAllCalls308Syntax308Parameters309Return Values309Remarks310GetAllProperties311GetAllSkillGroups311Syntax311Parameters312Return Values312GetCurrentAgent312Syntax312Parameters312Return Values312GetCurrentCall313Syntax313Parameters313Return Values313GetCurrentSilentMonitor313Syntax313Return Values313GetElement314GetNumProperties314GetObjectFromObjectID314Syntax314Parameters314Return Values314Remarks315GetPropertyName315GetPropertyType315GetSystemStatus (Java, .NET, and C++ only)315Syntax315Parameters315Returns315GetValue Methods315IsAgent315Syntax316Parameters316Return Values316IsCCMSilentMonitor316Syntax316Parameters316Return Values316IsSupervisor316Syntax316Parameters317Return Values317IsValid317LogToServer317Syntax317Parameters317Return Values317RemoveEventListener (Java and .NET)318Syntax318Parameters318Returns318RemoveListener Methods (C++ only)318Syntax318Remarks319RequestDesktopSettings319Syntax319Parameters319Return Values319Remarks319SetAgent320Syntax320Parameters320Return Values320SetCurrentCall321Syntax321Parameters321Return Values321Remarks322SetCurrentSilentMonitor322Syntax322Parameters322Return Values322Remarks322SetMessageFilter322Syntax322Parameters323Return Values323Remarks323SetSupervisorMonitorMode323Syntax323Parameters323Return Values324Notes On Message Filters324Message Filter Syntax324A Simple Example324General Form of Filter Syntax324Combining Filters325Filtering for Specific Events325Events Not Allowed In Filter Expressions325Filtering Skillgroup Statistics327Filtering CCM Based Silent Monitor Calls328Agent Object329Agent Object Properties329Agent Statistics330Methods337Arguments Parameters339DisableAgentStatistics339Syntax339Parameters340Return Value340DisableSkillGroupStatistics340Syntax340Parameters340Return Value340EnableAgentStatistics341Syntax341Parameters341Return Value341Remarks341EnableSkillGroupStatistics341Syntax341Parameters342Return Value342Remarks342GetAgentState342Syntax342Parameters342Return Value343GetAllProperties343GetElement343GetMonitoredAgent343Syntax343Parameters343Return Value343Remarks343GetMonitoredCall343Syntax343Parameters344Return Value344Remarks344GetNumProperties344GetPropertyName344GetPropertyType344GetSkillGroups344Syntax345Parameters345Return Value345GetValue Methods346IsAgent347Syntax347Parameters347Return Value347IsSupervisor347Syntax347Parameters347Return Values347Login348Syntax348Input Parameters348Return Values349Remarks349Logout350Syntax350Input Parameters350Return Values351Remarks351MakeCall351Syntax351Input Parameters351Return Value355Remarks355MakeEmergencyCall356Syntax356Parameters356Return Value356Remarks356QueryAgentState357Syntax357Input Parameters357Return Values357Remarks357ReportBadCallLine357Syntax358Parameters358Return Values358RequestAgentTeamList358Syntax358Parameters358Return Value359Remarks359RequestSupervisorAssist359Syntax359Parameters359Return Values359Remarks359SendChatMessage360Syntax360Parameters360Return Values360Remarks361SetAgentState361Syntax361Input Parameters361Return Values362Remarks362StartMonitoringAgent362Syntax362Parameters362Return Value363Remarks363StartMonitoringAgentTeam363Syntax363Parameters363Return Value363Remarks364StartMonitoringAllAgentTeams364Syntax364Parameters364Return Value364Remarks364StartMonitoringCall365Description365Syntax365Parameters365Return Value365Remarks365StopMonitoringAgent365Syntax365Parameters366Return Value366Remarks366StopMonitoringAgentTeam366Syntax366Parameters366Return Value366Remarks367StopMonitoringAllAgentTeams367Syntax367Parameters367Return Value367Remarks367SuperviseCall367Syntax368Parameters368Return Values368Remarks368Call Object371Current Call Concept371Accessing ECC Variables372Considerations for Passing Call Variables372Retrieving ECC Variable Values372Adding ECC Values373Properties374Methods376Arguments Parameters377Alternate378Syntax378Parameters378Return Values378Remarks378Answer379Syntax379Parameters379Return Value379Remarks379Clear379Syntax379Parameters380Return Value380Remarks380ClearConnection380Syntax380Parameters381Return Value381Remarks381Conference381Syntax381Parameters382Return Value382Remarks382GetCallContext382Syntax383Parameters383Return Value383Remarks384GetCallData384Syntax384Parameters384Return Value384Remarks384Hold385Syntax385Parameters385Return Value385Remarks385MakeConsultCall386Syntax386Parameters386Return Values389Remarks389Reconnect390Syntax390Parameters390Return Values390Remarks391Retrieve391Syntax391Parameters391Return Values391Remarks392SendDTMFSignal392Syntax392Parameters392Return Values393Remarks393SetCallData393Syntax393Parameters393Return Values394Remarks394SingleStepConference394Syntax394Parameters394Return Values397Remarks397SingleStepTransfer397Syntax398Parameters398Return Values398Snapshot398Syntax398Parameters398Return Values399Remarks399StartRecord399Syntax399Parameters399Return Value399Remarks399StopRecord400Syntax400Parameters400Return Value400Remarks400Transfer400Syntax401Parameters401Return Values401Remarks401SkillGroup Object403Properties403Statistics404Methods418DisableSkillGroupStatistics418Syntax418Parameters418Return Value419Remarks419DumpProperties419EnableSkillGroupStatistics419Syntax419Parameters419Return Value420Remarks420GetElement420GetValue Methods420IsValid420SetValue420Helper Classes421Arg Class422AddRef422Syntax422Parameters423Return Values423Clone423Syntax423Output Parameters423Return Values423CreateInstance423Syntax423Parameters424Return Values424Remarks424DumpArg424Syntax424Parameters424Return Values424GetArgType (.NET only)424Syntax425Parameters425Returns425GetType425Syntax425Output Parameters425Return Values425GetValue Methods426Syntax426Parameters427Return Values427Release427Syntax427Parameters428Return Values428SetValue428Syntax428Parameters428Return Values429Arguments Class429Usage Notes430AddItem (C++, COM, VB only)431Syntax431Parameters432Return Value432AddRef (C++ and COM only)432Syntax432Parameters432Return Values432Clear433Syntax433Parameters433Return Value433Clone433Syntax433Parameters433Return Value434CreateInstance (C++ and COM only)434Syntax434Parameters434Return Value434Remarks434DumpArgs434Syntax434Parameters435Return Values435GetElement Methods435Syntax435Parameters436Return Value436GetValue Methods436Syntax436Parameters438Return Values438Remarks439IsValid439Syntax439Parameters439Return Values439NumElements439Syntax440Parameters440Return Value440Release (C++ and COM only)440Syntax440Parameters440Return Values440RemoveItem440Syntax440Parameters441Return Values441SetElement (C++, COM, and VB only)441Syntax441Parameters441Return Values442SetValue442Syntax442Parameters443Return Values443Remarks443CILRefArg Class (C++, Java, and .NET only)444GetType444Syntax444Output Parameters444Return Values444GetUniqueObjectID (Java and .NET only)444Syntax445Parameters445Return Values445Remarks445GetValue445Syntax445Output Parameters445Return Values445SetValue445Syntax445Input Parameters446Return Values446CCtiOsException Class (C++, Java, and .NET only)446CCtiosException Constructor446Syntax446Input Parameters446Return Values447GetCode447Syntax447Parameters447Return Values447GetStatus447Syntax447Parameters447Return Values447GetString447Syntax448Parameters448Return Values448What448Syntax448Parameters448Return Values448CWaitObject Class448Methods449CreateWaitObject449DestroyWaitObject449DumpEventMask449Syntax449Parameters449Return Values450GetMask450Syntax450Parameters450Return Values450GetTriggerEvent450Syntax450Parameters450Return Values450InMask451Syntax451Parameters451Return Values451SetMask451Syntax451Parameters451Return Values451WaitOnMultipleEvents451Syntax452Parameters452Return Values452Logger Class (.NET and Java Only)452Methods452Logger() Constructor453Syntax453Parameters453Return Values453GetTraceMask453Syntax453Parameters453Return Values453SetTraceMask454Syntax454Parameters454Return Values454AddLogListener454Syntax454Parameters454Return Values454RemoveLogListener454Syntax454Parameters455Return Values455Trace455Syntax455Parameters455Return Values455LogWrapper Class (.NET and Java Only)455Methods456LogWrapper() Constructor457Syntax457Parameters457Return Values457LogWrapper(String filename) Constructor457Syntax457Parameters457Return Values457LogWrapper(string, int, int, int) Constructor457Syntax458Parameters458Return Values458Dispose (.NET Only)458Syntax458Parameters458Return Values459GetMaxDaysBeforeExpire (.NET Only)459Syntax459Parameters459Return Values459SetMaxNumberFiles459Syntax459Parameters459Return Values459GetMaxNumberFiles (.NET Only)459Syntax460Parameters460Return Values460SetMaxDaysBeforeExpire460Syntax460Parameters460Return Values460ProcessConfigFile460Syntax460Parameters460Return Values461SilentMonitorManager Object463Properties464Methods465Argument Parameter Rules466AcceptSilentMonitoring466Syntax466Parameters466Return Values467GetIPPhoneInfo467Syntax467Parameters467Return Value467GetSessionInfo468Syntax468Parameters468Return Values469GetSMSessionList469Syntax469Parameters470Return Values470IsMonitoredTarget470Syntax470Parameters470Return Value470SetIPPhoneInfo470Syntax471Parameters471Return Values472StartSilentMonitorRequest472Syntax472Parameters472Return Values473Remarks473StartSMMonitoredMode473Syntax473Parameters473Return Values474StartSMMonitoringMode474Syntax474Parameters475Return Values475StopSilentMonitorMode475Syntax475Parameters475Return Values476StopSilentMonitorRequest476Syntax476Parameters476Return Values476CTI OS Keywords and Enumerated Types477Keywords477Java CIL Keywords478.NET CIL Keywords478Enumerated Types478Java Interfaces479CTI OS Logging481Creating CTI OS Client Logs (COM and C++)481How to Install the Tracing Mechanism (COM and C++)481Setting Trace Levels (COM and C++)482Configuring Tracing (COM and C++)482Java CIL Logging Utilities483ILogEvents483LogEvent483Logger484Syntax484LogEventsAdapter484Syntax484Logging and Tracing (Java)485Logging and Tracing (.NET)485Using the Default Logging Mechanism486How to Log Trace Events Using the LogWrapper Class486Creating a Custom Logging Mechanism488How to Log Trace Events Using the Logger Class488Configuring Tracing (Java and .NET)488Migrating From CTI OS 7.1(x) or 7.2(x)491Introduction491Migrating a C++ CIL application491Migrating a COM CIL Application492Migrating a C++ Application that uses COM CIL492Migrate to Visual Basic .NET and use .COM CIL492Migrating a Visual Basic 6.0 to Use COM CIL493Migrate to Visual Basic .NET and use CTIOS ActiveX Controls493Index495Size: 3.1 MBPages: 500Language: EnglishOpen manual
Developer's GuideTable of ContentsCTI OS Developer’s Guide for Cisco Unified Contact Center Enterprise1About This Guide19Purpose19Audience19Organization19Related Documentation20Conventions21Obtaining Documentation and Submitting a Service Request21Documentation Feedback21Introduction23Introduction to CTI23What is a CTI-Enabled Application?23Screen Pop23Agent State Control24Third-Party Call Control24Leveraging CTI Application Event Flow24Asynchronous Events24Request-Response Paradigm25Overview of CTI OS26Advantages of CTI OS as a CTI Development Interface27Key Benefits of CTI OS for CTI Application Developers28Illustrative Code Fragments28CTI OS Client Interface Library Architecture29Object Server Architecture29Client Interface Library Architecture29Connection Layer30Service Layer30Object Interface Layer31Custom Application31CIL Object Model31Session Object32Session Modes32Agent Object33Call Object33SkillGroup Object33Object Creation and Lifetime33Reference Counting33Call Object Lifetime34Agent Object Lifetime34SkillGroup Object Lifetime34Methods that Call AddRef()35Where To Go From Here40CIL Coding Conventions41CTI OS CIL Data Types41Asynchronous Program Execution42CIL Error Codes43COM Error Codes47Generic Interfaces48Arguments48Accessing Properties and Parameters with GetValue49Setting Object Properties and Request Parameters with SetValue49UniqueObjectID50Obtaining Objects from UniqueObjectIDs52Using Button Enablement Masks52Building Your Application55Setting Up Your Environment for .NET55Integrating with Microsoft Visual Studio .NET 200556Adding CTI OS Toolkit 8.5(2) Components to the “Add Reference” Dialog Box57Adding Cisco CTI OS ActiveX 8.5(2) Controls to the Toolbox57Integrating your Application with CTI OS via the CIL58Planning and Designing Your Integration58What Language and Interface to Use58Testing CTI Applications59Developing a Test Plan59Test Environment60Using the Samples60Using The CTI OS ActiveX Controls61Building a Simple Softphone with ActiveX Controls61Adding a Hook for Screenpops63CTI OS SessionResolver63Sample VB .NET code to Retrieve CallVariable164Using the COM CIL in Visual C++ 8.0(1)65COM Client Interface Library (COM CIL.)65Adding COM Support to your Application66Important Note About COM Method Syntax66Using the CIL Dynamic Link Libraries66Creating an Instance of a COM Object67Subscribing and Unsubscribing to COM Events in C++67Next Steps68Using the C++ CIL and Static Libraries68Header Files and Libraries68Project Settings for Compiling and Linking69Subscribing for Events in C++72STLPort72Next Steps72Using the Java CIL Libraries73Next Steps73Using the .NET CIL Libraries73Next Steps74Connecting to the CTI OS Server74How to Create the Session Instance74Session Object Lifetime (C++ only)75How to Set the Event Listener and Subscribe to Events75How to Set Connection Parameters for the Session75How to Connect the Session to the CTI OS Server76Dealing with Connection Failures76Connection Failure Events76Connection Attempt Error Codes in Java and .NET CIL77Configuring the Agent to Automatically Log In after Failover77Stopping the Failover Procedure77How to Set the Connection Mode78Setting the Connection Mode in the OnConnection() Event Handler78When to Use Agent Mode78How to Select Agent Mode78When to Use Monitor Mode79Monitor Mode Filters79How to Select Monitor Mode81How to Deal with Failover In Monitor Mode81Settings Download82Disconnecting from CTI OS Server83Logging In and Logging Out an Agent84How to Log In an Agent84How to Handle Duplicate Log In Attempts85Overview85How to Create Values in the CTI OS Server Registry to Control Duplicate Log In Attempts85How to Prevent Another Agent Log In with Incorrect Credentials87How to Get Registry Configuration Values to Your Desktop Application87How to Detect the Duplicate Log In Attempt in the Desktop Application88How to Handle Duplicate Log In Attempts in the Desktop Application89How to Log Out an Agent89Typical Logout Procedure90Working with Calls91Handling Multiple Calls91What is the Current Call?92How to Get a Call Object92How to Set the Current Call for the Session92Call Wrapup93Logout and NotReady Reason Codes93When Does the Application Receive the OnButtonEnablementChange() Event?94What to do in the OnButtonEnablementChange() Event94Checking Not Ready Bitmasks in OnButtonEnablementChange() Event94OnButtonEnablementChange() Event in Supervisor Desktop Applications95Making Requests96Preventing Multiple Duplicate Requests96Working with Events97Handling Events in Order97Coding Considerations for CIL Event Handling97Monitoring the OnCallEnd() Event97Working with Agent Statistics98Overview98How to Set Up an Agent Application to Receive Agent Statistics98How to Set Up a Monitor-Mode Application to Receive Agent Statistics99Accessing Agent Statistics102Overview102Registering to the eOnNewAgentStatisticsEvent() (JAVA)102Registering to the OnAgentStatistics() (C++, COM, and VB)102How to Get Agent Statistics through the Agent Instance102Changing Which Agent Statistics are Sent103Agent Statistics Computed by the Sample CTI OS Desktop103Working with Skill Group Statistics103Overview103How to Set Up a Monitor-Mode Application to Receive Skill Group Statistics104Accessing Skill Group Statistics105Overview105Registering to the eOnNewSkillGroupStatisticsEvent() (JAVA)106Registering to the OnSkillGroupStatisticsUpdated() (C++, COM, and VB)106Changing Which Skill Group Statistics are Sent106Skill Group Statistics Computed by the Sample CTI OS Desktop106Enabling Silent Monitor in Your Application107Enabling CTI OS Based Silent Monitoring in Your Application107Creating a Silent Monitor Object108Setting the Session Mode108Initiating and Ending a Silent Monitor Session109Shutting Down Silent Monitor Manager110Initiating SilentMonitor from Monitor Mode Applications111Enabling Unified CM Based Silent Monitoring in your Application111CCM Based Silent Monitor Overview111CTI OS Monitor Mode Applications111Initiating a CCM Based Silent Monitor Request111Determining if the Current Agent is Being Silently Monitored113Ending a CCM Based Silent Monitor Request113Determining the Silent Monitor Mode115Working with Agent Greeting115Deployment of Custom CTI OS Applications115Deploying Applications Using the ActiveX Controls115Deploying Applications Using COM (But Not ActiveX Controls)120Deploying Applications using C++ CIL120Deploying Applications using .NET CIL121Custom Application and CTI OS Security121Building Supervisor Applications121General Flow122Monitored and Unmonitored Events122Requesting and Monitoring the Supervisor’s Teams122OnNewAgentTeamMember124OnNewAgentTeamMember Events and Supervisors124OnMonitoredAgentStateChange Events125OnMonitoredAgentInfo Event125Time in State125OnSkillInfo Event125Populating an Agent Grid126Monitoring Agents128OnSupervisorButtonChange129Monitored Call Events130Making Agents Ready and Logging Agents Out130Monitoring Calls131MonitoredCallEvents131Barging into Calls132Intercepting Calls133Updating Monitored Call Data133Sample Code in the CTI OS Toolkit134.NET Samples134CTI Toolkit Combo Desktop.NET134CtiOs Data Grid.NET135All Agents Sample.NET136All Calls Sample.NET136Java CIL Samples136Win32 Samples136CTI OS ActiveX Controls137Property Pages139Button Controls and Grid Controls139Button Controls144Grid Controls144Supervisor Status Bar144CTI OS ActiveX Control Descriptions144AgentGreetingCtl144RecordGreetingCtl145AgentStateCtl145Related Methods147Related Events148AgentSelectCtl149Methods150AgentStatisticsCtl155Methods155AlternateCtl159AnswerCtl159BadLineCtl159CallAppearanceCtl160Related Methods160Related Events161Methods161ChatCtl164Methods165ConferenceCtl168EmergencyAssistCtl169HoldCtl170MakeCallCtl170ReconnectCtl171SkillgroupStatisticsCtl171Methods172StatusBarCtl175SupervisorOnlyCtl176RecordCtl177TransferCtl177The Silent Monitor StandAlone ActiveX Control179Connect179Disconnect179StartMonitoring180StopMonitoring180SilentMonitor Com Object Events180Deployment181Sample Usage in Visual Basic 6.0181Event Interfaces and Events183Event Publication Model183ISessionEvents Interface184OnConnection184Syntax184Parameters184OnConnectionClosed184OnConnectionFailure185Syntax185Parameters185OnConnectionRejected185Syntax185Parameters185OnCTIOSFailure186Syntax186Parameters186Remarks187OnCurrentAgentReset187Syntax187Parameters187OnCurrentCallChanged187Syntax188Parameters188OnFailure Event188OnGlobalSettingsDownloadConf188Syntax189Parameters189OnHeartbeat197Syntax197Parameters197OnMissingHeartbeat197Syntax198Parameters198OnMonitorModeEstablished198Syntax198Parameters198OnSnapshotDeviceConf199Syntax199Parameters199Remarks200OnSnapshotSkillGroupList200OnTranslationRoute200Syntax200Parameters200ICallEvents Interface202OnAgentPrecallEvent202Syntax202Parameters203OnAgentPrecallAbortEvent204Syntax204Parameters204OnAlternateCallConf204Syntax205Parameters205OnAnswerCallConf205Syntax205Parameters205OnCallBegin205Syntax206Parameters206OnCallCleared207Syntax208Parameters208OnCallConnectionCleared208Syntax208Parameters209OnCallConferenced209Syntax209Parameters209OnCallDataUpdate211Syntax211Parameters211OnCallDelivered213Syntax213Parameters213OnCallDequeuedEvent214Syntax214Parameters214OnCallDiverted214Syntax215Parameters215OnCallEnd216Syntax216Parameters216OnCallEstablished216Syntax216Parameters216OnCallFailed217Syntax217Parameters218OnCallHeld218Syntax218Parameters218OnCallOriginated218Syntax219Parameters219OnCallQueuedEvent219Syntax219Parameters220OnCallReachedNetworkEvent221Syntax221Parameters221OnCallRetrieved221Syntax222Parameters222OnCallServiceInitiatedEvent222Syntax222Parameters222OnCallStartRecordingConf223Syntax223Parameters223OnCallStopRecordingConf223Syntax223Parameters224OnCallTransferred224Syntax224Parameters224OnClearCallConf226Syntax226Parameters226OnClearConnectionConf226Syntax226Parameters226OnConferenceCallConf227Syntax227Parameters227OnConsultationCallConf227Syntax227OnControlFailureConf228Syntax228Parameters228OnHoldCallConf228Syntax228Parameters228OnMakePredictiveCallConf229OnReconnectCallConf229Syntax229Parameters229OnReleaseCallConf229OnRetrieveCallConf229Syntax229Parameters230OnSendDTMFConf230Syntax230Parameters230OnSetCallDataConf230Syntax230Parameters230OnSnapshotCallConf231Syntax231Parameters231OnTransferCallConf233Syntax233Parameters233IAgentEvents Interface233OnAgentDeskSettingsConf233Syntax234Parameters234OnAgentGreetingControlConf236Syntax236Parameters236OnAgentInfoEvent236Syntax236Parameters236OnAgentStateChange237Syntax237Parameters237OnAgentStatistics239Syntax239Parameters240OnChatMessage240Syntax240Parameters240OnControlFailureConf241Syntax241Parameters241OnEmergencyCall246Syntax246Parameters246Remarks247OnLogoutFailed247Syntax247Parameters247OnMakeCallConf247Syntax247Parameters247OnNewAgentTeamMember248Syntax248Parameters248OnPostLogout250Syntax250Parameters250Remarks251OnPreLogout251Syntax251Parameters251OnQueryAgentStateConf252Syntax252Parameters252OnSetAgentModeEvent254Syntax254Parameters254OnSetAgentStateConf255Syntax255Parameters255OnStartMonitoringAgent255Syntax255Parameters255Remarks256OnStopMonitoringAgent256Syntax256Parameters256Remarks257OnUserMessageConf257ISkillGroupEvents Interface257OnSkillGroupStatisticsUpdated257Syntax257Parameters257OnSkillInfoEvent258Parameters258IButtonEnablementEvents258OnButtonEnablementChange258Parameters258OnSupervisorButtonChange261Parameters261Remarks261IMonitoredAgentEvents Interface261IMonitoredCallEvents Interface262ISilentMonitorEvents263OnCallRTPStarted263Syntax263Parameters263OnCallRTPStopped264Syntax264Parameters264OnStartSilentMonitorConf265Syntax265Parameters265OnSilentMonitorStartedEvent266For CTI OS Based Silent Monitor266For CCM Based Silent Monitor267OnSilentMonitorStartRequestedEvent267Syntax268Parameters268OnSilentMonitorSessionDisconnected269Syntax269Parameters269OnSilentMonitorStopRequestedEvent269For CTI OS Based Silent Monitor269For CCM Based Silent Monitor270OnSilentMonitorStatusReportEvent271Syntax271Parameters271OnStopSilentMonitorConf273Syntax273Parameters273OnRTPStreamTimedoutEvent274Syntax274Parameters274IGenericEvents Interface274OnEvent274Syntax274Java Adapter Classes275IAllInOne275IAgentEvents275IButtonEnablementEvents275ICallEvents275ISkillGroupEvents275Events in Java CIL276Events in .NET CIL276Getting All Event Parameters277How to Get All Parameters from an Event277CtiOs Object285Methods285DumpProperties286Syntax286Parameters286Return Value286GetAllProperties286Syntax286Parameters287Return Value287GetElement287Syntax287Parameters287Return Value288GetLastError (Java and .NET only)288Syntax288Parameters288Returns288Remarks288GetNumProperties289Syntax289Parameters289Return Value289GetPropertyName289Syntax289Parameters289Return Value289GetPropertyType290Syntax290Parameters290Return Value290GetValue291Syntax291Parameters291Return Value291GetValueArray291Syntax291Parameters292Return Value292GetValueBoolObj (Java and .NET only)292Syntax292Parameters292Returns292GetValueInt292Syntax293Parameters293Return Value293GetValueIntObj (Java only)293Syntax293Parameters294Returns294GetValueShortObj (Java only)294Syntax294Parameters294Return Value294GetValueString294Syntax294Parameters295Return Value295GetValueUIntObj (Java only)295Syntax295Parameters295Returns295GetValueUShortObj (Java only)296Syntax296Parameters296Returns296IsValid296Syntax296Parameters296Return Value297ReportError (Java and .NET only)297Syntax297Parameters297Returns297SetValue (Java and .NET)297Syntax297Parameters298Returns298SetValue (C++, COM, and VB)298Syntax298Parameters298Return Values298Remarks299Session Object301Session Object Properties301Methods303AddEventListener (Java and .NET only)304Syntax304Parameters304Returns305AddListener Methods (C++ only)305Syntax305Remarks305Connect305Syntax305Parameters306Return Values306Remarks306CreateSilentMonitorManager307Syntax307Parameters308Return Value308Remarks308CreateWaitObject (C++, Java, and .NET)308Syntax308Parameters308Return Values308DestroySilentMonitorManager309Syntax309Parameters309Return Values309Remarks309DestroyWaitObject (C++ , Java, and .NET)309Syntax309Parameters309Return Values310Remarks310DisableSkillGroupStatistics (C++ , Java, and .NET)310Syntax310Parameters310Return Value310Remarks310Disconnect310Syntax310Parameters311Return Values311DumpProperties311EnableSkillGroupStatistics (C++, Java, and .NET)311Syntax311Parameters311Return Value311Remarks312GetAllAgents312Syntax312Parameters312Return Values312Remarks313GetAllCalls314Syntax314Parameters315Return Values315Remarks315GetAllProperties316GetAllSkillGroups317Syntax317Parameters317Return Values317GetCurrentAgent317Syntax317Parameters317Return Values318GetCurrentCall318Syntax318Parameters318Return Values318GetCurrentSilentMonitor318Syntax318Return Values319GetElement319GetNumProperties319GetObjectFromObjectID319Syntax319Parameters319Return Values320Remarks320GetPropertyName320GetPropertyType320GetSystemStatus (Java, .NET, and C++ only)320Syntax320Parameters320Returns320GetValue Methods321IsAgent321Syntax321Parameters321Return Values321IsCCMSilentMonitor321Syntax321Parameters321Return Values321IsSupervisor322Syntax322Parameters322Return Values322IsValid322RemoveEventListener (Java and .NET)322Syntax322Parameters322Returns322RemoveListener Methods (C++ only)323Syntax323Remarks323RequestDesktopSettings323Syntax323Parameters323Return Values324Remarks324SetAgent324Syntax324Parameters324Return Values325SetCurrentCall326Syntax326Parameters326Return Values326Remarks326SetCurrentSilentMonitor326Syntax326Parameters327Return Values327Remarks327SetMessageFilter327Syntax327Parameters327Return Values327Remarks327SetSupervisorMonitorMode328Syntax328Parameters328Return Values328Notes On Message Filters328Message Filter Syntax329A Simple Example329General Form of Filter Syntax329Combining Filters329Filtering for Specific Events330Events Not Allowed In Filter Expressions330Filtering Skillgroup Statistics332Filtering CCM Based Silent Monitor Calls333Agent Object335Agent Object Properties335Agent Statistics336Methods342Arguments Parameters343DisableAgentStatistics343Syntax343Parameters344Return Value344DisableSkillGroupStatistics344Syntax344Parameters344Return Value344EnableAgentStatistics345Syntax345Parameters345Return Value345Remarks345EnableSkillGroupStatistics345Syntax345Parameters346Return Value346Remarks346GetAgentState346Syntax346Parameters346Return Value347GetAllProperties347GetElement347GetMonitoredAgent347Syntax347Parameters347Return Value347Remarks347GetMonitoredCall347Syntax347Parameters348Return Value348Remarks348GetNumProperties348GetPropertyName348GetPropertyType348GetSkillGroups348Syntax349Parameters349Return Value349GetValue Methods350IsAgent351Syntax351Parameters351Return Value351IsSupervisor351Syntax351Parameters351Return Values351Login352Syntax352Input Parameters352Return Values353Remarks353Logout354Syntax354Input Parameters354Return Values355Remarks355MakeCall355Syntax355Input Parameters355Return Value358Remarks359MakeEmergencyCall359Syntax359Parameters359Return Value359Remarks359QueryAgentState360Syntax360Input Parameters360Return Values361Remarks361ReportBadCallLine361Syntax361Parameters361Return Values361RequestAgentTeamList361Syntax361Parameters362Return Value362Remarks362RequestSupervisorAssist362Syntax362Parameters362Return Values363Remarks363SendChatMessage363Syntax363Parameters363Return Values364Remarks364SetAgentGreetingAction364Syntax364Input Parameters364Return Values364Remarks365SetAgentState365Syntax365Input Parameters365Return Values366Remarks366StartMonitoringAgent366Syntax366Parameters366Return Value367Remarks367StartMonitoringAgentTeam367Syntax367Parameters367Return Value367Remarks367StartMonitoringAllAgentTeams368Syntax368Parameters368Return Value368Remarks368StartMonitoringCall368Description368Syntax368Parameters369Return Value369Remarks369StopMonitoringAgent369Syntax369Parameters369Return Value370Remarks370StopMonitoringAgentTeam370Syntax370Parameters370Return Value370Remarks370StopMonitoringAllAgentTeams370Syntax371Parameters371Return Value371Remarks371SuperviseCall371Syntax371Parameters372Return Values372Remarks372Call Object373Current Call Concept373Accessing ECC Variables374Considerations for Passing Call Variables374Retrieving ECC Variable Values374Adding ECC Values375Properties376Methods378Arguments Parameters379Alternate379Syntax379Parameters380Return Values380Remarks380Answer380Syntax380Parameters381Return Value381Remarks381Clear381Syntax381Parameters381Return Value382Remarks382ClearConnection382Syntax382Parameters382Return Value383Remarks383Conference383Syntax383Parameters383Return Value384Remarks384GetCallContext384Syntax384Parameters384Return Value385Remarks385GetCallData385Syntax386Parameters386Return Value386Remarks386Hold386Syntax386Parameters387Return Value387Remarks387MakeConsultCall387Syntax387Parameters388Return Values391Remarks391Reconnect392Syntax392Parameters392Return Values392Remarks392Retrieve393Syntax393Parameters393Return Values393Remarks393SendDTMFSignal394Syntax394Parameters394Return Values394Remarks394SetCallData395Syntax395Parameters395Return Values395Remarks395SingleStepConference396Syntax396Parameters396Return Values397Remarks397SingleStepTransfer398Syntax398Parameters398Return Values398Snapshot398Syntax399Parameters399Return Values399Remarks399StartRecord399Syntax399Parameters399Return Value400Remarks400StopRecord400Syntax400Parameters400Return Value400Remarks401Transfer401Syntax401Parameters401Return Values401Remarks401SkillGroup Object403Properties403Statistics404Methods413DisableSkillGroupStatistics414Syntax414Parameters414Return Value414Remarks414DumpProperties414EnableSkillGroupStatistics415Syntax415Parameters415Return Value415Remarks415GetElement415GetValue Methods416IsValid416SetValue416Helper Classes417Arg Class418AddRef418Syntax418Parameters419Return Values419Clone419Syntax419Output Parameters419Return Values419CreateInstance419Syntax419Parameters420Return Values420Remarks420DumpArg420Syntax420Parameters420Return Values420GetArgType (.NET only)420Syntax421Parameters421Returns421GetType421Syntax421Output Parameters421Return Values421GetValue Methods422Syntax422Parameters423Return Values423Release423Syntax423Parameters424Return Values424SetValue424Syntax424Parameters424Return Values425Arguments Class425Usage Notes426AddItem (C++, COM, VB only)427Syntax427Parameters428Return Value428AddRef (C++ and COM only)428Syntax428Parameters428Return Values428Clear428Syntax429Parameters429Return Value429Clone429Syntax429Parameters429Return Value429CreateInstance (C++ and COM only)430Syntax430Parameters430Return Value430Remarks430DumpArgs430Syntax430Parameters430Return Values431GetElement Methods431Syntax431Parameters432Return Value432GetValue Methods432Syntax432Parameters434Return Values434Remarks434IsValid435Syntax435Parameters435Return Values435NumElements435Syntax435Parameters436Return Value436Release (C++ and COM only)436Syntax436Parameters436Return Values436RemoveItem436Syntax436Parameters437Return Values437SetElement (C++, COM, and VB only)437Syntax437Parameters437Return Values438SetValue438Syntax438Parameters439Return Values439Remarks439CILRefArg Class (C++, Java, and .NET only)439GetType440Syntax440Output Parameters440Return Values440GetUniqueObjectID (Java and .NET only)440Syntax440Parameters441Return Values441Remarks441GetValue441Syntax441Output Parameters441Return Values441SetValue441Syntax441Input Parameters441Return Values442CCtiOsException Class (C++, Java, and .NET only)442CCtiosException Constructor442Syntax442Input Parameters442Return Values443GetCode443Syntax443Parameters443Return Values443GetStatus443Syntax443Parameters443Return Values443GetString443Syntax443Parameters444Return Values444What444Syntax444Parameters444Return Values444CWaitObject Class444Methods445CreateWaitObject445DestroyWaitObject445DumpEventMask445Syntax445Parameters445Return Values446GetMask446Syntax446Parameters446Return Values446GetTriggerEvent446Syntax446Parameters446Return Values446InMask447Syntax447Parameters447Return Values447SetMask447Syntax447Parameters447Return Values447WaitOnMultipleEvents447Syntax448Parameters448Return Values448Logger Class (.NET and Java Only)448Methods448Logger() Constructor449Syntax449Parameters449Return Values449GetTraceMask449Syntax449Parameters449Return Values449SetTraceMask449Syntax450Parameters450Return Values450AddLogListener450Syntax450Parameters450Return Values450RemoveLogListener450Syntax450Parameters450Return Values451Trace451Syntax451Parameters451Return Values451LogWrapper Class (.NET and Java Only)451Methods452LogWrapper() Constructor452Syntax453Parameters453Return Values453LogWrapper(String filename) Constructor453Syntax453Parameters453Return Values453LogWrapper(string, int, int, int) Constructor453Syntax453Parameters454Return Values454Dispose (.NET Only)454Syntax454Parameters454Return Values454GetMaxDaysBeforeExpire (.NET Only)455Syntax455Parameters455Return Values455SetMaxNumberFiles455Syntax455Parameters455Return Values455GetMaxNumberFiles (.NET Only)455Syntax455Parameters456Return Values456SetMaxDaysBeforeExpire456Syntax456Parameters456Return Values456ProcessConfigFile456Syntax456Parameters456Return Values456SilentMonitorManager Object457Properties458Methods459Argument Parameter Rules460AcceptSilentMonitoring460Syntax460Parameters460Return Values461GetIPPhoneInfo461Syntax461Parameters461Return Value461GetSessionInfo462Syntax462Parameters462Return Values463GetSMSessionList463Syntax463Parameters464Return Values464IsMonitoredTarget464Syntax464Parameters464Return Value464SetIPPhoneInfo464Syntax465Parameters465Return Values466StartSilentMonitorRequest466Syntax466Parameters466Return Values467Remarks467StartSMMonitoredMode467Syntax467Parameters467Return Values468StartSMMonitoringMode468Syntax468Parameters468Return Values469StopSilentMonitorMode469Syntax469Parameters469Return Values469StopSilentMonitorRequest469Syntax469Parameters470Return Values470CTI OS Keywords and Enumerated Types471Keywords471Java CIL Keywords472.NET CIL Keywords472Enumerated Types472Java Interfaces473CTI OS Logging475Creating CTI OS Client Logs (COM and C++)475How to Install the Tracing Mechanism (COM and C++)475Setting Trace Levels (COM and C++)476Configuring Tracing (COM and C++)476Java CIL Logging Utilities477ILogEvents477LogEvent477Logger478Syntax478LogEventsAdapter478Syntax479Logging and Tracing (Java)479Logging and Tracing (.NET)479Using the Default Logging Mechanism480How to Log Trace Events Using the LogWrapper Class480Creating a Custom Logging Mechanism482How to Log Trace Events Using the Logger Class482Configuring Tracing (Java and .NET)482Size: 3.88 MBPages: 490Language: EnglishOpen manual
Developer's GuideTable of ContentsCTI OS Developer's Guide for Cisco ICM/IPCC Enterprise & Hosted Editions1Contents3About This Guide23Purpose23Audience23Conventions23Organization24Other Publications25Obtaining Documentation26Cisco.com26Product Documentation DVD26Ordering Documentation27Documentation Feedback27Field Alerts and Field Notices28Cisco Product Security Overview28Reporting Security Problems in Cisco Products29Obtaining Technical Assistance30Cisco Technical Support & Documentation Website30Submitting a Service Request31Definitions of Service Request Severity31Obtaining Additional Publications and Information32Introduction35Introduction to CTI35What is a CTI-Enabled Application?36Screen Pop36Agent State Control36Third-Party Call Control37Leveraging CTI Application Event Flow37Asynchronous Events37Request-Response Paradigm38Overview of CTI OS39Advantages of CTI OS as a CTI Development Interface40Key Benefits of CTI OS for CTI Application Developers41Illustrative Code Fragments42CTI OS Client Interface Library Architecture43Object Server Architecture43Client Interface Library Architecture44Connection Layer45Service Layer45Object Interface Layer46Custom Application46CIL Object Model46Session Object47Session Modes47Agent Object48Call Object48SkillGroup Object49Object Creation and Lifetime49Reference Counting49Call Object Lifetime50Agent Object Lifetime50Methods that Call AddRef()51Where To Go From Here58CIL Coding Conventions61CTIOS CIL Data Types62Asynchronous Program Execution63CIL Error Codes64COM Error Codes70Generic Interfaces71Arguments71Accessing Properties and Parameters with GetValue72Setting Object Properties and Request Parameters with SetValue73UniqueObjectID73Obtaining Objects from UniqueObjectIDs75Using Button Enablement Masks76Building Your Application79Setting Up Your Environment for .NET80Integrating with Microsoft Visual Studio .NET 200380Adding CTIOS Toolkit 7.1(1) Components to the “Add Reference” Dialog Box80Adding Cisco CTI OS ActiveX 7.1(1) Controls to the Toolbox81Integrating your Application with CTI OS via the CIL82Planning and Designing Your Integration82What Language and Interface to Use83Testing CTI Applications85Developing a Test Plan85Test Environment86Using the Samples86Using The CTI OS ActiveX Controls88Building a Simple Softphone with ActiveX Controls88Adding a Hook for Screenpops91CTIOS SessionResolver91Sample VB .NET code to Retrieve CallVariable191Using the COM CIL in Visual Basic 6.093Referencing COM Components in Visual Basic 6.094Registering for Events in Visual Basic 6.095Next Steps95Using the COM CIL in Visual C++ 7.1(1)96Adding COM Support to your Application96Important Note About COM Method Syntax97Using the CIL Dynamic Link Libraries97Creating an Instance of a COM Object97Subscribing and Unsubscribing to COM Events in C++98Next Steps99Using the C++ CIL and Static Libraries99Header Files and Libraries99Project Settings for Compiling and Linking100Subscribing for Events in C++104STLPort105Next Steps105Using the Java CIL Libraries105Next Steps106Using the .NET CIL Libraries106Next Steps107Connecting to the CTI OS Server107How to Create the Session Instance107Session Object Lifetime (C++ only)107How to Set the Event Listener and Subscribe to Events108How to Set Connection Parameters for the Session108How to Connect the Session to the CTI OS Server109Dealing with Connection Failures109Connection Failure Events110Connection Attempt Error Codes in Java and .NET CIL110Configuring the Agent to Automatically Log In after Failover111Stopping the Failover Procedure112How to Set the Connection Mode112Setting the Connection Mode in the OnConnection() Event Handler112When to Use Agent Mode112How to Select Agent Mode112When to Use Monitor Mode114Monitor Mode Filters115How to Select Monitor Mode117How to Deal with Failover In Monitor Mode118Settings Download118Disconnecting from CTI OS Server120Logging In and Logging Out an Agent121How to Log In an Agent121How to Handle Duplicate Log In Attempts123Overview123How to Create Values in the CTI OS Server Registry to Control Duplicate Log In Attempts124How to Get Registry Configuration Values to Your Desktop Application125How to Detect the Duplicate Log In Attempt in the Desktop Application127How to Handle Duplicate Log In Attempts in the Desktop Application128How to Log Out an Agent128Typical Logout Procedure129Working with Calls131Handling Multiple Calls131What is the Current Call?132How to Get a Call Object132How to Set the Current Call for the Session133Call Wrapup133Logout and NotReady Reason Codes134When Does the Application Receive the OnButtonEnablementChange() Event?135What to do in the OnButtonEnablementChange() Event135Checking Not Ready Bitmasks in OnButtonEnablementChange() Event136OnButtonEnablementChange() Event in Supervisor Desktop Applications138Making Requests138Preventing Multiple Duplicate Requests138Working with Events140Handling Events in Order140Coding Considerations for CIL Event Handling140Monitoring the OnCallEnd() Event141Working with Agent Statistics141Overview141How to Set Up an Agent Application to Receive Agent Statistics142How to Set Up a Monitor-Mode Application to Receive Agent Statistics143Accessing Agent Statistics147Overview147Registering to the eOnNewAgentStatisticsEvent() (JAVA)147Registering to the OnAgentStatistics() (C++, COM, and VB)148How to Get Agent Statistics through the Agent Instance148Changing Which Agent Statistics are Sent148Agent Statistics Computed by the Sample CTI OS Desktop149Working with Skill Group Statistics150Overview150How to Set Up a Monitor-Mode Application to Receive Skill Group Statistics150Accessing Skill Group Statistics153Overview153Registering to the eOnNewSkillGroupStatisticsEvent() (JAVA)153Registering to the OnSkillGroupStatisticsUpdated() (C++, COM, and VB)153Changing Which Skill Group Statistics are Sent154Skill Group Statistics Computed by the Sample CTI OS Desktop154Enabling Silent Monitor in your Application155Creating a Silent Monitor Object156Setting the Session Mode156Monitoring Mode156Monitored Mode157Initiating and Ending a Silent Monitor Session158Monitoring Client Code Sample158Monitored Client Code Sample159Shutting Down Silent Monitor Manager160Deployment of Custom CTI OS Applications160Deploying Applications Using the ActiveX Controls160Deploying Applications Using COM (But Not ActiveX Controls)168Deploying Applications using C++ CIL169Deploying Applications using .NET CIL169Custom Application and CTI OS Security170Building Supervisor Applications170General Flow171Monitored and Unmonitored Events171Requesting and Monitoring the Supervisor’s Team(s)172OnNewAgentTeamMember174OnNewAgentTeamMember Events and Supervisors174OnMonitoredAgentStateChange Events176OnMonitoredAgentInfo Event176Time in State176OnSkillInfo Event177Populating an Agent Grid177Monitoring Agents180OnSupervisorButtonChange182Monitored Call Events182Making Agents Ready and Logging Agents Out182Monitoring Calls184MonitoredCallEvents184Barging into Calls185Intercepting Calls187Updating Monitored Call Data187Sample Code in the CTI OS Toolkit188.NET Samples188CTI Toolkit Combo Desktop.NET188CtiOs Data Grid.NET190All Agents Sample.NET191All Calls Sample.NET191Java CIL Samples191Win32 Samples191CTI OS ActiveX Controls193Property Pages196Button Controls and Grid Controls196Button Controls196Grid Controls197Supervisor Status Bar197CTI OS ActiveX Control Descriptions197AgentStateCtl197AgentSelectCtl201AgentStatisticsCtl202AlternateCtl202AnswerCtl202BadLineCtl203CallAppearanceCtl203ChatCtl205ConferenceCtl205EmergencyAssistCtl207HoldCtl208MakeCallCtl209ReconnectCtl210SkillgroupStatisticsCtl211StatusBarCtl211SupervisorOnlyCtl212RecordCtl214TransferCtl214The Silent Monitor StandAlone ActiveX Control216Connect217Disconnect217StartMonitoring217StopMonitoring218SilentMonitor Com Object Events218Deployment220Sample Usage in Visual Basic 6.0220Event Interfaces and Events223Event Publication Model223ISessionEvents Interface225OnConnection225Syntax225Parameters225OnConnectionClosed226OnConnectionFailure226Syntax226Parameters226OnConnectionRejected227Syntax227Parameters227OnCTIOSFailure227Syntax227Parameters227Remarks229OnCurrentAgentReset229Syntax229Parameters230OnCurrentCallChanged230Syntax230Parameters230OnFailure Event230OnGlobalSettingsDownloadConf231Syntax231Parameters232OnHeartbeat243Syntax243Parameters243OnMissingHeartbeat243Syntax244Parameters244OnMonitorModeEstablished244Syntax244Parameters245OnSnapshotDeviceConf245Syntax245Parameters246Remarks246OnSnapshotSkillGroupList246OnTranslationRoute247Syntax247Parameters247ICallEvents Interface249OnAgentPrecallEvent249Syntax250Parameters250OnAgentPrecallAbortEvent251Syntax252Parameters252OnAlternateCallConf253Syntax253Parameters253OnAnswerCallConf253Syntax253Parameters253OnCallBegin254Syntax254Parameters254OnCallCleared257Syntax257Parameters258OnCallConnectionCleared258Syntax258Parameters259OnCallConferenced259Syntax259Parameters260OnCallDataUpdate262Syntax262Parameters263OnCallDelivered265Syntax265Parameters266OnCallDequeuedEvent267Syntax267Parameters267OnCallDiverted269Syntax269Parameters269OnCallEnd270Syntax270Parameters270OnCallEstablished271Syntax271Parameters271OnCallFailed273Syntax273Parameters273OnCallHeld274Syntax274Parameters274OnCallOriginated275Syntax275Parameters275OnCallQueuedEvent276Syntax276Parameters277OnCallReachedNetworkEvent278Syntax279Parameters279OnCallRetrieved280Syntax280Parameters280OnCallServiceInitiatedEvent280Syntax281Parameters281OnCallStartRecordingConf282Syntax282Parameters282OnCallStopRecordingConf282Syntax283Parameters283OnCallTransferred283Syntax283Parameters283OnClearCallConf286Syntax286Parameters286OnClearConnectionConf287Syntax287Parameters287OnConferenceCallConf288Syntax288Parameters288OnConsultationCallConf288Syntax288Parameters288OnControlFailureConf289Syntax289Parameters289OnHoldCallConf290Syntax290Parameters290OnMakePredictiveCallConf290OnReconnectCallConf291Syntax291Parameters291OnReleaseCallConf291OnRetrieveCallConf291Syntax291Parameters292OnSendDTMFConf292Syntax292Parameters292OnSnapshotCallConf292Syntax293Parameters293OnTransferCallConf296Syntax296Parameters296IAgentEvents Interface297OnAgentDeskSettingsConf297Syntax297Parameters297OnAgentInfoEvent300Syntax300Parameters300OnAgentStateChange301Syntax301Parameters301OnAgentStatistics303Syntax304Parameters304OnChatMessage304Syntax305Parameters305OnControlFailureConf305Syntax305Parameters305OnEmergencyCall313Syntax313Parameters313Remarks314OnLogoutFailed314Syntax314Parameters314OnMakeCallConf315Syntax315Parameters315OnNewAgentTeamMember316Syntax316Parameters316OnPostLogout318Syntax318Parameters319Remarks320OnPreLogout320Syntax320Parameters321OnQueryAgentStateConf322Syntax322Parameters322OnSetAgentModeEvent325Syntax325Parameters326OnSetAgentStateConf326Syntax327Parameters327OnStartMonitoringAgent327Syntax327Parameters327Remarks328OnStopMonitoringAgent328Syntax328Parameters328Remarks329OnUserMessageConf329ISkillGroupEvents Interface329OnSkillGroupStatisticsUpdated329Syntax329Parameters330OnSkillInfoEvent330Parameters330IButtonEnablementEvents331OnButtonEnablementChange331Parameters331OnSupervisorButtonChange334Parameters334Remarks335IMonitoredAgentEvents Interface335IMonitoredCallEvents Interface335ISilentMonitorEvents337OnCallRTPStarted337Syntax337Parameters337OnCallRTPStopped339Syntax339Parameters339OnStartSilentMonitorConf340Syntax340Parameters340OnSilentMonitorStartedEvent341Syntax341Parameters342OnSilentMonitorStartRequestedEvent343Syntax343Parameters343OnSilentMonitorSessionDisconnected344Syntax345Parameters345OnSilentMonitorStopRequestedEvent345Syntax345Parameters346OnSilentMonitorStatusReportEvent346Syntax347Parameters347OnStopSilentMonitorConf349Syntax349Parameters350OnRTPStreamTimedoutEvent350Syntax351Parameters351IGenericEvents Interface351OnEvent351Syntax351Java Adapter Classes352IAllInOne352IAgentEvents352IButtonEnablementEvents352ICallEvents353ISkillGroupEvents353Events in Java CIL353Events in .NET CIL354Getting All Event Parameters355How to Get All Parameters from an Event355CtiOs Object365Methods366DumpProperties366Syntax366Parameters367Return Value367GetAllProperties367Syntax367Parameters367Return Value368GetElement368Syntax368Parameters368Return Value369GetLastError (Java and .NET only)369Syntax369Parameters369Returns369Remarks370GetNumProperties370Syntax370Parameters370Return Value371GetPropertyName371Syntax371Parameters371Return Value371GetPropertyType372Syntax372Parameters372Return Value372GetValue373Syntax373Parameters373Return Value374GetValueArray374Syntax374Parameters375Return Value375GetValueBoolObj (Java and .NET only)375Syntax375Parameters375Returns376GetValueInt376Syntax376Parameters376Return Value377GetValueIntObj (Java only)377Syntax377Parameters377Returns377GetValueShortObj (Java only)378Syntax378Parameters378Return Value378GetValueString378Syntax378Parameters379Return Value379GetValueUIntObj (Java only)379Syntax379Parameters380Returns380GetValueUShortObj (Java only)380Syntax380Parameters380Returns380IsValid380Syntax381Parameters381Return Value381ReportError (Java and .NET only)382Syntax382Parameters382Returns382SetValue (Java and .NET)382Syntax382Parameters383Returns383SetValue (C++, COM, and VB)383Syntax383Parameters383Return Values384Remarks384Session Object385Session Object Properties386Methods388AddEventListener (Java and .NET only)390Syntax390Parameters391Returns391AddListener Methods (C++ only)391Syntax391Remarks392Connect392Syntax392Parameters392Return Values393Remarks393CreateSilentMonitorManager395Syntax395Parameters395Return Value396Remarks396CreateWaitObject (C++, Java, and .NET)396Syntax396Parameters396Return Values396DestroySilentMonitorManager397Syntax397Parameters397Return Values397Remarks397DestroyWaitObject (C++ , Java, and .NET)398Syntax398Parameters398Return Values398Remarks398DisableSkillGroupStatistics (C++ , Java, and .NET)398Syntax398Parameters399Return Value399Remarks399Disconnect399Syntax399Parameters399Return Values400DumpProperties400EnableSkillGroupStatistics (C++, Java, and .NET)400Syntax400Parameters400Return Value401Remarks401GetAllAgents401Syntax401Parameters401Return Values402Remarks403GetAllCalls405Syntax405Parameters405Return Values405Remarks407GetAllProperties409GetAllSkillGroups409Syntax409Parameters409Return Values409GetCurrentAgent410Syntax410Parameters410Return Values410GetCurrentCall411Syntax411Parameters411Return Values411GetCurrentSilentMonitor411Syntax412Return Values412GetElement412GetNumProperties412GetObjectFromObjectID412Syntax412Parameters413Return Values413Remarks413GetPropertyName414GetPropertyType414GetSystemStatus (Java, .NET, and C++ only)414Syntax414Parameters414Returns414GetValue Methods414IsAgent415Syntax415Parameters415Return Values415IsSupervisor415Syntax415Parameters416Return Values416IsValid416LogToServer416Syntax416Parameters416Return Values417RemoveEventListener (Java and .NET)417Syntax417Parameters417Returns417RemoveListener Methods (C++ only)418Syntax418Remarks418RequestDesktopSettings418Syntax419Parameters419Return Values419Remarks419SetAgent420Syntax420Parameters420Return Values420SetCurrentCall422Syntax422Parameters422Return Values422Remarks422SetCurrentSilentMonitor423Syntax423Parameters423Return Values423Remarks423SetMessageFilter424Syntax424Parameters424Return Values424Remarks424SetSupervisorMonitorMode425Syntax425Parameters425Return Values425Notes On Message Filters426Message Filter Syntax426A Simple Example426General Form of Filter Syntax427Combining Filters427Filtering for Specific Events428Events Not Allowed In Filter Expressions428Filtering Skillgroup Statistics430Agent Object433Agent Object Properties433Agent Statistics435Methods445Arguments Parameters447DisableAgentStatistics447Syntax447Parameters448Return Value448DisableSkillGroupStatistics448Syntax448Parameters449Return Value449EnableAgentStatistics449Syntax449Parameters449Return Value450Remarks450EnableSkillGroupStatistics450Syntax450Parameters450Return Value451Remarks451GetAgentState451Syntax451Parameters451Return Value452GetAllProperties452GetElement452GetMonitoredAgent452Syntax452Parameters452Return Value453Remarks453GetMonitoredCall453Syntax453Parameters453Return Value453Remarks453GetNumProperties454GetPropertyName454GetPropertyType454GetSkillGroups454Syntax455Parameters455Return Value455GetValue Methods457IsAgent457Syntax457Parameters457Return Value458IsSupervisor458Syntax458Parameters458Return Values458Login458Syntax459Input Parameters459Return Values460Remarks460Logout461Syntax461Input Parameters461Return Values462Remarks463MakeCall463Syntax463Input Parameters463Return Value468Remarks468MakeEmergencyCall468Syntax469Parameters469Return Value469Remarks469QueryAgentState470Syntax470Input Parameters471Return Values471Remarks471ReportBadCallLine471Syntax471Parameters472Return Values472RequestAgentTeamList472Syntax472Parameters472Return Value473Remarks473RequestSupervisorAssist473Syntax473Parameters473Return Values474Remarks474SendChatMessage474Syntax474Parameters474Return Values475Remarks475SetAgentState476Syntax476Input Parameters476Return Values477Remarks477StartMonitoringAgent478Syntax478Parameters478Return Value478Remarks478StartMonitoringAgentTeam479Syntax479Parameters479Return Value479Remarks480StartMonitoringAllAgentTeams480Syntax480Parameters480Return Value481Remarks481StartMonitoringCall481Description481Syntax481Parameters481Return Value482Remarks482StopMonitoringAgent482Syntax482Parameters482Return Value483Remarks483StopMonitoringAgentTeam483Syntax483Parameters483Return Value483Remarks484StopMonitoringAllAgentTeams484Syntax484Parameters484Return Value484Remarks485SuperviseCall485Syntax485Parameters485Return Values486Remarks486Call Object487Current Call Concept487Accessing ECC Variables488Retrieving ECC Variable Values488Adding ECC Values490Properties491Methods494Arguments Parameters496Alternate496Syntax496Parameters496Return Values497Remarks497Answer497Syntax498Parameters498Return Value498Remarks498Clear499Syntax499Parameters499Return Value499Remarks499ClearConnection500Syntax500Parameters500Return Value500Remarks501Conference501Syntax501Parameters502Return Value502Remarks502GetCallContext503Syntax503Parameters503Return Value503Remarks505GetCallData505Syntax505Parameters505Return Value505Remarks506Hold506Syntax506Parameters507Return Value507Remarks507MakeConsultCall507Syntax508Parameters508Return Values512Remarks513Reconnect513Syntax513Parameters514Return Values514Remarks514Retrieve515Syntax515Parameters515Return Values515Remarks515SendDTMFSignal516Syntax516Parameters516Return Values517Remarks517SetCallData518Syntax518Parameters518Return Values518Remarks518SingleStepConference519Syntax519Parameters519Return Values521Remarks522SingleStepTransfer522Syntax522Parameters523Return Values523Snapshot523Syntax523Parameters524Return Values524Remarks524StartRecord524Syntax524Parameters525Return Value525Remarks525StopRecord525Syntax525Parameters526Return Value526Remarks526Transfer526Syntax527Parameters527Return Values527Remarks527SkillGroup Object529Properties529Statistics530Methods549DisableSkillGroupStatistics550Syntax550Parameters550Return Value550Remarks551DumpProperties551EnableSkillGroupStatistics551Syntax551Parameters552Return Value552Remarks552GetElement552GetValue Methods552IsValid553SetValue553Helper Classes555Arg Class556AddRef557Syntax557Parameters557Return Values558Clone558Syntax558Output Parameters558Return Values558CreateInstance559Syntax559Parameters559Return Values559Remarks559DumpArg560Syntax560Parameters560Return Values560GetArgType (.NET only)560Syntax561Parameters561Returns561GetType561Syntax561Output Parameters561Return Values562GetValue Methods562Syntax562Parameters563Return Values564Release564Syntax564Parameters564Return Values565SetValue565Syntax565Parameters565Return Values566Arguments Class567Usage Notes568AddItem (C++, COM, VB only)569Syntax569Parameters570Return Value571AddRef (C++ and COM only)571Syntax571Parameters571Return Values571Clear571Syntax572Parameters572Return Value572Clone572Syntax572Parameters573Return Value573CreateInstance (C++ and COM only)573Syntax573Parameters573Return Value573Remarks574DumpArgs574Syntax574Parameters574Return Values574GetElement Methods575Syntax575Parameters576Return Value576GetValue Methods577Syntax577Parameters579Return Values579Remarks580IsValid580Syntax580Parameters580Return Values581NumElements581Syntax581Parameters581Return Value581Release (C++ and COM only)582Syntax582Parameters582Return Values582RemoveItem582Syntax582Parameters583Return Values583SetElement (C++, COM, and VB only)583Syntax583Parameters584Return Values584SetValue584Syntax584Parameters586Return Values586Remarks586CILRefArg Class (C++, Java, and .NET only)587GetType587Syntax587Output Parameters588Return Values588GetUniqueObjectID (Java and .NET only)588Syntax588Parameters588Return Values588Remarks588GetValue589Syntax589Output Parameters589Return Values589SetValue589Syntax589Input Parameters589Return Values590CCtiOsException Class (C++, Java, and .NET only)590CCtiosException Constructor590Syntax590Input Parameters591Return Values591GetCode591Syntax591Parameters591Return Values591GetStatus592Syntax592Parameters592Return Values592GetString592Syntax592Parameters592Return Values592What593Syntax593Parameters593Return Values593CWaitObject Class593Methods593CreateWaitObject594DestroyWaitObject594DumpEventMask594Syntax595Parameters595Return Values595GetMask595Syntax595Parameters595Return Values595GetTriggerEvent596Syntax596Parameters596Return Values596InMask596Syntax596Parameters596Return Values597SetMask597Syntax597Parameters597Return Values597WaitOnMultipleEvents597Syntax597Parameters598Return Values598Logger Class (.NET and Java Only)598Methods598Logger() Constructor599Syntax599Parameters599Return Values599GetTraceMask600Syntax600Parameters600Return Values600SetTraceMask600Syntax600Parameters600Return Values600AddLogListener601Syntax601Parameters601Return Values601RemoveLogListener601Syntax601Parameters601Return Values602Trace602Syntax602Parameters602Return Values602LogWrapper Class (.NET and Java Only)602Methods603LogWrapper() Constructor604Syntax604Parameters604Return Values604LogWrapper(String filename) Constructor605Syntax605Parameters605Return Values605LogWrapper(string, int, int, int) Constructor605Syntax605Parameters606Return Values606Dispose (.NET Only)606Syntax607Parameters607Return Values607GetMaxDaysBeforeExpire (.NET Only)607Syntax607Parameters607Return Values607SetMaxNumberFiles607Syntax608Parameters608Return Values608GetMaxNumberFiles (.NET Only)608Syntax608Parameters608Return Values608SetMaxDaysBeforeExpire609Syntax609Parameters609Return Values609ProcessConfigFile609Syntax609Parameters609Return Values610SilentMonitorManager Object611Properties612Methods613Argument Parameter Rules614AcceptSilentMonitoring614Syntax615Parameters615Return Values616GetIPPhoneInfo616Syntax616Parameters617Return Value617GetSessionInfo618Syntax618Parameters618Return Values619GetSMSessionList620Syntax620Parameters620Return Values620IsMonitoredTarget621Syntax621Parameters621Return Value621SetIPPhoneInfo621Syntax621Parameters622Return Values623StartSilentMonitorRequest623Syntax623Parameters624Return Values624Remarks625StartSMMonitoredMode625Syntax625Parameters625Return Values626StartSMMonitoringMode627Syntax627Parameters627Return Values627StopSilentMonitorMode628Syntax628Parameters628Return Values628StopSilentMonitorRequest628Syntax628Parameters629Return Values629CTI OS Keywords and Enumerated Types631Keywords631Java CIL Keywords632.NET CIL Keywords632Enumerated Types632Java Interfaces634CTI OS Logging637Creating CTI OS Client Logs (COM and C++)637How to Install the Tracing Mechanism (COM and C++)638Setting Trace Levels (COM and C++)638Configuring Tracing (COM and C++)638Java CIL Logging Utilities639ILogEvents640LogEvent640Logger640Syntax641LogEventsAdapter641Syntax642Logging and Tracing (Java)642Logging and Tracing (.NET)643Using the Default Logging Mechanism643How to Log Trace Events Using the LogWrapper Class643Creating a Custom Logging Mechanism646How to Log Trace Events Using the Logger Class647Configuring Tracing (Java and .NET)648Migrating From CTI OS 6.0649Introduction649Migrating a C++ CIL application650Migrating a COM CIL Application651Migrating a C++ Application that uses COM CIL651Migrating a Visual Basic 6.0 to use COM CIL652Migrate to Visual Basic .NET and use .NET CIL653Migrate to Visual Basic .NET and use .COM CIL653Migrating a Visual Basic 6.0 to Use COM CIL655Migrate to Visual Basic .NET and use .NET CIL655Migrate to Visual Basic .NET and use CTIOS ActiveX Controls656Index659Size: 10.5 MBPages: 668Language: EnglishOpen manual
Developer's GuideTable of ContentsCTI OS Developer's Guide for Cisco ICM/IPCC Enterprise & Hosted Editions1Contents3About This Guide19Purpose19Audience19Conventions19Organization20Other Publications21Obtaining Documentation21Cisco.com21Product Documentation DVD21Ordering Documentation22Documentation Feedback22Cisco Product Security Overview22Reporting Security Problems in Cisco Products23Obtaining Technical Assistance23Cisco Technical Support & Documentation Website23Submitting a Service Request24Definitions of Service Request Severity24Obtaining Additional Publications and Information25Introduction27Introduction to CTI27What is a CTI-Enabled Application?28Screen Pop28Agent State Control28Third-Party Call Control29Leveraging CTI Application Event Flow29Asynchronous Events29Request-Response Paradigm30Overview of CTI OS31Advantages of CTI OS as Interface to ICM32Key Benefits of CTI OS for CTI Application Developers33Illustrative Code Fragments34CTI OS Client Interface Library Architecture35Object Server Architecture35Client Interface Library Architecture36Connection Layer37Service Layer37Object Interface Layer38Custom Application38CIL Object Model38Session Object39Session Modes39Agent Object40Call Object40SkillGroup Object41Object Creation and Lifetime41Reference Counting41Call Object Lifetime42Agent Object Lifetime42Methods that Call AddRef()43Where To Go From Here50CIL Coding Conventions53CTIOS CIL Data Types54Asynchronous Program Execution55CIL Error Codes56COM Error Codes62Generic Interfaces63Arguments63Accessing Properties and Parameters with GetValue64Setting Object Properties and Request Parameters with SetValue65UniqueObjectID65Obtaining Objects from UniqueObjectIDs67Using Button Enablement Masks68Building Your Application71Setting Up Your Environment for .NET72Integrating with Microsoft Visual Studio .NET 200372Adding CTIOS Toolkit 7.0 Components to the “Add Reference” Dialog Box72Adding Cisco CTI OS ActiveX 7.0 Controls to the Toolbox73Integrating your Application with CTI OS via the CIL74Planning and Designing Your Integration74What Language and Interface to Use75Testing CTI Applications77Developing a Test Plan77Test Environment78Using the Samples78Using The CTI OS ActiveX Controls80Building a Simple Softphone with ActiveX Controls80Adding a Hook for Screenpops83CTIOS SessionResolver83Sample VB .NET code to Retrieve CallVariable183Using the COM CIL in Visual Basic 6.085Referencing COM Components in Visual Basic 6.086Registering for Events in Visual Basic 6.087Next Steps87Using the COM CIL in Visual C++ 7.088Adding COM Support to your Application88Important Note About COM Method Syntax89Using the CIL Dynamic Link Libraries89Creating an Instance of a COM Object89Subscribing and Unsubscribing to COM Events in C++90Next Steps91Using the C++ CIL and Static Libraries91Header Files and Libraries91Project Settings for Compiling and Linking92Subscribing for Events in C++96STLPort97Next Steps97Using the Java CIL Libraries97Next Steps98Using the .NET CIL Libraries98Next Steps99Connecting to the CTI OS Server99How to Create the Session Instance99Session Object Lifetime (C++ only)99How to Set the Event Listener and Subscribe to Events100How to Set Connection Parameters for the Session100How to Connect the Session to the CTI OS Server101Dealing with Connection Failures101Connection Failure Events102Connection Attempt Error Codes in Java and .NET CIL102Configuring the Agent to Automatically Log In after Failover103Stopping the Failover Procedure104How to Set the Connection Mode104Setting the Connection Mode in the OnConnection() Event Handler104When to Use Agent Mode104How to Select Agent Mode104When to Use Monitor Mode106Monitor Mode Filters107How to Select Monitor Mode109How to Deal with Failover In Monitor Mode110Disconnecting from CTI OS Server110Logging In and Logging Out an Agent112How to Log In an Agent112How to Handle Duplicate Log In Attempts114Overview114How to Create Values in the CTI OS Server Registry to Control Duplicate Log In Attempts114How to Get Registry Configuration Values to Your Desktop Application116How to Detect the Duplicate Log In Attempt in the Desktop Application118How to Handle Duplicate Log In Attempts in the Desktop Application119How to Log Out an Agent119Typical Logout Procedure120Working with Calls122Handling Multiple Calls122What is the Current Call?123How to Get a Call Object123How to Set the Current Call for the Session124Call Wrapup124Logout and NotReady Reason Codes125When Does the Application Receive the OnButtonEnablementChange() Event?126What to do in the OnButtonEnablementChange() Event126Checking Not Ready Bitmasks in OnButtonEnablementChange() Event127OnButtonEnablementChange() Event in Supervisor Desktop Applications129Making Requests129Preventing Multiple Duplicate Requests129Working with Events131Handling Events in Order131Coding Considerations for CIL Event Handling131Monitoring the OnCallEnd() Event132Working with Agent Statistics132Overview132How to Set Up an Agent Application to Receive Agent Statistics133How to Set Up a Monitor-Mode Application to Receive Agent Statistics134Accessing Agent Statistics138Overview138Registering to the eOnNewAgentStatisticsEvent() (JAVA)138Registering to the OnAgentStatistics() (C++, COM, and VB)139How to Get Agent Statistics through the Agent Instance139Changing Which Agent Statistics are Sent139Agent Statistics Computed by the Sample CTI OS Desktop140Working with Skill Group Statistics141Overview141How to Set Up a Monitor-Mode Application to Receive Skill Group Statistics141Accessing Skill Group Statistics144Overview144Registering to the eOnNewSkillGroupStatisticsEvent() (JAVA)144Registering to the OnSkillGroupStatisticsUpdated() (C++, COM, and VB)144Changing Which Skill Group Statistics are Sent145Skill Group Statistics Computed by the Sample CTI OS Desktop145Enabling Silent Monitor in your Application146Creating a Silent Monitor Object147Setting the Session Mode147Monitoring Mode148Monitored Mode148Initiating and Ending a Silent Monitor Session148Monitoring Client Code Sample149Monitored Client Code Sample150Shutting Down Silent Monitor Manager150Silent Monitor: Developer Information151Deployment of Custom CTI OS Applications152Deploying Applications Using the ActiveX Controls152Deploying Applications Using COM (But Not ActiveX Controls)160Deploying Applications using C++ CIL161Deploying Applications using .NET CIL161Custom Application and CTI OS Security162Building Supervisor Applications162General Flow163Monitored and Unmonitored Events163Requesting and Monitoring the Supervisor’s Team(s)164NewAgentTeamMember166NewAgentTeamMember Events and Supervisors166MonitoredAgentStateEvent167MonitoredAgentInfoEvent168Time in State168SkillInfoEvent168Populating an Agent Grid169Monitoring Agents171SupervisorButtonChange174MonitoredCallEvents174Making Agents Ready and Logging Agents Out174Monitoring Calls176MonitoredCallEvents176Barging into Calls177Intercepting Calls179Updating Monitored Call Data179Sample Code in the CTI OS Toolkit180.NET Samples180CTI Toolkit Combo Desktop.NET180CtiOs Data Grid.NET182All Agents Sample.NET183All Calls Sample.NET183Java CIL Samples183Win32 Samples183CTI OS ActiveX Controls185Property Pages187Button Controls and Grid Controls188Button Controls188Grid Controls188Supervisor Status Bar189CTI OS ActiveX Control Descriptions189AgentStateCtl189AgentSelectCtl193AgentStatisticsCtl194AlternateCtl194AnswerCtl194BadLineCtl195CallAppearanceCtl195ChatCtl197ConferenceCtl197EmergencyAssistCtl199HoldCtl200MakeCallCtl201ReconnectCtl202SkillgroupStatisticsCtl203StatusBarCtl203SupervisorOnlyCtl204RecordCtl206TransferCtl206The Silent Monitor StandAlone ActiveX Control208Connect209Disconnect209StartMonitoring209StopMonitoring210SilentMonitor Com Object Events210Deployment212Sample Usage in Visual Basic 6.0212Event Interfaces and Events215Event Publication Model215ISessionEvents Interface216OnConnection217Syntax217Parameters217OnConnectionClosed217OnConnectionFailure218Syntax218Parameters218OnConnectionRejected218Syntax218Parameters219OnCTIOSFailure219Syntax219Parameters219Remarks221OnCurrentAgentReset221Syntax221Parameters222OnCurrentCallChanged222Syntax222Parameters222OnFailure Event222OnGlobalSettingsDownloadConf223Syntax223Parameters224OnHeartbeat233Syntax233Parameters233OnMissingHeartbeat234Syntax234Parameters234OnMonitorModeEstablished235Syntax235Parameters235OnSnapshotDeviceConf236Syntax236Parameters236Remarks237OnSnapshotSkillGroupList237OnTranslationRoute237Syntax237Parameters238ICallEvents Interface239OnAgentPrecallEvent239OnAgentPrecallAbortEvent239OnAlternateCallConf240Syntax240Parameters240OnAnswerCallConf240Syntax240Parameters240OnCallBegin241Syntax241Parameters241OnCallCleared244Syntax244Parameters244OnCallConnectionCleared245Syntax245Parameters245OnCallConferenced246Syntax246Parameters246OnCallDataUpdate249Syntax249Parameters249OnCallDelivered252Syntax252Parameters252OnCallDequeuedEvent254Syntax254Parameters254OnCallDiverted255Syntax255Parameters256OnCallEnd257Syntax257Parameters257OnCallEstablished258Syntax258Parameters258OnCallFailed259Syntax260Parameters260OnCallHeld260Syntax260Parameters261OnCallOriginated261Syntax261Parameters261OnCallQueuedEvent263Syntax263Parameters263OnCallReachedNetworkEvent265Syntax265Parameters265OnCallRetrieved266Syntax266Parameters267OnCallServiceInitiatedEvent267Syntax267Parameters268OnCallStartRecordingConf269Syntax269Parameters269OnCallStopRecordingConf269Syntax269Parameters270OnCallTransferred270Syntax270Parameters270OnClearCallConf273Syntax273Parameters273OnClearConnectionConf274Syntax274Parameters274OnConferenceCallConf274Syntax274Parameters275OnConsultationCallConf275Syntax275Parameters275OnControlFailureConf275Syntax276Parameters276OnHoldCallConf276Syntax277Parameters277OnMakePredictiveCallConf277OnReconnectCallConf277Syntax277Parameters277OnReleaseCallConf278OnRetrieveCallConf278Syntax278Parameters278OnSendDTMFConf278Syntax279Parameters279OnSnapshotCallConf279Syntax279Parameters279OnTransferCallConf282Syntax282Parameters282IAgentEvents Interface283OnAgentInfoEvent283Syntax283Parameters283OnAgentStateChange284Syntax284Parameters284OnAgentStatistics286Syntax286Parameters287OnChatMessage287Syntax287Parameters287OnControlFailureConf288Syntax288Parameters288OnEmergencyCall295Syntax295Parameters296Remarks297OnLogoutFailed297Syntax297Parameters297OnMakeCallConf297Syntax298Parameters298OnNewAgentTeamMember298Syntax298Parameters299OnPostLogout301Syntax301Parameters301Remarks303OnPreLogout303Syntax303Parameters303OnQueryAgentStateConf305Syntax305Parameters305OnSetAgentModeEvent308Syntax308Parameters309OnSetAgentStateConf309Syntax310Parameters310OnStartMonitoringAgent310Syntax310Parameters310Remarks311OnStopMonitoringAgent311Syntax311Parameters311Remarks312OnUserMessageConf312ISkillGroupEvents Interface312OnSkillGroupStatisticsUpdated312Syntax312Parameters313OnSkillInfoEvent313Parameters313IButtonEnablementEvents314OnButtonEnablementChange314Parameters314OnSupervisorButtonChange317Parameters317Remarks318IMonitoredAgentEvents Interface318IMonitoredCallEvents Interface318ISilentMonitorEvents320OnStartSilentMonitorConf320Syntax320Parameters320OnSilentMonitorStartedEvent321Syntax321Parameters322OnSilentMonitorStartRequestedEvent323Syntax323Parameters323OnSilentMonitorSessionDisconnected324Syntax325Parameters325OnSilentMonitorStopRequestedEvent325Syntax325Parameters326OnSilentMonitorStatusReportEvent326Syntax327Parameters327OnStopSilentMonitorConf329Syntax329Parameters329OnRTPStreamTimedoutEvent330Syntax330Parameters331IGenericEvents Interface331OnEvent331Syntax331Events in Java CIL332Events in .NET CIL332Getting All Event Parameters334How to Get All Parameters from an Event334CtiOs Object343Methods344DumpProperties344Syntax344Parameters345Return Value345GetAllProperties345Syntax345Parameters345Return Value346GetElement346Syntax346Parameters346Return Value347GetLastError (Java and .NET only)347Syntax347Parameters347Returns347Remarks348GetNumProperties348Syntax348Parameters348Return Value349GetPropertyName349Syntax349Parameters349Return Value349GetPropertyType350Syntax350Parameters350Return Value350GetValue351Syntax351Parameters351Return Value352GetValueArray352Syntax352Parameters353Return Value353GetValueBoolObj (Java and .NET only)353Syntax353Parameters353Returns354GetValueInt354Syntax354Parameters354Return Value355GetValueIntObj (Java only)355Syntax355Parameters355Returns355GetValueShortObj (Java only)356Syntax356Parameters356Return Value356GetValueString356Syntax356Parameters357Return Value357GetValueUIntObj (Java only)357Syntax357Parameters358Returns358GetValueUShortObj (Java only)358Syntax358Parameters358Returns358IsValid358Syntax359Parameters359Return Value359ReportError (Java and .NET only)360Syntax360Parameters360Returns360SetValue (Java and .NET)360Syntax360Parameters361Returns361SetValue (C++, COM, and VB)361Syntax361Parameters361Return Values362Remarks362Session Object363Session Object Properties364Methods366AddEventListener (Java and .NET only)368Syntax368Parameters369Returns369AddListener Methods (C++ only)369Syntax369Remarks370Connect370Syntax370Parameters370Return Values371Remarks371CreateSilentMonitorManager373Syntax373Parameters373Return Value374Remarks374CreateWaitObject (C++, Java, and .NET)374Syntax374Parameters374Return Values374DestroySilentMonitorManager375Syntax375Parameters375Return Values375Remarks375DestroyWaitObject (C++ , Java, and .NET)376Syntax376Parameters376Return Values376Remarks376DisableSkillGroupStatistics (C++ , Java, and .NET)376Syntax376Parameters377Return Value377Remarks377Disconnect377Syntax377Parameters377Return Values378DumpProperties378EnableSkillGroupStatistics (C++, Java, and .NET)378Syntax378Parameters378Return Value379Remarks379GetAllAgents379Syntax379Parameters379Return Values380Remarks381GetAllCalls383Syntax383Parameters383Return Values383Remarks385GetAllProperties387GetAllSkillGroups387Syntax387Parameters387Return Values387GetCurrentAgent388Syntax388Parameters388Return Values388GetCurrentCall389Syntax389Parameters389Return Values389GetCurrentSilentMonitor389Syntax390Return Values390GetElement390GetNumProperties390GetObjectFromObjectID390Syntax390Parameters391Return Values391Remarks391GetPropertyName392GetPropertyType392GetSystemStatus (Java, .NET, and C++ only)392Syntax392Parameters392Returns392GetValue Methods392IsAgent393Syntax393Parameters393Return Values393IsSupervisor393Syntax393Parameters394Return Values394IsValid394LogToServer394Syntax394Parameters394Return Values395RemoveEventListener (Java and .NET)395Syntax395Parameters395Returns395RemoveListener Methods (C++ only)396Syntax396Remarks396RequestDesktopSettings396Syntax397Parameters397Return Values397Remarks397SetAgent398Syntax398Parameters398Return Values398SetCurrentCall400Syntax400Parameters400Return Values400Remarks400SetCurrentSilentMonitor400Syntax401Parameters401Return Values401Remarks401SetMessageFilter401Syntax401Parameters402Return Values402Remarks402SetSupervisorMonitorMode402Syntax402Parameters403Return Values403Notes On Message Filters403Message Filter Syntax403A Simple Example404General Form of Filter Syntax404Combining Filters405Filtering for Specific Events405Events Not Allowed In Filter Expressions406Filtering Skillgroup Statistics407Agent Object411Agent Object Properties411Agent Statistics413Methods422Arguments Parameters424DisableAgentStatistics425Syntax425Parameters425Return Value425DisableSkillGroupStatistics426Syntax426Parameters426Return Value426EnableAgentStatistics426Syntax427Parameters427Return Value427Remarks427EnableSkillGroupStatistics428Syntax428Parameters428Return Value428Remarks429GetAgentState429Syntax429Parameters429Return Value429GetAllProperties429GetElement429GetMonitoredAgent430Syntax430Parameters430Return Value430Remarks430GetMonitoredCall430Syntax430Parameters431Return Value431Remarks431GetNumProperties431GetPropertyName431GetPropertyType431GetSkillGroups432Syntax432Parameters432Return Value433GetValue Methods435IsAgent435Syntax435Parameters435Return Value435IsSupervisor435Syntax436Parameters436Return Values436Login436Syntax436Input Parameters437Return Values438Remarks438Logout439Syntax439Input Parameters439Return Values440Remarks440MakeCall440Syntax440Input Parameters441Return Value446Remarks446MakeEmergencyCall446Syntax446Parameters447Return Value447Remarks447QueryAgentState448Syntax448Input Parameters448Return Values449Remarks449ReportBadCallLine449Syntax449Parameters449Return Values450RequestAgentTeamList450Syntax450Parameters450Return Value450Remarks451RequestSupervisorAssist451Syntax451Parameters451Return Values451Remarks452SendChatMessage452Syntax452Parameters452Return Values453Remarks453SetAgentState453Syntax453Input Parameters454Return Values455Remarks455StartMonitoringAgent455Syntax455Parameters456Return Value456Remarks456StartMonitoringAgentTeam456Syntax456Parameters457Return Value457Remarks457StartMonitoringAllAgentTeams457Syntax457Parameters458Return Value458Remarks458StartMonitoringCall458Description458Syntax459Parameters459Return Value459Remarks459StopMonitoringAgent459Syntax459Parameters460Return Value460Remarks460StopMonitoringAgentTeam460Syntax460Parameters461Return Value461Remarks461StopMonitoringAllAgentTeams461Syntax461Parameters462Return Value462Remarks462SuperviseCall462Syntax462Parameters463Return Values463Remarks463Call Object465Current Call Concept465Accessing ECC Variables466Retrieving ECC Variable Values466Adding ECC Values468Properties469Methods472Arguments Parameters474Alternate474Syntax474Parameters474Return Values475Remarks475Answer475Syntax476Parameters476Return Value476Remarks476Clear477Syntax477Parameters477Return Value477Remarks477ClearConnection478Syntax478Parameters478Return Value478Remarks479Conference479Syntax479Parameters480Return Value480Remarks480GetCallContext481Syntax481Parameters481Return Value481Remarks483GetCallData483Syntax483Parameters483Return Value483Remarks484Hold484Syntax484Parameters485Return Value485Remarks485MakeConsultCall485Syntax486Parameters486Return Values490Remarks491Reconnect491Syntax491Parameters492Return Values492Remarks492Retrieve493Syntax493Parameters493Return Values493Remarks493SendDTMFSignal494Syntax494Parameters494Return Values495Remarks495SetCallData496Syntax496Parameters496Return Values496Remarks496SingleStepConference497Syntax497Parameters497Return Values499Remarks500SingleStepTransfer500Syntax500Parameters501Return Values501Snapshot501Syntax501Parameters502Return Values502Remarks502StartRecord502Syntax502Parameters503Return Value503Remarks503StopRecord503Syntax503Parameters504Return Value504Remarks504Transfer504Syntax505Parameters505Return Values505Remarks505SkillGroup Object507Properties507Statistics508Methods527DisableSkillGroupStatistics528Syntax528Parameters528Return Value528Remarks529DumpProperties529EnableSkillGroupStatistics529Syntax529Parameters530Return Value530Remarks530GetElement530GetValue Methods530IsValid531SetValue531Helper Classes533Arg Class534AddRef535Syntax535Parameters535Return Values536Clone536Syntax536Output Parameters536Return Values536CreateInstance537Syntax537Parameters537Return Values537Remarks537DumpArg538Syntax538Parameters538Return Values538GetArgType (.NET only)538Syntax539Parameters539Returns539GetType539Syntax539Output Parameters539Return Values540GetValue Methods540Syntax540Parameters541Return Values542Release542Syntax542Parameters542Return Values543SetValue543Syntax543Parameters543Return Values544Arguments Class545Usage Notes546AddItem (C++, COM, VB only)547Syntax547Parameters548Return Value549AddRef (C++ and COM only)549Syntax549Parameters549Return Values549Clear549Syntax550Parameters550Return Value550Clone550Syntax550Parameters551Return Value551CreateInstance (C++ and COM only)551Syntax551Parameters551Return Value551Remarks552DumpArgs552Syntax552Parameters552Return Values552GetElement Methods553Syntax553Parameters554Return Value554GetValue Methods555Syntax555Parameters557Return Values557Remarks558IsValid558Syntax558Parameters558Return Values559NumElements559Syntax559Parameters559Return Value559Release (C++ and COM only)560Syntax560Parameters560Return Values560RemoveItem560Syntax560Parameters561Return Values561SetElement (C++, COM, and VB only)561Syntax561Parameters562Return Values562SetValue562Syntax562Parameters564Return Values564Remarks564CILRefArg Class (C++, Java, and .NET only)565GetType565Syntax565Output Parameters566Return Values566GetUniqueObjectID (Java and .NET only)566Syntax566Parameters566Return Values566Remarks566GetValue567Syntax567Output Parameters567Return Values567SetValue567Syntax567Input Parameters567Return Values568CCtiOsException Class (C++, Java, and .NET only)568CCtiosException Constructor568Syntax568Input Parameters569Return Values569GetCode569Syntax569Parameters569Return Values569GetStatus570Syntax570Parameters570Return Values570GetString570Syntax570Parameters570Return Values570What571Syntax571Parameters571Return Values571CWaitObject Class571Methods571CreateWaitObject572DestroyWaitObject572DumpEventMask572Syntax573Parameters573Return Values573GetMask573Syntax573Parameters573Return Values573GetTriggerEvent574Syntax574Parameters574Return Values574InMask574Syntax574Parameters574Return Values575SetMask575Syntax575Parameters575Return Values575WaitOnMultipleEvents575Syntax575Parameters576Return Values576Logger Class (.NET and Java Only)576Methods576Logger() Constructor577Syntax577Parameters577Return Values577GetTraceMask578Syntax578Parameters578Return Values578SetTraceMask578Syntax578Parameters578Return Values578AddLogListener579Syntax579Parameters579Return Values579RemoveLogListener579Syntax579Parameters579Return Values580Trace580Syntax580Parameters580Return Values580LogWrapper Class (.NET and Java Only)580Methods581LogWrapper() Constructor582Syntax582Parameters582Return Values582LogWrapper(String filename) Constructor583Syntax583Parameters583Return Values583LogWrapper(string, int, int, int) Constructor583Syntax583Parameters584Return Values584Dispose (.NET Only)584Syntax585Parameters585Return Values585GetMaxDaysBeforeExpire (.NET Only)585Syntax585Parameters585Return Values585SetMaxNumberFiles585Syntax586Parameters586Return Values586GetMaxNumberFiles (.NET Only)586Syntax586Parameters586Return Values586SetMaxDaysBeforeExpire587Syntax587Parameters587Return Values587ProcessConfigFile587Syntax587Parameters587Return Values588SilentMonitorManager Object589Properties590Methods591Argument Parameter Rules592AcceptSilentMonitoring592Syntax593Parameters593Return Values594GetIPPhoneInfo594Syntax594Parameters595Return Value595GetSessionInfo596Syntax596Parameters596Return Values597GetSMSessionList598Syntax598Parameters598Return Values598IsMonitoredTarget599Syntax599Parameters599Return Value599SetIPPhoneInfo599Syntax599Parameters600Return Values601StartSilentMonitorRequest601Syntax601Parameters602Return Values602Remarks603StartSMMonitoredMode603Syntax603Parameters603Return Values604StartSMMonitoringMode604Syntax604Parameters604Return Values604StopSilentMonitorMode604Syntax605Parameters605Return Values605StopSilentMonitorRequest605Syntax605Parameters605Return Values606CTI OS Keywords and Enumerated Types607Keywords607Java CIL Keywords608.NET CIL Keywords608Enumerated Types608CTI OS Logging611Creating CTI OS Client Logs (COM and C++)611How to Install the Tracing Mechanism (COM and C++)612Setting Trace Levels (COM and C++)612Configuring Tracing (COM and C++)612Logging and Tracing (Java)613Logging and Tracing (.NET)614Using the Default Logging Mechanism615How to Log Trace Events Using the LogWrapper Class615Creating a Custom Logging Mechanism618How to Log Trace Events Using the Logger Class618Configuring Tracing (Java and .NET)619Migrating From CTI OS 6.0621Introduction621Migrating a C++ CIL application622Migrating a COM CIL Application623Migrating a C++ Application that uses COM CIL623Migrating a Visual Basic 6.0 to use COM CIL624Migrate to Visual Basic .NET and use .NET CIL625Migrate to Visual Basic .NET and use .COM CIL625Migrating a Visual Basic 6.0 to Use COM CIL627Migrate to Visual Basic .NET and use .NET CIL627Migrate to Visual Basic .NET and use CTIOS ActiveX Controls628Index631Size: 9.99 MBPages: 640Language: EnglishOpen manual
Developer's GuideTable of ContentsCTI OS Developer's Guide for Cisco ICM/IPCC Enterprise & Hosted Editions1Contents3About This Guide19Purpose19Audience19Conventions19Organization20Other Publications21Obtaining Documentation21Cisco.com21Product Documentation DVD21Ordering Documentation22Documentation Feedback22Field Alerts and Field Notices22Cisco Product Security Overview22Reporting Security Problems in Cisco Products23Obtaining Technical Assistance23Cisco Technical Support & Documentation Website24Submitting a Service Request24Definitions of Service Request Severity24Obtaining Additional Publications and Information25Introduction27Introduction to CTI27What is a CTI-Enabled Application?27Screen Pop27Agent State Control28Third-Party Call Control28Leveraging CTI Application Event Flow28Asynchronous Events28Request-Response Paradigm29Overview of CTI OS30Advantages of CTI OS as a CTI Development Interface30Key Benefits of CTI OS for CTI Application Developers31Illustrative Code Fragments31CTI OS Client Interface Library Architecture33Object Server Architecture33Client Interface Library Architecture33Connection Layer34Service Layer34Object Interface Layer35Custom Application35CIL Object Model35Session Object35Session Modes36Agent Object36Call Object36SkillGroup Object36Object Creation and Lifetime37Reference Counting37Call Object Lifetime37Agent Object Lifetime37Methods that Call AddRef()38Where To Go From Here43CIL Coding Conventions45CTIOS CIL Data Types45Asynchronous Program Execution46CIL Error Codes47COM Error Codes51Generic Interfaces51Arguments52Accessing Properties and Parameters with GetValue52Setting Object Properties and Request Parameters with SetValue53UniqueObjectID53Obtaining Objects from UniqueObjectIDs55Using Button Enablement Masks55Building Your Application57Setting Up Your Environment for .NET57Integrating with Microsoft Visual Studio .NET 200358Adding CTIOS Toolkit 7.1(1) Components to the “Add Reference” Dialog Box58Adding Cisco CTI OS ActiveX 7.1(1) Controls to the Toolbox58Integrating your Application with CTI OS via the CIL59Planning and Designing Your Integration59What Language and Interface to Use60Testing CTI Applications60Developing a Test Plan61Test Environment61Using the Samples61Using The CTI OS ActiveX Controls63Building a Simple Softphone with ActiveX Controls63Adding a Hook for Screenpops64CTIOS SessionResolver64Sample VB .NET code to Retrieve CallVariable165Using the COM CIL in Visual Basic 6.066Referencing COM Components in Visual Basic 6.066Registering for Events in Visual Basic 6.067Next Steps68Using the COM CIL in Visual C++ 7.1(1)68Adding COM Support to your Application68Important Note About COM Method Syntax69Using the CIL Dynamic Link Libraries69Creating an Instance of a COM Object69Subscribing and Unsubscribing to COM Events in C++69Next Steps70Using the C++ CIL and Static Libraries70Header Files and Libraries70Project Settings for Compiling and Linking71Subscribing for Events in C++74STLPort74Next Steps74Using the Java CIL Libraries74Next Steps75Using the .NET CIL Libraries75Next Steps75Connecting to the CTI OS Server75How to Create the Session Instance76Session Object Lifetime (C++ only)76How to Set the Event Listener and Subscribe to Events76How to Set Connection Parameters for the Session76How to Connect the Session to the CTI OS Server77Dealing with Connection Failures77Connection Failure Events77Connection Attempt Error Codes in Java and .NET CIL78Configuring the Agent to Automatically Log In after Failover78Stopping the Failover Procedure79How to Set the Connection Mode79Setting the Connection Mode in the OnConnection() Event Handler79When to Use Agent Mode79How to Select Agent Mode79When to Use Monitor Mode80Monitor Mode Filters81How to Select Monitor Mode82How to Deal with Failover In Monitor Mode83Settings Download83Disconnecting from CTI OS Server84Logging In and Logging Out an Agent85How to Log In an Agent85How to Handle Duplicate Log In Attempts86Overview86How to Create Values in the CTI OS Server Registry to Control Duplicate Log In Attempts87How to Get Registry Configuration Values to Your Desktop Application88How to Detect the Duplicate Log In Attempt in the Desktop Application89How to Handle Duplicate Log In Attempts in the Desktop Application90How to Log Out an Agent90Typical Logout Procedure90Working with Calls92Handling Multiple Calls92What is the Current Call?93How to Get a Call Object93How to Set the Current Call for the Session93Call Wrapup93Logout and NotReady Reason Codes94When Does the Application Receive the OnButtonEnablementChange() Event?95What to do in the OnButtonEnablementChange() Event95Checking Not Ready Bitmasks in OnButtonEnablementChange() Event95OnButtonEnablementChange() Event in Supervisor Desktop Applications96Making Requests97Preventing Multiple Duplicate Requests97Working with Events98Handling Events in Order98Coding Considerations for CIL Event Handling98Monitoring the OnCallEnd() Event98Working with Agent Statistics99Overview99How to Set Up an Agent Application to Receive Agent Statistics99How to Set Up a Monitor-Mode Application to Receive Agent Statistics100Accessing Agent Statistics103Overview103Registering to the eOnNewAgentStatisticsEvent() (JAVA)103Registering to the OnAgentStatistics() (C++, COM, and VB)103How to Get Agent Statistics through the Agent Instance103Changing Which Agent Statistics are Sent104Agent Statistics Computed by the Sample CTI OS Desktop104Working with Skill Group Statistics104Overview104How to Set Up a Monitor-Mode Application to Receive Skill Group Statistics105Accessing Skill Group Statistics106Overview106Registering to the eOnNewSkillGroupStatisticsEvent() (JAVA)107Registering to the OnSkillGroupStatisticsUpdated() (C++, COM, and VB)107Changing Which Skill Group Statistics are Sent107Skill Group Statistics Computed by the Sample CTI OS Desktop107Enabling Silent Monitor in Your Application108Enabling CTI OS Based Silent Monitoring in Your Application108Creating a Silent Monitor Object109Setting the Session Mode109Initiating and Ending a Silent Monitor Session110Shutting Down Silent Monitor Manager111Enabling CCM Based Silent Monitoring in your Application112CCM Based Silent Monitor Overview112CTI OS Monitor Mode Applications112Initiating a CCM Based Silent Monitor Request112Determining if the Current Agent is Being Silently Monitored114Ending a CCM Based Silent Monitor Request114Determining the Silent Monitor Mode115Deployment of Custom CTI OS Applications116Deploying Applications Using the ActiveX Controls116Deploying Applications Using COM (But Not ActiveX Controls)122Deploying Applications using C++ CIL122Deploying Applications using .NET CIL122Custom Application and CTI OS Security123Building Supervisor Applications123General Flow123Monitored and Unmonitored Events124Requesting and Monitoring the Supervisor’s Team(s)124OnNewAgentTeamMember125OnNewAgentTeamMember Events and Supervisors126OnMonitoredAgentStateChange Events126OnMonitoredAgentInfo Event127Time in State127OnSkillInfo Event127Populating an Agent Grid127Monitoring Agents129OnSupervisorButtonChange131Monitored Call Events132Making Agents Ready and Logging Agents Out132Monitoring Calls133MonitoredCallEvents133Barging into Calls134Intercepting Calls135Updating Monitored Call Data135Sample Code in the CTI OS Toolkit136.NET Samples136CTI Toolkit Combo Desktop.NET136CtiOs Data Grid.NET137All Agents Sample.NET138All Calls Sample.NET138Java CIL Samples138Win32 Samples138CTI OS ActiveX Controls139Property Pages141Button Controls and Grid Controls141Button Controls141Grid Controls141Supervisor Status Bar142CTI OS ActiveX Control Descriptions142AgentStateCtl142Related Methods144Related Events145AgentSelectCtl147Methods148AgentStatisticsCtl152Methods152AlternateCtl156AnswerCtl156BadLineCtl157CallAppearanceCtl157Related Methods157Related Events158Methods158ChatCtl162Methods162ConferenceCtl165EmergencyAssistCtl167HoldCtl167MakeCallCtl167ReconnectCtl169SkillgroupStatisticsCtl169Methods169StatusBarCtl173SupervisorOnlyCtl173RecordCtl175TransferCtl175The Silent Monitor StandAlone ActiveX Control177Connect177Disconnect177StartMonitoring177StopMonitoring178SilentMonitor Com Object Events178Deployment179Sample Usage in Visual Basic 6.0179Event Interfaces and Events181Event Publication Model181ISessionEvents Interface182OnConnection182Syntax182Parameters182OnConnectionClosed182OnConnectionFailure183Syntax183Parameters183OnConnectionRejected183Syntax183Parameters183OnCTIOSFailure183Syntax184Parameters184Remarks185OnCurrentAgentReset185Syntax185Parameters185OnCurrentCallChanged185Syntax186Parameters186OnFailure Event186OnGlobalSettingsDownloadConf186Syntax187Parameters187OnHeartbeat194Syntax195Parameters195OnMissingHeartbeat195Syntax195Parameters195OnMonitorModeEstablished195Syntax196Parameters196OnSnapshotDeviceConf196Syntax196Parameters197Remarks197OnSnapshotSkillGroupList197OnTranslationRoute197Syntax197Parameters198ICallEvents Interface199OnAgentPrecallEvent199Syntax199Parameters199OnAgentPrecallAbortEvent200Syntax201Parameters201OnAlternateCallConf201Syntax201Parameters201OnAnswerCallConf202Syntax202Parameters202OnCallBegin202Syntax202Parameters202OnCallCleared205Syntax205Parameters205OnCallConnectionCleared206Syntax206Parameters206OnCallConferenced206Syntax207Parameters207OnCallDataUpdate208Syntax208Parameters209OnCallDelivered210Syntax210Parameters211OnCallDequeuedEvent211Syntax211Parameters212OnCallDiverted212Syntax212Parameters212OnCallEnd213Syntax213Parameters213OnCallEstablished214Syntax214Parameters214OnCallFailed215Syntax215Parameters215OnCallHeld215Syntax215Parameters216OnCallOriginated216Syntax216Parameters216OnCallQueuedEvent217Syntax217Parameters217OnCallReachedNetworkEvent218Syntax218Parameters218OnCallRetrieved219Syntax219Parameters219OnCallServiceInitiatedEvent219Syntax219Parameters220OnCallStartRecordingConf220Syntax220Parameters220OnCallStopRecordingConf221Syntax221Parameters221OnCallTransferred221Syntax221Parameters221OnClearCallConf223Syntax223Parameters223OnClearConnectionConf223Syntax223Parameters224OnConferenceCallConf224Syntax224Parameters224OnConsultationCallConf224Syntax224Parameters225OnControlFailureConf225Syntax225Parameters225OnHoldCallConf225Syntax225Parameters226OnMakePredictiveCallConf226OnReconnectCallConf226Syntax226Parameters226OnReleaseCallConf226OnRetrieveCallConf226Syntax227Parameters227OnSendDTMFConf227Syntax227Parameters227OnSnapshotCallConf227Syntax227Parameters228OnTransferCallConf229Syntax229Parameters230IAgentEvents Interface230OnAgentDeskSettingsConf230Syntax230Parameters230OnAgentInfoEvent232Syntax232Parameters232OnAgentStateChange233Syntax233Parameters233OnAgentStatistics234Syntax234Parameters235OnChatMessage235Syntax235Parameters235OnControlFailureConf235Syntax236Parameters236OnEmergencyCall241Syntax241Parameters241Remarks241OnLogoutFailed241Syntax242Parameters242OnMakeCallConf242Syntax242Parameters242OnNewAgentTeamMember243Syntax243Parameters243OnPostLogout244Syntax245Parameters245Remarks246OnPreLogout246Syntax246Parameters246OnQueryAgentStateConf247Syntax247Parameters247OnSetAgentModeEvent250Syntax250Parameters250OnSetAgentStateConf250Syntax251Parameters251OnStartMonitoringAgent251Syntax251Parameters251Remarks251OnStopMonitoringAgent251Syntax252Parameters252Remarks252OnUserMessageConf252ISkillGroupEvents Interface252OnSkillGroupStatisticsUpdated252Syntax252Parameters253OnSkillInfoEvent253Parameters253IButtonEnablementEvents253OnButtonEnablementChange253Parameters254OnSupervisorButtonChange256Parameters256Remarks256IMonitoredAgentEvents Interface256IMonitoredCallEvents Interface257ISilentMonitorEvents258OnCallRTPStarted258Syntax258Parameters258OnCallRTPStopped259Syntax259Parameters259OnStartSilentMonitorConf260Syntax260Parameters260OnSilentMonitorStartedEvent261For CTI OS Based Silent Monitor261For CCM Based Silent Monitor262OnSilentMonitorStartRequestedEvent262Syntax262Parameters263OnSilentMonitorSessionDisconnected263Syntax263Parameters264OnSilentMonitorStopRequestedEvent264For CTI OS Based Silent Monitor264For CCM Based Silent Monitor265OnSilentMonitorStatusReportEvent265Syntax265Parameters266OnStopSilentMonitorConf267Syntax267Parameters268OnRTPStreamTimedoutEvent268Syntax268Parameters268IGenericEvents Interface269OnEvent269Syntax269Java Adapter Classes269IAllInOne269IAgentEvents269IButtonEnablementEvents269ICallEvents270ISkillGroupEvents270Events in Java CIL270Events in .NET CIL270Getting All Event Parameters271How to Get All Parameters from an Event271CtiOs Object279Methods279DumpProperties280Syntax280Parameters280Return Value280GetAllProperties280Syntax280Parameters281Return Value281GetElement281Syntax281Parameters281Return Value282GetLastError (Java and .NET only)282Syntax282Parameters282Returns282Remarks282GetNumProperties283Syntax283Parameters283Return Value283GetPropertyName283Syntax283Parameters283Return Value283GetPropertyType284Syntax284Parameters284Return Value284GetValue285Syntax285Parameters285Return Value285GetValueArray285Syntax285Parameters286Return Value286GetValueBoolObj (Java and .NET only)286Syntax286Parameters286Returns286GetValueInt286Syntax287Parameters287Return Value287GetValueIntObj (Java only)287Syntax287Parameters288Returns288GetValueShortObj (Java only)288Syntax288Parameters288Return Value288GetValueString288Syntax288Parameters289Return Value289GetValueUIntObj (Java only)289Syntax289Parameters289Returns289GetValueUShortObj (Java only)290Syntax290Parameters290Returns290IsValid290Syntax290Parameters290Return Value291ReportError (Java and .NET only)291Syntax291Parameters291Returns291SetValue (Java and .NET)291Syntax291Parameters292Returns292SetValue (C++, COM, and VB)292Syntax292Parameters292Return Values292Remarks293Session Object295Session Object Properties295Methods297AddEventListener (Java and .NET only)298Syntax298Parameters298Returns299AddListener Methods (C++ only)299Syntax299Remarks299Connect299Syntax299Parameters300Return Values300Remarks300CreateSilentMonitorManager301Syntax301Parameters302Return Value302Remarks302CreateWaitObject (C++, Java, and .NET)302Syntax302Parameters302Return Values302DestroySilentMonitorManager303Syntax303Parameters303Return Values303Remarks303DestroyWaitObject (C++ , Java, and .NET)303Syntax303Parameters303Return Values304Remarks304DisableSkillGroupStatistics (C++ , Java, and .NET)304Syntax304Parameters304Return Value304Remarks304Disconnect304Syntax304Parameters305Return Values305DumpProperties305EnableSkillGroupStatistics (C++, Java, and .NET)305Syntax305Parameters305Return Value305Remarks305GetAllAgents306Syntax306Parameters306Return Values306Remarks307GetAllCalls308Syntax308Parameters309Return Values309Remarks310GetAllProperties311GetAllSkillGroups311Syntax311Parameters312Return Values312GetCurrentAgent312Syntax312Parameters312Return Values312GetCurrentCall313Syntax313Parameters313Return Values313GetCurrentSilentMonitor313Syntax313Return Values313GetElement314GetNumProperties314GetObjectFromObjectID314Syntax314Parameters314Return Values314Remarks315GetPropertyName315GetPropertyType315GetSystemStatus (Java, .NET, and C++ only)315Syntax315Parameters315Returns315GetValue Methods315IsAgent315Syntax316Parameters316Return Values316IsCCMSilentMonitor316Syntax316Parameters316Return Values316IsSupervisor316Syntax316Parameters317Return Values317IsValid317LogToServer317Syntax317Parameters317Return Values317RemoveEventListener (Java and .NET)318Syntax318Parameters318Returns318RemoveListener Methods (C++ only)318Syntax318Remarks319RequestDesktopSettings319Syntax319Parameters319Return Values319Remarks319SetAgent320Syntax320Parameters320Return Values320SetCurrentCall321Syntax321Parameters321Return Values321Remarks321SetCurrentSilentMonitor322Syntax322Parameters322Return Values322Remarks322SetMessageFilter322Syntax322Parameters322Return Values323Remarks323SetSupervisorMonitorMode323Syntax323Parameters323Return Values323Notes On Message Filters324Message Filter Syntax324A Simple Example324General Form of Filter Syntax324Combining Filters325Filtering for Specific Events325Events Not Allowed In Filter Expressions325Filtering Skillgroup Statistics327Filtering CCM Based Silent Monitor Calls328Agent Object329Agent Object Properties329Agent Statistics330Methods337Arguments Parameters339DisableAgentStatistics339Syntax339Parameters340Return Value340DisableSkillGroupStatistics340Syntax340Parameters340Return Value340EnableAgentStatistics341Syntax341Parameters341Return Value341Remarks341EnableSkillGroupStatistics341Syntax341Parameters342Return Value342Remarks342GetAgentState342Syntax342Parameters342Return Value342GetAllProperties343GetElement343GetMonitoredAgent343Syntax343Parameters343Return Value343Remarks343GetMonitoredCall343Syntax343Parameters344Return Value344Remarks344GetNumProperties344GetPropertyName344GetPropertyType344GetSkillGroups344Syntax345Parameters345Return Value345GetValue Methods346IsAgent346Syntax347Parameters347Return Value347IsSupervisor347Syntax347Parameters347Return Values347Login347Syntax348Input Parameters348Return Values349Remarks349Logout349Syntax349Input Parameters349Return Values350Remarks350MakeCall350Syntax350Input Parameters351Return Value354Remarks354MakeEmergencyCall355Syntax355Parameters355Return Value355Remarks355QueryAgentState356Syntax356Input Parameters356Return Values356Remarks356ReportBadCallLine356Syntax357Parameters357Return Values357RequestAgentTeamList357Syntax357Parameters357Return Value358Remarks358RequestSupervisorAssist358Syntax358Parameters358Return Values358Remarks358SendChatMessage359Syntax359Parameters359Return Values359Remarks360SetAgentState360Syntax360Input Parameters360Return Values361Remarks361StartMonitoringAgent361Syntax361Parameters361Return Value362Remarks362StartMonitoringAgentTeam362Syntax362Parameters362Return Value362Remarks363StartMonitoringAllAgentTeams363Syntax363Parameters363Return Value363Remarks363StartMonitoringCall364Description364Syntax364Parameters364Return Value364Remarks364StopMonitoringAgent364Syntax364Parameters365Return Value365Remarks365StopMonitoringAgentTeam365Syntax365Parameters365Return Value365Remarks366StopMonitoringAllAgentTeams366Syntax366Parameters366Return Value366Remarks366SuperviseCall366Syntax367Parameters367Return Values367Remarks367Call Object369Current Call Concept369Accessing ECC Variables370Retrieving ECC Variable Values370Adding ECC Values371Properties372Methods374Arguments Parameters375Alternate375Syntax375Parameters376Return Values376Remarks376Answer376Syntax376Parameters377Return Value377Remarks377Clear377Syntax377Parameters377Return Value378Remarks378ClearConnection378Syntax378Parameters378Return Value379Remarks379Conference379Syntax379Parameters379Return Value380Remarks380GetCallContext380Syntax380Parameters380Return Value381Remarks381GetCallData382Syntax382Parameters382Return Value382Remarks382Hold383Syntax383Parameters383Return Value383Remarks383MakeConsultCall383Syntax384Parameters384Return Values387Remarks387Reconnect388Syntax388Parameters388Return Values388Remarks388Retrieve389Syntax389Parameters389Return Values389Remarks389SendDTMFSignal390Syntax390Parameters390Return Values390Remarks391SetCallData391Syntax391Parameters391Return Values391Remarks391SingleStepConference392Syntax392Parameters392Return Values394Remarks394SingleStepTransfer394Syntax395Parameters395Return Values395Snapshot395Syntax395Parameters395Return Values396Remarks396StartRecord396Syntax396Parameters396Return Value396Remarks396StopRecord397Syntax397Parameters397Return Value397Remarks397Transfer397Syntax398Parameters398Return Values398Remarks398SkillGroup Object399Properties399Statistics400Methods414DisableSkillGroupStatistics414Syntax414Parameters414Return Value415Remarks415DumpProperties415EnableSkillGroupStatistics415Syntax415Parameters415Return Value415Remarks416GetElement416GetValue Methods416IsValid416SetValue416Helper Classes417Arg Class418AddRef418Syntax418Parameters419Return Values419Clone419Syntax419Output Parameters419Return Values419CreateInstance419Syntax419Parameters420Return Values420Remarks420DumpArg420Syntax420Parameters420Return Values420GetArgType (.NET only)420Syntax421Parameters421Returns421GetType421Syntax421Output Parameters421Return Values421GetValue Methods422Syntax422Parameters423Return Values423Release423Syntax423Parameters424Return Values424SetValue424Syntax424Parameters424Return Values425Arguments Class425Usage Notes426AddItem (C++, COM, VB only)427Syntax427Parameters428Return Value428AddRef (C++ and COM only)428Syntax428Parameters428Return Values428Clear429Syntax429Parameters429Return Value429Clone429Syntax429Parameters429Return Value430CreateInstance (C++ and COM only)430Syntax430Parameters430Return Value430Remarks430DumpArgs430Syntax430Parameters431Return Values431GetElement Methods431Syntax431Parameters432Return Value432GetValue Methods432Syntax432Parameters434Return Values434Remarks435IsValid435Syntax435Parameters435Return Values435NumElements435Syntax436Parameters436Return Value436Release (C++ and COM only)436Syntax436Parameters436Return Values436RemoveItem436Syntax436Parameters437Return Values437SetElement (C++, COM, and VB only)437Syntax437Parameters437Return Values438SetValue438Syntax438Parameters439Return Values439Remarks439CILRefArg Class (C++, Java, and .NET only)440GetType440Syntax440Output Parameters440Return Values440GetUniqueObjectID (Java and .NET only)440Syntax441Parameters441Return Values441Remarks441GetValue441Syntax441Output Parameters441Return Values441SetValue441Syntax441Input Parameters442Return Values442CCtiOsException Class (C++, Java, and .NET only)442CCtiosException Constructor442Syntax442Input Parameters442Return Values443GetCode443Syntax443Parameters443Return Values443GetStatus443Syntax443Parameters443Return Values443GetString443Syntax444Parameters444Return Values444What444Syntax444Parameters444Return Values444CWaitObject Class444Methods445CreateWaitObject445DestroyWaitObject445DumpEventMask445Syntax445Parameters445Return Values446GetMask446Syntax446Parameters446Return Values446GetTriggerEvent446Syntax446Parameters446Return Values446InMask447Syntax447Parameters447Return Values447SetMask447Syntax447Parameters447Return Values447WaitOnMultipleEvents447Syntax448Parameters448Return Values448Logger Class (.NET and Java Only)448Methods448Logger() Constructor449Syntax449Parameters449Return Values449GetTraceMask449Syntax449Parameters449Return Values449SetTraceMask450Syntax450Parameters450Return Values450AddLogListener450Syntax450Parameters450Return Values450RemoveLogListener450Syntax450Parameters451Return Values451Trace451Syntax451Parameters451Return Values451LogWrapper Class (.NET and Java Only)451Methods452LogWrapper() Constructor453Syntax453Parameters453Return Values453LogWrapper(String filename) Constructor453Syntax453Parameters453Return Values453LogWrapper(string, int, int, int) Constructor453Syntax454Parameters454Return Values454Dispose (.NET Only)454Syntax454Parameters454Return Values455GetMaxDaysBeforeExpire (.NET Only)455Syntax455Parameters455Return Values455SetMaxNumberFiles455Syntax455Parameters455Return Values455GetMaxNumberFiles (.NET Only)455Syntax456Parameters456Return Values456SetMaxDaysBeforeExpire456Syntax456Parameters456Return Values456ProcessConfigFile456Syntax456Parameters456Return Values457SilentMonitorManager Object459Properties459Methods460Argument Parameter Rules461AcceptSilentMonitoring461Syntax462Parameters462Return Values463GetIPPhoneInfo463Syntax463Parameters463Return Value463GetSessionInfo464Syntax464Parameters464Return Values465GetSMSessionList465Syntax465Parameters465Return Values465IsMonitoredTarget466Syntax466Parameters466Return Value466SetIPPhoneInfo466Syntax466Parameters467Return Values467StartSilentMonitorRequest467Syntax468Parameters468Return Values468Remarks468StartSMMonitoredMode469Syntax469Parameters469Return Values470StartSMMonitoringMode470Syntax470Parameters470Return Values471StopSilentMonitorMode471Syntax471Parameters471Return Values471StopSilentMonitorRequest471Syntax471Parameters472Return Values472CTI OS Keywords and Enumerated Types473Keywords473Java CIL Keywords474.NET CIL Keywords474Enumerated Types474Java Interfaces475CTI OS Logging477Creating CTI OS Client Logs (COM and C++)477How to Install the Tracing Mechanism (COM and C++)477Setting Trace Levels (COM and C++)478Configuring Tracing (COM and C++)478Java CIL Logging Utilities479ILogEvents479LogEvent479Logger479Syntax480LogEventsAdapter480Syntax480Logging and Tracing (Java)480Logging and Tracing (.NET)481Using the Default Logging Mechanism481How to Log Trace Events Using the LogWrapper Class481Creating a Custom Logging Mechanism484How to Log Trace Events Using the Logger Class484Configuring Tracing (Java and .NET)484Migrating From CTI OS 6.0487Introduction487Migrating a C++ CIL application487Migrating a COM CIL Application488Migrating a C++ Application that uses COM CIL488Migrating a Visual Basic 6.0 to use COM CIL489Migrate to Visual Basic .NET and use .NET CIL489Migrate to Visual Basic .NET and use .COM CIL490Migrating a Visual Basic 6.0 to Use COM CIL491Migrate to Visual Basic .NET and use .NET CIL491Migrate to Visual Basic .NET and use CTIOS ActiveX Controls491Index493Size: 10.8 MBPages: 500Language: EnglishOpen manual
/en/manuals/1631939/Table of ContentsTitle1Contents3About This Guide7Purpose7Audience7Organization7Conventions8Other Publications9Obtaining Documentation9Cisco.com9Ordering Documentation9Documentation Feedback10Obtaining Technical Assistance10Cisco TAC Website10Opening a TAC Case11TAC Case Priority Definitions11Obtaining Additional Publications and Information12Chapter 1: What is CTI?15Computer Telephony Integration15What is a CTI-Enabled Application?16Screen Pop16Agent State Control17Third-Party Call Control17Leveraging CTI Application Event Flow17Asynchronous Events18Request-Response Paradigm19An Example of Cisco CTI at Work20An Example of a Positive Interaction21Introduction to Cisco CTI21What is Cisco CTI?21Cisco CTI Components22Product Offerings22Software25CTI OS and the CTI Driver for Siebel 7 CD25CTI Desktop, JavaClient, and the CTI Driver for Siebel 6 CD25Cisco Agent Desktop Agent25Cisco Agent Desktop Server26Documentation26Support and Training27Chapter 2: Cisco CTI Server Software29Cisco CTI Server29The CTI Server, CTI Clients, and ICM Software30Network-to-Desktop CTI32ICM Call Processing32Pre-Routed Call33Translation Route Call33Post-Routed Call34Transfer Call35Conference Call36CTI Server Application Models36Agent Workstation (Client Events) Application36CTI Bridge (All Devices) Application37CTI Server Configurations39Simplex/Duplex Configuration39Combined/Separate PG/CTI Server Configuration40Chapter 3: Cisco CTI Object Server (CTI OS) Software43Overview of CTI OS43Cisco CTI OS Agent Desktop44Cisco CTI OS Supervisor Desktop for IPCC Enterprise45Silent Monitor46Cisco CTI Driver for Siebel 748Test Environment48Using the Samples49Chapter 4: Cisco CTI Desktop Software51Chapter 5: Cisco Agent Desktop (CAD) Software53Cisco Agent Desktop53Index55A55B55C55D56E56F56I56J56O56P57R57S57T57U57V57W57Size: 1.29 MBPages: 57Language: EnglishOpen manual
/en/manuals/1631934/Table of ContentsCTI Product Description Guide for Cisco ICM/IPCC Enterprise & Hosted Editions1Contents3About This Guide7Purpose7Audience7Organization7Conventions8Other Publications9Obtaining Documentation9Cisco.com9Product Documentation DVD9Ordering Documentation10Documentation Feedback11Cisco Product Security Overview11Reporting Security Problems in Cisco Products12Obtaining Technical Assistance12Cisco Technical Support & Documentation Website13Submitting a Service Request13Definitions of Service Request Severity14Obtaining Additional Publications and Information15Chapter 1. What is CTI?17Computer Telephony Integration17What is a CTI-Enabled Application?18Screen Pop18Agent State Control19Third-Party Call Control19Leveraging CTI Application Event Flow19Asynchronous Events20Request-Response Paradigm21An Example of Cisco CTI at Work22An Example of a Positive Interaction23Introduction to Cisco CTI23What is Cisco CTI?23Cisco CTI Components24Product Offerings24Software26CTI OS and the CTI Driver for Siebel 7 CD26Cisco Agent Desktop Agent26Cisco Agent Desktop Server27Documentation27Support and Training28Chapter 2. Cisco CTI Server Software29Cisco CTI Server29The CTI Server, CTI Clients, and ICM Software30Network-to-Desktop CTI32ICM Call Processing32Pre-Routed Call33Translation Route Call33Post-Routed Call34Transfer Call35Conference Call36CTI Server Application Models36Agent Workstation (Client Events) Application36CTI Bridge (All Devices) Application37CTI Server Configurations39Simplex/Duplex Configuration39Chapter 3. Cisco CTI Object Server (CTI OS) Software41Overview of CTI OS41Cisco CTI Toolkit Agent Desktop42Cisco CTI Toolkit IPCC Supervisor Desktop43Silent Monitor44CTI OS Server-Client Security46Multi-Tenancy/Multi-Instance CTI OS46Quality of Service (QoS)46Cisco CTI Driver for Siebel 747Test Environment47Using the Samples48Chapter 4. Cisco Agent Desktop (CAD) Software49Cisco Agent Desktop49Index51A51B51C51D52E52F52I52M52P52R52S52T52U53W53Size: 535 KBPages: 53Language: EnglishOpen manual
User GuideTable of ContentsTitle1Contents3About This Guide7Purpose7Audience7Conventions8Organization9Other Publications9Obtaining Documentation9Cisco.com10Documentation CD-ROM10Ordering Documentation10Documentation Feedback11Obtaining Technical Assistance11Cisco.com11Technical Assistance Center12Cisco TAC Website13Cisco TAC Escalation Center13Obtaining Additional Publications and Information14Chapter 1: Introduction17IPCC Supervisor Softphone Overview18Team Real-Time Status Overview19CTI Statistics Overview20Chapter 2: Starting Supervisor Desktop21Starting the Supervisor Softphone21Logging In22Logging Out of the Supervisor Softphone23Chapter 3: Supervisor Softphone27Softphone User Interface28Supervisor State Control28Supervisor Call Control29Tools29Call Appearance Grid30Supervisor Status Bar30Processing Calls30Making Calls30Answering Calls32Hanging Up Calls32Transferring Calls32Conferencing Calls33Sending DTMF Tones35Chapter 4: Managing Agents37Team State Information38Agent State Control38Monitoring Calls39Emergency and Supervisor Assist Calls42Chat42Call Recording43Chapter 5: Statistical Information45Agent Statistics45Skill Group Statistics55Index75Size: 1.22 MBPages: 76Language: EnglishOpen manual
User GuideTable of ContentsCisco ICM Software CTI OS Agent Desktop User Guide1Contents3About This Guide5Purpose5Audience5Conventions5Organization7Other Publications7Obtaining Documentation8Cisco.com8Ordering Documentation8Documentation Feedback9Obtaining Technical Assistance9Cisco Technical Support Website9Submitting a Service Request10Definitions of Service Request Severity10Obtaining Additional Publications and Information11Starting and Logging Into CTI OS Agent Desktop13Starting CTI OS Agent Desktop13Logging In14Logging Out16Changing Agent States19Changing to Ready State19Changing to NotReady State19Changing to Wrapup State20Processing Calls23Making Calls23Answering Calls25Hanging Up Calls25Transferring Calls25Conferencing Calls26Sending DTMF Tones28Entering Wrapup Data31Wrapup Data Requirements31The Wrapup Dialog Box32Communicating with Other Call Center Personnel35CTI OS Chat35Requesting Supervisory Assistance37Interpreting Call and Statistical Information39Call Information40Agent Statistics40Skill Group Statistics50Index71A71C71D71H71L71M71N71R71S71T71W72Size: 1.15 MBPages: 72Language: EnglishOpen manual
User GuideTable of ContentsCTI OS Supervisor Desktop User Guide for Cisco Unified Contact Center Enterprise & Hosted1Contents3About This Guide5Purpose5A Word About Cisco Product Names5Audience6Important Note for Mobile Agent Users6New Registry Structure6Organization7Related Documentation7Conventions8Obtaining Documentation and Submitting a Service Request8Documentation Feedback8Introduction11CTI Toolkit Supervisor Softphone Overview11Team Real-Time Status Overview12CTI Statistics Overview13Starting Supervisor Desktop15Starting the Supervisor Softphone15Logging In16Logging Out of the Supervisor Softphone18Supervisor Softphone21Softphone User Interface21Supervisor State Control22Supervisor Call Control22Tools22Call Information Grid23Supervisor Status Bar23Processing Calls23Making Calls23Answering Calls24Hanging Up Calls24Transferring Calls25Conferencing Calls27Sending DTMF Tones28Managing Agents29Team State Information29Agent State Control30Monitoring Calls31Silent Monitoring32Supervisor State Requirements for Silent Monitor32CTI OS Based Silent Monitoring32Cisco Unified Communications Manager (Unified CM) Based Silent Monitoring33CTI OS and Unified CM Based Silent Monitor Differences33Emergency and Supervisor Assist Calls33Chat34Call Recording35Agent Re-skilling Tool35Use Cases37Unified CM Based Silent Monitor Use Cases37Statistical Information43Agent Statistics43Skill Group Statistics50Index65Index65Size: 1.5 MBPages: 66Language: EnglishOpen manual
User GuideTable of ContentsCTI OS Supervisor Desktop User Guide for Cisco Unified Contact Center Enterprise and Hosted1Contents3About This Guide7Purpose7A Word About Cisco Product Names7Audience8Important Note for Mobile Agent Users8Conventions9Organization10Obtaining Documentation10Cisco.com10Product Documentation DVD11Ordering Documentation11Documentation Feedback12Field Alerts and Field Notices12Cisco Product Security Overview13Reporting Security Problems in Cisco Products13Obtaining Technical Assistance14Cisco Technical Support & Documentation Website14Submitting a Service Request15Definitions of Service Request Severity16Obtaining Additional Publications and Information16Introduction19CTI Toolkit Supervisor Softphone Overview20Team Real-Time Status Overview21CTI Statistics Overview22Starting Supervisor Desktop23Starting the Supervisor Softphone23Logging In24Logging Out of the Supervisor Softphone27Supervisor Softphone31Softphone User Interface32Supervisor State Control32Supervisor Call Control33Tools33Call Information Grid34Supervisor Status Bar34Processing Calls34Making Calls34Answering Calls36Hanging Up Calls36Transferring Calls36Conferencing Calls37Sending DTMF Tones39Managing Agents41Team State Information42Agent State Control42Monitoring Calls44Emergency and Supervisor Assist Calls46Chat46Call Recording48Agent Re-skilling Tool48Statistical Information51Agent Statistics51Skill Group Statistics61Index79Size: 1.3 MBPages: 80Language: EnglishOpen manual
User GuideTable of ContentsCTI OS Supervisor Desktop User Guide for Cisco Unified Contact Center Enterprise & Hosted1Contents3About This Guide5Purpose5A Word About Cisco Product Names5Audience5Important Note for Mobile Agent Users6Conventions6Organization7Obtaining Documentation7Cisco.com7Product Documentation DVD8Ordering Documentation8Documentation Feedback8Field Alerts and Field Notices9Cisco Product Security Overview9Reporting Security Problems in Cisco Products9Obtaining Technical Assistance10Cisco Technical Support & Documentation Website10Submitting a Service Request11Definitions of Service Request Severity11Obtaining Additional Publications and Information11Introduction13CTI Toolkit Supervisor Softphone Overview13Team Real-Time Status Overview14CTI Statistics Overview15Starting Supervisor Desktop17Starting the Supervisor Softphone17Logging In18Logging Out of the Supervisor Softphone19Supervisor Softphone21Softphone User Interface21Supervisor State Control22Supervisor Call Control22Tools22Call Information Grid23Supervisor Status Bar23Processing Calls23Making Calls23Answering Calls24Hanging Up Calls24Transferring Calls25Conferencing Calls26Sending DTMF Tones27Managing Agents29Team State Information29Agent State Control30Monitoring Calls31Silent Monitoring32Supervisor State Requirements for Silent Monitor32CTI OS Based Silent Monitoring32Cisco CallManager (CCM) Based Silent Monitoring33CTI OS and CCM Based Silent Monitor Differences33Emergency and Supervisor Assist Calls33Chat34Call Recording35Agent Re-skilling Tool35Use Cases37CCM Based Silent Monitor Use Cases37Statistical Information43Agent Statistics43Skill Group Statistics50Index65Size: 1.4 MBPages: 66Language: EnglishOpen manual
User GuideTable of ContentsCTI OS Supervisor Desktop User Guide for Cisco IPCC Enterprise Edition1Contents3About This Guide7Purpose7Audience7Conventions8Organization9Other Publications9Obtaining Documentation9Cisco.com10Product Documentation DVD10Ordering Documentation11Documentation Feedback11Cisco Product Security Overview12Reporting Security Problems in Cisco Products12Obtaining Technical Assistance13Cisco Technical Support & Documentation Website13Submitting a Service Request14Definitions of Service Request Severity15Obtaining Additional Publications and Information15Chapter 1. Introduction17IPCC Supervisor Softphone Overview18Team Real-Time Status Overview19CTI Statistics Overview20Chapter 2. Starting Supervisor Desktop21Starting the Supervisor Softphone21Logging In22Logging Out of the Supervisor Softphone24Chapter 3. Supervisor Softphone27Softphone User Interface28Supervisor State Control28Supervisor Call Control29Tools29Call Information Grid30Supervisor Status Bar30Processing Calls30Making Calls30Answering Calls32Hanging Up Calls32Transferring Calls32Conferencing Calls33Sending DTMF Tones35Chapter 4. Managing Agents37Team State Information38Agent State Control38Monitoring Calls40Emergency and Supervisor Assist Calls42Chat42Call Recording44Chapter 5. Statistical Information45Agent Statistics45Skill Group Statistics55Index73Size: 592 KBPages: 74Language: EnglishOpen manual
User GuideTable of ContentsCTI OS Supervisor Desktop User Guide for Cisco Unified ICM/Contact Center Enterprise & Hosted1Contents3About This Guide5Purpose5A Word About Cisco Product Names5Audience6Important Note for Mobile Agent Users6New Registry Structure6Organization7Related Documentation7Conventions8Obtaining Documentation and Submitting a Service Request8Documentation Feedback8Introduction9CTI Toolkit Supervisor Softphone Overview9Team Real-Time Status Overview10CTI Statistics Overview11Starting Supervisor Desktop13Starting the Supervisor Softphone13Logging In14Logging Out of the Supervisor Softphone16Supervisor Softphone19Softphone User Interface19Supervisor State Control20Supervisor Call Control20Tools20Call Information Grid21Supervisor Status Bar21Processing Calls21Making Calls21Answering Calls22Hanging Up Calls22Transferring Calls23Conferencing Calls24Sending DTMF Tones25Managing Agents27Team State Information27Agent State Control28Monitoring Calls29Silent Monitoring30Supervisor State Requirements for Silent Monitor30CTI OS Based Silent Monitoring30Cisco Unified Communications Manager (Unified CM) Based Silent Monitoring31CTI OS and Unified CM Based Silent Monitor Differences31Emergency and Supervisor Assist Calls31Chat32Call Recording33Agent Re-skilling Tool33Use Cases35Unified CM Based Silent Monitor Use Cases35Statistical Information41Agent Statistics41Skill Group Statistics48Index63Size: 1.33 MBPages: 64Language: EnglishOpen manual
User GuideTable of ContentsCTI Toolkit Agent and Supervisor Desktop Guide for Cisco Unified Contact Center Enterprise1Contents3About This Guide5Related Documentation5Obtaining Documentation and Submitting a Service Request6Documentation Feedback7Using the CTI Toolkit Agent and Supervisor Desktops9Starting CTI Toolkit Desktops9How to Log In9About the Agent and Supervisor Desktops11About the Tool Bar11About the Call Information Grid11About the Status Bar12IP Communicator12Changing Your Agent State13Changing to Ready State13Changing to NotReady State13Changing to Wrapup State14Processing Calls14Making Calls15Answering Calls16Using Agent Greeting When Answering Calls16Call State During Whisper Announcement17Hanging Up Calls18Transferring Calls19Conferencing Calls20Agent Greeting During Transfers and Conferences21Sending DTMF Tones21Recording Calls22Entering Wrapup Data22Communicating with Other Call Center Personnel23CTI OS Chat23Requesting Supervisory Assistance (Agent Desktop only)25How to Log Out25Keyboard Shortcuts26Desktop Tool Bar Button Shortcuts26Call Information Grid Shortcuts26Accessibility Options28Support for the JAWS Screen Reader28Keyboard Commands for JAWS28Accessibility and Asynchronous Events28Supervising Agents31Team Real-Time Status Overview31Supervisor State Control31Managing Agents32Team State Information32Agent State Control33Monitoring Calls33Silent Monitoring34Unified CM Based Silent Monitor Use Cases35Silent Monitor With Agent Greeting and Whisper Announcement40Agent Re-Skilling Tool40Interpreting Call and Statistical Information41Call Information41Agent Statistics42Skill Group Statistics47Statistics Window Navigation57Index59Size: 860 KBPages: 60Language: EnglishOpen manual
User GuideTable of ContentsCTI OS Agent Desktop User Guide for Cisco Unified ICM/Contact Center Enterprise & Hosted1Contents3About This Guide5Related Documentation7Obtaining Documentation and Submitting a Service Request8Documentation Feedback8Starting and Logging Into CTI Toolkit Agent Desktop9Starting CTI Toolkit Agent Desktop9Logging In10Peripheral Login Dialogs12Alcatel ACD13Aspect ACD13G3 ACD14IPCC15IPCC Hosted Edition16IPCC System17Siemens Hicom ACD18Spectrum ACD18Symposium ACD19Logging Out19IP Communicator21Changing Agent States23Changing to Ready State23Changing to NotReady State24Changing to Wrapup State24Processing Calls27Making Calls27Answering Calls28Hanging Up Calls28Transferring Calls29Conferencing Calls30Sending DTMF Tones30Main Window Keyboard Accessibility31Call Information Grid Accessibility32Accessibility and Asynchronous Events35Entering Wrapup Data37Wrapup Data Requirements37The Wrapup Dialog Box38Communicating with Other Call Center Personnel39CTI OS Chat39Requesting Supervisory Assistance40Interpreting Call and Statistical Information43Call Information43Agent Statistics44Skill Group Statistics51Statistics Window Navigation65Index67Size: 1.87 MBPages: 68Language: EnglishOpen manual
User GuideTable of ContentsCTI OS Agent Desktop User Guide for Cisco Unified ICM/CC Enterprise & Hosted1Contents3About This Guide7Purpose7Audience7A Word About Cisco Product Names7Important Note for Mobile Agent Users8Conventions8Organization10Other Publications10Obtaining Documentation11Cisco.com11Product Documentation DVD11Ordering Documentation12Documentation Feedback12Field Alerts and Field Notices13Cisco Product Security Overview13Reporting Security Problems in Cisco Products14Obtaining Technical Assistance15Cisco Technical Support & Documentation Website15Submitting a Service Request16Definitions of Service Request Severity16Obtaining Additional Publications and Information17Starting and Logging Into CTI Toolkit Agent Desktop19Starting CTI Toolkit Agent Desktop20Logging In21Logging Out23IP Communicator25Changing Agent States27Changing to Ready State27Changing to NotReady State27Changing to Wrapup State28Processing Calls31Making Calls31Answering Calls33Hanging Up Calls33Transferring Calls33Conferencing Calls34Sending DTMF Tones36Main Window Keyboard Accessibility37Call Information Grid Accessibility38Accessibility and Asynchronous Events41Entering Wrapup Data43Wrapup Data Requirements43The Wrapup Dialog Box44Communicating with Other Call Center Personnel47CTI OS Chat47Requesting Supervisory Assistance49Interpreting Call and Statistical Information51Call Information52Agent Statistics52Skill Group Statistics62Statistics Windows’ Navigation82Index83A83C83D83H83K83L83M83N83R83S83T84W84Size: 1.39 MBPages: 84Language: EnglishOpen manual
User GuideTable of ContentsCTI OS Agent Desktop User Guide for Cisco Unified ICM/CC Enterprise & Hosted1Contents3About This Guide5Starting and Logging Into CTI Toolkit Agent Desktop13Starting CTI Toolkit Agent Desktop13Logging In14Logging Out16IP Communicator17Changing Agent States19Changing to Ready State19Changing to NotReady State20Changing to Wrapup State20Processing Calls23Making Calls23Answering Calls24Hanging Up Calls24Transferring Calls25Conferencing Calls26Sending DTMF Tones26Main Window Keyboard Accessibility27Call Information Grid Accessibility28Accessibility and Asynchronous Events31Entering Wrapup Data33Wrapup Data Requirements33The Wrapup Dialog Box34Communicating with Other Call Center Personnel35CTI OS Chat35Requesting Supervisory Assistance36Interpreting Call and Statistical Information37Call Information37Agent Statistics38Skill Group Statistics45Statistics Window Navigation59Index61Size: 1.39 MBPages: 62Language: EnglishOpen manual
User GuideTable of ContentsCTI OS Agent Desktop User Guide for Cisco Unified ICM/Contact Center Enterprise & Hosted1Contents3About This Guide5Related Documentation7Obtaining Documentation and Submitting a Service Request8Documentation Feedback8Starting and Logging Into CTI Toolkit Agent Desktop11Starting CTI Toolkit Agent Desktop11Logging In12Peripheral Login Dialogs14Alcatel ACD15Aspect ACD15G3 ACD16IPCC17IPCC Hosted Edition18IPCC System19Siemens Hicom ACD20Spectrum ACD20Symposium ACD21Logging Out21IP Communicator22Changing Agent States25Changing to Ready State25Changing to NotReady State26Changing to Wrapup State26Processing Calls29Making Calls29Answering Calls30Hanging Up Calls31Conferencing Calls32Sending DTMF Tones33Main Window Keyboard Accessibility34Call Information Grid Accessibility35Accessibility and Asynchronous Events37Entering Wrapup Data39Wrapup Data Requirements39The Wrapup Dialog Box40Communicating with Other Call Center Personnel41CTI OS Chat41Requesting Supervisory Assistance42Interpreting Call and Statistical Information45Call Information45Agent Statistics46Skill Group Statistics53Statistics Window Navigation68Index69Size: 2.01 MBPages: 70Language: EnglishOpen manual
User GuideTable of ContentsCTI OS Agent Desktop User Guide for Cisco ICM/IPCC Enterprise & Hosted Editions1Contents3About This Guide7Purpose7Audience7Conventions7Organization9Other Publications9Obtaining Documentation10Cisco.com10Product Documentation DVD10Ordering Documentation11Documentation Feedback11Cisco Product Security Overview12Reporting Security Problems in Cisco Products13Obtaining Technical Assistance13Cisco Technical Support & Documentation Website14Submitting a Service Request14Definitions of Service Request Severity15Obtaining Additional Publications and Information16Chapter 1. Starting and Logging Into CTI Toolkit Agent Desktop19Starting CTI Toolkit Agent Desktop20Logging In21Logging Out22IP Communicator24Chapter 2. Changing Agent States27Changing to Ready State27Changing to NotReady State27Changing to Wrapup State28Chapter 3. Processing Calls31Making Calls31Answering Calls33Hanging Up Calls33Transferring Calls33Conferencing Calls34Sending DTMF Tones36Main Window Keyboard Accessibility37Call Information Grid Accessibility38Accessibility and Asynchronous Events41Chapter 4. Entering Wrapup Data43Wrapup Data Requirements43The Wrapup Dialog Box44Chapter 5. Communicating with Other Call Center Personnel47CTI OS Chat47Requesting Supervisory Assistance49Chapter 6. Interpreting Call and Statistical Information51Call Information52Agent Statistics52Skill Group Statistics62Statistics Windows’ Navigation82Index83A83C83D83H83K83L83M83N83R83S83T84W84Size: 637 KBPages: 84Language: EnglishOpen manual
/en/manuals/1704845/Table of ContentsIntegrating Cisco CTI OS Into a Citrix MetaFrame Presentation Server/Microsoft Terminal Services Environment1contents3About this Guide5Objective5Important Note About Cisco IPCC Solution Deployment5Obtaining Documentation6Cisco.com6Ordering Documentation7Documentation Feedback7Obtaining Technical Assistance7Cisco Technical Support Website8Submitting a Service Request8Definitions of Service Request Severity9Obtaining Additional Publications and Information9Introduction11Limitations11Supported Desktop Systems12Supported Platforms12Supported Citrix ICA Clients13Supported MTS Clients13Installing and Configuring CTI OS under the Citrix MetaFrame Presentation Server or Microsoft Terminal Services14Install Cisco CTI OS14Configuring the Call Center Agent Windows Users15Configuring the System Registry After Installation16Configuring Tracing16Publishing CTIOS Clients in Citrix MetaFrame Presentation Server 4.017Configuring a Citrix ICA Connection25Using the Citrix Program Neighborhood Client26Using the Citrix Program Neighborhood Agent33Using the Citrix Web Client35Configuring Microsoft Remote Desktop Connection35Registry Settings39Size: 2.32 MBPages: 40Language: EnglishOpen manual
/en/manuals/1708470/Table of ContentsIntegrating Cisco CTI OS Into a Citrix MetaFrame Presentation Server/Microsoft Terminal Services Environment1About this Guide5Related Documentation6Obtaining Documentation and Submitting a Service Request7Documentation Feedback7Integrating Cisco CTI OS into a Citrix MetaFrame Presentation Server Environment9Introduction9Limitations9Supported Desktop Systems9Supported Platforms10Supported Citrix ICA Clients10Supported MTS Clients10Installing and Configuring CTI OS under the Citrix MetaFrame Presentation Server or Microsoft Terminal Services11Install Cisco CTI OS11Configuring the Call Center Agent Windows Users11Configuring the System Registry After Installation12Configuring Tracing12TraceFileName12TraceMask12Publishing CTIOS Clients in Citrix MetaFrame Presentation Server (Release 4.0 or 4.5)13Configuring a Citrix ICA Connection19Using the Citrix Program Neighborhood Client19Using the Citrix Program Neighborhood Agent25Using the Citrix Web Client26Configuring Microsoft Remote Desktop Connection26Registry Settings29Size: 2.19 MBPages: 30Language: EnglishOpen manual
/en/manuals/1631691/Table of ContentsIntegrating Cisco CTI OS Into a Citrix MetaFrame Presentation Server/Microsoft Terminal Services Environment1About this Guide5Related Documentation6Obtaining Documentation and Submitting a Service Request7Documentation Feedback7Integrating Cisco CTI OS into a Citrix MetaFrame Presentation Server Environment9Introduction9Limitations9Supported Desktop Systems9Supported Platforms10Supported Citrix ICA Clients10Supported MTS Clients10Installing and Configuring CTI OS under the Citrix MetaFrame Presentation Server or Microsoft Terminal Services11Install Cisco CTI OS11Configuring the Call Center Agent Windows Users12Configuring the System Registry After Installation12Configuring Tracing12TraceFileName12TraceMask13Publishing CTI OS Clients in Citrix MetaFrame Presentation Server Release 4.5 or XenApp 5.013Configuring a Citrix ICA Connection19Using the Citrix Program Neighborhood Client19Using the Citrix Program Neighborhood Agent24Using the Citrix Web Client25Configuring Microsoft Remote Desktop Connection25Registry Settings29Size: 1.66 MBPages: 30Language: EnglishOpen manual