Contents

Introduction

Prerequisites

Requirements

Componentes Utilizados

Visão geral da integração do CUE JTAPI com o CUCM

Exemplo de fluxo de chamada de alto nível

Capacitação e coleta de rastreamentos

Rastreamentos de CCN JTAPI em tempo real

Logs de rastreamento CCN JTAPI

Coletar os arquivos de log de rastreamento

Detalhes obrigatórios antes de verificar os registros

Conceitos básicos de CTI

Estados de chamada CTI comuns

Como devem ser os registros de rastreamento

Registro de porta e RP CTI

Chamada básica encaminhada para correio de voz

Nova chamada e redirecionamento para porta disponível

Nova chamada e redirecionamento para porta disponível

Nova chamada para a porta CTI

Porta CTI aceita chamada redirecionada

Negociação de mídia

Desconexão de Chamada

Sinalização de MWI Ligado/Desligado

CUE ativa a lâmpada MWI para a linha 3001

Número DTMF discado '3' para excluir a mensagem da caixa de correio

CUE desliga a lâmpada MWI para a linha 3001

Logs CCN em tempo real

Configuração de chamada

Desconexão de Chamada

Solucionando problemas de estudos de caso

Problemas de conectividade

Usuário não habilitado para CTI

O serviço CUCM CTI Manager está inativo

Incompatibilidade de configuração

Problema de roteamento de chamada CUCM

Lista de verificação para solução de problemas de registro de porta

Informações Relacionadas

Introduction

Este documento fornece informações sobre como solucionar problemas da interface de programação de aplicativos de telefonia Java (JTAPI) do Cisco Unity Express (CUE). Além disso, este documento fornece informações e comandos sobre como habilitar, coletar e exibir os diferentes rastreamentos e registros com exemplos de estudo de caso de solução de problemas.

Prerequisites

Requirements

A Cisco recomenda que você tenha conhecimento destes tópicos:

- Conhecimento básico de como configurar e usar o Cisco Unified Communications Manager (CUCM) através da interface administrativa da Web.

- Familiaridade básica com portas de Interface de Telefonia de Computador (CTI - Computer Telephony Interface) e pontos de rota (RPs - Route-Points) no CUCM.

- Familiaridade básica com a interface de linha de comando do Cisco Unity Express.

Componentes Utilizados

As informações neste documento são baseadas nestas versões de software e hardware:

- Cisco Unity Express versão 3.x ou posterior.

- Cisco Unified Communications Manager versão 7.x ou posterior.

O método de integração usado aplica-se somente ao Cisco Unity Express com Cisco Unified Communications Manager; não com o Cisco Unified Communications Manager Express (CUCME).

O Cisco Unity Express deve ser licenciado para CUCM, não para CUCME. O CUE pode ser integrado ao CUCM ou CUCME a qualquer momento e licenciado de acordo.

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.

Visão geral da integração do CUE JTAPI com o CUCM

É possível integrar o CUE com o CUCM através do protocolo JTAPI para correio de voz (VM) e funcionalidade de atendimento automatizado (AA). Essa solução é recomendada quando você deseja provisionar recursos de VM e/ou tratamento básico de chamadas AA para um ou vários locais de filial com um pequeno número de usuários registrados em um servidor CUCM. Isso não exige um servidor completo de correio de voz do Cisco Unity, mas uma implementação muito mais acessível. Ao mesmo tempo, o CUE também fornece opções de sobrevivência para suas filiais e faz failover para o Session Initiated Protocol (SIP) quando a conectividade com o CUCM é perdida.

O CUE pode se registrar no CUCM por meio do JTAPI e controla os pontos de rota CTI e as portas CTI. Isso permite controlar e gerenciar o CUE como um endpoint adicional através do CUCM, bem como facilitar as configurações e interações com outros endpoints no cluster.

Exemplo de fluxo de chamada de alto nível

O usuário final com número de diretório (DN) 1005 chama o usuário com DN 1001. A chamada é encaminhada após alguns segundos se não for atendida, Desviar chamada sem resposta (CFNA), para o número da VM configurado no perfil da VM do usuário 1001. Em seguida, o CUCM envia a chamada para o piloto de VM 5000 configurado, que aponta para um RP de CTI com DN 5000 controlado pelo CUE. O aplicativo CUE VM é acionado e a chamada é redirecionada por JTAPI para uma porta CTI (DN 5501) disponível para estabelecimento de mídia. A saudação de áudio é reproduzida e o usuário pode deixar uma mensagem ou interagir com o sistema por meio de tons DTMF (Dual Tone Multi-Frequency, multifrequência de tom duplo). Quando o chamador encerra a chamada, o CUE sinaliza o CUCM para definir a lâmpada do Indicador de espera de mensagem (MWI) para o ramal 1001 como "On" através do JTAPI. Em seguida, o CUCM envia a mensagem Skinny Client Control Protocol (SCCP) para ligar a luz no telefone, assim como mostra a indicação do envelope na tela, para que o usuário 1001 saiba que há uma nova mensagem de VM na caixa de correio.

Capacitação e coleta de rastreamentos

Há dois tipos de rastreamento:

- Rastreamentos em tempo real da rede de comunicações da Cisco (CCN) JTAPI

- Logs de rastreamento de CCN JTAPI

Rastreamentos de CCN JTAPI em tempo real

- Rastreamentos JTAPI CCN em tempo real. (Habilitar esses rastreamentos não exige um recarregamento do módulo CUE.)

- A saída não é tão extensa quanto os registros de rastreamento CCN, mas eles também não são muito informativos.

Insira estes comandos para ativar os rastreamentos:

no trace all

trace ccn SubsystemJtapi all

Insira este comando para verificar se estão ativados:

CUE# show trace

MODULE           ENTITY          SETTING

ccn              SubsystemJtapi  ffffffff

Insira este comando para coletar a saída:

CUE# show trace buffer ?

containing        Only display events matching a regex pattern

long              Show long format

short             Show short format

tail              Wait for events and print them as they occur !!

Insira CTRL-C para interromper o registro em tempo real no console.

Logs de rastreamento CCN JTAPI

É necessário recarregar o módulo CUE depois que os registros de rastreamento CCN JTAPI estão ativados para que os registros sejam preenchidos. Estes registros, messages.log e atrace.log, podem ser muito detalhados ou criticos, bem como muito mais informativos e detalhados. Há quatro registros diferentes:

- atrace.log

- Habilitado por padrão em módulos de rede (NMs), mas desabilitado por padrão para módulos de integração avançada (AIMs). Insira o comando log trace local enable para ativá-lo.

- Ele grava até 10 Mb localmente ou em um servidor FTP.

- Para reiniciar o registro, introduza o comando log trace local disable ou o comando no log trace local enable; em seguida, digite o comando log trace local enable. Insira o comando clear trace file para limpar o atrace.log.

- Os dados devem ser decodificados pelo Centro de Assistência Técnica (TAC).

- messages.log

- Esses são registros que contêm mensagens de Syslog, como Info, Warning, Error e Fatal.

- CiscoJtapi1.log e CiscoJtapi2.log

- Eles registram todos os eventos e a sinalização relacionados a JTAPI.

- Esses registros são muito mais fáceis de entender e muito informativos.

- O CiscoJtapi2.log começa a ser preenchido quando o CiscoJtapi1.log fica cheio e vice-versa.

Independentemente dos rastreamentos definidos, o sistema reverte para os níveis de rastreamento padrão após uma recarga. Para alterar essas configurações padrão de modo que sobrevivam a uma reinicialização, você deve inserir o comando log trace boot. Aqui está o comando para ativá-los:

CUE#(CONFIG)> log console info  !!

ccn trace jtapi deb all

ccn trace jtapi info all

ccn trace jtapi warn all

log trace boot

reload

Insira este comando para verificar se estão ativados:

CUE# show ccn trace jtapi

Warning:                                1

Informational:                          1

Jtapi Debugging:                        1

Jtapi Implementation:                   1

CTI Debugging:                          1

CTI Implementation:                     1

Protocol Debugging:                     1

Misc Debugging:                         1

Aqui estão as etapas para exibir os registros:

1. Insira o comando show logs para exibir uma lista dos arquivos de log armazenados no CUE.

2. A extensão do arquivo .prev significa que este é um backup de um arquivo de rastreamento mais antigo e não o arquivo de log ativo atual.

3. Você pode extraí-los para um servidor FTP externo.

4. Você também pode exibir a saída das mensagens que estão sendo registradas nesses arquivos em tempo real no monitor de terminal do CUE.

Coletar os arquivos de log de rastreamento

Extraia os logs para um FTP externo com estes comandos:

copy log CiscoJtapi2.log url ftp://username:password@192.168.105.1/

copy log CiscoJtapi1.log url ftp://username:password@192.168.105.1/

copy log messages.log url ftp://username:password@192.168.105.1/

copy log atrace.log url ftp://username:password@192.168.105.1/

Exiba os registros no monitor de terminal CUE com o comando show log name <logname>. Aqui está um exemplo:

CUE# show log name messages.log ?

containing        Only display events matching a regex pattern

paged             Display in page mode

tail              Wait for events and print them as they occur

<cr>

O atrace.log está codificado; portanto, não é possível exibi-lo somente em tempo real com o comando show log name.

Detalhes obrigatórios antes de verificar os registros

Você deve obter, no mínimo, todos os detalhes aqui descritos das chamadas com o problema que você está solucionando para que possa rastrear e entender facilmente os rastreamentos:

- Número de chamada

- Número chamado

- Número de redirecionamento

- DN do CTI RP e nome do dispositivo

- Número da porta CTI e nome do dispositivo

- usuário JTAPI

- O intervalo de tempo em que as chamadas ocorreram

Conceitos básicos de CTI

Provedor: Um provedor de serviços CTI. O aplicativo estabelece uma sessão CTI abrindo um provedor.

Usuário: Os aplicativos estão associados a um usuário.

Dispositivo: Um dispositivo que se registra no CUCM.

Linha: Aparência de DN em um dispositivo compatível com CTI.

ID da chamada (callLegID): Associado a um segmento de chamada em uma chamada.

Chamada global (callID): Identifica todos os segmentos de chamada para uma única chamada.

Estados de chamada CTI comuns

state = 1               IDLE

state = 2               OFFERING

state = 3               ACCEPTED

state = 8               CONNECTED

Como devem ser os registros de rastreamento

Antes de encontrar a sinalização incorreta, primeiro é necessário saber como seria essa sinalização em uma operação normal; então esta seção mostra trechos das saídas de sinalização que você veria em diferentes cenários quando funcionassem normalmente.

Além disso, lembre-se de que todos os sinais desses registros foram resumidos para mostrar apenas os detalhes relevantes, pois contêm informações muito detalhadas que são bastante tediosas e repetitivas.

Aqui estão os detalhes das configurações usadas:

Jtapi User:                    tacjtapiuser

CUCM IP Address:               192.168.100.10

CUE CTI Route Point:           cue_vm_ctirp

CUE CTI Port:                  cue_ctiport1

CUE and Phone Partition:       cue_pt

IP Phone MAC:                  SEP0023331C29EC

CTI Route Point DN:            8000

CTI Port DN:                   8501

IP Phone DN:                   3001

Registro de porta e RP CTI

(Saídas dos registros do Cisco Jtapi1 / Cisco Jtapi2)

1. Abrir uma conexão do provedor

21: 12:05:23.686 CST %JTAPI-CTIIMPL-7-UNK.(P1-tacjtapiuser) ProviderID =

P1-tacjtapiuser

22: 12:05:23.739 CST %JTAPI-CTIIMPL-7-UNK.(P1-tacjtapiuser) Trying to

create normal socket connection to 192.168.100.10

23: 12:05:23.747 CST %JTAPI-CTIIMPL-7-UNK.(P1-tacjtapiuser) connected

26: 12:05:24.112 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.ProviderOpenRequest {

provider                   = 192.168.100.10

qbeClientVersion           = Cisco JTAPI 7.0(1.1000)-1 Release

login                      = com.cisco.cti.protocol.UnicodeString {

unicodedisplayName = tacjtapiuser

}

applicationID              = Cisco IP IVR

desiredServerHeartbeatTime = 30

pluginName                 = CiscoJTAPI

}

28: 12:05:24.131 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Response: com.cisco.cti.protocol.ProviderOpenResponse {

sequenceNumber     = 0

result             = 0

providerInfoString = 7.1.5.10000-12

clientHeartbeat    = 30

serverHeartbeat    = 30

pluginVersion      = 7.1.5.10000-2

pluginLocation     = http://192.168.100.10/plugins/

providerId         = 16777236

}

35: 12:05:24.858 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Event: com.cisco.cti.protocol.ProviderOpenCompletedEvent {

eventSequence       = 0

reason              = 0

providerInfoString  = 7.1.5.10000-12

clientHeartbeat     = 30

serverHeartbeat     = 30

failureDescription  = null

providerId          = 16777236

}

2. Consulta de dispositivos controláveis

48: 12:05:24.864 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.ProviderGetDeviceInfoRequest {

sequenceNumber = 2

deviceGroup    = 1

}

49: 12:05:24.865 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Response: com.cisco.cti.protocol.ProviderGetDeviceInfoResponse {

sequenceNumber    = 2

result            = 0

}

50: 12:05:24.865 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.GetDeviceInfoFetchRequest {

sequenceNumber    = 3

}

51: 12:05:25.011 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Response: com.cisco.cti.protocol.GetDeviceInfoFetchResponse {

sequenceNumber = 3

result         = 0

info           = 2@[

com.cisco.cti.protocol.DeviceInfo {

name               = cue_ctiport1

type               = 72

allowsRegistration = true

deviceID           = 62

devTypeName        = CTI Port

},

com.cisco.cti.protocol.DeviceInfo {

name               = cue_vm_ctirp

type               = 73

allowsRegistration = true

deviceID           = 61

devTypeName        = CTI Route Point

}]

52: 12:05:25.012 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.GetDeviceInfoCloseRequest {

sequenceNumber    = 4

}

53: 12:05:25.013 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10)

received Response: com.cisco.cti.protocol.GetDeviceInfoCloseResponse {

sequenceNumber = 4

}

54: 12:05:25.013 CST %JTAPI-MISC-7-UNK.(P1-192.168.100.10)

creating controlled devices

3. Obter informações de linha da porta CTI

55: 12:05:25.024 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.DeviceGetLineInfoRequest {

sequenceNumber = 5

deviceName     = cue_ctiport1

}

56: 12:05:25.026 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10)

received Response: com.cisco.cti.protocol.DeviceGetLineInfoResponse {

sequenceNumber    = 5

result            = 0

}

57: 12:05:25.026 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.GetLineInfoFetchRequest {

sequenceNumber    = 6

}

58: 12:05:25.029 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10)

received Response: com.cisco.cti.protocol.GetLineInfoFetchResponse {

sequenceNumber = 6

result         = 0

com.cisco.cti.protocol.LineInfo {

name                      = 8501

displayName               =

maxNumberOfCalls          = 4

lineInstance              = 1

unicodeDisplayName        = com.cisco.cti.protocol.UnicodeString {

}

partition                 = cue_pt

defaultIntercomTargetInfo = com.cisco.cti.protocol.LineIntercomSpeedDialInfo {

}]

59: 12:05:25.029 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.GetLineInfoCloseRequest {

sequenceNumber    = 7

}

60: 12:05:25.031 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10)

received Response: com.cisco.cti.protocol.GetLineInfoCloseResponse {

sequenceNumber = 7

result         = 0

}

61: 12:05:25.042 CST %JTAPI-CTI-7-UNK.(P1-tacjtapiuser)

DeviceMap: adding device "cue_ctiport1"

4. Obter informações de linha do CTI RP
62: 12:05:25.043 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.DeviceGetLineInfoRequest {

sequenceNumber = 8

deviceName     = cue_vm_ctirp

}

63: 12:05:25.044 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10)

received Response: com.cisco.cti.protocol.DeviceGetLineInfoResponse {

sequenceNumber    = 8

result            = 0

}

64: 12:05:25.045 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.GetLineInfoFetchRequest {

sequenceNumber    = 9

}

65: 12:05:25.047 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10)

received Response: com.cisco.cti.protocol.GetLineInfoFetchResponse {

sequenceNumber = 9

result         = 0

info           = 1@[

com.cisco.cti.protocol.LineInfo {

name                      = 8000

displayName               =

permanentLineID           = 52

partition                 = cue_pt

defaultIntercomTargetInfo = com.cisco.cti.protocol.LineIntercomSpeedDialInfo {

unicodeLabel = com.cisco.cti.protocol.UnicodeString {

}

}

66: 12:05:25.048 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.GetLineInfoCloseRequest {

sequenceNumber    = 10

}

67: 12:05:25.058 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10)

received Response: com.cisco.cti.protocol.GetLineInfoCloseResponse {

sequenceNumber = 10

result         = 0

}

68: 12:05:25.059 CST %JTAPI-CTI-7-UNK.(P1-tacjtapiuser)

DeviceMap: adding device "cue_vm_ctirp"

69: 12:05:25.059 CST %JTAPI-CTI-7-UNK.(P1-192.168.100.10)

refreshing device map: previous=0 current=2 created=2 removed=0

5. CUE aplica configuração recebida
76: 12:05:25.064 CST %JTAPI-MISC-7-UNK.Provider 192.168.100.10

open, beginning device

initialization

77: 12:05:25.071 CST %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser)[SS_TEL_INIT]

(P1-tacjtapiuser) Request: addObserver

79: 12:05:25.073 CST %JTAPI-MISC-7-UNK.ObserverThread

(com.cisco.wf.subsystems.jtapi.SubsystemJTAPI$ProviderObserver@3d823d82):created

80:12:05:25.074 CST %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser) ProvOutOfServiceEv [#0]

Cause:100 CallCtlCause:0 CiscoFeatureReason:12

82: 12:05:25.085 CST %JTAPI-MISC-7-

UNK.ObserverThread

(com.cisco.wf.subsystems.jtapi.SubsystemJTAPI$ProviderObserver@3d823d82):

queuing com.cisco.jtapi.JtapiProviderEventSet

83: 12:05:25.084 CST %JTAPI-MISC-7-UNK.(P1-192.168.100.10)

ProviderRetryThread starting up

85: 12:05:25.084 CST %JTAPI-MISC-7-UNK.ObserverThread

(com.cisco.wf.subsystems.jtapi.SubsystemJTAPI$ProviderObserver@3d823d82)

starting up...

90: 12:05:25.102 CST %JTAPI-JTAPIIMPL-7-UNK.Partition Support 8000 in

partitioncue_pt

91: 12:05:25.102 CST %JTAPI-JTAPIIMPL-7-UNK.(P1-tacjtapiuser) cue_vm_ctirp:

Address: 8000 in partitioncue_pt created

92: 12:05:25.102 CST %JTAPI-JTAPIIMPL-7-UNK.Partition Internal Address Added

8000 in Partition cue_pt

93: 12:05:25.102 CST %JTAPI-JTAPIIMPL-7-UNK.Partition Support 8501 in

partitioncue_pt

94: 12:05:25.103 CST %JTAPI-JTAPIIMPL-7-UNK.(P1-tacjtapiuser) cue_ctiport1:

Address: 8501 in partitioncue_pt created

95: 12:05:25.103 CST %JTAPI-JTAPIIMPL-7-UNK.Partition Internal Address Added

8501 in Partition cue_pt

96: 12:05:25.103 CST %JTAPI-MISC-7-UNK.Provider "(P1-tacjtapiuser)" changing

state to IN_SERVICE

97: 12:05:25.103 CST %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser)[Thread-76]

(P1-tacjtapiuser) Request: getObservers

98: 12:05:25.103 CST %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser) ProvInServiceEv [#1]

Cause:100 CallCtlCause:0 CiscoFeatureReason:12

100: 12:05:25.103 CST %JTAPI-MISC-7-UNK.ObserverThread

(com.cisco.wf.subsystems.jtapi.SubsystemJTAPI$ProviderObserver@3d823d82):

queuing com.cisco.jtapi.JtapiProviderEventSet

101: 12:05:25.103 CST %JTAPI-JTAPIIMPL-7-UNK.Provider 192.168.100.10

initialized 2 devices

104: 12:05:25.104 CST %JTAPI-JTAPIIMPL-7-UNK:

[com.cisco.wf.subsystems.jtapi.SubsystemJTAPI$ProviderObserver@3d823d82]

delivering to providerChangedEvent

106: 12:05:25.523 CST %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser)[SS_TEL_INIT]

(P1-tacjtapiuser) Request: getAddress( 8501 )Partition = cue_pt

107: 12:05:25.526 CST %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser)[SS_TEL_INIT]

[cue_ctiport1]Request: addObserver

(com.cisco.wf.subsystems.jtapi.TAPIPortGroup$Port$AddressCallObserver@5d085d08)

6. Obtenha o controle dos dispositivos e linhas CTI

109: 12:05:25.528 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending:

com.cisco.cti.protocol.DeviceOpenRequest {

deviceName            = cue_ctiport1

}

110: 12:05:25.533 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10)

received Response:

com.cisco.cti.protocol.DeviceOpenResponse {

result         = 0

}

111: 12:05:25.533 CST %JTAPI-CTI-7-UNK.(P1-tacjtapiuser) DeviceMap: opening

device  "cue_ctiport1"

112: 12:05:25.533 CST %JTAPI-JTAPIIMPL-7-UNK.(P1-tacjtapiuser) Terminal

"cue_ctiport1" out of service

113: 12:05:25.534 CST %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser) [cue_ctiport1]

CiscoTermOutOfServiceEv [#2] Cause:100 CallCtlCause:0 CiscoFeatureReason:12

119: 12:05:25.544 CST %JTAPI-JTAPIIMPL-7-UNK:Address [cue_ctiport1:8501:

cue_pt.(0,0)] out of service

120: 12:05:25.544 CST %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser) [8501:cue_pt]

CiscoAddrOutOfServiceEv [#3] Cause:100 CallCtlCause:0 CiscoFeatureReason:12

121: 12:05:25.546 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.LineOpenRequest {

deviceName       = cue_ctiport1

lineName         = 8501

}

122: 12:05:25.582 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Response: com.cisco.cti.protocol.LineOpenResponse {

134: 12:05:25.670 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.LineCloseRequest {

135: 12:05:25.673 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Response: com.cisco.cti.protocol.LineCloseResponse {

138: 12:05:25.674 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.DeviceCloseRequest {

139: 12:05:25.681 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Response: com.cisco.cti.protocol.DeviceCloseResponse {

141: 12:05:25.683 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.DeviceRegisterDeviceRequest {

deviceName                = cue_ctiport1

142: 12:05:25.687 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Response: com.cisco.cti.protocol.DeviceRegisterDeviceResponse {

result         = 0

name               = cue_ctiport1

allowsRegistration = true

}

143: 12:05:25.687 CST %JTAPI-CTI-7-UNK.(P1-tacjtapiuser) DeviceMap: opening

device "cue_ctiport1"

150: 12:05:25.688 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.LineOpenRequest {

deviceName       = cue_ctiport1

lineName         = 8501

151: 12:05:25.690 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Response: com.cisco.cti.protocol.LineOpenResponse {

152: 12:05:25.691 CST %JTAPI-JTAPIIMPL-7-UNK:cue_ctiport1: Lines opened

153: 12:05:25.739 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Event: com.cisco.cti.protocol.DeviceRegisteredEvent {

deviceInfo       = com.cisco.cti.protocol.DeviceInfo {

allowsRegistration = true

controllable     = true

}

156: 12:05:25.739 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) Received

DeviceRegisteredEvent

160: 12:05:25.740 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Event: com.cisco.cti.protocol.DeviceInServiceEvent {

162: 12:05:25.741 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Event: com.cisco.cti.protocol.LineInServiceEvent {

}

Chamada básica encaminhada para correio de voz

(Saídas dos registros do Cisco Jtapi1 / Cisco Jtapi2)

Nova chamada e redirecionamento para porta disponível

Nova chamada e redirecionamento para porta disponível

12:46:00.396 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Event:

com.cisco.cti.protocol.NewCallEvent {

deviceName                        = cue_vm_ctirp

callLegID                         = 25626132

callID                            = 9040

callingParty                      = 3001

calledParty                       = 8000

callingPartyName                  = Ext 3001 - Phone

callingPartyDeviceName            = SEP0023331C29EC

unModifiedCalledParty             = 8000

unModifiedOriginalCalledParty     = 8000

unModifiedLastRedirectingParty    =

}

12:46:00.400 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Event:

com.cisco.cti.protocol.CallStateChangedEvent {

callLegID                         = 25626132

state                             = 2

reason                            = 1

}

12:46:00.402 CST %JTAPI-CTI-7-UNK.(P1-tacjtapiuser){Line:cue_vm_ctirp:8000:

cue_pt.(1,28)

|Call:[GCID=

(9040/1),CID=25626132]} NewCall [ state=OFFERING auxData=1 destCM=1 destType=

IN_CLUSTER unModifiedCg=3001

unModifiedCd=8000 unModifiedOriginalCd=8000 unModifiedLastRedirected= calling=3001

callingName=Ext 3001 -

Phone called=8000 calledName= origParty=8000 origName= lastRedirected=

lastRedirectedName= origin=INBOUNDINTERNAL reason=DIRECTCALL activeTone=0

deviceName=cue_vm_ctirp bRemoteInUse=false bPrivacy=false CallSelectStatus=0

CallingPartyPI=True CallingPartyDisplayNamePI=True CalledPartyPI=True

CalledPartyDisplayNamePI=True OriginalCalledPartyPI=True]

12:46:00.424 CST %JTAPI-JTAPIIMPL-7-UNK:{(P1-tacjtapiuser) GCID=(1,9040)->ACTIVE}

Initializing to OFFERING for 8000:cue_pt Cause=CAUSE_NORMAL Reason= 1

12:46:00.424 CST %JTAPI-JTAPI-7-UNK:[[3001:cue_pt/(P1-tacjtapiuser) GCID=

(1,9040)->ACTIVE]->IDLE]creating external connection for 3001:cue_pt

12:46:00.424 CST %JTAPI-JTAPI-7-UNK:{ CcnCall=Call:[GCID=(9040/1),CID=25626132]

Connection=[3001:cue_pt/(P1-tacjtapiuser) GCID=(1,9040)->ACTIVE]->IDLE: creating

new Connection for CCNCall }

12:46:00.425 CST %JTAPI-JTAPI-7-UNK:[9040/1]CallImpl.deliverEvents(): for all

1 observers

12:46:00.430 CST %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser)[SS_TEL_ROUTE_CALL_EV][[

8000:cue_pt/(P1-tacjtapiuser) GCID=(1,9040)->ACTIVE]->OFFERED]Request: redirect

(8501, REDIRECT_NORMAL, DEFAULT_SEARCH_SPACE, CALLED_ADDRESS_UNCHANGED,

REDIRECT,8501,null,REDIRECT_WITHOUT_MODIFIED_CALLING_PARTY,1)

12:46:00.430 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10)

[SS_TEL_ROUTE_CALL_EV] sending: com.cisco.cti.protocol.CallRedirectRequest {

callLegID                    = 25626132

redirectAddress              = 8501

unconditional                = false

redirectReason               = 0

preferredOriginalCalledParty = 8501

}

Nova chamada para a porta CTI

12:46:00.460 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Event: com.cisco.cti.protocol.NewCallEvent {

deviceName                        = cue_ctiport1

callLegID                         = 25626133

callID                            = 9040

callingParty                      = 3001

calledParty                       = 8501

originalCalledParty               = 8000

reason                            = 6

lastRedirectingParty              = 8000

callingPartyDeviceName            = SEP0023331C29EC

}

12:46:00.463 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Event: com.cisco.cti.protocol.CallStateChangedEvent {

callLegID                         = 25626133

state                             = 2

}

12:46:00.464 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Response: com.cisco.cti.protocol.CallRedirectResponse {

result         = 0

}

12:46:00.468 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Event: com.cisco.cti.protocol.CallStateChangedEvent {

callLegID                         = 25626132

state                             = 1

farEndpointSpecified              = true

fwdDestinationAddress             =

reason                            = 68501

callingParty                      = 3001

callingPartyName                  = Ext 3001 - Phone

calledParty                       = 8000 }

12:46:00.481 %JTAPI-JTAPIIMPL-7-UNK:{(P1-tacjtapiuser) GCID=(1,9040)->ACTIVE}

Initializing to OFFERING for 8501:cue_pt Cause=CAUSE_REDIRECTED Reason= 6

12:46:00.481 %JTAPI-JTAPIIMPL-7-UNK:{(P1-tacjtapiuser) GCID=(1,9040)->ACTIVE}

Received a redirected call -- lastRedAddress is 8000

12:46:00.487 %JTAPI-CTI-7-UNK.(P1-tacjtapiuser){Line:cue_ctiport1:8501:cue_pt.

(1,24)|Call:[GCID=(9040/1),CID=25626133]} CallStateChanged [ state=OFFERING

cause=NOERROR]

12:46:00.489 %JTAPI-CTI-7-UNK.(P1-tacjtapiuser){Line:cue_vm_ctirp:8000:cue_pt.

(1,28)|Call:[GCID=(9040/1),CID=25626132]} CallStateChanged [ state=IDLE cause=

NOERROR destType=IN_CLUSTER destCM=1 fwdDestination=8501]

Porta CTI aceita chamada redirecionada

12:46:00.490 %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser)[SS_TEL_CALL_CONN_OFFERED:8501]

[[8501:cue_pt/(P1-tacjtapiuser) GCID=(1,9040)->ACTIVE]->OFFERED]Request: accept()

12:46:00.491 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_CALL_

CONN_OFFERED:8501] sending: com.cisco.cti.protocol.CallAcceptRequest {

callLegID            = 25626133

}

12:46:00.495 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Response:

com.cisco.cti.protocol.CallAcceptResponse {

result         = 0

}

12:46:00.498 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Event:

com.cisco.cti.protocol.CallStateChangedEvent {

callLegID                         = 25626133

state                             = 3

12:46:00.499 %JTAPI-CTI-7-UNK.(P1-tacjtapiuser){Line:cue_ctiport1:8501:cue_pt.

(1,24)|Call:[GCID=(9040/1),CID=25626133]} CallStateChanged [ state=ACCEPTED

cause=NOERROR]

12:46:00.502 %JTAPI-JTAPIIMPL-7-UNK.(P1-tacjtapiuser) Terminal "cue_ctiport1"

in service

12:46:00.503 %JTAPI-JTAPIIMPL-7-UNK:{(P1-tacjtapiuser) GCID=(1,9040)->ACTIVE}

Handling

External STATE_RINGBACK for 3001:cue_pt

12:46:00.517 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10)

[ENG_TASK:0x98bca5a08_voicebrowser.aef] sending:

com.cisco.cti.protocol.CallAnswerRequest {

callLegID            = 25626133

}

12:46:00.522 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Response:

com.cisco.cti.protocol.CallAnswerResponse {

result         = 0

}

12:46:00.530 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Event:

com.cisco.cti.protocol.CallStateChangedEvent {

callLegID                         = 25626133

state                             = 8

Negociação de mídia

12:46:00.531 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Event:

com.cisco.cti.protocol.DeviceCallOpenLogicalChannelEvent {

callLegID             = 25626133

compressionType       = 4

}

12:46:00.531 %JTAPI-CTI-7-UNK.(P1-tacjtapiuser){Line:cue_ctiport1:8501:

cue_pt.(1,24)|Call:[GCID=(9040/1),CID=25626133]} CallStateChanged

[ state=CONNECTED cause=NOERROR]

12:46:00.537 %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser)[SS_TEL_OPEN_LOGICAL_CHANNEL:

8501][cue_ctiport1]

Request: setRTPParams(CiscoRTPParams192.168.105.224/16384)

12:46:00.537 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_OPEN_

LOGICAL_CHANNEL:8501] sending:

com.cisco.cti.protocol.DeviceSetRTPForCallRequest {

callLegID         = 25626133

ipAddress         = -529946432

rtpPortNumber     = 16384

}

12:46:00.540 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Response:

com.cisco.cti.protocol.DeviceSetRTPForCallResponse {

result         = 0

}

12:46:00.591 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Event:

com.cisco.cti.protocol.StartReceptionEvent {

callLegID              = 25626133

ipAddr                 = -529946432

rtpPortNumber          = 16384

compressionType        = 4

}

12:46:00.596 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Event:

com.cisco.cti.protocol.StartTransmissionEvent {

callLegID              = 25626133

ipAddr                 = -1167415104

rtpPortNumber          = 22668

compressionType        = 4

}

Desconexão de Chamada

12:46:09.438 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Event:

com.cisco.cti.protocol.StopReceptionEvent {

callLegID           = 25626133

}

12:46:09.438 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Event:

com.cisco.cti.protocol.StopTransmissionEvent {

callLegID           = 25626133

}

12:46:09.441 %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Event:

com.cisco.cti.protocol.CallStateChangedEvent {

callLegID                         = 25626133

state                             = 1

cause                             = 16

12:46:09.443 %JTAPI-CTI-7-UNK.(P1-tacjtapiuser){Line:cue_ctiport1:8501:

cue_pt.(1,24)|Call:[GCID=(9040/1),CID=25626133]} CallStateChanged

[ state=IDLE cause=NORMALCALLCLEARING]

Sinalização de MWI Ligado/Desligado

CUE ativa a lâmpada MWI para a linha 3001

12:46:02.714 CST %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser)[Thread-88][8501:cue_pt]

Request:

setMessageWaiting ( 3001,true )

12:46:02.714 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [Thread-88]

sending: com.cisco.cti.protocol.LineSetMessageWaitingRequest {

sequenceNumber    = 57

lineName          = 3001

lampMode          = 2

}

12:46:02.718 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Response: com.cisco.cti.protocol.LineSetMessageWaitingResponse {

sequenceNumber    = 57

result            = 0

}

Número DTMF discado '3' para excluir a mensagem da caixa de correio

12:55:52.145 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Event:

com.cisco.cti.protocol.DtmfEvent {

eventSequence     = 70

callLegID         = 25626160

digit             = 3

}

12:55:52.145 CST %JTAPI-CTIIMPL-7-UNK.(P1-192.168.100.10) EventThread handling

event com.cisco.cti.protocol.DtmfEvent[70]

12:55:52.146 CST %JTAPI-CTI-7-UNK.(){Line:cue_ctiport1:8501:cue_pt.(1,64)|Call:

[GCID=(9047/1),CID=25626160]}

DTMF [digit=3]

CUE desliga a lâmpada MWI para a linha 3001

12:55:52.209 CST %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser)[Thread-86][8501:cue_pt]

Request: setMessageWaiting ( 3001,false )

12:55:52.209 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [Thread-86] sending:

com.cisco.cti.protocol.LineSetMessageWaitingRequest {

sequenceNumber    = 62

lineName          = 3001

lampMode          = 1

}

12:55:52.212 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Response:

com.cisco.cti.protocol.LineSetMessageWaitingResponse {

sequenceNumber    = 62

result            = 0

}

Logs CCN em tempo real

(Saídas dos registros CCN em tempo real)

É assim que a mesma chamada do exemplo anterior aparece aqui quando os registros CCN em tempo real são coletados.

Configuração de chamada

12:46:00.425 ACCN TELS 0  assigned STANDARD-worker-8

12:46:00.425 ACCN TELS 0 Route Connection=[8000:cue_pt/(P1-tacjtapiuser) GCID=

(1,9040)->ACTIVE]->OFFERED, reason=1...

12:46:00.426 ACCN TELS 0 Call.received() JTAPICallContact[id=7,type=Cisco JTAPI

Call,implId=9040/1,active=true,state=CALL_RECEIVED,inbound=true...

12:46:00.429 ACCN TELS 0 Route Connection: [8000:cue_pt/(P1-tacjtapiuser)

GCID=(1,9040)->ACTIVE]->OFFERED, CTI Port selected: TP[id=0,implId=8501,

state=IN_USE]

12:46:00.429 ACCN TELS 0 RouteCallObserver.callChangedEvent: redirecting to

8501, css=default

12:46:00.480 ACCN TELS 0 Call.associated() JTAPICallContact[id=7,type=Cisco

JTAPI Call,implId=9040/1,active=true,state=CALL_RECEIVED,

12:46:00.480 ACCN TELS 0 Route Connection: [8000:cue_pt/(P1-tacjtapiuser)

GCID=(1,9040)->ACTIVE]->OFFERED has 1 current sessions active.

12:46:00.484 ACCN TELS 0 CallID: 7, MediaID: 9040/1 CallCtlConnOfferedEv

received for CTI Port: 8501, lastRedirectedAddress: 8000

12:46:00.490 ACCN TELS 0  assigned STANDARD-worker-9

12:46:00.490 ACCN TELS 0 Route TR[num=8000], event=(P1-tacjtapiuser) 9040/1

CallCtlConnDisconnectedEv 8000:cue_pt [#108] Cause:100 CallCtlCause:0

CiscoCause:0 CiscoFeatureReason:6, cause=CAUSE_NORMAL[100],

meta=META_CALL_REMOVING_PARTY[131]

12:46:00.499 ACCN TELS 0 CallID: 7, MediaID: 9040/1 Accepting call for CTI

Route Point: 8000 on CTI Port: 8501, ciscoCause=31

12:46:00.501 ACCN TELS 0 Call.accepted() JTAPICallContact[id=7,type=Cisco

JTAPI Call,implId=9040/1,active=true,state=CALL_RECEIVED...

12:46:00.501 ACCN TELS 0 CallID:7 MediaId:9040/1, TerminalConnection to

Terminal: cue_ctiport1 is RINGING, [8501:cue_pt/(P1-tacjtapiuser)

GCID=(1,9040)->ACTIVE]->ALERTING

12:46:00.504 ACCN TELS 0 CallID:7 MediaId:9040/1 com.cisco.jtapi.

CiscoTermInServiceEvImpl received

12:46:00.504 ACCN TELS 0 TR[num=8000] Get TriggerMap[] return:

{secondaryDialogGroup=0, primaryDialogGroup=0}

12:46:00.513 ACCN TELS 0 Call.attributed() JTAPICallContact[id=7,type=Cisco

JTAPI Call,implId=9040/1,active=true,state=CALL_RECEIVED,...

12:46:00.513 ACCN TELS 0 CallID:7 MediaId:9040/1 Task:41000000008 associated

with Task ID: 41000000008

12:46:00.533 ACCN TELS 0 CallID:7 MediaId:9040/1 Task:41000000008,

TerminalConnection to Terminal:cue_ctiport1 is ACTIVE

12:46:00.534 ACCN TELS 0 Call.answered() JTAPICallContact[id=7,type=

Cisco JTAPI Call,implId=9040/1,active=true,state=CALL_ANSWERED,...

12:46:00.536 ACCN TELS 0 CallID:7 MediaId:9040/1 Task:41000000008

com.cisco.jtapi.CiscoMediaOpenLogicalChannelEvImpl received

12:46:00.593 ACCN TELS 0 CallID:7 MediaId:9040/1 Task:41000000008

com.cisco.jtapi.CiscoRTPInputStartedEvImpl received

12:46:00.597 ACCN TELS 0 CallID:7 MediaId:9040/1 Task:41000000008

com.cisco.jtapi.CiscoRTPOutputStartedEvImpl received

Desconexão de Chamada

12:46:09.442 ACCN TELS 0 CallID:7 MediaId:9040/1 Task:41000000008

com.cisco.jtapi.CiscoRTPInputStoppedEvImpl received

12:46:09.443 ACCN TELS 0 CallID:7 MediaId:9040/1 Task:41000000008

com.cisco.jtapi.CiscoRTPOutputStoppedEvImpl received

12:46:09.447 ACCN TELS 0 CallID:7 MediaId:9040/1 Task:41000000008

gets TermConnDroppedEv, meta code:132, cause code:100

12:46:09.447 ACCN TELS 0 CallID:7 MediaId:9040/1 Task:41000000008,

TerminalConnection to Terminal: cue_ctiport1 is DROPPED, 9040/1

12:46:09.448 ACCN TELS 0 CallID:7 MediaId:9040/1 is removed from call session

mapping in Session[id=0x60db88402,parent=null,active=true,state=SESSION_IN_USE,

time=1354733160426], result:true

12:46:09.466 ACCN TELS 0 Call.abandoned() JTAPICallContact[id=7,type=Cisco

JTAPI Call,implId=9040/1,active=false,state=CALL_DISCONNECTED,...

12:46:09.466 ACCN TELS 0 CallID:7 MediaId:9040/1 Task:41000000008, released TP

[type=Cisco CTI Port,id=0,implId=8501,active=false,state=IDLE] from 8000, and

releasing udpPort 16384

12:46:09.467 ACCN TELS 0 CallID:7 MediaId:9040/1 Task:41000000008

com.cisco.jtapi.TermObservationEndedEvImpl received

Solucionando problemas de estudos de caso

Problemas de conectividade

Nesse cenário, as portas e acionadores CUE não se registram no CUCM devido à falta de conectividade entre o CUE e o CUCM.

CUE# show log name CiscoJtapi1.log tail

!! or show log name CiscoJtapi2.log tail

456: 13:20:28.331 CDT %JTAPI-MISC-7-UNK.(P20-) started preloading classes

457: 13:20:28.331 CDT %JTAPI-MISC-7-UNK.(P20-) finished preloading classes

461: 13:20:28.331 CDT %JTAPI-CTI-7-UNK.(P20-) EventThread queue size

threshold is 25

462: 13:20:28.331 CDT %JTAPI-CTI-7-UNK.(P20-) Provider retry interval is set

to 30 seconds

463: 13:20:28.331 CDT %JTAPI-CTI-7-UNK.(P20-) Client desired server heartbeat

time is set to 30 seconds

464: 13:20:28.331 CDT %JTAPI-CTI-7-UNK.(P20-) CTI request timeout is is set to

30 seconds

465: 13:20:28.331 CDT %JTAPI-CTI-7-UNK.(P20-) Provider open request timeout

is set to 200 seconds

467: 13:20:28.331 CDT %JTAPI-CTI-7-UNK.(P20-) Provider Reconnect attempts is

set to 0

468: 13:20:28.331 CDT %JTAPI-CTI-7-UNK.(P20-) JAVA Socket Connect Timeout is

set to 15 seconds

469: 13:20:28.332 CDT %JTAPI-CTIIMPL-7-UNK.(P20-) Provider.info(CCMEncryption:

:encryptPassword was successful)

471: 13:20:28.334 CDT %JTAPI-JTAPIIMPL-7-UNK.ProviderImpl(): calling

jtapiProperties.getSecurityPropertyForInstance()

472: 13:20:28.334 CDT %JTAPI-JTAPIIMPL-7-UNK.(P20-tacjtapiuser   ) TraceModule:

JTAPI version Cisco Jtapi version 7.0(1.1000)-1 Release

473: 13:20:28.334 CDT %JTAPI-JTAPIIMPL-7-UNK.(P20-tacjtapiuser   ) Route Select

Timeout is 5000 msecs

474: 13:20:28.335 CDT %JTAPI-JTAPIIMPL-7-UNK.(P20-tacjtapiuser   ) Jtapi post

condition timeout is set to 15 seconds

476: 13:20:28.335 CDT %JTAPI-CTIIMPL-7-UNK.(P20-tacjtapiuser   ) Opening server

"192.168.100.10" login "tacjtapiuser   "

477: 13:20:28.335 CDT %JTAPI-CTIIMPL-7-UNK.(P20-tacjtapiuser   ) ProviderID =

P20-tacjtapiuser  478: 13:20:28.337 CDT %JTAPI-CTIIMPL-7-UNK.(P20-tacjtapiuser   )

Trying to create normal socket connection to 192.168.100.10

479: 13:20:38.338 CDT %JTAPI-JTAPI-7-UNK:[DefaultJtapiPeer]PlatformExceptionImpl

caught:

Unable to create provider --

Note: Os segundos de carimbo de data/hora vão de 13:20:28 às 13:20:38; portanto, podemos dizer que o CUE não conseguiu abrir o soquete TCP por 10 segundos antes do reconhecimento de incapacidade de criar o provedor.

Problemas de autenticação

Nesse cenário, as portas e os disparadores CUE não conseguem se registrar no CUCM porque as senhas configuradas entre o CUE e o CUCM não correspondem.

Log do CCN

CUE# show trace buffer tail

Press CTRL-C to exit...

140053.173 ACCN TELS 0 TAPIPortGroup Leaving getActiveCCM(), retvalnull

140123.184 ACCN TELS 0 TAPIPortGroup Enter getActiveCCM()

140123.184 ACCN TELS 0 TAPIPortGroup getActiveCCM() subsystemstate3

140123.184 ACCN TELS 0 TAPIPortGroup getActiveCCM() subsystemJTAPI is not

inservice or partial service

140123.184 ACCN TELS 0 TAPIPortGroup Leaving getActiveCCM(), retvalnull

atrace.log

14:12:18.681 ACCN TELS 0 JTAPI_PROVIDER_EVENT:JTAPI Provider state is changed:

JTAPI provider name=192.168.100.10,Event=ProvShutdownEv received

14:12:18.682 ACCN TELS 0 SS_LOGIN:JTAPI Login String: Module=JTAPI Subsystem,

JTAPI login string=192.168.100.10;login=tacjtapiuser   ;passwd=****;appinfo=

Cisco IP IVR

14:12:18.682 ACCN TELS 0 PROVIDER_CLEANUP:Cleaning up JTAPI provider:

Module=JTAPI Subsystem,JTAPI provider name=192.168.100.10

14:12:18.682 ACCN TELS 0 TAPIPortGroup 1 getNumPorts() for Cisco CTI Port = 2

14:12:18.682 ACCN TELS 0 TPG[id=1,state=PARTIAL_SERVICE] removeRoute() -

TR[num=9500]

14:12:18.682 ACCN TELS 0 TPG[id=1,state=PARTIAL_SERVICE] removeRoute() -

TR[num=9000]

14:12:18.682 ACCN TELS 0 MwiAddress.clear: [addrStr=, addr=null, inService=false,

isRegistered=false]

14:12:18.682 ACCN TELS 0 MwiAddress.unregister: [addrStr=, addr=null,

inService=false, isRegistered=false]

14:12:18.682 ACCN TELS 0 TAPIPortGroup 1 getNumPorts() for Cisco CTI Port = 0

14:12:18.682 ACCN TELS 0 Number of CTI ports = 0

14:12:18.682 ACCN TELS 0 calculateSubsystemState

14:12:18.682 ACCN TELS 0 TPG[id=1,state=PARTIAL_SERVICE] Triggers: ISV = 0,

OOS = 0, PARTIAL = 0

14:12:18.682 ACCN TELS 0 TAPIPortGroup 1 getNumPorts() for Cisco CTI Port = 0

14:12:18.682 ACCN TELS 0 calculateSubsystemState -> Groups: ISV = 0, OOS = 0,

PARTIAL/OTHERS = 1

14:12:18.682 ACCN TELS 0 calculateSubsystemState -> Triggers: ENABLED = 0,

DISABLED = 2, CONFIG ERR = 0

14:12:18.682 ACCN TELS 0 calculateSubsystemState -> subsystem partial in

service, unchanged cause:

A number of route points are OOS - TR[num=9000], TR[num=9500]; A number of

CTI ports are OOS - TPG[id=1,state=PARTIAL_SERVICE].Ports[9590]

14:12:18.689 ACCN TELS 0 SS_PARTIAL_SERVICE:JTAPI subsystem in partial service:

Failure reason=A number of route points are OOS - TR[num=9000], TR[num=9500];

A number of CTI ports are OOS - TPG[id=1,state=PARTIAL_SERVICE].Ports[9590]

14:12:18.689 ACCN TELS 0 GET_NEW_PROVIDER:Attempt to get JTAPI provider

14:12:18.693 ACCN TELS 0 Calling updateJTAPIPackage: 192.168.100.10

Module=JTAPI_PROVIDER_INIT,Exception=com.cisco.jtapi.PlatformExceptionImpl:

Unable to create provider

-- bad login or password.

14:12:18.828 ACCN TELS 0 EXCEPTION:com.cisco.jtapi.PlatformExceptionImpl:

Unable to create provider

-- bad login or password.

CiscoJtapi1.log / CiscoJtapi2.log

6318: 14:22:26.653 CDT %JTAPI-CTIIMPL-7-UNK.(P62-tacjtapiuser   ) Trying to

create normal socket connection to 192.168.100.10

6319: 14:22:26.654 CDT %JTAPI-CTIIMPL-7-UNK.(P62-tacjtapiuser   ) connected

6321: 14:22:26.654 CDT %JTAPI-PROTOCOL-7-UNK.(P62-192.168.100.10)

[SS_TEL_REINIT] sending: com.cisco.cti.protocol.ProviderOpenRequest {

provider                   = 192.168.100.10

qbeClientVersion           = Cisco JTAPI 7.0(1.1000)-1 Release

login                      = com.cisco.cti.protocol.UnicodeString {

unicodedisplayName = tacjtapiuser

}

filter                     = com.cisco.cti.protocol.ProviderEventFilter {

deviceRegistered         = true

deviceUnregistered       = true

desiredServerHeartbeatTime = 30

}

6331: 14:22:26.781 CDT %JTAPI-PROTOCOL-7-UNK(P62-192.168.100.10)

received Event: com.cisco.cti.protocol.ProviderOpenCompletedEvent {

eventSequence       = 251

reason              = -1932787616

providerInfoString  = 7.1.2.21900-5

failureDescription  = Directory login failed - authentication failed.

providerId          = 16777255

}

6333: 14:22:26.781 CDT %JTAPI-PROTOCOL-7-UNK.(P62-192.168.100.10)

received Event: com.cisco.cti.protocol.ProviderClosedEvent {

eventSequence = 252

reason        = 4

}

6338: 14:22:26.781 CDT %JTAPI-PROTOCOL-7-UNK.(P62-192.168.100.10)

Received ProviderClosedEvent

6339: 14:22:26.781 CDT %JTAPI-PROTOCOL-7-UNK.(P62-192.168.100.10)

received Event: com.cisco.cti.protocol.ProviderOutOfServiceEvent {

eventSequence                 = 253

PROVIDER_OUT_OF_SERVICE_EVENT = 200

}

6343: 14:22:26.782 CDT %JTAPI-JTAPI-7-UNK:[DefaultJtapiPeer]

PlatformExceptionImpl caught: Unable to create provider -- bad login or password.

6344: 14:22:26.881 CDT %JTAPI-CTIIMPL-7-UNK.(P62-192.168.100.10) ReceiveThread:

caught java.net.SocketException: The socket was closed

Usuário não habilitado para CTI

Neste cenário, as portas e acionadores CUE não conseguem se registrar no CUCM porque o usuário do aplicativo JTAPI não foi adicionado ao grupo de permissão CTI padrão habilitado no lado do CUCM. Portanto, mesmo quando as credenciais do usuário são autenticadas de acordo, o usuário JTAPI, tacjtapiuser, nesse caso, não pode controlar nenhum dispositivo por meio de CTI e JTAPI.

CiscoJtapi1.log / CiscoJtapi2.log

11590:14:41:08.768 CDT %JTAPI-PROTOCOL-7-UNK.(P115-192.168.100.10)

[ProviderRetryThread] sending:

com.cisco.cti.protocol.ProviderOpenRequest {

provider                   = 192.168.100.10

qbeClientVersion           = Cisco JTAPI 7.0(1.1000)-1 Release

login                      = com.cisco.cti.protocol.UnicodeString {

unicodedisplayName = tacjtapiuser

}

applicationID              = Cisco IP IVR

desiredServerHeartbeatTime = 30

requestTimer               = 0

cmAssignedApplicationID    = 0

pluginName                 = CiscoJTAPI

}

11593:14:41:08.770 CDT %JTAPI-PROTOCOL-7-UNK.(P115-192.168.100.10)

received Response: com.cisco.cti.protocol.ProviderOpenResponse {

sequenceNumber     = 117

result             = 0

providerInfoString = 7.1.2.21900-5

clientHeartbeat    = 30

serverHeartbeat    = 30

requestTimer       = 5

pluginVersion      = 7.1.2.10000-5

pluginLocation     = http://192.168.100.10/plugins/

providerId         = 16777220

}

11600: 14:41:08.899 CDT %JTAPI-PROTOCOL-7-UNK.(P115-192.168.100.10)

received Event: com.cisco.cti.protocol.ProviderOpenCompletedEvent {

eventSequence       = 461

reason              = -1932787617

sequenceNumber      = 117

failureDescription  = Directory login failed - User not present in Standard

CTI Users group.

providerId          = 16777220

}

11608:14:41:08.900 CDT %JTAPI-PROTOCOL-7-UNK.(P115-192.168.100.10)

received Event:

com.cisco.cti.protocol.ProviderOutOfServiceEvent {

eventSequence                 = 463

PROVIDER_OUT_OF_SERVICE_EVENT = 200

}

O serviço CUCM CTI Manager está inativo

Neste cenário, as portas e acionadores CUE não podem se registrar porque o CUCM CTI Manager Service está inoperante ou com status anormal. Ele recebe um erro "conexão recusada" para a tentativa de conexão do CUE à porta TCP JTAPI 2748.

18956: 16:25:45.516 CDT %JTAPI-CTIIMPL-7-UNK.(P200-) Provider.

info(CCMEncryption::encryptPassword was successful)

18957: 16:25:45.516 CDT %JTAPI-CTIIMPL-7-UNK.(P200-) application did

not set appinfo, creating default

18958: 16:25:45.516 CDT %JTAPI-JTAPIIMPL-7-UNK.ProviderImpl(): calling

jtapiProperties.getSecurityPropertyForInstance()

18959: 16:25:45.516 CDT %JTAPI-JTAPIIMPL-7-UNK.(P200-tacjtapiuser   )

TraceModule: JTAPI version Cisco Jtapi version 7.0(1.1000)-1 Release

18960: 16:25:45.516 CDT %JTAPI-JTAPIIMPL-7-UNK.(P200-tacjtapiuser   )

Route Select Timeout is 5000 msecs

18961: 16:25:45.516 CDT %JTAPI-JTAPIIMPL-7-UNK.(P200-tacjtapiuser   )

Jtapi post condition timeout is set

to 15 seconds

18962: 16:25:45.516 CDT %JTAPI-JTAPIIMPL-7-UNK.(P200-tacjtapiuser   )

IgnoreFwdDestination

set to false

18963: 16:25:45.516 CDT %JTAPI-CTIIMPL-7-UNK.(P200-tacjtapiuser   )

Opening server "192.168.100.10" login "tacjtapiuser   "

18964: 16:25:45.516 CDT %JTAPI-CTIIMPL-7-UNK.(P200-tacjtapiuser   )

ProviderID = P200-tacjtapiuser

18965: 16:25:45.517 CDT %JTAPI-CTIIMPL-7-UNK.(P200-tacjtapiuser   )

Trying to create normal socket connection to 192.168.100.10

18966: 16:25:45.518 CDT %JTAPI-JTAPI-7-UNK:[DefaultJtapiPeer]

PlatformExceptionImpl caught:

Unable to create provider -- 192.168.100.10/192.168.100.10:2748 -

Connection refused

Incompatibilidade de configuração

Neste cenário, o CUE não pode registrar o disparador JTAPI com o número 9999 porque o CTI RP correspondente não está configurado ou não foi adicionado aos "dispositivos controláveis" para o usuário no lado do CUCM. O CUE percebe isso depois de receber o GetDeviceInfoFetchResponse do CUCM e percebe que não há um dispositivo no domínio do provedor, que se refere a todos os dispositivos controláveis por esse usuário, o que corresponderia ao número do acionador configurado localmente. O CUE então não tenta enviar um DeviceOpenRequest para esse disparador específico e, em vez disso, informa somente a exceção nos rastreamentos. O CUE ainda tenta registrar todos os outros dispositivos que estão dentro do domínio do provedor enviados pelo CUCM.

13:27:58.864 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Response:

com.cisco.cti.protocol.GetDeviceInfoFetchResponse {

com.cisco.cti.protocol.DeviceInfo {

name               = cue_vm_ctirp

}

13:27:58.960 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.DeviceGetLineInfoRequest {

deviceName     = cue_vm_ctirp

}

13:27:58.962 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.GetLineInfoFetchRequest

13:27:58.964 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Response:

com.cisco.cti.protocol.GetLineInfoFetchResponse{

name                      = 8000

}

13:27:58.966 CST %JTAPI-CTI-7-UNK(P1-tacjtapiuser) DeviceMap: adding device

"cue_vm_ctirp"

13:27:59.427 CST %JTAPI-JTAPI-7-UNK: InvalidArgumentExceptionImpl caught:

Address 9999 is not in provider's domain.

Note: Mesmo quando o disparador 999 é configurado localmente no CUE, ele não faz parte do domínio do provedor recebido do CUCM e, portanto, não é registrado.

O CUE continua a abrir a linha 8000; que está incluído no domínio do provedor

13:28:00.953 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.DeviceOpenRequest {

deviceName            = cue_vm_ctirp

13:28:00.979 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.LineOpenRequest {

deviceName       = cue_vm_ctirp

lineName         = 8000

13:28:00.983 CST %JTAPI-JTAPIIMPL-7-UNK:cue_vm_ctirp: Lines opened

13:28:00.997 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.DeviceRegisterDeviceRequest

deviceName                = cue_vm_ctirp

13:28:01.000 CST %JTAPI-CTI-7-UNK.(P1-tacjtapiuser) DeviceMap: opening device

"cue_vm_ctirp"

13:28:01.001 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) [SS_TEL_INIT]

sending: com.cisco.cti.protocol.LineOpenRequest {

lineName         = 8000

13:28:01.012 CST %JTAPI-JTAPIIMPL-7-UNK:cue_vm_ctirp: Lines opened

13:28:01.164 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Event:

com.cisco.cti.protocol.DeviceRegisteredEvent {

13:28:01.165 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Event:

com.cisco.cti.protocol.DeviceInServiceEvent {

13:28:01.166 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received Event:

com.cisco.cti.protocol.LineInServiceEvent {

13:28:01.168 CST %JTAPI-JTAPIIMPL-7-UNK.(P1-tacjtapiuser) Terminal

"cue_vm_ctirp" in service

Problema de roteamento de chamada CUCM

Neste cenário, o usuário com DN 3001 chama o CUE para verificar sua VM. A chamada é apresentada ao piloto de VM (CTI RP) do CUE com DN 8000. Em seguida, o CUE solicita que a chamada seja redirecionada para sua porta CTI de mídia com DN 8501, mas a chamada não é redirecionada porque o CSS configurado para DN 3001 não tem acesso ao PT onde o DN da porta CTI é atribuído.

12:56:01.392 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Event: com.cisco.cti.protocol.NewCallEvent {

deviceName                        = cue_vm_ctirp

callLegID                         = 25626135

callID                            = 9041

callingParty                      = 3001

calledParty                       = 8000

originalCalledParty               state                             = 2

}

12:56:01.404 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10)

[SS_TEL_ROUTE_CALL_EV] sending: com.cisco.cti.protocol.CallRedirectRequest {

callLegID                    = 25626135

redirectAddress              = 8501

}

12:56:01.397 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Event: com.cisco.cti.protocol.CallStateChangedEvent {

callLegID                         = 25626135

state                             = 2

}

12:56:01.450 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Response: com.cisco.cti.protocol.FailureResponse {

result         = -1932787660

description    = redirect failure

}

12:56:01.450 CST %JTAPI-JTAPI-7-UNK:[[8000:cue_pt/(P1-tacjtapiuser)

GCID=(1,9041)->ACTIVE]->OFFERED]InvalidPartyExceptionImpl caught:

Request failed because of an invalid destination.

12:56:05.456 CST %JTAPI-PROTOCOL-7-UNK.(P1-192.168.100.10) received

Event: com.cisco.cti.protocol.CallStateChangedEvent {

callLegID                         = 25626135

state                             = 1

cause                             = 17

}

12:56:05.456 CST %JTAPI-CTI-7-UNK.(P1-tacjtapiuser){Line:cue_vm_ctirp:

8000:cue_pt.(1,28)|Call:[GCID=(9041/1),CID=25626135]}CallStateChanged

[ state=IDLE cause=USERBUSY]

12:56:05.457 CST %JTAPI-CTI-7-UNK:{ALL EXTERNAL ADDRESSES|Call(P1-tacjtapiuser)

GCID=(1,9041)->ACTIVE} ExternalCallStateChanged

[ state=IDLE cause=17 processEvent= reason =1 ]

12:56:05.457 CST %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser) 9041/1 ConnDisconnectedEv

3001:cue_pt [#160]

Cause:17 CallCtlCause:0 CiscoCause:17 CiscoFeatureReason:12

12:56:05.457 CST %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser)[(P1-192.168.100.10)

EventThread][SEP0023331C29EC] Request: getCallingTerminal()

12:56:05.457 CST %JTAPI-JTAPI-7-UNK.(P1-tacjtapiuser) 9041/1

CallCtlConnDisconnectedEv 3001:cue_pt [#161] Cause:17 CallCtlCause:0

CiscoCause:17 CiscoFeatureReason:12= 8000

Problemas de licença

Neste cenário, o CUE não pode registrar suas portas e acionadores porque as licenças para as portas de VM não foram ativadas. Nenhuma tentativa de registro é vista nas capturas devido ao mesmo motivo.

Resumo do atrace.log decodificado:

2551 11:45:17.178 LLMA LAPI 0 Llama: getMaxVmPortCount():

2547 11:45:17.178 LLMA LVMP 0 LlamaVmPortQuery: get(): maxCount

2551 11:45:17.178 LLMA LSDB 0 Llama: getMaxVmPortCount(): LlamaSysdbUser():

getInt(): Getting int /sw/apps/limitsManager/vmPort/query/maxCount returns 0

2551 11:45:17.178 LLMA LAPI 0 Llama: getMaxVmPortCount(): count: 0

2551 11:45:17.178 WFSP JTRG 0 WFSysdbNdJtapiTrg::getMaxSessions for trigger

for app: voicemail 0

2551 11:45:17.178 WFSP JTRG 0 WFSysdbNdJtapiTrg::commit warning session

value exceeded license max

2551 11:45:17.181 WFSP JTRG 0 com.cisco.aesop.sysdb.xactSysdbException:

Session value exceeds license limit

2551 11:45:19.654 LLMA LVMM 0 LlamaVmMbxQuery: get(): licenseStatus

2575 11:45:19.654 LLMA LSDB 0 Llama: showVoicemail(): LlamaSysdbUser():

getInt(): Getting int /sw/apps/limitsManager/vmMbx/query/licenseStatus returns 2

2575 11:45:19.657 LLMA LLMT 0 voicemail disabled, voicemail mailbox

activation count has been set to zero

3456 11:45:23.114 LLMA LAPI 0 Llama: getMaxPortCount():

2555 11:45:23.114 LLMA LPRT 0 LlamaPortQuery: get(): maxCount

3456 11:45:23.115 LLMA LSDB 0 Llama: getMaxPortCount(): LlamaSysdbUser():

getInt(): Getting int/sw/apps/limitsManager/port/query/maxCount returns 0

3456 11:45:23.115 LLMA LAPI 0 Llama: getMaxPortCount(): count: 0

3456 11:45:28.727 ACCN TELS 0 CueCiscoCall:getMajorVer() jtapi version=

7.0(1.1000)-1  majorVer=7

3456 11:45:28.785 ACCN TELS 0 JTAPI Login Str:

192.168.100.10;login=tacjtapiuser   ;passwd=****;appinfo=Cisco IP IVR

3456 11:45:28.785 ACCN TELS 0 Actual Login Str:

192.168.100.10;login=tacjtapiuser   ;passwd=cisco;appinfo=Cisco IP IVR

3477 11:45:31.330 ACCN TELS 0 Got JTAPI provider: Cisco Jtapi version

7.0(1.1000)-1 Release

3621 11:45:31.338 ACCN TELS 0 JTAPI_PROVIDER_EVENT:JTAPI Provider

state is changed: JTAPI provider name=192.168.100.10,Event=

ProvOutOfServiceEv received

3621 11:45:31.352 ACCN TELS 0 JTAPI_PROVIDER_EVENT:JTAPI Provider state

is changed: JTAPI provider name=192.168.100.10,Event=ProvInServiceEv received

3621 11:45:31.353 ACCN ATJT 0 checkConnectivity:

urlString:http://192.168.100.10/CCMPluginsServer/CiscoJTAPIClient.exe

3477 11:45:34.130 ACCN TELS 0 SS_OUT_OF_SERVICE:JTAPI subsystem in

out of service: Failure reason=A number of route points are OOS; A number of

CTI ports are OOS - all ports in TPG

3751 11:45:48.558 ACCN TELS 0 TAPIPortGroup: getActiveCCM() subsystemJTAPI

is not in service or partial service

Melhores práticas

O CUE suporta apenas o codec G711ulaw; portanto, em quase todas as implantações, é necessário um transcodificador para que o CUE se comunique com outros dispositivos ou troncos que usam codecs diferentes (inclui G711Alaw). O mesmo se aplica ao entrelaçamento de DTMF com dispositivos que suportam somente DTMF em banda onde um recurso de Ponto de Terminação de Mídia (MTP - Media Termination Point) também é necessário. Devido a essas limitações, a Cisco recomenda:

- Crie um pool de dispositivos isolado para uso somente das portas CTI RPs e CTI do CUE. Caso mais de um CUE esteja integrado ao CUCM, crie um pool de dispositivos por CUE.

- Crie uma região separada somente para o RP e as portas do CUE e aplique-a a esse pool de dispositivos isolado.

- Verifique se a região está configurada para permitir somente o G711 com todas as outras regiões.

- Certifique-se de que uma MRGL (Media Resource Group List, Lista de recursos de mídia) com recursos de transcodificação disponíveis seja aplicada ao pool de dispositivos das portas CTI RP e CTI do CUE para que eles tenham acesso a um recurso de transcodificação, quando necessário.

- Se o usuário não puder navegar pelos menus de voz com tons DTMF, é possível que um recurso MTP seja adicionado à MRGL dos dispositivos CUE.

Crie um perfil de VM separado para o CUE no CUCM

Para evitar alguns problemas recentes observados com o CUCM CTI manager, recomenda-se associar todos os telefones ao usuário JTAPI do CUE no lado do CUCM, em vez de apenas os RPs e portas CTI.

Se a funcionalidade Survivable Remote Site Telephony (SRST) for desejada:

- Verifique se o disparador SIP correspondente está configurado para cada disparador JTAPI no CUE.

- Verifique se os peers de discagem foram adicionados ao roteador da filial para permitir que as chamadas sejam roteadas para o módulo CUE por meio do SIP no modo SRST.

- Configure a máscara de número externo de cada um dos pontos de rota CTI, bem como a máscara para o campo CFU (Call Forward Unregistered) no CUCM para garantir que o CUCM roteie as chamadas destinadas para o módulo da filial através do gateway da rede telefônica pública comutada (PSTN) local quando a conectividade entre o CUCM e o CUE tiver sido perdida ou se o roteamento alternativo automatizado (AAR) for chamado. Regras adicionais de conversão podem ser necessárias para que o roteador da filial possa rotear chamadas de entrada do PSTN para o módulo CUE também.

- Se a abordagem de configuração de Transferência direta para VM estiver presente no lado do CUCM e o usuário quiser manter essa funcionalidade enquanto estiver no CME-SRST, você deverá usar o DN fictício antigo com a abordagem de configuração de Desviar todas as chamadas (CFA) que foi usada para o CME antes que a tecla de função TransferToVM se tornasse disponível. Consulte Transferir um chamador diretamente para uma caixa de correio do Unity Express para obter mais informações. Aqui está um exemplo de como isso pode parecer. Lembre-se de que isso só pode ser feito se CME-SRST for usado e não SRST legado com fallback de gerenciador de chamadas.

- Suponha que os DNs estejam no intervalo de 200 a 299.

1. Chamada para o x201.

2. Configure um ephone-dn com este comando:
ephone-dn 99

number 2..

call-forward all <VM Pilot>

3. No correspondente de discagem apontando para CUE:

1. Use uma regra e um perfil de conversão de saída para retirar o asterisco prefixo ("*") e substituir o Serviço de Informações de Número Discado Redirecionar (RDNIS) de volta ao número original de 3 dígitos, por exemplo, 201, ou com o número E.164 completo, caso o número de telefone tenha sido configurado com o DID completo dentro do CUE.

2. Verifique se o cabeçalho de desvio do CONVITE enviado ao CUE corresponde ao número de telefone configurado para o usuário no lado CUE.

Lista de verificação para solução de problemas de registro de porta

1. Verifique a configuração no lado do CUCM:

1. Os serviços da Web CTI Manager, CallManager e Administrative XML (AXL) estão ativados e iniciados?

2. As portas CTI e os pontos de rota foram configurados e atribuídos a um DN exclusivo?

3. O usuário JTAPI CTI está ativado e tem acesso à API AXL?

4. O usuário JTAPI tem controle de todos os pontos de rota e portas CTI?

5. Às vezes, é recomendável reiniciar o serviço CTI Manager em todos os servidores após a configuração ser adicionada. No entanto, isso pode causar impacto no serviço e é aconselhável agendar uma janela de manutenção, pois isso afeta todos os outros dispositivos que usam CTI e JTAPI com o CUCM, como o Unified Contact Center Express (UCCX), o IP Manager Assistant (IPMA), o Console de atendimento, aplicativos AA ou ACD de terceiros e assim por diante.

2. Verifique a configuração no lado do CUE:

1. O agente de chamada está definido como CUCM?

2. As licenças de porta foram habilitadas? As licenças de avaliação são aceitáveis para a configuração inicial.

3. Você consegue fazer ping no CUCM?

4. As credenciais de usuário JTAPI foram adicionadas corretamente e os agentes de chamada foram definidos?

5. O módulo foi recarregado para que as alterações de configuração sejam aplicadas?

6. Se o CTI RP e a porta não forem importados do CUCM automaticamente, tente adicionar manualmente os DNs da porta em jtapi do subsistema ccn, bem como os disparadores jtapi para cada CTI-RP e recarregue o módulo.

Se todos esses itens forem confirmados, sua próxima etapa será obter rastreamentos JTAPI nos rastreamentos CUE e possivelmente CUCM CTI para isolar ainda mais o problema.

Informações Relacionadas

- Configurar e coletar dados de rastreamento no CUE

- Solução de problemas de recursos do sistema Cisco Unity Express

- Exemplo de configuração do CallManager para Cisco Unity Express

- Configuração do perfil de correio de voz CUCM

- Modelos de implantação do Cisco Unity Express

- Práticas recomendadas para implantar o Cisco Unity Express

- Transcodificação de CUCM

- CUCM MTP

- Suporte Técnico e Documentação - Cisco Systems