Contenido

Introducción

Prerequisites

Requirements

Componentes Utilizados

Problema

Causa raíz

Versiones Afectadas

Consultas CLI para verificación

Solución

Introducción

Este documento describe los efectos que los Caracteres de Control tienen en Cisco Unity Connection (CUC) cuando están presentes en el asunto de un mensaje de voz.

Prerequisites

Requirements

Cisco recomienda que tenga conocimiento del CUC.

Componentes Utilizados

La información de este documento se basa en las versiones 8.X y posteriores de CUC.

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.

Problema

La presencia de Caracteres de Control en la línea de asunto o el encabezado Nombre de Visualización del Remitente de un mensaje interrumpe los intentos del CUC de sincronizar mensajes con Microsoft Exchange Server. Algunos teléfonos antiguos envían ^A como el primer carácter del encabezado Sender Display Name al servidor CUC para crear una acción de mensaje de voz. El servidor CUC dibuja el encabezado del asunto desde el encabezado Sender Display Name, por lo que también contiene el carácter ^A. Esto interrumpe el flujo de mensajería unificada.

Nota: Este problema se documenta con el ID de bug de Cisco CSCur53311.

Causa raíz

La solicitud-respuesta de Exchange Web Service (EWS) se utiliza para sincronizar los mensajes de voz entre el buzón de CUC y Microsoft Exchange Server. Cuando el CUC sincroniza el mensaje de voz que contiene el carácter ^A con el servidor Exchange, envía una línea de asunto con el mismo carácter y el mensaje se guarda correctamente en el buzón de Exchange. El CUC utiliza la solicitud CreateItem EWS para crear el mensaje de voz en el servidor Exchange.

Cuando el CUC intenta buscar elementos a través de la solicitud FindItem de EWS en el buzón de Exchange para cualquier usuario (en este caso, elementos como mensajes de voz con una línea de asunto que contiene el carácter ^A), el servidor de intercambio responde con Inicio de encabezado (SOH) como contenido del asunto (hexadecimal 01 y#x1;).

El CUC utiliza la API simple para el analizador XML (SAX) para analizar el XML de respuesta de EWS. El analizador SAX analiza XML con la gramática definida en XML versión 1.0 (la versión compatible con CUC). El contenido SOH es un carácter XML 1.0 no válido. Cuando el analizador de SAX XML intenta analizar los Caracteres de control, se produce un error fatal y el intento de sincronización no continúa para el resto de los mensajes del buzón.

Versiones Afectadas

Todas las versiones de CUC anteriores a la versión 10.x no tienen una corrección para el Id. de bug Cisco CSCur53311.

Consultas CLI para verificación

Para verificar si hay caracteres de control en el encabezado Sender Display Name o en la línea de asunto, puede utilizar estas consultas CLI:

- Ingrese este comando en la CLI para obtener el número total de mensajes afectados:

run cuc dbquery unitymbxdb1 select count(*) from vw_mailbox as mb, vw_message as m

where mb.mailboxobjectid = m.mailboxobjectid AND left(m.senderdisplayname,1)=CHR(1)
Esta consulta verifica el primer carácter del encabezado Sender Display Name y verifica si es un carácter SOH.

- Ingrese este comando en la CLI para verificar el carácter SOH en cualquier posición de la línea de asunto del mensaje:

run cuc dbquery unitymbxdb1 select count(*) from vw_message where instr

(subject,CHR(1),1)!=0

Consejo: Puede modificar estas consultas para buscar otros caracteres de control o caracteres estándar. Reemplace el valor en CHR() por el valor apropiado. Refiérase a la Tabla de Códigos ASCII  para obtener información adicional.

Solución

El defecto que se describe en el Id. de bug Cisco CSCur53311 se corrige en la Versión 10.5(2) de CUC. Esta versión está disponible para su descarga desde la página web Descarga de Software de Cisco.

Complete estos pasos para una corrección temporal:

1. Asegúrese de que no haya mensajes enviados al servidor CUC con ^A en la línea de asunto.

2. Ingrese este comando en la CLI para obtener una lista de los usuarios afectados, y luego inhabilite la función Single Inbox para ellos:

run cuc dbquery unitymbxdb1 Select description from vw_mailbox mb inner join

vw_message m on mb.mailboxobjectid = m.mailboxobjectid where instr(subject,

CHR(1),1)!=0

3. Elimine manualmente los mensajes de voz identificados:

- Ingrese este comando en la CLI para obtener el ID del objeto de mensaje y el ID del objeto de carpeta de los mensajes afectados:

run cuc dbquery unitymbxdb1 Select messageobjectid, folderobjectid from

vw_messagewithsynch where instr(subject,CHR(1),1)!=0

- Ingrese este comando en la CLI para ejecutar el procedimiento csp_messagesdelete almacenado y eliminar el mensaje de voz en el servidor CUC:

run cuc dbquery unitymbxdb1 execute procedure csp_messagesdelete

(pFolderObjectId='db252856-0c1a-4b19-a476-7ee4f7bc4298', pMessages=

'5d6cfc0e-17cb-4849-b193-e1435a816ad7', pNummessages=1)

4. Identifique estos mensajes en Exchange Server con la ayuda de un administrador de Exchange y elimínelos. Ingrese este comando en la CLI (antes de que se eliminen los mensajes en el CUC):

run cuc dbquery unitymbxdb1 Select sender, senderdisplayname, subject, creationtime,

rfc822messageid from vw_message where instr(subject,CHR(1),1)!=0

Nota: La parte rfc822messageid se utiliza para asignar los mensajes afectados en el buzón CUC a los mensajes en el buzón de Exchange Server.

5. Habilite la mensajería unificada después de que se eliminen todos los mensajes afectados de los servidores CUC y Exchange.