Compartilhar via


Criar um CTI Desktop Manager

 

Publicado: novembro de 2016

Aplicável a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2013, Dynamics CRM 2015, Dynamics CRM 2016

O componente CTI Desktop Manager é a interface entre o sistema de integração entre telefonia e computador (CTI) e o Unified Service Desk ou User Interface Integration (UII). O componente CTI Desktop Manager cria os dois objetos a seguir que gerenciam coletivamente o estado e os dados em uma chamada:

  • CallStateManager: a classe CtiCallStateManager é usada como a classe base que contém propriedades, métodos e eventos para comunicação com o componente CTI Connector para emitir comandos relacionados ao gerenciamento de chamadas, como atender uma chamada, desligar, colocar em espera e transferir a chamada. Fornece recursos de gerenciamento multichamada e eventos pré-vinculados para Controles de CTI (interface do usuário) aos quais conectar e basear a os pontos de implementação e extensibilidade para personalizações específicas de fornecedor.

  • AgentStateManager: a CtiAgentStateManager é usada como a classe base que contém as propriedades, pois métodos e os eventos para comunicação com o componente CTI Connector relacionado ao gerenciamento de estado de agente (disponibilidade do agente, como disponível, ocupado e ausente). Fornece eventos pré-vinculados para Controles de CTI (interface do usuário) aos quais conectar e basear a os pontos de implementação e extensibilidade para personalizações específicas de fornecedor.

Neste tópico

Defina um componente CTI Desktop Manager

Gerar uma solicitação de pesquisa quando uma chamada chegar

Acessar dados e eventos de chamadas

Habilitar ou desabilitar ações de chamada

Configurar um controle hospedado do CTI Desktop Manager no Unified Service Desk

Defina um componente CTI Desktop Manager

O CTI Desktop Manager implementa as seguintes interfaces:

Você define um componente do CTI Desktop Manager no mesmo projeto de um que usa para definir o Conector CTI usando o modelo do projeto Conector CTI do USD. Para obter mais informações como usar esse modelo, consulte Criar um conector CTI.

Use o arquivo BaseCtiDesktopManagerControl.cs no modelo de projeto do Conector CTI do USD para configurar seu CTI Desktop Manager, e os arquivos AgentStateManager.cs e CallStateManager.cs para configurar estados de chamada e agente Esses arquivos fornecem métodos e instruções pré-vinculados (na forma de comentários) para ajudá-lo a criar um componente do CTI Desktop Manager.

Gerenciar CTI Desktop Manager

Gerar uma solicitação de pesquisa quando uma chamada chegar

Quando chega uma nova chamada, você pode invocar uma solicitação de pesquisa para pesquisar o número ANI (automatic number identification) em um repositório do Microsoft Dynamics 365, obter informações extras – como nome, sobrenome e assim por diante –, e criar uma sessão. A User Interface Integration (UII) fornece a classe CtiLookupRequest, que descreve a solicitação de pesquisa do cliente, que o sistema CTI envia a um provedor de pesquisa do cliente. Essa classe descreve os elementos comuns de dados que o sistema de CTI fornecerá. Também oferece a capacidade de adicionar dados personalizados à solicitação.

A pesquisa de cliente é implementada de acordo se estiver você estiver pesquisando no Unified Service Desk ou no UII:

  • Unified Service Desk: a solicitação de pesquisa é manipulada pelo controle hospedado Global Manager.

  • User Interface Integration (UII): a solicitação de pesquisa é enviada para ICustomerSearch, e você define como quer implementar o controle de pesquisa. Você também pode enviar mais dados à solicitação de pesquisa usando o método AddLookupRequestItem. O UII fornece modelos de projeto para criar um controle de pesquisa do cliente baseado no Windows Forms ou no WPF com a solicitação de pesquisa de CTI pré-vinculada.

Acessar dados e eventos de chamadas

Use a classe CallInfoData para acessar informações sobre uma chamada que esteja em processo no UII desktop (como Unified Service Desk). O exemplo a seguir mostra a sintaxe dessa classe:

CallInfoData calldata = GetCallInfoData(ctiCallRefCallId);

Habilitar ou desabilitar ações de chamada

Use a classe CtiCallActionOptions para habilitar ou desabilitar ações de chamada. O exemplo de código a seguir mostra como usar essa classe para manipular uma chamada.

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);
}

Configurar um controle hospedado do CTI Desktop Manager no Unified Service Desk

Depois de criar o Gerenciador de Desktop de CTI, juntamente com o conector de CTI, você deve configurá-los como controles hospedados no Unified Service Desk. O Unified Service Desk fornece um controle hospedado do tipo Gerenciador de Desktop de CTI , que pode ser usado para configurar o Gerenciador de Desktop de CTI no Unified Service Desk. O CTI Connector deve ser configurado como um controle hospedado do UII.Para obter mais informações:Configurar um controle hospedado para o Conector de CTI no Unified Service Desk

  1. Entre no Microsoft Dynamics 365.

  2. Na barra de navegação, escolha Microsoft Dynamics 365 > Configurações > Unified Service Desk.

  3. Na página do Unified Service Desk, clique em Controles Hospedados.

  4. Na página Controles Hospedados, clique em Novo.

  5. Na página Novo controle hospedado, especifique os seguintes valores:

    Campo

    Valor

    Nome

    Atribua um nome de sua preferência.

    Tipo de Componente do USD

    CTI Desktop Manager

    Grupo de Exibição

    HiddenPanel

    URI do Assembly

    Esse é o nome do arquivo de assembly (.dll) que é integrado à etapa anterior.

    Tipo de Assembly

    Esse é o nome do arquivo de assembly, seguido por um ponto e o nome da classe de seu CTI Connector. Por exemplo, se o nome do assembly for MyCtiManager, e o nome da classe do projeto de CTI for DesktopManager, digite o seguinte valor neste campo: MyCtiManager.DesktopManager.

    Configurar um controle hospedado do Gerenciador de área de trabalho de CTI

  6. Clique em Salvar para criar o controle hospedado.

Importante

Depois de configurar o controle hospedado do CTI Desktop Manager no Unified Service Desk, você deverá configurar:

  • Ações para o controle hospedado do CTI Desktop Manager.Para obter mais informações:Ações compatíveis nas funções de telefonia

  • As regras de navegação de janela para encaminhar solicitações de pesquisa de CTI adequadamente para criar sessões e exibir os resultados da pesquisa em Unified Service DeskPara obter mais informações:Pesquisa de CTI

Confira Também

Configurar o controle hospedado do Gerenciador de Área de Trabalho de CTI para o adaptador de escuta genérica
Criar um conector CTI
Criar um controle CTI
Passo a passo: Usar o adaptador de escuta genérica para o roteamento de eventos CTI
Estrutura UII de integração entre telefonia e computador (CTI)

Unified Service Desk 2.0

© 2017 Microsoft. Todos os direitos reservados. Direitos autorais