This document describes how to setup login credentials for two external databases accessed by the DBWorker process in a Cisco Intelligent Contact Management (ICM) environment.
Readers of this document should be knowledgeable of the following:
Cisco ICM
Microsoft SQL Database
The information in this document is based on the software and hardware versions:
Cisco ICM version 5
Microsoft SQL Server 2000 Standard or Enterprise Edition with Service Pack 2
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
For more information on document conventions, see the Cisco Technical Tips Conventions.
The DBWorker process which runs on the Cisco CallRouter is responsible for login and host database lookup. It is the process that queries external databases and uses that data when calls are routed. In Cisco ICM version 4.5.x and earlier, you run rtsetting.exe to setup login credentials for two or more databases. With the release of Cisco ICM version 4.6, rtsetting.exe is no longer supported. You must run either regedit or regedt32 to setup the login credential for the external database.
For the DBWorker process to access the external databases, it is required to enter server name, external database name, domain, user, and password into the SQLLogin registry key. When the DBWorker process tries to remotely connect to the external database, the system checks the SQLLogin registry key, as shown here, for login credentials:
For versions 5.x and later:
HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\ICM\<cust_inst>\ router_inst\Router\CurrentVersion\Configuration\Database
For versions prior to 5.0:
HKEY_LoCAL_MACHINE\SOFTWARE\Geotel\ICR\<cust_inst>\<router_inst>\Router\ CurrentVersion\Configuraton\Database
Note: The above registry keys are displayed over two lines due to space limitations.
A comma is the delimiter to separate data for separate databases. This is an example that shows login credentials for two external databases:
"SQLLogin"="\\ServerA\DatabaseA=(domain\user,password),\\ ServerB\DatabaseB=(domain\user,password)"
Note: The above example is displayed over two lines due to space limitations.
ServerA is the name of the first SQL server.
DatabaseA is the name of the database on the first SQL server.
ServerB is the name of the second SQL server.
DatabaseB is the name of the database on the second SQL server.
domain\user, password are the login credentials.
After the value is set, perform these steps:
Close the DBWorker process (it automatically restarts).
Verify the connection is made.