안녕하세요, 이번에는 UCCX 7.0을 중심으로 하는 콜센터 솔루션에서 필요한 기능 및 설정에 대해 살펴보겠습니다.
사실 콜센터(Contact Center 또는 CC)솔루션은 IPT나 UC에 비해서는 조금 생소한 편이라 현업에서 직접 사용하시는 엔지니어가 아니면 접근하기가 쉽지만은 않습니다. 실제로, 예전에 제가 IPCC Enterprise의 이해라는 글을 포스팅 한적이 있었는데, 이해하기가 다소 어렵다고 하시는 분들이 계시더라구요.
점점 CCIE Voice를 준비하시는 분들도 늘고 계시고, CCIE에 Unified Contact Center Express(이하 UCCX) 관련 문제가 반드시 나오게 되니, 무턱대고 세팅하는 것보다는 주로 사용하는 기능들에 한해 간단하게나마 짚고 넘어가는 것도 나쁘진 않을 것 같습니다.
Hunt Pilot과 Line Group
우리가 CUCM만으로도 콜센터를 구축할 수 있을까요? 네 가능하긴 합니다. 그 기능이 너무나도 미약해서 실제로는 사용안할 뿐입니다. CUCM만으로는 일반적으로 헬프데스크라고 표현합니다. 즉, 회사내부의 IT Help Desk를 꾸밀때, 대포변호(예를 들어 1000번)를 두고, Help Desk 직원 5명 정도가 1000번에 대한 전화를 받을 수 있게끔 구성할 수 있죠?
이때 Line Group으로 5명의 전화기(1001 ~ 1005)를 묶고, Hunt Pilot(1000번)으로 line group을 지정하면 되죠. 물론 distriibution scheme을 적절히 결정하시면 됩니다. top-down, round-robin, loingest-idle, broadcast 등이 있죠?
그러나, CUCM에서는 따~~악, 여기까지입니다.
IVR과 Skill Based Call Routing
실제 콜센터로 전화하면 곧바로 상담원이 전화를 받지 않잖아요.. 일단 음악소리 쫘~~악 깔리고, 전화해줘서 고맙다~~ 어쩌구 저쩌구, 1번 누르면 이러쿵저러쿵, 2번 누르면 이런다 저런다, 0번을 누르면 상담원이 연결된다. 머 대부분 이런식이잖아요. 필요하면 주민등록번호도 누르고, 기다리면 바로 상담원이 받을때도 있고, 지금은 통화량이 많아 잠시만 기다려 달라, 예상 대기 시간은 30분이다 등등 정말 인내심을 갖고 기다려야만 아가씨를 만날 수 있습니다.
만일 여러분이 특정 회사의 시세를 조회한다거나, 폰뱅킹 정보를 팩스로 받아보는 등의 단순한 작업을 원할 때에는 굳이 상담원을 기다리지 않고도 해결이 되잖아요….
이러한 일련의 서비스를 우리는 일반적으로 ARS(자동응답)이라고 불렀는데, 전문 용어로는 IVR(Interactive Voice Response)라고 합니다. 실제로 대고객 서비스 차원의 콜센터는 IVR 시스템을 갖고 있습니다. 그리구요, 위의 시나리오에서 상담원 연결할 때, 무작위로 상담원을 연결해준다면, 고객들은 정말 기분 나쁘게도 통화중 음을 듣거나, 운이 좋아서 상담원과 연결이 되었는데, 내가 궁금해 하는 내용을 상담해줄 수 있는 능력이 없으면 어떨까요? 전화 끊고 다시 처음부터 시작해야겠죠?? 콜센터에 전화하는 게 무슨 뽑기도 아니고, 이러면 안되겠죠? 그래서 상담원을 상담스킬별로 세분화해서 분류하고, 상태정보를 실시간으로 체크해서 고객이 원하는 상담을 받을 수 있도록 해줄 수 있는 시스템이 필요합니다.
이때, 필요한 솔루션이 Call Routing Server(제가 임의로 붙인 이름이구요, 실제로는 CCX Engilne)입니다.
시스코에서 나온 IPCC Enterprise에는 Call Router, Call Logger, IVR, CUCM이 위의 일련의 기능들을 별도로 하고, 성능이나 기능면에서 탁월한 반면 설정이 비교적 복잡한 편입니다. (IPCC Enterprise 이해 참조)
잠깐 다른 얘기긴 한데요, Nortel(얼마 전에 Avaya로 넘어갔습니다.)이나 Avaya같은 기존의 PBX 시장을 주름잡던 대현 벤더들은 PBX 자체적으로 일정량의 호를 대기시키게 할 수 있는 Queueing 기능과 Hunt보다는 훨씬 지능적인 ACD 기능이 내장되어 있어 CC 솔루션 구축시 PBX에 대한 의존도가 높았습니다. 시스코 CUCM은 이런 기능이 없어서 IPT 엔지니어에 대한 의존도가 상대적으로 많이 떨어지는데, IPT 시장에서 CC를 할 줄 아는 엔지니어가 많지 않은 큰 이유일 수 있습니다. 어쨌거나, CC 솔루션 전체로 봤을 때, 중요성이 큰 두 가지 기능이 CUCM에 없다는 것은 어찌 보면 CUCM은 순수한 Call Control만 담당케 한다는 철학이 의도적으로 내포되어 있는지도 모를 일이죠..
다시 본론으로 돌아와서, 결국 전화번호만으로 Call Routing을 하는 CUCM과 달리 Skill Group으로 나눈 후 각 그룹내에서 available한 상담원 전화기가 있는지, 그리고, 그 상담원은 몇 건의 상담을 얼마나 오랫동안 수행했었는지 등, 현재 상태 및 과거 기록 등을 비교하여 최적의 상담원 전화기를 선정하여 CUCM에게 알려주는 복합적인 Call Routing이 필요하게 되었고, 그 기능을 UCCE나 UCCX가 하게 되는 것이죠. 이는 마치 인증과 관련한 고급기능을 수행하기 위해 라우터가 별도의 ACS를 두는 것이나, CUCM이 LDAP Server와 연동하는 것과 비슷한 맥락으로 풀이 할 수 있을 것입니다.
UCCX의 컴퍼넌트
이제 IVR 기능과 Call Router등의 컴퍼넌트들이 통합되어 있는 UCCX의 기능에 대해 살펴보겠습니다.
UCCX내부의 IVR에는 여러 개의 softphone이 하나의 묶음으로 연결되어 있다고 생각해도 무관합니다. 실제로, IP Contact Center 이전에는 IVR이 교환기와 아날로그 회선의 묶음으로 연결하거나, LineSide E1이라는 디지털 포트로 연결을 하기도 했었습니다. 형태가 무엇이었던 간에 PBX와 IVR 사이에는 미디어가 연결될 수 있는 물리적 또는 논리적 링크가 있어야 하는 것은 분명합니다.
외부에서 들어온 호가 IVR쪽으로 들어갈 때에는 Hunt Pilot과 같은 대표번호가 있어야 하고, Line Group처럼 여러 개의 softphone들이 묶여 있어야 합니다. 실제로 Contact Center의 상담석이 몇 석인지 카운트 할 때는 IVR의 CTI Port도 포함하는 것이 관례입니다. 이때 Hunt Pilot에 해당되는 개념이 CTI Route Point(이하 CTI RP)라는 이름으로 사용되고, 각각의 softphone은 CTI Port라는 이름으로 사용됩니다. 그렇다면 상담을 받기 위해 걸려온 전화는 CTI RP라는 대표번호를 통해 UCCX로 전달이 되면 UCCX는 실제 전화를 받아서 멘트 플레이를 할 수 있는 CTI Port를 선택해서 그 전화번호를 CUCM에게 전달하여 최종적으로 전화를 받게 됩니다. 여기까지는 Line Group과 Hunt Pilot 개념과 동일하죠?
위에서 UCCX의 IVR이 전화를 받았잖아요? 발신자가 여러 가지 키패드를 눌러서 원하는 서비스를 받게끔 하거나, 상담원으로 연결할 수 있도록 다양한 스크립트가 필요합니다. 이 스크립트도 IVR 모듈에 포함되어 있습니다. 이제 제일 중요한 것은 상담원 연결입니다. UCCX의 Call router 모듈에서는 상담원을 스킬별로 구분하고(Skill Group), 각 Skill Group에 상담원 전화기들을 포함시킵니다. 여기서 Skill Group과 상담원 전화기를 UCCX입장에서는 집중 관리해야 하는 Resource라고 여깁니다. UCCX는 resource의 상태체크는 물론, 더 나아가 resource를 직접적으로 제어도 가능합니다.
이런 기능으로 인해 발신자가 상담원 연결을 선택하면, UCCX의 resource manager는 가장 적합한 skill group에서 적합한 상담원 전화기를 찾아서, 기존 IVR의 CTI Port에 연결되어 있던 호를 상담원 전화기로 transfer 시키게 되는 것이죠. 그러면 상담원은 자신의 상담전용 프로그램에서 전화가 오는 것을 확인하고 “수신”버튼을 누르면 resource manager가 CUCM을 통해 전화기가 전화를 받을 수 있도록 모든 작업을 해줍니다. 결국 상담원들은 따로 송수화기를 사용하지 않고 헤드셋만 꼽은 채 프로그램만 사용하여 전화기의 모든 기능을 사용할 수 있게 되는 것이죠.
UCCX의 동작 구조 및 개념 이해
전체적인 호의 흐름을 그림으로 확인해 보겠습니다.
1.외부 발신자가 VG를 통해 전화를 걸면,
2.VG는 CUCM에게 해당 호의 RTP를 어느 곳으로 연결할지 물어본다
3.CUCM은 번호를 보고, 자신에게 등록되어 있는 전화기라면, 직접 호를 착신시키겠지만, UCCX와 연결된 전화번호(여기서는 CTI Route Point)이면 JTAPI route request를 UCCX에게 전달하여 호 착신을 위한 작업을 한다.
4.착신전화번호와 매치되는 CTI Port중 available한 것이 있는지 확인하여, available CTI Port에 설정된 전화번호를 CUCM에게 전달하여, 실제 RTP를 전달하도록 유도한다. 호가 VG와 UCCX간에 연결이 되면 스크립트에 의해 멘트 플레이가 시작되고(self service treatment), 외부 유저는 “상담원 연결”을 선택했을 때, 적절한 상담원이 지정되기 전까지 호를 Queue에 대기시킨다.
5.상담원의 상태가 Ready가 되면, UCCX가 이를 감지한다.
6.상담원이 UCCX에 의해 결정이 되면, UCCX의 Queue에 대기 중이던 호는 상담원에게 Transfer되고, UCCX는 상담원 애플리케이션으로 Call Transfer를 알려 전화를 받게끔 한다.
7.상담원이 전화를 받으면, VG와 UCCX의 CTI Port간에 연결되어 있던 호가 종료되고, 대신 상담원 전화기와 VG간에 호가 연결된다. 이때, UCCX의 CTI Port가 다시 Available 상태로 바뀌게 된다.
UCCX의 Terminology
아래그림을 보면서 실제 UCCX에서 사용하는 용어정리를 해보도록 하겠습니다.
Cisco Unified Telephony Subsystem
- CTI RP와 CTI Port를 설정하기 위한 메뉴입니다.
-
CTI Route Point(CUCM) = Cisco Unified CM Telephony Triggers(UCCX)
- Call routing Control 정보를 주고 받기 위해 생성되는 가상의 링크로서 JTAPI Application User와 연결되어 있어서, JTAPI Message를 주고 받는 Signal Path 역할을 담당합니다. UCCX에서 Trigger를 설정하면 자동으로 CUCM에 CTI RP가 생성됩니다.
-
CTI Port(CUCM) = Cisco Unified CM Telephony Call Control Group(UCCX)
- CTI RP에 의해서 signal이 교환된다면, CTI Port를 통해서 Media를 교환하게 됩니다. 따라서 각각의 CTI Port에는 일반전화기에 설정되듯이 전화번호가 할당됩니다. CTI RP와 마찬가지로 UCCX에서의 Call Control Group을 설정하면 자동으로 CUCM에서 CTI RP가 생성됩니다.
RM-CM Subsystem
- Call Routing을 하기 위해 Resource로 등록하여 관리하는 Resource Manager 관련 세팅을 위한 메뉴입니다.
Cisco Media Subsystem
- CUCM의 CTI Port, 즉 UCCX의 Call Control Group을 통해서 연결된 RTP를 Terminate시키고, Prompt를 제공하거나, DTMF Digit을 수집하기 위한 그룹을 설정합니다.
CAD Component
- 상담원이 PC에서 상담에 필요한 기능이 있는 프로그램입니다.
아래 그림은 JTAPI를 사용하는 대표적인 Application인 UCCX와 CUCM간의 내부 구조를 보여줍니다.
실제로 CUCM에 Standard CTI Enabled라는 Role을 포함하는 Application User를 생성하고 해당 애플리케이션은 JTAPI messaging을 통해 CTI Manager로 로그인하여 Call Routing 관련 명령을 수행하거나, 전화기 등을 제어할 수 있습니다.
자, 그럼 우리가 UCCX를 통해 여러 가지 서비스를 할 수 있지만, 가장 기본적이라 할 수 있는 Inbound Call의 라우팅 기능을 수행하기 위해서 필요한 설정 작업에는 어떤 것이 있을까요?
- 초기설정
각종 application usr 설정 - CTI Port 설정 - UCCX의 아래메뉴에서 생성하면 CUCM은 자동으로 생성됨
UCCX->Subsystems->Cisco Unified CM Telephony->Cisco Unified CM Telephony Call Control Group 추가 - CTI Route Point 설정 - UCCX의 아래메뉴에서 생성하면 CUCM은 자동으로 생성됨
UCCX->Subsystems->Cisco Unified CM Telephony->Cisco Unified CM Telephony Triggers 추가
(스크립트 추가할 때 “Add new Trigger”를 선택해서 추가 가능) - 스크립트 설정
UCCX Editor로 스크립트 파일 생성
UCCX->Applications->Application Configuration->Cisco Script Application 추가 - Resource Manager-Contact Manager 상세 설정 – 상담원 Profile 및 기타 라우팅 관련 설정
UCCX->Subsystems->RmCm 설정 - Agent용 프로그램 설정
CAD(Cisco Agent Desktop)나 IPPA(IP Phone Agent) 설정
위의 6개 카테고리별 기능 및 설정방법에 대해서 앞으로 차근차근 설명을 드리도록 하겠습니다.
UCCX 초기 설정
설치를 마치고 나서, 관리자 화면으로 접속을 합니다.
접속 방법은 터미널에서 Start->Program->Cisco Unified CCX Administrator->Application Administration 을 선택하거나, 리모트에서 /appadmin">/appadmin">http://<uccx-ip>/appadmin 으로 접속할 수 있습니다.
초기 사용하는 ID / PW는 Administrator / ciscocisco (“A”가 대문자에 주의) 입니다. 초기 설정이 완료되면 이 계정은 더 이상 사용할 수 없으니 설정시 관리자 ID / PW를 반드시 기억하셔야 합니다.
High Availability를 구성할 수 있으나, 간단한 방법으로는 Single Node를 선택합니다.
CUCM IP와 AXL Application ID / PW를 입력합니다. 여기서는 UCCXAXL이라는 ID를 새롭게 만들고 CUPS연결시 만들었던 axl_group에 assign을 하겠습니다. 중요한 것은 해당 CUCM에서 App User가 "Standard AXL API Access"라는 Role을 가져야 하는 것입니다.
귀찮으면 CUCM Admin 계정 정보를 입력하셔도 됩니다. CUCM Admin은 Super User로서 AXL권한도 갖고 있는 ID라서 가능하죠.
라이센스 파일(*.lic)또는 파일이 여러 개일 경우 ZIP파일을 입력하고 Next를 누르면 아래 화면처럼 라이센스 관련 정보가 보여집니다.
다시 Next를 누르면 라이센스가 활성화되는데, 몇 분 정도 기다리시면 됩니다.
이제 본격적인 설정입니다.
1.AXL Service Provider Configuration
AXL 연동이 가능한 Publisher 와 Subscriber를 왼쪽에 정렬하고, AXL로그인시 필요한 ID/PW를 입력하면 되지만, 이미 앞서 설정한 값이 채워지므로 신경 쓸 필요가 없습니다.
2.Cisco Unified CM Telephony Subsystem
JTAPI를 이용하여 CTI RP와 CTI Port를 연동할 때 사용할 수 있는 CUCM과 ID/PW를 새로 입력합니다.
3.RmCm Subsystem
Resource Manager를 통해 CUCM과 연동을 할 때 사용되는 CUCM list와 ID/PW를 새로 입력합니다.
세팅이 끝나고 나면 CUCM에도 위에서 설정했던 jtapi와 rmjtapi라는 Application user가 자동으로 생성된 것을 확인할 수 있습니다.
아래는 실제 Inbound 콜과는 직접적인 관계는 없으나, Historical Report와 Recording의 동시 세션 수를 입력하는 메뉴입니다. 실제 사이트라면 라이센스와 Sizing 컨셉에 따라 설정해야 하지만, 데모가 목적이라면 적당한 숫자를 입력해도 상관은 없습니다.
언어를 선택할 수 있습니다. 한국어도 선택 가능합니다.
UCCX 관리자 ID를 지정하는 메뉴입니다. 사용할 수 있는 ID는 CUCM의 End user에서 선택해야 하므로, 리스트에서 원하는 유저가 없다면, CUCM에서 새로 생성 후 아래 Search를 선택하여 아래 화면을 갱신하면 됩니다.
초기 설정이 완료되면 다음과 같은 화면을 볼 수 있습니다. 설정이 완료되었으면 창을 닫습니다.
새로 열어서 로그인을 해보는데, 여기서 주의할 사항은 UCCX 로그인은 반드시 CUCM연동이 되어 있어야 합니다.
초기 설정시 지정한 uccxadmin이라는 ID로 로그인 한 화면입니다.
이상으로 UCCX의 기본개념과 초기설정에 대해 살펴보았습니다.
다음에는 좀 더 구체적인 내용을 소개해 드리도록 하겠습니다.
Reference : UCCX Insatallation Guide, UCCX SRND