Compartilhar via


Criar um controle CTI

 

Publicado: novembro de 2016

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

Para gerenciar estados de agente e de chamada, os cenários integração entre telefonia e computador (CTI) precisam dos seguintes controles de IU (interface do usuário):

  • Controle de gerenciamento do estado do agente: exibe o estado atual do agente em uma área de trabalho User Interface Integration (UII) (como Unified Service Desk. Esse controle não precisa ser associado ao sistema CTI, mas permite que você mapeie os estados do agente CTI com o estado atual do agente, que é o estado visual da área de trabalho do agente.

  • Controle de chamada: fornece os botões que o agente pode usar para fazer uma chamada, atender a uma chamada, colocar uma chamada em espera, transferir uma chamada para outro agente ou desligar.

Esses dois controles são controles hospedados UII normais, que herdam da classe HostedControl ou HostedWpfControl. Você também pode optar por mesclar os dois controles em um único controle hospedado UII.Para obter mais informações:Usar controles hospedados de UII com Unified Service Desk

Interfaces para implementar um controle CTI

Use as interfaces a seguir para implementar a interface do usuário de um controle CTI.

ICtiAgentStateControl

A interface ICtiAgentStateControl é uma interface especializada em descrever um controle hospedado usado para processar e/ou exibir informações sobre o estado do agente. Essa interface contém o método SetAgentState usado para definir o estado de um agente.

IDesktopUserActionsConsumer

A interface IDesktopUserActionsConsumer não é específica de CTI, mas normalmente é usada pelos controles CTI para fornecer acesso às operações da área de trabalho. Ela tem dois membros:

  • DesktopLoadingComplete: gerado quando a área de trabalho conclui a carga. É gerado em um thread separado do thread principal da IU da área de trabalho.

  • SetDesktopUserActionsAccess: usado pelo carregador de área de trabalho para definir um ponteiro para si mesmo no controle hospedado que implementou a interface ICtiEnabledControlConsumer. É o ponteiro na interface de área de trabalho (shell).

Ao implementar essa interface, você recebe acesso a todas as ações do usuário, conforme mostrado no exemplo a seguir.

bool AppExistsInUI(string applicationName);
bool CloseDynamicApplication(string applicationName);
bool CloseSession();
bool CloseSession(Session sessionToClose);
bool CreateDynamicApplication(string applicationName);
WorkflowData GetCurrentWorkflowState();
bool SetFocusOnApplication(string applicationName);
string UserDefinedCommand(string command, string request);

ICtiEnabledControlConsumer

A interface ICtiEnabledControlConsumer descreve um controle hospedado que aceitará ponteiros para CtiCallStateManager e CtiAgentStateManager.

Essa interface tem definições de método para executar as seguintes funções:

  • SetManagers: chamada por UII quando um controle que implementa essa interface é inicializado.

  • SessionCloseEvent: chamada por UII quando uma sessão está fechando.

A interface ICtiEnabledControlConsumer usa a propriedade IsManagersSet para definir ou obter, independentemente de o método SetManagers ter sido chamado com êxito.

Configurar o controle hospedado Controle 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

    Especifique um nome.

    Tipo de Componente do USD

    Aplicativo Hospedado do CCA

    Aplicativo Hospedado

    Controle Hospedado

    O Aplicativo é Global

    Verificado

    Grupo de Exibição

    CtiPanel

    Adaptador

    Não Usar Adaptador

    URI do Assembly

    Este é o nome do arquivo de assembly (.dll) que você criou na etapa anterior.

    Tipo de Assembly

    Este é o nome do assembly, seguido por um ponto e pelo nome da classe do seu Controle CTI. Por exemplo, se o nome do assembly (dll) for MyCtiControl e o nome da classe do projeto CTI for CtiControl, digite o seguinte neste campo: MyCtiControl.CtiControl.

  6. Selecione Salvar para criar o controle hospedado.

Confira Também

Considerações para criar um adaptador CTI do Unified Service Desk
Criar um conector CTI
Criar um CTI Desktop Manager
Estrutura UII de integração entre telefonia e computador (CTI)

Unified Service Desk 2.0

© 2017 Microsoft. Todos os direitos reservados. Direitos autorais