목차

소개

사전 요구 사항

요구 사항

사용되는 구성 요소

배경

아키텍처

Cisco CVA 통화 흐름

Google Based IVR Logic(Dialogflow)

Premised Based Intent(DialogflowIntent/DialogflowParam)

전사

구성

Dialogflow 프로젝트/가상 에이전트

대화 흐름이란?

CVB 음성 서버 구성

CVP Call Studio 요소

다이알록플로우

다이오그플로우의도

DialogflowParam

전사

CVP Call Studio 애플리케이션

Cloud Based Intent Processing - Google Based IVR Logic(Dialogflow)

구내 기반 의도 처리(DialogflowIntent/DialogflowParam)

프록시 서버 구성

문제 해결

관련 정보

Cisco 문서

Google 문서

소개

이 문서에서는 CVP(Customer Voice Portal) CVA 기능을 구성하는 방법에 대해 설명합니다.

사전 요구 사항

요구 사항

다음 주제에 대한 지식을 보유하고 있으면 유용합니다.

- Cisco UCCE(Unified Contact Center Enterprise) 릴리스 12.5

- Cisco PCCE(Package Contact Center Enterprise) 릴리스 12.5

- CVP 릴리스 12.5

- Cisco CVB(Virtualized Voice Browser) 12.5

- Cisco CUBE(Unified Border Element) 또는 GW(Voice Gateway)

- 구글 다이얼록플로우

사용되는 구성 요소

이 문서의 정보는 다음 소프트웨어 버전을 기반으로 합니다.

- Cisco PCCE(Package Contact Center Enterprise) 릴리스 12.5

- CVP 릴리스 12.5

- Cisco CVB(Virtualized Voice Browser) 12.5

- 구글 다이얼록플로우

이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.

배경

CVP 12.5에서는 서드파티 벤더 TTS(Text to Speech), ASR(Automatic Speech Recognition) 및 NLP(Natural Language Processing) 서비스를 사용할 수 있는 CVA(Customer Virtual Assistant) 기능을 소개합니다.

참고: 이 릴리스에서는 Google NLP만 지원됩니다.

이 기능은 IVR(Interactive Voice Response) 내에서 자연어 처리(Natural Language Processing)를 통해 문제를 빠르고 효율적으로 해결할 수 있는 사람과 유사한 상호 작용을 지원합니다.

Cisco CVA는 다음과 같은 상호 작용 모드를 제공합니다.

- 로컬 상호 작용:프롬프트는 WAV 파일을 사용하여 로컬로 재생되며 사용자 입력은 DTMF 문법을 사용하여 캡처됩니다.

- MRCP 기반 상호작용:프롬프트는 TTS 기능을 위해 MRCP(Media Resource Control Protocol) Synthesis 명령을 통해 외부 온프레미스 기반 미디어 서버에서 재생됩니다.이 프롬프트는 ASR에서 미리 정의한 문법에 따라 외부 미디어 서버에서 인식됩니다.

- NLU(Natural Language Understanding):이 기능을 사용하면 자연스러운 언어를 이해하기 위해 교육을 받은 클라우드 기반 NLP(Natural Language Processing) 엔진과의 상호작용으로 대화를 시작할 수 있습니다.

아키텍처

CVA는 CVP 포괄적 통화 흐름에 필요한 구성 요소 외에도 클라우드 서비스, 음성 서비스 및 특정 CVP Call Studio 요소를 구현해야 합니다.다음은 CVA에 필요한 모든 구성 요소 목록입니다.

- 인그레스, 이그레스, CUBE 게이트웨이

- Unified CVP(Customer Voice Portal) 솔루션(Call Studio 포함)

- Unified Contact Center Enterprise(Unified CCE)

- Cisco VB(Virtualized Voice Browser) - 음성 서비스

- 클라우드 서비스(Google Dialogflow)

Cisco CVA 통화 흐름

Google Dialogflow에서 지원되는 기본 CVA 통화 흐름에는 3가지가 있습니다.

- Google Based IVR Logic(Dialogflow)

- 구내 기반 의도(DialogflowIntent/DialogflowParam)

- 전사

Google Based IVR Logic(Dialogflow)

호스팅된 IVR 구축은 IVR 인프라를 클라우드로 마이그레이션하려는 고객에게 가장 적합합니다.Hosted IVR 구축에서는 IVR 비즈니스 논리만 클라우드에 상주하는 반면 에이전트는 온프레미스 인프라에 등록됩니다.

호스팅된 IVR이 구축되면 코어 신호 및 미디어 프로세스가 클라우드에서 이루어집니다.또한 CVP와 Cisco VB 솔루션은 미디어를 클라우드로 스트리밍할 수 있도록 브리징 모드에 있습니다.IVR이 완료되고 상담원이 필요해지면 통화 제어 기능이 다시 CVP로 전송되어 추가 통화 프로세스 및 대기열 처리를 수행합니다.

다음은 통화 흐름의 예입니다.

1. 통화는 CUBE 또는 Ingress GW에서 CVP 통화 서버로 이동합니다.그런 다음 CVP에서 Unified CCE/패키지 CCE로 통화가 전송됩니다.

2. CCE는 Cisco VB를 사용하여 VRU/IVR 처리를 설정하는 지침과 함께 CVP에 임시 연결을 전송합니다.

3. CCE는 VXML 서버에 구축된 Call Studio 애플리케이션을 실행하도록 CVP에 지시합니다.CVP가 Cisco VB로 통화를 전송하면 IVR 처리가 시작됩니다.이제 Cisco VB와 CUBE 또는 인그레스 게이트웨이 간에 오디오(RTP)가 설정됩니다.이 시점까지 통화 흐름 단계는 일반적인 포괄적 통화 흐름과 동일합니다.다음 단계는 CVA Dialogflow 통화 흐름에서 고유합니다.

4. Cisco VB에서 Speech Server를 사용하여 고객 음성이 Google Dialogflow로 스트리밍됩니다.

a.Dialogflow에서 스트림을 수신하면 인식이 발생하고 NLU 서비스가 해당 의도를 확인하기 위해 개입합니다.

b.NLU 서비스는 인터페이스를 식별합니다.의도 식별은 클라우드에서 생성된 가상 에이전트를 기반으로 수행됩니다.

c. Dialogflow는 다음 방법 중 하나로 Cisco VVB에 후속 프롬프트를 반환합니다(call studio 애플리케이션 구성에 따라 다름).

오디오:Dialogflow는 API 응답에서 오디오 페이로드를 반환합니다.

텍스트:Dialogflow는 응답으로 텍스트 프롬프트를 반환합니다. 이 프롬프트는 TTS 서비스에서 통합되어야 합니다.

d.Cisco VB는 추가 정보를 위해 발신자에게 프롬프트를 재생합니다.

e.발신자가 응답하면 Cisco VB는 이 응답을 Dialogflow로 스트리밍합니다.

f.  Dialogflow는 다음 두 가지 방법 중 하나로 이행 작업을 수행하고 프롬프트에 다시 응답합니다.

오디오:Dialogflow는 웹 후크를 사용하여 이행 오디오와 함께 API 응답에서 오디오 페이로드를 반환합니다.

텍스트:Dialogflow는 webhook 사용에 대한 응답으로 이행 텍스트가 포함된 텍스트 프롬프트를 반환합니다.이는 TTS 서비스에 의해 합성됩니다.

g.Dialogflow는 전체 대화에 대한 컨텍스트 관리 및 세션 관리를 수행합니다.

고객이 상담원 호전환을 요청하거나 통화 연결이 끊어지지 않는 한 흐름 제어는 Dialogflow에 유지됩니다.

Premised Based Intent(DialogflowIntent/DialogflowParam)

구내 기반 의도 구축은 PII(Personal Identity Information) 또는 기타 민감한 데이터를 온프레미스 시스템에서 처리하도록 요청하는 고객에게 더 적합합니다.일반적으로 이러한 구축에서는 PII(Personal Identity Information)가 처리되지 않도록 클라우드로 전송되지 않습니다.대신 정보를 항상 온프레미스에서 유지 및 처리하는 방식으로 수집됩니다.이 통화 흐름에서 대부분의 프로세스 제어는 VXML 서버에서 수행됩니다.이 통화 흐름에서는 다음을 수행할 수 있습니다.

- 로컬 매개변수 프롬프트/시퀀스

- 로컬 DTMF 탐지

- 현재 응용 프로그램 확장

- 로컬 이행

이 통화 흐름은 call studio의 DialogflowIntent 및 DialogflowParameter 요소를 사용합니다.1~3단계는 이전 Dialogflow 콜플로우와 동일합니다.다음 단계는 다음과 같습니다

4. 고객 음성은 Cisco VB의 음성 서버를 통해 Google Dialogflow로 스트리밍됩니다.

5. 이 시나리오에서는 음성 서버가 Cloud ASR에 음성 메시지를 전달합니다.

6. Google에서 스트림이 수신되면 인식이 발생하고 VXML Server에 텍스트가 반환됩니다.VXML Server는 이 텍스트를 Dialogflow에 전달하고 NLU 서비스는 그 의도를 확인하기 위해 관여합니다.NLU는 이미 구성된 인터페이스를 식별합니다.의도 식별은 클라우드에서 생성된 가상 에이전트를 기반으로 수행됩니다.

a.Google Dialogflow는 VXML Server에 배포된 Call Studio 애플리케이션에 대한 의도를 반환합니다.

b.식별된 의도가 신용카드 번호 또는 PIN과 같은 민감한 정보를 처리해야 하는 경우

입력한 경우 Cisco VB는 필요한 프롬프트를 재생하고 최종 고객으로부터 DTMF(Dual Tone Multi Frequency)를 수집할 수 있습니다.

c. 이 중요한 정보는 로컬 비즈니스 애플리케이션에서 수집하여 인증을 위해 CRM(Customer Relationship Management) 데이터베이스로 전송됩니다.

프로세스.

d. 고객이 PIN을 사용하여 인증되면 음성 제어를 클라우드의 ASR 서비스로 다시 전달할 수 있습니다.

e.Call Studio 애플리케이션을 통한 VXML Server는 전체 대화에 대해 컨텍스트 관리 및 세션 관리를 수행합니다.

기본적으로 이 통화 흐름은 고객 입력에 따라 각 단계에서 수행할 작업의 정의 측면에서 훨씬 더 유연하게 사용할 수 있으며, 온프레미스 애플리케이션에서 완전히 구동됩니다.클라우드 서비스는 주로 음성 및 의도 식별을 위한 활동을 합니다.의도가 확인되면 CVP 비즈니스 애플리케이션으로 제어 기능을 다시 전달하여 다음 단계를 처리하고 결정합니다.

전사

이 통화 흐름은 고객의 입력 변환을 음성에서 텍스트 문장으로, 기본적으로 ASR로 제공합니다.

구성

Dialogflow 프로젝트/가상 에이전트

CVA 구성을 시작하기 전에 Google Dialogflow를 구성하고 Cisco Speech Server에 연결해야 합니다.Google 서비스 계정, Google 프로젝트 및 Dialogflow 가상 에이전트가 필요합니다.그런 다음 이 Dialogflow 가상 에이전트에게 자연어(Natural Language) 프로세싱을 사용하여 고객의 상호 작용에 응답할 수 있도록 자연어 언어를 가르칠 수 있습니다.

대화 흐름이란?

Google Dialogflow는 장치, 애플리케이션 및 서비스에 대해 브랜드별로 고유한 자연스러운 언어 상호 작용을 지원하는 대화형 UX(User Experience) 플랫폼입니다.다시 말해, Dialogflow는 NLP/NLU(Natural Language Understanding) 서비스를 제공하는 프레임워크입니다. Cisco는 CVA용 Google Dialogflow와 통합됩니다.

이것이 여러분에게 무엇을 의미합니까?기본적으로 Dialogflow에서 가상 에이전트를 생성한 다음 Cisco Contact Center Enterprise와 통합할 수 있습니다.

가상 에이전트 또는 Dialogflow 프로젝트를 만드는 단계는 다음과 같습니다.

1단계. Google Account/Project를 생성하거나 Cisco 파트너로부터 Google Project를 배정받습니다.

2단계. Dialogflow에 로그인합니다.https://dialogflow.com/으로 이동합니다.

3단계. 새 에이전트를 만듭니다.새 에이전트의 이름 및 기본 표준 시간대를 선택합니다.언어를 영어로 설정합니다.CREATE AGENT를 클릭합니다.

이 예에서는 가상 에이전트가 은행 거래를 처리하므로 이 실습의 에이전트 이름은 BankingRoot입니다.언어는 영어이고 표준 시간대는 기본 시스템 시간입니다.

4단계. 생성 탭을 클릭합니다.

5단계. 가상 에이전트가 생성된 후 이미지에 표시된 대로 Google 가상 에이전트를 사전 빌드할 수 있습니다. 또는 에이전트에게 발신자와 통신하는 방법을 알려줄 수 있습니다.

참고:디바이스에서 Cisco 샘플 가상 에이전트를 가져올 수도 있습니다.DialogflowAgent.zip

6단계. 이 시점에서는 상담원이 사용자 입력에 응답하는 방법을 아직 알지 못합니다.다음 단계는 어떻게 행동하는지 가르치는 것이다.먼저 상담원의 성격을 모델링하고 hello 기본 환영 의도에 응답하여 직접 표시합니다.에이전트가 생성되면 이 이미지가 표시됩니다.

참고:hello는 call studio application element Dialogflow에서 기본 시작 의도로 정의할 수 있습니다.

7단계. Default Welcome Intent(기본 시작 의도)를 클릭합니다.

8단계. Hello, Good Morning 및 Good Afternoon을 교육 구에 추가합니다.텍스트 양식에 입력한 다음 Enter 키를 누릅니다.

9단계. 이제 아래로 스크롤하여 Responses(응답 추가)를 클릭합니다.

10단계. 텍스트 응답을 선택합니다.

교육 문구와 마찬가지로 적절한 응답을 추가합니다.사용자가 에이전트로부터 받은 첫 번째 메시지입니다.상담원이 좀 더 자연스럽고 대화처럼 들리게 하려면 일반적인 대화를 생각해 보고 상담원이 어떤 말을 할지 상상해 보세요.그러나 사용자에게 이러한 상호 작용이 AI(Insively Intelligent) 에이전트와의 상호 작용임을 알리는 것이 좋습니다.이 시나리오에서는 Cisco Live Banking 애플리케이션이 예로 사용되므로 다음과 같은 항목을 추가할 수 있습니다. Welcome to Cisco Live!저는 John Doe이며 Cisco Live Banking의 가상 보조자입니다.무엇을 하고 싶으세요?수표 잔액, 신규 계정 생성 또는 이체 금액 같은 내용을 입력할 수 있습니다.

11단계. 저장을 클릭합니다.

추가 의도 만들기 전에 엔티티를 생성합니다.Entity는 Dialogflow가 사용자의 요청에 응답하기 위해 사용할 수 있는 속성 또는 매개변수입니다. 엔티티는 일반적으로 계정 유형, 날짜, 위치 등의 의도 내에서 키워드입니다.따라서 추가 정보를 추가하기 전에 엔터티를 추가합니다.계정 유형, 예금 유형 및 이체 유형

12단계. Dialogflow 메뉴에서 Entities(엔티티)를 클릭합니다.

13단계. 엔티티 창에서 엔티티 생성을 클릭합니다.

14단계. 엔티티 이름 유형 AccountType에서동의어 정의 필드에 다음을 입력합니다.Current, Loan and Savings(현재, 대출 및 절감) 및 SAVE(저장)를 클릭합니다.

15단계. 대화 상자 흐름 메뉴로 돌아가 엔티티를 다시 한 번 누릅니다.그런 다음 엔티티 창에서 엔티티 생성을 누릅니다.

>

16단계. 엔티티 이름 유형에서 다음을 수행합니다.예금 유형동의어 정의 필드에 다음을 입력합니다.Cash(현금)와 Check(확인)를 클릭하고 SAVE(저장)를 클릭합니다.

17단계. 다음과 같은 엔티티를 더 생성할 수 있습니다.TransferType 및 동의어 정의 필드 유형에서현금, Pay Pal, PayTM 및 Wire Transfer 등

18단계. 계정 소유자 엔티티를 생성합니다.엔티티 이름 필드에 AccountHolder;동의어 정의 필드에 입력합니다.

19단계. 이제 은행 시스템에서 수신되는 가능한 모든 질문과 일반적인 응답으로 상담원 교육을 계속합니다.다음 내용을 만듭니다.CheckBalance, TransferMoney입니다.CheckBalance 목적의 경우 이미지에 표시된 교육 구를 추가할 수 있습니다.

다음 응답을 추가할 수도 있습니다.

20단계. 나머지 의도(TransferMoney, CreateAccount 및 Exit), 교육 구문, 매개변수 및 응답을 추가할 수 있습니다.

참고: Google Dialogflow 컨피그레이션에 대한 자세한 내용은 다음을 참조하십시오.DialogFlow 가상 에이전트

CVB 음성 서버 구성

Speech Server는 Cisco VVB에 통합된 새로운 구성 요소입니다.음성 서버는 Google에서 처음 개발한 오픈 소스 gRPC(Remote Procedure Call) 시스템을 통해 Google 대화 상자 흐름과 상호 작용합니다.

1단계. PCCE AW(Admin Workstation), CVP 및 CVB 간에 인증서를 교환하지 않은 경우 인증서를 교환합니다.구축이 UCCE에 있는 경우 CVP NOAMP(New Operations Manager) 서버, CVP 및 CVB 간에 인증서를 교환합니다.

참고:PCCE 인증서 교환에 대해서는 다음 문서를 참조하십시오.PCCE 솔루션의 자체 서명 인증서 및 SPOG용 PCCE 구성 요소 인증서 관리.  UCCE의 경우 UCCE에서 교환되는 자체 서명 인증서를 참조하십시오.

2단계. PCCE에서 CCE Admin/SPOG(Single Plane of Glass) 인터페이스를 엽니다.구축이 UCCE에 있는 경우 NOAMP 서버에서 다음 단계를 수행합니다.

3단계. Features(기능)에서 Customer Virtual Assistant를 선택합니다.

4단계. 이제 3개의 탭이 표시됩니다.텍스트 대 음성, 자동 음성 인식 및 자연어 이해

5단계. Natural Language Understanding(자연어 이해)을 클릭한 다음 New(새로 만들기)를 클릭합니다.

6단계. New Natural Language Understanding Account(새로운 자연어 이해 어카운트) 창에서 Dialogflow를 서비스 제공자로 선택합니다.

7단계. 서비스 계정 이름의 경우 Google Dialogflow에서 생성한 가상 에이전트와 관련된 Google Project를 제공해야 합니다.

생성된 가상 에이전트와 관련된 프로젝트를 식별하려면 다음 절차를 수행합니다.

a.Dialogflow 계정(dialogflow.com)에 로그인하고 생성된 에이전트를 선택하고 설정 아이콘을 클릭합니다.

b.오른쪽 설정 창에서 아래로 스크롤하면 서비스 어카운트와 프로젝트 ID가 표시됩니다.Speech Server 구성에 추가해야 하는 서비스 계정 이름인 프로젝트 ID를 복사합니다.

8단계. 고객의 의도를 파악하고 이에 응답하는 데 필요한 Google Dialog 플로우 API를 사용하려면 가상 에이전트의 서비스 계정과 연결된 개인 키를 받아야 합니다.

개인 키는 서비스 계정을 생성할 때 JSON 파일로 다운로드됩니다.가상 에이전트 개인 키를 가져오려면 다음 절차를 수행합니다.

참고:프로젝트와 연결된 기본 Google 서비스 계정을 사용하지 않고 새 서비스 계정을 만들어야 합니다.

a.Google Project 섹션에서 Service Account URL을 클릭합니다.

b.그러면 Google Cloud Platform Service Accounts 페이지로 이동합니다.이제 먼저 서비스 어카운트에 역할을 추가해야 합니다.페이지 상단의 Create Service Account(서비스 어카운트 생성) 버튼을 클릭합니다.

c. 팝업에 서비스 계정의 이름을 입력합니다.이 경우 BankingRootSA를 입력하고 CREATE를 클릭합니다.

d.Select a role(역할 선택)을 클릭합니다.

e.Dialogflow 카테고리 아래에서 원하는 역할을 선택합니다.Dialogflow API Admin을 선택하고 Continue(계속)를 클릭합니다.

f.아래로 스크롤하여 CREATE KEY(키 생성)를 선택합니다.

g.개인 키 창에서 키 유형에 대해 JSON이 선택되었는지 확인하고 CREATE를 클릭합니다.

아.JSON 파일 다운로드가 시작됩니다.Save File(파일 저장) 상자를 선택하고 저장할 위치를 선택하고 확인합니다.

주의:이 JSON 파일은 한 번만 다운로드할 수 있으므로 파일을 저장하고 안전하게 보관해야 합니다.이 키가 손실되거나 보안이 침해된 경우 동일한 프로세스를 사용하여 새 키를 만들 수 있습니다.JSON 파일은 C:\Download folder폴더에 저장됩니다.

나.완료되면 확인 메시지가 포함된 팝업이 표시됩니다.닫기를 클릭합니다.

9단계. NLU Account(NLU 어카운트) 창에서 NEXT(다음)를 클릭한 후 인증 키를 제공해야 합니다.

10단계 설명을 추가합니다.JSON 파일을 다운로드한 폴더로 이동합니다.파일을 편집하고 파일의 모든 행을 선택하고 Service Account Key(서비스 계정 키) 필드에 복사합니다.저장을 클릭합니다.

CVP Call Studio 요소

CVP Call Studio 릴리스 12.5가 개선되었으며 이 4가지 요소(이미지에 표시됨)가 추가되어 CVA 기능의 컨피그레이션을 용이하게 합니다.

다음은 각 요소에 대한 간략한 설명입니다.

다이알록플로우

클라우드에서 ASR, NLU 및 TTS 서비스를 참여시키고 관리하기 위해 Dialogflow가 생성되었습니다.Dialogflow는 Google Dialogflow에서 모든 음성 서비스를 사용하고 전체 비즈니스 논리가 클라우드에서 제어되고 구동되는 Hosted IVR 구축을 시뮬레이션하는 데 도움이 됩니다.

다이오그플로우의도

DialogflowIntent는 클라우드 서비스가 인식(ASR 서비스) 및 NLU 서비스(Intent identification)에 참여하도록 만들어졌습니다. 의도가 식별되어 CVP VXML 서버에 전달되면 의도 처리 및 추가 작업을 CVP Call Studio 스크립트에서 수행할 수 있습니다.여기에서 애플리케이션 개발자는 클라우드 또는 온프레미스에서 TTS 서비스를 이용할 수 있는 유연성을 제공합니다.

DialogflowParam

DialogflowParam은 DialogflowIntent 요소와 함께 작동합니다.일반적인 온프레미스 기반 IVR 구축에서 고객 의도가 식별되어 VXML 서버로 전달되면 매개 변수 식별이 필요하며 CVP 애플리케이션에 의해 제어되어야 합니다.예를 들어 일반적인 은행 애플리케이션은 전체 트랜잭션이 처리되기 전에 고객 음성 입력에서 누락된 입력을 분석하고 나머지 필수 입력을 요청할 수 있습니다.위의 시나리오에서 DialogflowParam 요소는 DialogflowIntent 요소와 함께 작동하여 식별된 의도를 처리하고 필요한 매개 변수를 추가합니다.

전사

고객 음성 및 반환 텍스트를 출력하기 위해 변환이 생성되었습니다.기본적으로 인식 기능을 수행하고 텍스트를 출력으로 제공합니다.이 요소는 ASR 기능만 필요한 경우 사용해야 합니다.

이러한 각 요소의 매개변수 설정에 대한 자세한 내용은 요소 사양 가이드 릴리스 12.5를 참조하십시오.

CVP Call Studio 애플리케이션

Cloud Based Intent Processing - Google Based IVR Logic(Dialogflow)

통화가 VXML 애플리케이션에 도달하면 Dialogflow 요소가 인수되어 음성 입력을 처리하기 시작합니다.

고객과의 대화는 계속되며 Google 가상 에이전트가 정보를 식별하고 처리하는 한 TTS 서비스를 통해 미디어가 릴레이됩니다.  고객의 모든 요청에 대해 Dialogflow 요소 주위로 흐름이 반복되며, 일치하는 모든 의지는 의사 결정 상자에 따라 실행되어 IVR 처리를 계속할지 또는 고객이 통화를 상담원에게 호전환해야 하는지를 결정합니다.

에이전트 전송 결정이 트리거되면 통화가 CVP로 라우팅되고 통화를 대기열에 넣은 다음 통화를 에이전트에게 전송하기 위한 제어가 전달됩니다.

다음은 샘플 Call Studio 응용 프로그램의 컨피그레이션 단계입니다.

1단계. 응용 프로그램을 Call Studio로 가져오거나 새 응용 프로그램을 만듭니다.이 예에서는 Cisco Devnet Sample CVA Application-DFAudio에서 DFaudio라는 통화 스튜디오 애플리케이션을 가져왔습니다.

2단계. DFAudio 응용 프로그램에서 Dialogflow 요소를 선택하고 오른쪽의 Settings(설정) 탭을 선택합니다.서비스 어카운트 이름을 이전에 Speech Server에 추가된 프로젝트 ID로 변경합니다. 이 예에서는 bankingroot-iemspv입니다.

3단계. 텍스트 대신 Dialogflow 가상 에이전트로 오디오를 보내려면 오디오 출력 매개 변수가 true로 전송되도록 합니다.

4단계. 애플리케이션을 검증, 저장 및 VXML 서버에 배포합니다.

5단계. 이제 애플리케이션을 VXML 서버 메모리에 구축합니다.CVP VXML 서버에서 Windows 탐색기를 열고 C:\Cisco\CVP\VXMLServer and click on deployAllNewApps.bat로 이동합니다.응용 프로그램이 이전에 VXML 서버에 배포된 경우 대신 UpdateAllApps.bat를 클릭합니다.

구내 기반 의도 처리(DialogflowIntent/DialogflowParam)

이 예에서 통화 흐름은 고객이 자신의 계정 잔액을 확인하고 특정 금액을 저축 계정에서 다른 계정으로 전송할 수 있는 은행 애플리케이션과 관련이 있습니다.최초 기록 요소는 음성을 통해 고객으로부터 식별 데이터를 수집하고 ANI 번호로 검증합니다.최종 고객 ID가 확인되면 고객의 요청을 식별하기 위해 통화 제어가 DialogFlowIntent 요소로 전달됩니다.CVP Call Studio 애플리케이션은 고객 입력(예: 전송할 금액)에 따라 최종 고객의 나머지 매개변수를 요청하여 의도를 더 자세히 처리합니다.송금 거래가 끝나면 고객은 통화를 종료하거나 상담원 호전환을 요청할 수 있습니다.

1단계. 응용 프로그램을 Call Studio로 가져오거나 새 응용 프로그램을 만듭니다.이 예에서는 Cisco Devnet Sample CVA Application-DFRemote에서 DFRemote라는 통화 스튜디오 애플리케이션을 가져왔습니다.

2단계. DFRemote 애플리케이션에서 DialogflowIntent(DFIntent) 요소를 선택하고 오른쪽에서 Settings(설정) 탭을 선택합니다.이전에 Speech Server에 추가된 Project ID로 Service Account 이름을 변경합니다. 이 예에서는 다음과 같습니다.은행루트 iemspv

3단계. 입력 모드 매개변수가 음성으로 설정되어 있는지 확인합니다.음성 및 DTMF로 둘 다 설정할 수 있지만, 이 요소의 경우 매개변수가 수집되지 않으므로 음성으로 설정해야 합니다.DialogflowParam을 사용할 때 두 로 설정할 수 있습니다.이 요소에서는 발신자로부터 입력 매개 변수를 실제로 수집합니다.

4단계. 이 예에서 고객이 계정 잔액을 확인하기 위해 전화를 걸면 애플리케이션은 고객에게 DTMF 또는 음성으로 계정 유형을 제공하도록 요청합니다.이 정보는 DialogflowParam 요소(이미지에 표시된 AccountType)에서 수집됩니다. 필요한 매개변수를 수집하려면 DialogflowParam 설정을 변경합니다.입력 모드에서 dtmf+voice를 선택하여 발신자가 어카운트 유형을 입력하거나 말할 수 있습니다.Intent 매개 변수에 관련된 의도(이 경우 CheckBalance)를 입력합니다.그리고 변수 설정에서

의도 매개 변수를 선택합니다(이 경우 AccountType).의도 마지막 매개 변수이면 Last Parameter 변수를 true로 설정합니다.DialogflowParam 설정에 대한 자세한 내용은 Element 사양 가이드 릴리스 12.5를 참조하십시오.

5단계. 애플리케이션을 검증, 저장 및 VXML 서버에 배포합니다.

6단계. 이제 애플리케이션을 VXML 서버 메모리에 구축합니다.CVP VXML 서버에서 Windows 탐색기를 열고 C:\Cisco\CVP\VXMLServer and click on deployAllNewApps.bat로 이동합니다.응용 프로그램이 이전에 VXML 서버에 배포된 경우 대신 UpdateAllApps.bat를 클릭합니다.

7단계. 이전에 다운로드한 JSON 파일을 C:\Cisco\CVP\Conf 디렉토리에 복사합니다.제이슨 파일 이름은 프로젝트 이름과 일치해야 합니다. 이 경우 bankingroot-iemspv.json입니다.

8단계. 이 예와 같이 Google TTS 및 ASR 서비스가 필요한 경우 서비스를 추가합니다.구축이 UCCE에 있는 경우 NOAMP 서버를 통해 TTS 및 ASR을 추가합니다.PCCE에서 CCE Admin/SPOG(Single Plane of Glass) 인터페이스를 엽니다.

9단계. Features(기능) 카드 아래에서 Customer Virtual Assistant를 선택합니다.

10단계. 먼저 TTS 서비스를 추가한 다음 동일한 절차에 따라 ASR 서비스를 추가합니다.Text to Speech를 클릭한 다음 New를 클릭합니다.

11단계. 서비스 제공자로 Google을 선택하고 서비스 계정 이름(이전 단계에서 NLU 계정과 동일한 계정 이름)을 추가합니다. 다음을 클릭합니다.

12단계. 이 TTS 서비스를 기본값으로 설정하고 이전 단계에서 생성된 NLU json 파일의 내용을 ASR 및 TTS json 키로 복사합니다.저장을 클릭합니다.

참고:TTS 및 ASR 서비스 계정에는 할당된 역할이 필요하지 않습니다.그러나 ASR 및 TTS에 대해 동일한 NLU 서비스 계정을 사용하는 경우 이 서비스 계정이 TTS 및 ASR API에 액세스할 수 있는지 확인해야 합니다.

일반적으로 이것은 DialogflowIntent 및 DialogflowParam을 사용하는 프로세스 흐름입니다.

1. Call Studio/VXML 애플리케이션은 C:\Cisco\CVP\Conf\에서 JSON 파일을 읽습니다.

2. 오디오 파일 또는 오디오 설정의 TTS가 오디오로 변환되어 DialogflowIntent 오디오 프롬프트가 재생됩니다.

3. 이제 고객이 대화를 나눌 때 오디오가 인식 엔진인 Google ASR로 스트리밍됩니다.

4. Google ASR은 연설을 텍스트로 변환합니다.

5. 텍스트는 VXML 서버에서 Dialogflow로 전송됩니다.

6. Google Dialogflow는 VXML 응용 프로그램 DialogflowIntent 요소에 텍스트 형태로 의도를 반환합니다.

프록시 서버 구성

Cisco VB의 Google SDK(Software Development Kit)는 gRPC 프로토콜을 사용하여 Google Dialogflow와 상호 작용합니다.  gRPC는 전송에 HTTP/2를 사용합니다.

기본 프로토콜은 HTTP이므로 Cisco VB와 Google Dialogflow 간에 직접적인 통신이 없는 경우 엔드 투 엔드 통신 설정을 위해 HTTP 프록시를 구성해야 합니다.

프록시 서버는 HTTP 2.0 버전을 지원해야 합니다.Cisco VB는 프록시 호스트 및 포트 컨피그레이션을 구성하기 위해 CLI 명령을 표시합니다.

1단계. httpsProxy 호스트를 구성합니다.

set speechserver httpsProxy host <hostname>

2단계. httpsProxy 포트를 구성합니다.

set speechserver httpsProxy port <portNumber>

3단계. Show httpsProxy 명령을 사용하여 컨피그레이션을 검증합니다.

show speechserver httpsProxy host

show speechserver httpsProxy port

4단계. 프록시 컨피그레이션 후 Cisco Speech Server 서비스를 다시 시작합니다.

utils 서비스 다시 시작 Cisco Speech Server

또한 Premise Based Intent Processing(DialogflowIntent / DialogflowParam) 배포 모델을 구현한 경우 CVP VXML Server와 Google Dialogflow 간에 직접 인터넷 연결이 없는 경우 CVP VXML Server에서 프록시 서버를 구성해야 합니다.

1단계. CVP VXML 서버에 로그인합니다.

2단계. regedit 명령을 실행합니다.

3단계. HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Apache Software Foundation\Procrun 2.0\VXMLServer\Parameters\Java\Options으로 이동합니다.

4단계. 파일에 이러한 행을 추가합니다.

-Dhttps.proxyHost=<프록시 IP/호스트>

-Dhttps.proxyPort=<프록시 포트 번호>

5단계. Cisco CVP VXML Server 서비스를 다시 시작합니다.

문제 해결

CVA 문제를 해결해야 하는 경우 이 문서 Troubeshoot Cisco Customer Virtual Assistant의 정보를 검토하십시오.

관련 정보

Cisco 문서

- 샘플 코드 샘플 CVA 애플리케이션

- CVA 설계 통화 흐름 및 아키텍처.

- OAMP를 사용하여 UCCE에서 CVA 서비스를 구성합니다.

- PCCE 관리를 사용하여 PCCE에서 CVA 서비스를 구성합니다.

- Dialogflow Call Studio 요소 사양

- DialogflowIntent Call Studio 요소 사양

- DialogflowParam 통화 스튜디오 요소 사양

- 통화 스튜디오 요소 사양 변환

Google 문서

- Dialogflow API 활성화

- Cloud Speech-to-Text API 활성화(선택 사항)

- Cloud Text-to-Speech API 활성화(선택 사항)

- Dialogflow 청구 활성화

- 고급 Dialogflow 기능을 위해 Enterprise Edition으로 업그레이드합니다.

- 향상된 모델을 활성화하여 최상의 음성 인식 결과를 제공합니다.

- Dialogflow 인증 키 생성

- 음성-텍스트 키 만들기

- 텍스트 음성 변환 키 만들기

- Dialogflow 기본 사항

- Dialogflow Agent 설정

- Dialogflow 에이전트 생성

기술 지원 및 문서 − Cisco Systems