Crear un Administrador del escritorio de CTI
Publicado: noviembre de 2016
Se aplica a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2013, Dynamics CRM 2015, Dynamics CRM 2016
El componente Administrador de escritorio de CTI es la interfaz entre el sistema de integración telefonía informática (CTI) y Unified Service Desk o User Interface Integration (UII). El componente Administrador de escritorio de CTI crea los dos objetos siguientes que administran colectivamente el estado y los datos en una llamada:
CallStateManager: La clase CtiCallStateManager se usa como clase base que contiene propiedades, métodos, y eventos para comunicarse con el componente Conector de CTI para emitir comandos relacionados con la administración de llamadas como contestar llamadas, colgar, retener llamadas y transferir llamadas. Ofrece características de administración de varias llamadas y eventos preconectados para que se conecten los Controles de CTI (interfaz de usuario), y puntos de implementación y extensibilidad base para personalizaciones específicas del proveedor.
AgentStateManager: El CtiAgentStateManager se usa como clase base que contiene propiedades, métodos, y eventos para comunicarse con componente Conector de CTI relacionado con la administración de estados del agente (disponibilidad del agente como disponible, ocupado y ausente). Ofrece eventos preconectados para que se conecten los Controles de CTI (interfaz de usuario), y puntos de implementación y extensibilidad base para personalizaciones específicas del proveedor.
En este tema
Definir un componente Administrador de escritorio de CTI
Realice una solicitud de búsqueda cuando llegue una llamada
Acceder a datos y eventos de llamada
Habilitar o deshabilitar acciones de llamada
Configure el control hospedado Administrador de escritorio de CTI en Unified Service Desk
Definir un componente Administrador de escritorio de CTI
El Administrador de escritorio de CTI implementa las interfaces siguientes:
Defina un componente Administrador de escritorio de CTI en el mismo proyecto que usa para definir el conector de CTI utilizando la plantilla del proyecto Conector USD CTI. Para obtener más información acerca del uso de esta plantilla, vea Crear un conector CTI.
Use el archivo BaseCtiDesktopManagerControl.cs de la plantilla de proyecto Conector USD CTI para configurar el Administrador de escritorio de CTI, y los archivos AgentStateManager.cs y CallStateManager.cs para configurar los estados de llamadas y agentes. Estos archivos proporcionan métodos e instrucciones preconectados (en forma de comentarios) para ayudarle a crear un componente Administrador de escritorio de CTI.
Realice una solicitud de búsqueda cuando llegue una llamada
Cuando llega una nueva llamada, puede invocar una solicitud de búsqueda para consultar el número de identificación automática de número (ANI) en un repositorio de Microsoft Dynamics 365, obtener información adicional, como nombre, apellidos, etc., y crear una sesión.User Interface Integration (UII) proporciona la clase CtiLookupRequest que describe una solicitud de búsqueda de cliente que el sistema CTI envía a un proveedor de búsqueda de clientes. Esta clase describe los elementos de datos comunes que el sistema CTI proporcionará. También proporciona la capacidad de agregar datos personalizados a la solicitud.
La consulta o búsqueda de clientes se implementa en función de si busca en Unified Service Desk o en UII:
Unified Service Desk: La solicitud de búsqueda es administrada por el control hospedado Administrador global.
User Interface Integration (UII): La solicitud de búsqueda se envía a ICustomerSearch, y usted decide cómo desea implementar el control de búsqueda. También puede enviar datos adicionales a la solicitud de búsqueda mediante el método AddLookupRequestItem. UII le proporciona plantillas de proyecto para crear un control de búsqueda de clientes basado en formularios de Windows o en WPF con la solicitud de búsqueda de CTI preconectada.
Acceder a datos y eventos de llamada
Use la clase CallInfoData para tener acceso a información sobre una llamada que está en proceso en el escritorio de UII (como Unified Service Desk). El siguiente ejemplo muestra la sintaxis de esta clase:
CallInfoData calldata = GetCallInfoData(ctiCallRefCallId);
Habilitar o deshabilitar acciones de llamada
Use la clase CtiCallActionOptions para habilitar o deshabilitar acciones de llamadas. El código del siguiente ejemplo muestra cómo usar esta clase para administrar una llamada.
public override void OnCallStateChanged(CtiCoreEventArgs e)
{
CallEventArgs CallArgs = (CallEventArgs)e.EventInfo;
// Set the state of the call in the call list.
CallInfoData calldata = GetCallInfoData(CallArgs.Call.CallID.ToString(CultureInfo.CurrentUICulture));
if (calldata != null)
calldata.CurrentCallState = string.IsNullOrEmpty(CallArgs.State.ToString()) ? string.Empty : CallArgs.State.ToString();
UpdateCallInfoItemEntry(calldata); // update call data..
CtiCallEventArgs args = null;
switch (CallArgs.State)
{
case CallClassProvider.CallState.Connected:
args = new CtiCallEventArgs(calldata.GetCtiCallRefId, CtiCallStates.OFFHOOK, new CtiCallActionOptions());
break;
case CallClassProvider.CallState.Disconnected:
args = new CtiCallEventArgs(calldata.GetCtiCallRefId, CtiCallStates.DISCONNECTED, new CtiCallActionOptions());
break;
case CallClassProvider.CallState.Hold:
args = new CtiCallEventArgs(calldata.GetCtiCallRefId, CtiCallStates.ONHOLD, new CtiCallActionOptions());
break;
case CallClassProvider.CallState.Idle:
args = new CtiCallEventArgs(calldata.GetCtiCallRefId, CtiCallStates.DISCONNECTED, new CtiCallActionOptions());
break;
case CallClassProvider.CallState.Incoming_Call:
args = new CtiCallEventArgs(calldata.GetCtiCallRefId, CtiCallStates.PICKUPPENDING, new CtiCallActionOptions());
break;
case CallClassProvider.CallState.Ringing:
args = new CtiCallEventArgs(calldata.GetCtiCallRefId, CtiCallStates.RINGING, new CtiCallActionOptions());
break;
default:
System.Diagnostics.Trace.WriteLine(ResourceStrings.UNSUPPORTEDEVENT + CallArgs.State.ToString());
break;
}
// Raise status change event.
RaiseCallStateChangeEvent(args);
}
Configure el control hospedado Administrador de escritorio de CTI en Unified Service Desk
Una vez creado el Administrador de escritorio de CTI junto con el conector CTI, debe configurar estos como controles hospedadas en Unified Service Desk.Unified Service Desk proporciona un control hospedado de tipo Administrador de escritorio de CTI que se puede usar para configurar su Administrador de escritorio de CTI en Unified Service Desk. El Conector de CTI se debe configurar como control hospedado UII.Más información:Configure un control hospedado para el conector CTI en Servicios unificados
Inicie sesión en Microsoft Dynamics 365.
En la barra de navegación, elija Microsoft Dynamics 365 > Configuración > Servicios unificados.
En la página Servicios unificados, haga clic en Controles hospedados.
En la página Controles hospedados, haga clic en Nuevo.
En la página Nuevo control hospedado, especifique los siguientes valores:
Campo
valor
Nombre
Asigne el nombre que prefiera.
Tipo de componente de USD
Administrador de escritorio de CTI
Grupo de visualización
HiddenPanel
URI de ensamblado
Este es el nombre del archivo de ensamblado (.dll) que integró en el paso anterior.
Tipo de ensamblado
Este es el nombre del archivo de ensamblado seguido de un punto, y luego el nombre de clase del Control de CTI. Por ejemplo, si el nombre del ensamblado es MyCtiManager, y el nombre de la clase del proyecto CTI es DesktopManager, debe escribir el valor siguiente en este campo: MyCtiManager.DesktopManager.
Haga clic en Guardar para crear el control hospedado.
Importante
Una vez que haya configurado el control hospedados Administrador de escritorio de CTI en Unified Service Desk, debe configurar:
-
Acciones para el control hospedado Administrador de escritorio de CTI.Más información:Acciones compatibles con las capacidades de la telefonía
-
Las reglas de navegación de ventanas para distribuir las solicitudes de búsqueda de CTI adecuadamente para crear sesiones y mostrar los resultados de la búsqueda en Unified Service DeskMás información:Búsqueda de CTI
Ver también
Configure el control hospedado del Administrador de escritorio de CTI para adaptador de escucha genérico
Crear un conector CTI
Crear un control CTI
Tutorial: Uso del adaptador de escucha genérico para enrutamiento de eventos de CTI
Marco de ntegración de telefonía informática (CTI) de la UII
Unified Service Desk 2.0
© 2017 Microsoft. Todos los derechos reservados. Copyright