Introdução
Este documento descreve o elemento de banco de dados Call Studio do Portal de voz do cliente (CVP), a JNDI (interface de diretório e nomeação Java Tomcat) para o banco de dados SQL.
Pré-requisitos
Requisitos
A Cisco recomenda que você tenha conhecimento destes tópicos:
- Cisco Unified Contact Center Enterprise (UCCE) versão 12.6.2
- Cisco Package Contact Center Enterprise (PCCE) versão 12.6.2
- Versão do CVP 12.6.2
- CVP Call Studio 12.6.2
Componentes Utilizados
As informações neste documento são baseadas nestas versões de software:
- Cisco PCCE versão 12.6.2
- Versão do CVP 12.6.2
- CVP Call Studio 12.6.2
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
Informações de Apoio
O elemento de banco de dados fornece a capacidade de executar um comando Structured Query Language (SQL) em bancos de dados externos dentro de um fluxo de chamada de aplicativo de voz. O elemento requer que o JNDI seja configurado no servidor de aplicativos Java para manipular conexões de banco de dados. Somente uma única instrução SQL pode ser executada por elemento. Há quatro tipos de comandos que podem ser executados, mas neste documento somente o comando único é usado:
Única - É usada para executar uma consulta SQL que retorna apenas uma única linha. Os dados do elemento serão criados com os nomes de variáveis sendo os nomes das colunas retornadas e o valor dessa coluna como o valor dos dados do elemento (como uma string). Se nenhuma linha for retornada, nenhum dado de elemento será definido.
Mais informações podem ser encontradas no guia CVP VXML Element.
Configuração
Esta seção explica como criar uma nova conexão de banco de dados JNDI no Tomcat.
Etapa 1. Determinar a versão do Java Runtime Environment (JRE) no servidor CVP.
- Clique no botão Iniciar (canto esquerdo do botão na barra da área de trabalho)
- Clique na opção Executar...
- Digite CMD e clique em OK para abrir o prompt do DOS
- Em seguida, digite java-version

Etapa 2. Instalar um driver Java Database Connectivity (JDBC) compatível com a Versão SQL. Para habilitar o acesso ao banco de dados no servidor de aplicativos, um driver JDBC compatível deve ser instalado. Esses drivers, normalmente empacotados como arquivos JAR, devem ser colocados em um diretório acessível ao classpath do servidor de aplicativos (no Tomcat, por exemplo, coloque em %CVP_HOME%\VXMLServer\Tomcat\lib).
Drivers diferentes podem ser encontrados aqui.
Um exemplo da lista de MS suportados:


Note: O banco de dados deve existir para que esta conexão funcione. O servidor CVP Voice XML (VXML) não criará o banco de dados para você. Neste documento, o banco de dados UCCE AW é usado como exemplo e o driver JDBC versão 12.6 é o instalado.

Etapa 2. Adicione um Contexto Tomcat para a conexão de banco de dados para que o servidor CVP VXML saiba como se comunicar com seu banco de dados. Para obter mais informações, consulte https://tomcat.apache.org/tomcat-9.0-doc/jndi-datasource-examples-howto.html.
Aqui está um exemplo que usa SQL (edit context.xml da pasta AUDIUM_HOME\Tomcat\conf onde AUDIUM_HOME é geralmente Cisco\CVP\VXMLServer):
<Context>
<Resource name="jdbc/<LABEL_YOU_CHOOSE>"
auth="Container"
type="javax.sql.DataSource"
username="USER_NAME"
password="USER_PW"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://HOSTNAME_OR_IP:PORT;DatabaseName=< DB_NAME>" />
</Context>
O número de porta padrão para MS SQL é 1433. Um exemplo de url para o contexto anterior será 'jdbc: sql://localhost:1433;databaseName=pcce_awdb'.
Note: Como alternativa, o <Resource> pode ser configurado no arquivo server.xml em <GlobalNamingResources> e um <ResourceLink> criado em context.xml em <Context>.
Para aumentar a segurança, é recomendável definir o nome de usuário ou a senha usando o elemento e excluir manualmente os campos de nome de usuário e senha do arquivo context.xml.
Se o nome de usuário e a senha forem fornecidos no elemento, o nome de usuário e a senha no arquivo context.xml serão ignorados.

Etapa 3. Sob condições de carga pesada, ative o Pool de Conexões do Banco de Dados.
Um pool de conexões de banco de dados cria e gerencia um pool de conexões a um banco de dados. Reciclar e reutilizar conexões já existentes com um banco de dados é mais eficiente do que abrir uma nova conexão. Para obter mais informações sobre o pool de banco de dados Tomcat, consulte https://tomcat.apache.org/tomcat-9.0-doc/jndi-datasource-examples-howto.html.
Note: O Tomcat 8.0 tem duas bibliotecas de pools de conexão: commons-dbcp e tomcat-jdbc-pool. Devido a um problema conhecido com a biblioteca de pool de conexão tomcat-jdbc-pool, se a conexão entre o servidor CVP VXML e o servidor SQL remoto for desativada, as conexões não serão restabelecidas automaticamente. As conexões só podem ser restabelecidas depois que o serviço tomcat VXMLServer for reiniciado.
A biblioteca de pool de conexão commons-dbcp não tem esse problema. A biblioteca commons-dbcp é usada por padrão, e o tomcat-jdbc-pool é usado somente se o arquivo tomcat context.xml contiver esta linha:
fatory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
Devido a esse problema, a Cisco não recomenda o uso da biblioteca tomcat-jdbc-pool.
Etapa 4. Reiniciar o serviço VXML do CVP.

Etapa 5. No CVP Call Studio, edite a configuração do elemento Database em questão. Insira a string que você inseriu em <LABEL_YOU_CHOOSE> no Contexto Tomcat na propriedade Nome JNDI da guia Configurações do elemento Banco de dados.
Note: Não inclua a parte jdbc/aqui.

Etapa 6. Salve, implante e atualize o aplicativo no servidor VXML.
Troubleshooting
Atualmente, não existem informações disponíveis específicas sobre Troubleshooting para esta configuração.
Informações Relacionadas