CTI OS System Manager Guide for Cisco Unified ICM/Contact Center Enterprise & Hosted Release 10.5(1)
CTI OS Configuration
Downloads: This chapterpdf (PDF - 1.59MB) The complete bookPDF (PDF - 6.13MB) | The complete bookePub (ePub - 2.87MB) | Feedback

CTI OS Configuration

Contents

CTI OS Configuration

CTI OS configuration is handled through the Windows Registry Editor. Using the Editor, you can add or change registry values. This chapter provides instructions for working with the Windows Registry Editor and discusses the required values for the CTI OS registry keys.

This chapter does not discuss configuration of CTI OS Client registry values that the CTI OS Client downloads from the CTI OS Server upon client login. For more information about CTI OS Client logging and tracing registry values, see Appendix B of the CTI OS Developer's Guide for Cisco Unified ICM/Contact Center Enterprise & Hosted.


Note


Except where otherwise indicated, the CTI OS registry keys discussed in this chapter are local and start at the [HKEY_LOCAL_MACHINE\SOFTWARE\ Cisco Systems, Inc.\CTIOS\<CTIOS_CTIOSInstanceName>\<CTIOSServerName>] path.


Use Windows Registry Editor

CTI OS Server installation initializes a configuration that is stored in the Windows System Registry database. You can access and edit this configuration is through the Windows Registry Editor (regedit.exe). The following table shows the Registry Editor main window.

Figure 1. Windows Registry Editor Main Window

To add a key or registry value under an existing key, perform the following steps.

Procedure
    Step 1   Highlight the existing key in the left panel.
    Step 2   Position the cursor in the right panel and click.

    A popup menu appears.

    Step 3   From the popup menu, select Key, String Value, Binary Value, or DWORD value.

    If you select Key, a placeholder for the key you want to add appears highlighted in the left panel. For other items, a placeholder for the item you want to add appears highlighted in the right panel.

    Step 4   Right-click the highlighted item. A popup menu appears.
    • To name the item, select Rename from the popup menu; then type the new name for the item.

    • To set the value data for String, Binary, and DWORD values, select Modify. A dialog box appears. Enter the value data following the Value Data prompt.


    To edit an existing key or registry value, highlight the key or value and right-click it. Select Modify, Delete, or Rename from the popup menu and proceed.


    Note


    After you make a change to the registry, you must restart the CTI OS processes before the new setting can take effect.


    Silent Monitor Type Configuration for CTI OS

    You can configure the CTI OS can be configured to use either the Unified CM-based silent monitor or the CTI OS-based silent monitor. You accomplish this by setting the following field in the CTI OS registry:

    HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems Inc.\CTIOS\<CTIOS InstanceName>\<CTIOSServerName>\EnterpriseDesktopSettings\All Desktops\IPCCSilentMonitor\Name\Settings\CCMBasedSilentMonitor

    This field is a DWORD and if present and set to "1", Unified CM-based silent monitor is used.

    CTI OS-based silent monitor is used if this field is not present or if it is present and set to "0".


    Note


    You can also run the setup program to reconfigure the CTI OS-based silent monitor.

    If the server setup program is not run, the CCMBasedSilentMonitor field is not present. As a result, CTI OS-based silent monitor is used.


    Virtual Desktop Infrastructure

    Virtual Desktop Infrastructure (VDI) is a server-centric computing model. It is designed to help you to host and centrally manage desktop virtual machines in the data center, while providing a full PC desktop experience.

    The VMware View portfolio of products VDI lets IT run virtual desktops in the data center while giving you a single view of all your applications and data in a familiar, personalized environment on any device at any location. VDI provides greater flexibility, reliability, efficiency, and security managing desktops and applications from the datacenter.

    CTI OS Desktop Installations on VDI Agent Desktops

    Prerequisites

    Complete functional VDI deployment as per the VDI requirements. For more information, see http:/​/​www.vmware.com/​products/​view/​.

    Install CTI OS Desktop on VDI Agent

    Procedure
      Step 1   On any VDI agent desktop, run the CTI OS client installer and configure the desktop. For more information on the deployment, limitations, and supported features of CTI OS desktops on VDI, see CTI OS System Manager's Guide for Cisco Unified ICM/Contact Center Enterprise & Hosted .
      Step 2   When the installation is complete, launch the CTI OS desktop and verify basic functionality by logging in an agent, changing agent states, or making calls.
      Step 3   After you complete the testing, follow the same steps on the other VDI agent desktops.

      Notes and Restrictions

      Silent Monitoring

      CTI OS-based silent monitoring is not supported due to physical limitations. For CTI OS-based silent monitoring, you must connect the agent machine to the network via the phone hard-set. This cannot be achieved with a Virtual Machine, such as when using VDI.

      ThinApp

      For more information about ThinApp, see http:/​/​www.vmware.com/​products/​thinapp.

      CTI Driver Key

      The CTI Driver key includes registry settings required for CTI Server connection. The CTI Driver key contains one key, the Config key. The following table describes the CtiDriver/Config key registry values.

      Table 1 Registry Values for [CtiDriver\Config]

      Registry Value Name

      Value Type

      Description

      Default

      ClientID

      String Value

      The identifier of the CTI Client. This appears in the CTI Server log file to help identify which session the CTI OS Server is connected on.

      CTIOSServer

      ClientPassword

      String Value

      The password of the CTI Client. This appears in the CTI Server log file to help identify which session the CTI OS Server is connected on.

      CTIOSServer

      ClientSignature

      String Value

      The signature of the CTI Client. This appears in the CTI Server log file to help identify which session the CTI OS Server is connected on.

      CTIOSServer

      SideAHost

      String Value

      The CTI Server (sideA) IP address or hostname to which the CTI OS Server connects.

      Host specified during CTI Server installation.

      SideAPort

      DWORD Value

      The CTI Server (sideA) IP port to which the CTI OS Server connects.

      Port specified during CTI Server installation.

      SideBHost

      String Value

      The CTI Server (sideB) IP address or hostname to which the CTI OS Server connects.

      Host specified during CTI Server installation.

      SideBPort

      DWORD Value

      The CTI Server (sideB) IP port to which the CTI OS Server connects.

      Port specified during CTI Server installation.

      Heartbeat Interval

      DWORD Value

      The interval (in seconds) at which HEARTBEAT_REQ messages are sent to the CTI Server.

      5

      ServicesMask

      DWORD Value

      The services requested from the CTI Server and provides the functionality that the MinimizeAgentStateEvents registry value used to provide.

      To suppress multiple state events add the bit:CTI_SERVICE_IGNORE _DUPLICATE_AGENT _STATES = 0x00100000

      to the following registry key:

      HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\Ctios\ CTIOS_<ctios_instance>\CTIOS1\ CtiDriver\Config

      Example:

      Change

      "ServicesMask"=dword:000c0016

      to:

      "ServicesMask"=dword:001c0016

      0x00000296 (52)(default)

      CallMsgMask

      DWORD Value

      The unsolicited call events requested from the CTI Server.

      0x00ffffff (16777215)

      AgentStateMask

      DWORD Value

      The agent states requested from the CTI Server.

      0x000003ff (1023)

      ProtocolVersion

      DWORD Value

      The highest protocol version to use when connecting to the CTI Server. The highest common denominator is used when establishing the CTI Session.

      15

      IdleTimeout

      DWORD Value

      The session inactivity timeout (in seconds). The CTI Server disconnects clients after this time threshold has elapsed without other socket messages.

      0x7fffffff (2147483647)

      MemoryPoolSize

      DWORD Value

      Size of the memory pool, in bytes.

      0x00000064 (100)

      EMS Tracing Values

      The registry keys located at [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\ICM\<customer_instance_name>\<CTIOSComponent Name>\EMS\CurrentVersion\Library\Processes\ctios] define the settings for Event Management System (EMS) tracing. The following table lists the registry values for these keys.

      Table 2 Registry Values for EMS Tracing
      Registry Value Name Value Type Description Default

      EMSDisplayToScreen

      DWORD Value

      If set to 1, EMS routines attempt to write formatted messages to standard output.

      0

      EMSAllLogFilesMax

      DWORD Value

      The maximum total number of bytes that the EMS library writes to all local log files.

      2000000000 (2 billion decimal)

      EMSBreakOnExit

      DWORD Value

      If set to 1, EMS exit routines invoke the Debugger.

      0

      EMSBreakOnInit

      DWORD Value

      If set to 1, EMS initialization routines invoke the Debugger.

      0

      EMSDebugBreak

      DWORD Value

      If set to 1, EMS failure routines invoke the Debugger before exiting the process.

      1

      EMSLogFileCountMax

      DWORD Value

      The maximum number of log files that the EMS library writes.

      10000 (decimal)

      EMSLogFileLocation

      String Value

      The directory where the EMS library creates local log files.

      Default directory specified at installation.

      EMSLogFileMax

      DWORD Value

      The maximum number of bytes that the EMS library writes to a single local log file.

      30000000 (30 million decimal)

      EMSNTEventLogLevel

      DWORD Value

      The minimum severity event that EMS logs in the Application Event Log.

      2

      EMSTraceMask

      DWORD Value

      A bitmask that specifies the levels of EMS tracing that are enabled.

      395791 (decimal)

      EMSUserData

      DWORD Value

      Placeholder for arbitrary binary user data.

      EMSForwardLevel

      DWORD Value

      The minimum severity event that EMS forwards to the Unified ICM central controller.

      0

      Server Registry Key

      The Server registry key contains CTI OS Server related configuration information. It contains the following subkeys:

      • Agent
      • CallObject
      • Connections
      • Device
      • Peers
      • Peripherals
      • SkillGroup
      • SilentMonitor
      • Supervisor
      • ThreadPoolSize
      • TimerService

      Agent Registry Key

      The Agent key contains agent related configuration information. The following table lists the registry values for the Agent key.

      Table 3 Registry Values for [Server\Agent]

      Registry Value Name

      Value Type

      Description

      Default

      AgentChatLevel

      string

      Defines the call center personnel with whom an agent is permitted to chat. You must set this to one of the values listed in the "AgentChatLevel values" table below.

      TeamSupervisors

      EnableWrapupDialog

      DWORD Value

      When enabled (1), a Wrapup dialog box pops up at the end of the call. A value of 0 disables this feature.

      1

      forceLogoutOnSessionClose

      DWORD Value

      Set to "1" to turn on the feature to force logout an agent when their session is ended by the agent closing the window without properly logging out.

      Note   

      You must manually enter this value into the registry. If the value is not entered into the registry, the effect is the same as having it set to its default (0).

      0

      forceLogoutOn SessionCloseReason(Optional unless logout reason is required.)

      DWORD Value

      Indicates the reason code to be used by the CTI OS Server when the agent is forced to log out.

      This need not be defined in the registry when the default value is sufficient. By setting this to a specific reason code you can easily determine when an Agent is logged out by the CTI OS Server and when the Agent logs out normally.

      Note   

      You must set this to a non-zero value if an idle reason code reason is required. Refer to "Unified ICM Agent Desk Settings" to determine if the idle reason code is required.

      Note   

      You must manually enter this value into the registry.

      0

      forceNotReadyOn SessionCloseReason(Optional unless idle reason is required.)

      Indicates the reason code to be used by the CTI OS Server when the agent is forced to the Not Ready state before being forced to log out.

      This need not be defined in the registry when the default value is sufficient. By setting this to a specific reason code you can easily determine when an Agent is logged out by the CTI OS Server and when the Agent logs out normally.

      Note   

      You must set this to a non-zero value if an idle reason code reason is required. For more information about the required idle reason code, see "Unified ICM Agent Desk Settings".

      Note   

      You must manually enter this value into the registry.

      0

      LogoutReasonRequired

      DWORD Value

      On all switches except UCCE, when enabled (1) a Logout Reason Code dialog box pops up when changing state to Logout. On all switches, a value of 0 disables this feature.

      0

      NotReadyReasonRequired

      DWORD Value

      On all switches except UCCE, when enabled (1) a Not Ready Reason Code dialog box pops up when changing state to NotReady. On all switches, a value of 0 disables this feature.

      0

      PollForAgentStatsAtEnd Call

      DWORD Value

      Controls when agent statistics are sent from CTI OS Server to CTI OS clients. A value of 0 means that agent statistics are sent at a regular interval (specified in PollingIntervalSec). A value of 1 means that agent statistics are sent only when a call ends.

      Note   

      Changing the value of PollForAgentStatsAtEndCall may degrade performance.

      1

      PollingIntervalSec

      DWORD Value

      The agent statistics polling interval, in seconds.

      15

      WrapupDataRequired

      DWORD Value

      When enabled (1), wrapup data is mandatory. When disabled (0), wrapup data is not required. Not applicable to UCCE agents.

      0

      Table 4 AgentChatLevel Values

      Value

      Meaning

      Disabled

      All agent chat disabled.

      PrimarySupervisor

      Agents can chat only with primary supervisor of their team.

      TeamSupervisors

      Agents can chat with the primary or secondary supervisor of their team.

      Team

      Agents can chat with anyone in team.

      Unrestricted

      Agents can chat with anyone on the same peripheral.

      The Agent key also contains the following subkeys:

      • ReasonCodes
      • WrapupStrings

      ReasonCodes Registry Key

      The ReasonCodes key is a site-specific key that defines the reason codes the CTI OS Agent Desktop uses. For each reason code, a string is mapped to an unsigned short value. The CTI OS Agent Desktop displays the string and sends the appropriate value to the CTI Server, which in turn passes the value along to the ACD.

      The ReasonCodes key contains two subkeys:

      • Logout. This key defines the reason codes that appear on the Select Reason: Logout screen when an agent logs out. Immediately following CTI OS Server installation, the Logout registry key contains four values that serve as placeholders for Logout reason codes (see following table).
        Table 5 Initial Contents of [Server\Agent\ReasonCodes\Logout]

        Registry Value Name

        Value Type

        Description

        Insert logout reason code 1 here

        DWORD Value

        Placeholder for first Logout reason code.

        Insert logout reason code 2 here

        DWORD Value

        Placeholder for second Logout reason code.

        Insert logout reason code 3 here

        DWORD Value

        Placeholder for third Logout reason code.

        Insert logout reason code 4 here

        DWORD Value

        Placeholder for fourth Logout reason code.

        To define the text that appears for each Logout reason code in the Select Reason dialog box, set the value data associated with the reason code to the text you want to appear for that reason code. You may also add additional reason code entries as needed.
      • NotReady. This key defines the reason codes that appear in the Select Reason: NotReady dialog box when an agent goes to NotReady state. As with the Logout key, the NotReady key initially contains four placeholder DWORD values that you can edit to define the reason codes in the Select Reason: NotReady dialog box.

      Note


      The maximum length permitted for a reason code is 42 characters.


      WrapupStrings Registry Key

      The WrapupStrings key defines the predefined wrapup text strings that appear in the softphone Wrapup dialog box. The WrapupStrings key contains a subkey, Incoming, that defines the wrapup text for incoming calls. Immediately following CTI OS Server installation, the Incoming key contains the registry values listed in the following table.

      Table 6 Initial Contents of [Server\Agent\WrapupStrings\Incoming]

      Registry Value Name

      Value Type

      Description

      String0

      String Value

      Placeholder for first wrapup text string.

      String1

      String Value

      Placeholder for second wrapup text string.

      String2

      String Value

      Placeholder for third wrapup text string.

      String3

      String Value

      Placeholder for fourth wrapup text string.

      To define the text that appears for each wrapup text string in the WrapUp dialog box, set the value data associated with the reason code to the text you want to appear for that wrapup string. You may also add additional wrapup string entries as desired.


      Note


      There are no CTI OS registry keys for defining text for outgoing wrapup strings. The Unified ICM does not save any wrapup data for outgoing calls, so you need not define outgoing wrapup strings. This is applicable to transfer and conference initiated calls also. (Both transfer and conference calls are treated as outgoing calls.)


      CallObject Registry Key

      The CallObject key defines the values pertaining to call objects. The following table defines the CallObject key registry values.

      Table 7 Registry Values for [Server\CallObject]

      Registry Value Name

      Value Type

      Description

      Default

      AgentPreCallEvent Timeout

      DWORD Value

      Length of time, in seconds, within which an AGENT_PRE_ CALL_EVENT must be followed by a BEGIN_CALL_ EVENT or the call object is deleted.

      30

      IPCCConference_ SupportsMultipleControllers

      DWORD Value

      When set to 1, allows all parties of a Conference to add new parties to the conference as supported by Unified CM. If running against an earlier version of Unified CM, this must be set to 0. If this is not set to 0 when running against an earlier version of Unified CM, and a non-controller Conference party tries to make a Consult Call for a Conference, the party receives a Control Failure.

      1

      MinimizeEventArgs

      DWORD Value

      When set to 1 (optimal), minimizes the amount of nonessential call object parameters sent to the client.

      1

      TrashCollectionInterval Sec

      DWORD value

      Controls how often (in seconds) the trash collector activates and removes any stale objects from memory. A value of 0 disables the trash collector.

      7200

      Connections Registry Key

      The Connections key defines the values for client connections to the CTI OS Server. The following table defines the Connections key registry values.

      Table 8 Registry Values for [Server\Connections]

      Registry Value Name

      Value Type

      Description

      Default

      ClientPoolInitialSize

      DWORD Value

      The number of Client objects to pre-create.

      Caution   

      Leave this registry entry set to its default value.

      1500

      ClientPoolMinSize

      DWORD Value

      The minimum number of Client objects in the pool to trigger gstrowing the pool.

      Caution   

      Leave this registry entry set to its default value.

      50

      ClientPoolIncrement

      DWORD Value

      The number of Client objects to create when the pool must be gstrown.

      Caution   

      Leave this registry entry set to its default value.

      50

      HeartbeatIntervalMs

      DWORD Value

      The number of milliseconds between heartbeats from the server to its clients.

      60000

      HeartbeatRetrys

      DWORD Value

      The number of missed heartbeats before a connection is closed for unresponsiveness.

      5

      ListenPort

      DWORD Value

      The TCP/IP port on which the CTI OS Server listens for incoming client connections.

      Port specified during CTI OS Server setup.

      MaxMonitorMode Connections

      DWORD Value

      This registry entry controls the number of monitor mode connections connected to a CTI OS Server.

      7

      The heartbeating mechanism uses the HeartbeatIntervalMs and HeartbeatRetrys values together to determine when a connection is stale and must be closed. The interval serves as a timeout and the retries is the number of attempts that have timed out before closing the socket.

      Example with an interval of 5 seconds and three retries:

      • After 5 seconds Total time), if the server does not receive a response from the client, it sends a heartbeat request and increments the retry count to 1.
      • After another 5 seconds, if the server does not receive a response from the client, it sends a heartbeat request and increments the retry count to 2.
      • After another 5 seconds, if the server does not receive a response from the client, it sends a heartbeat request and increments the retry count to 3.
      • After another 5 seconds, if the server does not receive a response from the client, the connection is reported failed and the socket is closed.

      To disable heartbeating, set the HeartbeatIntervalMs value to 0.

      A Retry value of 0 causes the connection to time out after the interval without sending any heartbeat.

      Device Registry Key

      The Device registry key contains one value, SnapshotDelaySec. This is a reserved value that must not be changed.

      Peers Registry Key

      The Peers registry key informs a CTI OS Server about other CTI OS Servers. This allows CTI OS Servers to make direct connections with one another for the purposes of routing internal messages. On startup, CTIOSServerNode reads this key and opens client connections to all peer servers.


      Note


      You can define two CTI OS Servers as peer servers only if they are connected to the same CTI Server or CTI Server pair. You cannot define two CTI OS Servers as peer servers if they are connected to CTI Servers that reside on different PGs.


      The Peers key contains the values listed in following table.

      Table 9 Registry Values for [Server\Peers]

      Registry Value Name

      Value Type

      Description

      Default

      Heartbeat IntervalMs

      DWORD Value

      Number of milliseconds between heartbeats for client connection to peer servers.

      5000

      HeartbeatRetrys

      DWORD Value

      Number of retry attempts before a connection to a peer server is determined to be down.

      3

      In addition, there must be a subkey for each peer server to which the current server connects. The key name is the hostname or IP address of the peer server; for example:

      HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\<CTIOSInstanceName>\<CTIOSServerName>\Server\Peers\DallasCTIOS.

      Each such subkey must contain the registry value listed in the following table.

      Table 10 Registry Values for [Server\Peers] Subkeys

      Registry Value Name

      Value Type

      Description

      Port

      DWORD Value

      The number of the TCP/IP port on which the peer server is listening for the client connection.

      Peripherals Registry Key

      The Peripherals key stores the maps of valid PeripheralID and Peripheral Types. On CTI OS System startup, these mappings are read into a map, which creates the appropriate peripheral-type objects on the server.

      This information must correspond to the Unified UCCE database Peripheral table Peripheral.PeripheralID and Peripheral.ClientType. While the values in ClientType are not equal to the PeripheralTypes, there is a one-to-one relationship between ClientTypes and PeripheralTypes.

      The symbol PERIPHERAL_LOGICAL_NAME can be any logical name that uniquely identifies a Peripheral, such as "Phoenix ACD 1." This is equivalent to the Peripheral.EnterpriseName logical name in the Unified UCCE database. There must be one entry for each valid Peripheral at this site.

      The following lists the Peripherals key registry values.

      Table 11 Registry Values for [Server\Peripherals\PERIPHERAL_LOGICAL_NAME]

      Registry Value Name

      Value Type

      Description

      PeripheralID

      DWORD Value

      The PeripheralID configured in the Unified UCCE database for this Peripheral.

      PeripheralType

      DWORD Value

      The PeripheralType corresponding to this PeripheralID.

      Examples:

      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems,Inc.\Ctios\<CTIOS 
      InstanceName>\<CTIOSServerName>\Server\Peripherals\G3 ACD]
      "PeripheralID"=dword:00001388
      "PeripheralType"=dword:00000005
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\Ctios\<CTIOS 
      InstanceName>\<CTIOSServerName>\Server\Peripherals\Aspect ACD]
      "PeripheralID"=dword:00001390
      "PeripheralType"=dword:00000001
      

      SkillGroup Registry Key

      The SkillGroup key defines skill group configuration values. The following table lists the SkillGroup key registry values.

      Table 12 Registry Values for [Server\SkillGroup]

      Registry Value Name

      Value Type

      Description

      Default

      PollingInterval Sec

      DWORD Value

      The SkillGroup statistics polling interval, in seconds.

      10

      Supervisor Registry Key

      The Supervisor key contains supervisor related configuration information. The following table lists the registry values for the Supervisor key.

      Table 13 Registry Values for [Server\Supervisor]

      Registry Value Name

      Value Type

      Description

      Default

      Supervisor ChatLevel

      String Value

      Defines the call center personnel with whom a supervisor is permitted to chat. This must be set to one of the values listed in the table below.

      Unrestricted

      Table 14 SupervisorChatLevel Values

      Value

      Meaning

      Disabled

      All supervisor chat disabled.

      Team

      Supervisors can chat with anyone in their primary team.

      Unrestricted

      Supervisors can chat with anyone on the same peripheral.

      ThreadPoolSize Registry Key

      ThreadPoolSize is the number of threads in the IO completion port pool.

      The ThreadPoolSize registry value is found under the following registry key:

      HKLM\Software\Cisco Systems.Inc.\ctios\CTIOS_<instancename>\CTIOS1\Server\ThreadPool

      Registry Value Name

      Value Type

      Description

      Default

      ThreadPoolSize

      DWORD Value

      If set to <= 0, then the number of threads in the pool are calculated using the following formula: number of CPU's +2.

      Maximum threads allowed are 32.

      0 for all peripheral types except Avaya where the default value is 14.


      Note


      Balancing threads against overall performance is not a trivial task. If the ThreadPoolSize value is changed, follow up with overall performance monitoring to see whether CTI OS Server performance is affected.


      TimerService Registry Key

      The TimerService key specifies configuration parameters for the CTI OS Server's internal TimerService. The following table lists the registry values for the TimerService key.

      Table 15 Registry Values for [Server\TimerService]

      Registry Value Name

      Value Type

      Description

      Default

      ResolutionMSec

      DWORD Value

      The interval at which the TimerService services queued requests, expressed in milliseconds.

      500

      MainScreen Registry Key

      The MainScreen key, located at [HKEY_LOCAL_MACHINE\SOFTWARE\ Cisco Systems, Inc.\CTIOS\ <CTIOSInstanceName>\<CTIOSServerName>\ EnterpriseDesktopSettings\All Desktops\ ScreenPreferences\ Name\MainScreen], includes registry values that define the behavior of softphone windows and icons in response to a BeginCallEvent. The following table lists the registry values for the MainScreen key.

      Table 16 MainScreen Registry Key Values

      Registry Value Name

      Value Type

      Description

      Default

      BringToFrontOnCall

      DWORD Value

      When enabled (1), the softphone window is raised above all other windows when a BeginCallEvent occurs.

      1

      FlashOnCall

      DWORD Value

      When enabled (1), the softphone icon on the taskbar flashes when a BeginCallEvent occurs.

      0

      RecordingEnabled

      DWORD Value

      Controls whether the Record button is enabled on the Agent and Supervisor Softphones (0 = disabled, 1 = enabled).

      0

      AgentStatistics IntervalSec

      DWORD Value

      Controls how often (in seconds) the Agent and Supervisor Softphones update time-in-state agent statistics.

      0xF

      UCCE Silent Monitor Configuration

      The IPCCSilentMonitor key contains silent monitor configuration information. The IPCCSilentMonitor key contains one subkey, named Settings.

      The IPCCSilentMonitor configuration settings are declared in the registry of each server on the following location:

      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems Inc.\CTIOS\<CTIOS InstanceName>\<CTIOSServerName>\EnterpriseDesktopSettings\All Desktops\IPCCSilentMonitor\Name\Settings]

      The Settings subkey contains the parameters used by the silent monitor subsystem to establish a monitoring session between a supervisor and a monitored agent. The values are listed in the following table.

      Table 17 Settings Registry Subkey Values

      Registry Value Name

      Value Type

      Description

      Default

      HeartbeatInterval

      DWORD value

      The time in seconds between consecutive heartbeats.

      5

      HeartbeatTimeout

      DWORD value

      The amount of time in seconds that must elapse without receiving data before a disconnect is signaled.

      15

      MediaTerminationPort

      DWORD value

      Reserved. This is the TCP/IP port that the silent monitor subsystem uses to render monitored audio.

      4000

      MonitoringIPPort

      DWORD value

      This is the TCP/IP port on the monitoring application to which the monitored application sends monitored audio.

      39200

      StopSMNonACDCall

      DWORD value

      This stops silent monitoring of Non-ACD calls. When enabled (1) in Unified CM-based silent monitoring, the supervisor's monitor button is disabled. When enabled in desktop-based silent monitoring, the supervisor's monitor button is enabled but the supervisor can only hear ACD calls.

      Note   

      You must manually enter this value into the registry. If the value has not been entered into the registry, the effect is the same as having it set to its default (0).

      0

      ConnectionProfiles Registry Key

      The ConnectionProfiles key contains an organized list of the connection information of all configured CTI OS Servers present in the corporate network that you can access by a client application. The connection profiles are defined in the registry of each server at the following location:

      HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems Inc.\CtiOs\<CTIOS InstanceName>\<CTIOSServerName>\ EnterpriseDesktopSettings\All Desktops\Login\ConnectionProfiles\Name

      To create a profile for a given server, you must define a subkey under ConnectionProfiles\Name with the following format:

      [HKEY_LOCAL_MACHINE\Software\…\ConnectionProfiles\Name\CtiOsServerName]"PeripheralID"=dword:5000
      "Heartbeat"=dword:00000000
      "MaxHeartbeats"=dword:00000005
      "CtiOsA"="HostName_A"
      "CtiOsB"="HostName_B"
      "PortA"=dword:0000a42c
      "PortB"=dword:0000a42c
      "AutoLogin"=dword:00000001
      “ShowFieldBitMask”=dword:00000023
      "WarnIfAlreadyLoggedIn"=dword:00000001
      "RejectIfAlreadyLoggedIn"=dword:00000000
      "DisableSkillGroupStatistics"=dword:00000001
      "DisableAgentStatistics"=dword:00000001
      "UCCESilentMonitorEnabled"=dword:0x00000001
      "WarnIfSilentMonitored"=0x00000000
      

      The following table describes the required ConnectionProfiles key registry values.

      Table 18 ConnectionProfiles Key Registry Values

      SubKey/Value

      Description

      CtiOsServerName

      The name given to the profile. This string appears on the Login Dialog when a user is about to log in using the CTI OS Agent State Control.

      PeripheralID

      The numeric value of the peripheral to which the CTI OS Server connects.

      Heartbeat

      Time interval between heartbeat messages between the client and CTI OS Server.

      MaxHeartbeats

      Maximum number of heartbeats that can be missed by the CTI OS Client Session before failover occurs.

      CtiOsA

      DNS name of IP Address of the primary CTI OS Server to which a client application can connect.

      CtiOsB

      DNS name of IP Address of the secondary CTI OS Server to which a client application can connect.

      PortA

      TCP/IP port number assigned to the primary server.

      PortB

      TCP/IP port number assigned to the secondary server.

      AutoLogin

      Indicates if the client must automatically log in an agent or supervisor after it recovers from a system failure. For all peripherals other than UCCE you must set this field to 0x00000000. For UCCE, set this field to 0x00000001.

      ShowFieldBit Mask

      Indicates what fields appear in the CTI OS Login dialog box. Fields appear on the dialog box only if their corresponding bit in the mask is on. The possible fields and their corresponding masks are shown in the table "ShowBitFieldMask Fields" below. The default value at setup for ShowFieldBit Mask is 0x00000023 (AgentID, Instrument, and Password displayed).

      WarnIfAlready LoggedIn

      Indicates whether to display a warning but still permit login if an agent who is already logged in attempts to log in again. A value of 1 (default) enables the warning; a value of 0 disables the warning. This value is relevant only if RejectIfAlreadyLoggedIn is 0.

      RejectIfAlready LoggedIn

      Indicates whether or not to permit an agent who is already logged in to log in again. A value of 0 (default) permits an agent to log in again. A value of 1 prohibits an agent from logging in again.

      DisableSkillGroup Statistics

      Indicates whether skill group statistics are enabled for the agent using this connection profile. A value of 1 disables statistics. If this value is 0 (default) or not present, skill group statistics are enabled for this agent.

      DisableAgent Statistics

      Indicates whether agent statistics are enabled for the agent using this connection profile. A value of 1 disables statistics. If this value is 0 (default) or not present, statistics are enabled for this agent.

      IPCCSilent MonitorEnabled

      Indicates whether silent monitor is enabled for the clients using this connection profile. A value of 0x00000001 (default) enables silent monitor. If this value is 0x00000000 or not present, silent monitor is disabled for this client. For all peripherals other than UCCE, you must set this field to 0x00000000.

      WarnIfSilent Monitored

      Indicates whether to display an indicator on the agent desktop when the agent is silent monitored by the team supervisor. A value of 0x00000001 causes a message to appear on the agent desktop when the supervisor is silent monitoring this agent. If this value is 0x00000000 (default) or not present, no message appears on the agent desktop when the supervisor is silent monitoring this agent.

      RasCallMode

      Indicates the agent work mode options for the mobile agent login dialog box. Valid values are 0 (agent chooses), 1 (call by call), and 2 (nailed up).

      Table 19 ShowBitFieldMask Fields

      Field

      Mask

      Instrument

      0x00000001

      Password

      0x00000002

      Work Mode

      0x00000004

      Position ID

      0x00000008

      Skillgroup

      0x00000010

      AgentID

      0x00000020

      Login Name

      0x00000040

      Mobile Agent

      0x00000080

      The heartbeating mechanism uses the MaxHeartbeats and Heartbeat values together to determine when a client must send heartbeat requests to the server and when the client must connect to the other server.

      MaxHeartbeats is the max number of missed heartbeats before failover. (Default = 5)

      Heartbeat is the time interval between consecutive heartbeats. (Default = 5)

      This is how the heartbeating mechanism works on the CTI OS client:

      • After 5 seconds, if the client does not receive a response from the server, it sends a heartbeat request 1.
      • After 5 seconds, if the client does not receive a response from the server, it sends a heartbeat request 2.
      • After another 5 seconds, if the client does not receive a response from the server, it sends a heartbeat request 3.
      • After yet another 5 seconds, if the client does not receive any response from the server, it connects to an alternative server.

      Note


      The amount of time it takes a client to reconnect to the other server depends on the type of failure that occurs.


      The heartbeat parameters above are only a factor if the TCP/IP socket is not broken. For example, if you disconnect the network cable to the CTI OS Server, TCP/IP does not break the socket. In this case, the client uses the heartbeating mechanism listed above to detect the failure.

      In a different case, however, if the CTI OS Server process crashes or the machine is turned off, the socket breaks and the client immediately knows that the connection has failed. In this case, the client directly connects to the other server without heartbeat attempts.


      Note


      In either case, although the socket connection might get established right away, it might take a few more seconds for the agents to fully recover their previous, pre-failure state. This delay might particularly be experienced if many agents are failing over at the same time, or if the system is experiencing a heavy call load at the time of the failure.


      SilentMonitorService Subkey

      The ConnectionProfiles key contains a <profile_name>\SilentMonitorService subkey, which contains parameters that clients use to connect to one of a set of silent monitor services. It contains the following keywords.

      Table 20 ConnectionProfiles\<profile_name>\SilentMonitorService Subkey Values

      Registry Value Name

      Value Type

      Description

      ListenPort

      integer

      Port on which the silent monitor service is listening for incoming connections.

      TOS

      integer

      QOS setting for the connection.

      HeartbeatInterval

      integer

      Amount of time in milliseconds between heartbeats.

      HeartbeatRetries

      integer

      Number of missed heartbeats before the connection is abandoned.

      Cluster

      A key that contains a list of silent monitor services to which the CIL tries to connect. The CIL randomly chooses one of the services in this list. This key contains the following subkeys:

      • 0 – Index of the first silent monitor service
      • N – Index of the Nth silent monitor service

      Both subkeys contain the following keyword.

      SilentMonitorService – hostname or IP address of a silent monitor service to which to connect.

      Configuration of Additional Connection Profiles

      Creation of Second Profile

      Use the following template to create a connection profile that includes a silent monitor server:

      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\Ctios\CTIOS_<instance>\CTIOS1\EnterpriseDesktopSettings\All Desktops\Login\ConnectionProfiles\Name\<profileName>]
           "peripheralID"=dword:00001389
      		   "ShowFieldBitMask"=dword:000000a3
           "SwitchCapabilityBitMask"=dword:7f3f1bff
           "CtiOsA"="ctios-a"
           "PortA"=dword:0000a42c
           "UCCESilentMonitorEnabled"=dword:00000001
      		   "WarnIfSilentMonitored"=dword:00000000
           "CtiOsB"="ctios-b"
           "PortB"=dword:0000a42c
           "MaxHeartbeats"=dword:00000003
           "Heartbeat"=dword:00000005
           "AutoLogin"=dword:00000001
      		   "WarnIfAlreadyLoggedIn"=dword:00000000
           "RejectIfAlreadyLoggedIn"=dword:00000000
           "TOS"=dword:00000000
           "RasCallMode"=dword:00000000
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\Ctios\CTIOS_<instance>\CTIOS1\EnterpriseDesktopSettings\All Desktops\Login\ConnectionProfiles\Name\<profileName>\SilentMonitorService]
      		    "HeartbeatInterval"=dword:00001388
      		    "HeartbeatRetries"=dword:00000005
            "ListenPort"=dword:0000a42d
            "TOS"=dword:00000000

      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\Ctios\CTIOS_<instance>\CTIOS1\EnterpriseDesktopSettings\All Desktops\Login\ConnectionProfiles\Name\<profileName>\SilentMonitorService\Cluster]

      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\Ctios\CTIOS_<instance>\CTIOS1\EnterpriseDesktopSettings\All Desktops\Login\ConnectionProfiles\Name\<profileName>\SilentMonitorService\Cluster\0]
           "SilentMonitorService"="sms-host-or-ip"

      Note


      The SilentMonitorService key is not always present.

      When the SilentMonitorService key is present, the agent desktop attempts to connect to the silent monitor service running on the host specified in the key.

      When the SilentMonitorService key is not present, the agent desktop determines if it is running under Citrix. If it is, the desktop attempts to connect to a silent monitor service running on the Citrix Client computer. Otherwise, the desktop connects to a silent monitor service running locally (on the same computer as the agent desktop).


      Two Profiles for Server- and Desktop-Based Silent Monitoring Scenario

      If no silent monitor key exists in the connection profile, the profile defaults to desktop silent monitoring. The following template illustrates two connection profiles—one for desktop-based silent monitor, and one for server-based silent monitor:

      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\Ctios\CTIOS_<instance>\CTIOS1\EnterpriseDesktopSettings\All Desktops\Login\ConnectionProfiles\Name\UCCE]
           "peripheralID"=dword:00001388
           "ShowFieldBitMask"=dword:00000023
           "SwitchCapabilityBitMask"=dword:7f3f1bff
           "CtiOsA"="ctios-a"
           "PortA"=dword:0000a42c
           "UCCESilentMonitorEnabled"=dword:00000001
           "WarnIfSilentMonitored"=dword:00000001
           "CtiOsB"="ctios-b"
           "PortB"=dword:0000a42c
           "MaxHeartbeats"=dword:00000003
           "Heartbeat"=dword:00000005
           "AutoLogin"=dword:00000001
           "WarnIfAlreadyLoggedIn"=dword:00000000
           "RejectIfAlreadyLoggedIn"=dword:00000000
           "TOS"=dword:00000000
           "SaveShowField"=dword:00000043
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\Ctios\CTIOS_<instance>\CTIOS1\EnterpriseDesktopSettings\All Desktops\Login\ConnectionProfiles\Name\Mobile Agent]
           "peripheralID"=dword:00001388
           "ShowFieldBitMask"=dword:000000a3
           "SwitchCapabilityBitMask"=dword:7f3f1bff
           "CtiOsA"="ctios-a"
           "PortA"=dword:0000a42c
           "UCCESilentMonitorEnabled"=dword:00000001
           "WarnIfSilentMonitored"=dword:00000000
           "CtiOsB"="ctios-b"
           "PortB"=dword:0000a42c
           "MaxHeartbeats"=dword:00000003
           "Heartbeat"=dword:00000005
           "AutoLogin"=dword:00000001
           "WarnIfAlreadyLoggedIn"=dword:00000000
           "RejectIfAlreadyLoggedIn"=dword:00000000
           "TOS"=dword:00000000
           "RasCallMode"=dword:00000000
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\Ctios\CTIOS_<instance>\CTIOS1\EnterpriseDesktopSettings\All Desktops\Login\ConnectionProfiles\Name\Mobile Agent\SilentMonitorService]
           "HeartbeatInterval"=dword:00001388
           "HeartbeatRetries"=dword:00000005
           "ListenPort"=dword:0000a42d
           "TOS"=dword:00000000

      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\Ctios\CTIOS_<instance>\CTIOS1\EnterpriseDesktopSettings\All Desktops\Login\ConnectionProfiles\Name\Mobile Agent\SilentMonitorService\Cluster]

      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\Ctios\CTIOS_<instance>\CTIOS1\EnterpriseDesktopSettings\All Desktops\Login\ConnectionProfiles\Name\Mobile Agent\SilentMonitorService\Cluster\0]
           "SilentMonitorService"="sms-host-or-ip"

      Call Appearance Grid Configuration

      The CallAppearance key contains a list of all the columns that appear on the softphone Call Appearance grid.

      The columns are declared in the registry of each server on the following location:

      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems,Inc.\CtiOs\<CTIOS InstanceName>\<CTIOSServerName>\EnterpriseDesktopSettings\ All Desktops\Grid\CallAppearance\Columns\Number\Position]

      Position represents the actual location in the grid where the column appears. For example for the first column Position is "1" and for the fifth column it is "5".

      The following table lists the attributes that a column declaration can contain.

      Table 21 Column Declaration Attributes

      Attribute

      Type

      Description

      Type

      String Value

      Assigns a column to display the Call information identified by the value of this attribute. The "Type values" table below lists the possible values.

      Header

      String Value

      Contains the text string that appears on the header of the column. If not specified, the Type appears instead.

      Width

      DWORD value

      Column width expressed in pixels.

      If the Auto Resize Columns property is set on the Call Appearance Grid, this attribute has no effect. The column is automatically sized to match the column header or column cell content, whichever is longer.

      If the Auto Resize Columns property is not set, one of the following occurs:

      • If Width is specified, the column sizes to match it.
      • If Width is not specified, the column sizes to a default length.

      MaxChars

      String Value

      Maximum number of characters that can appear in the column.

      Name

      String Value

      Used only when the Type is ECC; contains the name of a given ECC variable. The name in this attribute must be entered without the prefix "user." For the standard Outbound Option ECC variables, use the prefix BA without any dots following it; for example, BAResponse.

      Alignment

      String Value

      Defines the alignment of the information on the columns. Possible values are "left", "right" or "centered."

      NumericOnly

      String Value

      If "true" the column accepts only numeric values for display. If "false" alphanumeric values may appear.

      editable

      String Value

      Indicates if the user can modify the cells on the column at runtime.

      The following table lists the Type values.

      Table 22 Type Values

      Type

      Description

      CallID

      Associates the column with the unique call ID.

      CallStatus or Status

      Associates the column with Call Status.

      DNIS

      Associates the column with DNIS.

      ANI

      Associates the column with ANI.

      CED

      Associates the column with the caller entered digits.

      DialedNumber or DN

      Associates the column with the dialed number.

      UserToUserInfo or UserToUser

      Associates the column with user to user information.

      WrapUp

      Associates the column with the call wrap up data.

      Var1, Var2, …, Var10

      Associates the column with a call variable.

      NAMEDVARIABLE, ECCVariable, ECCVar, ECC, or ECCNAME

      Associates the column with an scalar ECC Variable.

      NAMEDARRAY or ECCARRAY

      Associates the column with a Named Array ECC variable.

      CampaignID

      Campaign ID for value appears in the Agent Real Time table. Set to zero if not used. Applicable only to Outbound Option systems.

      QueryRuleID

      Query rule ID for value appears in the Agent Real Time table. Set to zero if not used. Applicable only to Outbound Option systems .

      The following are examples of column declarations:

      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems,Inc.\CtiOs\<CTIOS InstanceName>\<CTIOSServerName>\EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\Columns\Number\1]
           "Type"="CallID"
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CtiOs\ <CTIOS InstanceName>\<CTIOSServerName>\EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\Columns\Number\10]
          "Type"="Var2"
          "editable"="true"

      The following is an example of associating a column with an ECC variable:

      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems,Inc.\CtiOs\ <CTIOS InstanceName>\<CTIOSServerName>\ EnterpriseDesktopSettings\ All Desktops\Grid\CallAppearance\Columns\Number\19]
           "Type"="ECC"
           "Name"="bobc"
           "Header"="ECC Bobc"
           "Maxchars"="8"
           "editable"="true"

      The following is an example of associating a column with an ECC array variable. Note that the "Name" key must contain both the array name and the subscript/index:

      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems,Inc.\CtiOs\ <CTIOS InstanceName>\<CTIOSServerName>\ EnterpriseDesktopSettings\ All Desktops\Grid\CallAppearance\Columns\Number\19]
           "Type"="ECCARRAY"
           "Name"="bobc[0]"
           "Header"="ECCARRAY Bobc"
           "Maxchars"="8"
           "editable"="true"

      Configure Automatic Call Appearance Grid

      The CTIOSServer directory contains a file, callappearance.default.reg.txt, which provides the following default definition for Call Appearance grid columns 1 to 18:

      REGEDIT4
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance]
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\ 
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\Columns]
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\ Columns\Number]
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\Columns\ Number\1]
      "Type"="CallID"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\Columns\ Number\10]
      "Type"="Var2"
      "maxchars"="40"
      "editable"="true"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\Columns\ Number\11]
      "Type"="Var3"
      "maxchars"="40"
      "editable"="true"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\ Columns\Number\12]
      "Type"="Var4"
      "maxchars"="40"
      "editable"="true"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\Columns\ Number\13]
      "Type"="Var5"
      "maxchars"="40"
      "editable"="true"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\ Columns\Number\14]
      "Type"="Var6"
      "maxchars"="40"
      "editable"="true"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\ Columns\Number\15]
      "Type"="Var7"
      "maxchars"="40"
      "editable"="true"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\ Columns\Number\16]
      "Type"="Var8"
      "maxchars"="40"
      "editable"="true"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\ Columns\Number\17]
      "Type"="Var9"
      "maxchars"="40"
      "editable"="true"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\ Columns\Number\18]
      "Type"="Var10"
      "maxchars"="40"
      "editable"="true"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\ Columns\Number\2]
      "Type"="CallStatus"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\ Columns\Number\3]
      "Type"="DNIS"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\ Columns\Number\4]
      "Type"="ANI"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\ Columns\Number\5]
      "Type"="CED"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\ Columns\Number\6]
      "Type"="DialedNumber"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\ Columns\Number\7]
      "Type"="UserToUserInfo"
      "maxchars"="129"
      "editable"="true"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\ Columns\Number\8]
      "Type"="WrapUp"
      "maxchars"="40"
      "editable"="true"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
      <CTIOS InstanceName>\<CTIOSServerName>\
      EnterpriseDesktopSettings\All Desktops\Grid\CallAppearance\ Columns\Number\9]
      "Type"="Var1"
      "maxchars"="40"
      "editable"="true"
      

      To import this default definition into your registry, perform the following steps.

      Procedure
        Step 1   Choose Start > Run dialog box.
        Step 2   Rename the callappearance.default.reg.txt file to callappearance.default.reg.
        Step 3   Enter regedit filename

        where filename is the full pathname of the callappearance.default.reg file.

        Step 4   Cycle your CTI OS Server process.

        Related References

        Customize Agent Statistics Grid Configuration

        The CTIOSServer directory contains a file, agentstatistics.default.reg.txt, that contains the default definition for the Agent Statistics grid. The following is an example agentstatistics.default.reg.txt file that defines Agent Statistic grid columns 1 and 2:

        REGEDIT4
        
        [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
        <CTIOS InstanceName>\<CTIOSServerName>\
        EnterpriseDesktopSettings\All Desktops\Grid]
        
        [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
        <CTIOS InstanceName>\<CTIOSServerName>\
        EnterpriseDesktopSettings\All Desktops\Grid\AgentStatistics]
        
        [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
        <CTIOS InstanceName>\<CTIOSServerName>\
        EnterpriseDesktopSettings\All Desktops\Grid\AgentStatistics\Columns]
        
        [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
        <CTIOS InstanceName>\<CTIOSServerName>\
        EnterpriseDesktopSettings\All Desktops\Grid\AgentStatistics\ Columns\Number]
        "DisableStatsMinimization"=dword:00000000
        
        [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
        <CTIOS InstanceName>\<CTIOSServerName>\
        EnterpriseDesktopSettings\All Desktops\Grid\AgentStatistics\ Columns\Number\1]
        "Type"="CallsHandledToday" 
        "Header"="CallsHandledToday"
        
        [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
        <CTIOS InstanceName>\<CTIOSServerName>\
        EnterpriseDesktopSettings\All Desktops\Grid\AgentStatistics\Columns\Number\2]
        "Type"="TimeLoggedInToday" 
        "Header"="TimeLoggedInToday"
        

        The DisableStatsMinimization registry value controls the quantity of agent statistics that are sent from the CTI OS Server to CTI OS clients. Possible values are 0 (only those agent statistics that are configured to be displayed on the agent statistics grid are sent to the client) and 1 (all agent statistics are sent to the client); default is 0.

        To customize the Agent Statistics grid, perform the following steps.

        Procedure
          Step 1   Make a copy of the agentstatistics.default.reg.txt file.
          Step 2   Rename the copied agentstatistics.default.reg.txt file to agentstatistics.default.reg.
          Step 3   Add, remove, and renumber column definitions in the copied file as desired.
          Step 4   Choose Start > Run dialog box.
          Step 5   Enter regedit filename

          where filename is the full pathname of the edited copy of the agentstatistics.default.reg file.

          Step 6   Cycle your CTI OS Server process.

          Related References

          Automatic Skill Group Statistics Grid Configuration

          The CTIOSServer directory contains a file, skillgroupstatistics.default.reg.txt, that contains the default definition for the Skill Group Statistics grid. The following is an example skillgroupstatistics.default.reg.txt file that defines columns 1 through 4:


          Note


          The first column of the Skill Group Statistics window should be SkillGroupNumber.


          REGEDIT4
          
          [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
          <CTIOS InstanceName>\<CTIOSServerName>\
          EnterpriseDesktopSettings\All Desktops\Grid]
          
          [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
          <CTIOS InstanceName>\<CTIOSServerName>\
          EnterpriseDesktopSettings\All Desktops\Grid\SkillGroupStatistics]
          
          [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
          <CTIOS InstanceName>\<CTIOSServerName>\
          EnterpriseDesktopSettings\All Desktops\Grid\SkillGroupStatistics\Columns]
          
          [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
          <CTIOS InstanceName>\<CTIOSServerName>\
          EnterpriseDesktopSettings\All Desktops\Grid\SkillGroupStatistics\ Columns\Number]
          "DisableStatsMinimization"=dword:00000000
          "DisableMonitorModeStatsMinimization"=dword:00000000
          
          [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
          <CTIOS InstanceName>\<CTIOSServerName>\
          EnterpriseDesktopSettings\All Desktops\Grid\SkillGroupStatistics\Columns\Number\1]
          "Type"="SkillGroupNumber" 
          "header"="SkillGroupNumber"
          
          [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
          <CTIOS InstanceName>\<CTIOSServerName>\
          EnterpriseDesktopSettings\All Desktops\Grid\SkillGroupStatistics\Columns\Number\2]
          "Type"="AgentsAvail"
          
          [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
          <CTIOS InstanceName>\<CTIOSServerName>\
          EnterpriseDesktopSettings\All Desktops\Grid\SkillGroupStatistics\ Columns\Number\3]
          "Type"="AgentsNotReady"
          
          [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\
          <CTIOS InstanceName>\<CTIOSServerName>\
          EnterpriseDesktopSettings\All Desktops\Grid\SkillGroupStatistics\ Columns\Number\4]
          "Type"="AgentsReady"
          

          The DisableStatsMinimization registry value controls the quantity of skill group statistics that are sent from the CTI OS Server to CTI OS agent mode clients. Possible values are 0 (only those skill group statistics that are configured to appear on the skill group statistics grid are sent to the client) and 1 (all skill group statistics are sent to the client); default is 0.

          The DisableMonitorModeStatsMinimization registry value controls the quantity of skill group statistics that are sent from the CTI OS Server to CTI OS monitor mode clients. Possible values are 0 (only those skill group statistics that are configured to appear on the skill group statistics grid are sent to the client) and 1 (all skill group statistics are sent to the client); default is 0.


          Note


          When viewing CTIOS with the Supervisors, the default skill group shows up on the CTIOS Agent Skill Group stats. This default skill group reports all voice calls not routed by a Unified UCCE script.



          Note


          While you can customize columns in the Skill Group Statistics grid, you should retain the following registry settings:


          [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\CTIOS\<CTIOS InstanceName>\<CTIOSServerName>\EnterpriseDesktopSettings\All Desktops\Grid\SkillGroupStatistics\Columns\Number\1]
             "Type"="SkillGroupNumber"
             "header"="SkillGroupNumber"

          The header can vary depending on the language you use. To customize the Skill Group Statistics grid, perform the following steps.

          Procedure
            Step 1   Make a copy of the skillgroupstatistics.default.reg.txt file.
            Step 2   Rename the copied skillgroupstatistics.default.reg.txt file to skillgroupstatistics.default.reg.
            Step 3   Add, remove, and renumber column definitions in the copied file as desired.
            Step 4   Open the Windows Start > Run dialog box.
            Step 5   Enter regedit filename

            where filename is the full pathname of the edited copy of the skillgroupstatistics.default.reg file.

            Step 6   Cycle your CTI OS Server process.

            Related References

            Configure Additional Peripherals

            The Peripheral Identifier screen in CTI OS Server setup lets you supply peripheral information for a single peripheral only. To configure additional peripherals, perform the following steps.

            Procedure
              Step 1   Define a registry key for the peripheral in [Server\Peripherals\ PERIPHERAL_LOGICAL_NAME].
              Step 2   Create a connection profile for the peripheral.


              Note


              The value that you specify for Peripheral ID in the Peripherals registry key definition must match the value that you specify for Peripheral ID in the connection profile definition.


              Quality of Service/Type of Service

              CTI OS supports "Type of Service" ToS; however, ToS is not supported for Siebel communications.

              The following connections/components support Qos/ToS:

              • CTI OS Server to CTI OS Client.
              • CTI OS Client (C++ CIL only) to CTI OS Server.

              For CTI OS, TOS tagging is not implemented in the Java or .NET (C#) CILs. As stated above, a system using these could support one-way tagging from server to client, but traffic from the client to the server is sent on a best-effort basis.

              CTI OS supports the marking of TCP/IP packets with ToS. This allows for preferential treatment (for example, class AF31 for assured forwarding) of CTI signaling traffic if the network is configured to support this QoS scheme.

              By default, CTI OS does not mark packets, which means that the traffic is sent with "best effort" (ToS = 0).

              To turn on the ToS markings, you must configure certain registry keys. In general, ToS effects only outgoing packets. For example, the CTI OS Server can send packets with ToS markings for assured forwarding to CTI OS clients. However, that does not imply that CTI OS clients must also send their network traffic with the same ToS value to the CTI OS Server. CTI OS clients could in fact send their traffic on a best-effort basis, which would mean that ToS is only active one way. Most likely, though, ToS is configured the same for both directions.

              Basic Configuration

              To turn on ToS with AF31 for bidirectional communications, add/modify some registry keys for CTI OS Server.

              1. The following key turns on marking of packets CTI OS Server sends to CTI OS clients: HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\Ctios\<customer-instance>\CTIOS1\Server\Connections "TOS"=dword:00000068

                Note


                The dword value above is listed in hexadecimal format (decimal 104).


              2. This registry key turns on markings of packets sent from the client to the server: HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\Ctios\<customer-instance>\CTIOS1\EnterpriseDesktopSettings\All Desktops\Login\ConnectionProfiles\Name\UCCE<or other profile name> "TOS"=dword:00000068
              3. This key turns on TOS marking for Silent Monitor packets. Note, for a silent monitor stream a different class (real-time/voice) with a different TOS value (Hex B8) is suggested: HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\Ctios\<customer-instance>\CTIOS1\EnterpriseDesktopSettings\All Desktops\UCCESilentMonitor\Name\Settings "TOS"=dword:000000B8

              Important Additional Configuration Information

              Ensure the following registry key in Windows Server 2008 R2 is as follows:

              HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TcpIp\Parameters "DisableUserTOSSetting"=dword:00000000

              Caveats

              • For the ToS to become effective, you must configure the network (specifically the routers) to treat packets with ToS markings preferentially.
              • The traffic between the CTI OS Server and CTI OS clients may include types of data that do not qualify for AF31 type of service. AF31 is suggested for signaling traffic. For example, a calldelivered event sent from the CTI OS Server is time critical as is a potential Answer request sent from the client in response in order to answer an alerting call. However, the CTI OS Server can also send statistics to clients and this type of data is not suggested for AF31. However, because CTI OS sends all traffic on the same connection, either all packets are marked or none. Therefore, you must turn off CTI OS Skillgroupstatistics with TOS enabled.
              • When hardphones are used with silent monitoring, the switch in the phone overrides the TOS marking to 0. This affects both silent monitor and CTI OS client to CTI OS Server traffic. (It does not affect CTI OS Server to CTI OS client traffic.) To correct this problem, write ACL to classify traffic based on TCP/UDP port number from the endpoint.