소개
이 문서에서는 외부 데이터베이스에서 데이터를 가져오고 스크립트에서 사용하기 위해 ICM(Intelligent Contact Manager)에서 DBLookup 함수를 구성하는 방법에 대해 설명합니다.함수 구성 방법을 설명하기 위해 이 문서에서는 사용자가 호출자가 목록의 일부인지(예: 우선순위 서비스 제공) 확인하려는 예제 시나리오를 사용합니다.
사전 요구 사항
요구 사항
이 문서에 대한 특정 요건이 없습니다.
사용되는 구성 요소
이 문서는 특정 소프트웨어 및 하드웨어 버전으로 한정되지 않습니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.
구성
- 데이터베이스를 만듭니다.
먼저 데이터베이스를 생성합니다.Microsoft SQL Server Management Studio에서 데이터베이스를 마우스 오른쪽 단추로 누르고 새 데이터베이스를 선택합니다. ![116215-configure-dblookup-00-00.png](/c/dam/en/us/support/docs/customer-collaboration/unified-contact-center-enterprise/116215-configure-dblookup-00-00.png)
그런 다음 이 데이터베이스에 테이블을 만듭니다.새로 만든 데이터베이스 아래에서 테이블을 마우스 오른쪽 단추로 누릅니다.그런 다음 몇 개의 열을 추가할 수 있습니다.
![116215-configure-dblookup-00-01.png](/c/dam/en/us/support/docs/customer-collaboration/unified-contact-center-enterprise/116215-configure-dblookup-00-01.png)
참고:DBLookup 노드에서 액세스하는 테이블의 모든 정수 필드를 NOT NULL로 정의합니다.SQL 데이터베이스에는 다음 데이터 유형만 지원됩니다.SQLINT1(tinyint), SQLINT2(smallint), SQLINT4(int), SQLCHAR(char), SQLVARCHAR(varchar), SQLFLT4DBFLT4(real), SQLFLT8DBFLT8(float) 및 SQLDATETIME(datetime). SQLDATETIME, SQLVARCHAR 및 SQLCHAR을 제외한 모든 필드를 NOT NULL 필드로 정의해야 합니다.이 세 필드를 NULL로 정의할 수 있습니다.
varchar 데이터 유형을 선택합니다. 이 유형을 사용하면 유연성에 숫자도 포함할 수 있습니다.전화 열을 기본 키로 설정하려면 확인란에서 Allow Nulls(Null 허용)를 선택 취소합니다.이 열을 기본 키로 설정하려면 마우스 오른쪽 단추를 클릭하고 기본 키 설정:
![116215-configure-dblookup-00-02.png](/c/dam/en/us/support/docs/customer-collaboration/unified-contact-center-enterprise/116215-configure-dblookup-00-02.png)
이 단계가 완료되면 변경 사항을 저장합니다.이제 테이블에 데이터를 추가할 수 있습니다.
![116215-configure-dblookup-00-03.png](/c/dam/en/us/support/docs/customer-collaboration/unified-contact-center-enterprise/116215-configure-dblookup-00-03.png)
- 이 데이터베이스에 연결하기 위해 ICM을 구성합니다.
탐색기 도구 아래의 구성 관리자를 사용하여 데이터베이스 조회 탐색기를 엽니다.그런 다음 새로 만든 데이터베이스 및 열을 추가합니다. ![116215-configure-dblookup-00-04.png](/c/dam/en/us/support/docs/customer-collaboration/unified-contact-center-enterprise/116215-configure-dblookup-00-04.png)
또한 데이터베이스에 로그인하려면 사용자 이름/비밀번호를 구성해야 합니다. 시스템은 기본적으로 sa를 빈 비밀번호로 사용하기 때문입니다.다음 키로 레지스트리에서 사용자 이름/비밀번호를 구성합니다.
HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems,
Inc.\ICM\inst1\RouterA\Router\CurrentVersion\Configuration\Database\SQLLogin
다음 예에서는 도메인 사용자로 키를 구성하는 방법을 보여 줍니다.
\\POD2SPRAWLA\DBLookup=(ZFB\Administrator,password)
참고:비밀번호에 다음 특수 문자를 사용하지 마십시오."=", ")", "(", ",", "?", "\", "/"
-
웹 인터페이스의 라우터 설정에서 액세스할 수 있는 Edit Router 화면에서 Enable Database Routing(데이터베이스 라우팅 활성화)을 선택해야 합니다.
![116215-configure-dblookup-00-05.png](/c/dam/en/us/support/docs/customer-collaboration/unified-contact-center-enterprise/116215-configure-dblookup-00-05.png)
- 스크립트에서 이 데이터베이스를 사용합니다.
DBLookup 노드를 추가하고 검색할 테이블을 지정합니다.이 예제에서는 CallingLineID를 사용하여 Priority 테이블을 검색하는 방법을 보여 줍니다.nchar이 데이터 형식으로 선택되었으므로 조회를 입력하기 전에 숫자를 문자열로 변환해야 합니다. ![116215-configure-dblookup-00-06.png](/c/dam/en/us/support/docs/customer-collaboration/unified-contact-center-enterprise/116215-configure-dblookup-00-06.png)
조회는 기본 키로 설정된 열에서 발생합니다.나중에 동일한 행의 데이터를 사용하여 통화 변수를 채울 수 있습니다.다음 예에서는 데이터베이스와 구성 관리자 모두에서 다른 열 City를 추가하는 방법을 보여 줍니다. 이 열은 스크립트에서 채워질 수 있습니다.
![116215-configure-dblookup-00-07.png](/c/dam/en/us/support/docs/customer-collaboration/unified-contact-center-enterprise/116215-configure-dblookup-00-07.png)
다음을 확인합니다.
이 섹션을 사용하여 DB Worker가 외부 데이터베이스에 연결할 수 있는지 확인합니다.DB Worker 프로세스를 마지막으로 재시작한 이후 로그가 포함된 txt 파일을 생성합니다.
C:\Users\Administrator.ZFB>cdlog
ra
C:\icm\inst1\ra\logfiles>dumplog dbw /o /ms /last
DB Worker가 dbw.txt를 사용하여 데이터베이스에 연결할 수 있는지 확인합니다.
12:39:08:413 ra-dbw Trace: Attempting integrated security open of
POD2SPRAWLA using ZFB\Administrator
12:39:08:451 ra-dbw Trace: Sucessfully impersonated ZFB\Administrator
12:39:08:476 ra-dbw Trace: 'id' is column 2 in sysobjects.
12:39:08:477 ra-dbw Trace: ID for table Priority is 5575058
12:39:08:484 ra-dbw Trace: Columns for Priority:
12:39:08:484 ra-dbw Trace: Column 1: Phone, type=47, length=30
12:39:08:536 ra-dbw Trace: Primary key for Priority is Phone, column 1.
12:39:08:557 ra-dbw Trace: Created connection to POD2SPRAWLA,DBLookup for thread 0
12:39:08:557 ra-dbw Trace: Created connection to POD2SPRAWLA,DBLookup for thread 1
12:39:08:558 ra-dbw Trace: Created connection to POD2SPRAWLA,DBLookup for thread 2
12:39:08:558 ra-dbw Trace: Created connection to POD2SPRAWLA,DBLookup for thread 3
12:39:08:558 ra-dbw Trace: Created connection to POD2SPRAWLA,DBLookup for thread 4
12:39:08:558 ra-dbw Trace: ScriptTable Piority is now available.
12:39:08:559 ra-dbw Trace: ScriptTable Piority (ID 5000) connected to
POD2SPRAWLA,DBLookup,Priority
12:39:08:559 ra-dbw Trace: Internal connect for POD2SPRAWLA,DBLookup,Priority
12:39:08:559 ra-dbw Trace: 'id' is column 2 in sysobjects.
12:39:08:560 ra-dbw Trace: ID for table Priority is 5575058
12:39:08:560 ra-dbw Trace: Columns for Priority:
12:39:08:560 ra-dbw Trace: Column 1: Phone, type=47, length=30
12:39:08:561 ra-dbw Trace: Primary key for Priority is Phone, column 1.
12:39:08:561 ra-dbw Trace: Column Phone (ID 5002) is table column 1, type 47.
12:39:08:561 ra-dbw Trace: ScriptTable Piority (ID 5000) connected to
POD2SPRAWLA,DBLookup,Priority
기본 키 열에 일치하는 항목이 없을 경우(스크립트의 DBLookup 노드에 의해 트리거됨) DB Worker 로그에 이 응답이 표시됩니다.
13:24:05:294 ra-dbw Trace: Queue a lookup request
13:24:05:295 ra-dbw Trace: DBWorker Thread 0 (ID 350760 Table:Priority):
Received request: transactionID 1
13:24:05:295 ra-dbw Trace: DBWorker Thread 0 (ID 350760),transactionID 1,
Attempt to read the record:
13:24:05:295 ra-dbw Trace: DBWorker transactionID 1, Failed! result=1
일치하는 항목이 있는 경우 다음과 같은 응답이 표시됩니다.
13:25:25:810 ra-dbw Trace: Queue a lookup request
13:25:25:810 ra-dbw Trace: DBWorker Thread 1 (ID 354428 Table:Piority):
Received request: transactionID 2
13:25:25:810 ra-dbw Trace: DBWorker Thread 1 (ID 354428),transactionID 2,
Attempt to read the record:
13:25:25:811 ra-dbw Trace: DBWorker Thread 1 (ID 354428),transactionID 2,
Succeeded.
문제 해결
현재 이 컨피그레이션에 사용할 수 있는 특정 문제 해결 정보가 없습니다.