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
Entre no Microsoft Dynamics 365.
Na barra de navegação, escolha Microsoft Dynamics 365 > Configurações > Unified Service Desk.
Na página do Unified Service Desk, clique em Controles Hospedados.
Na página Controles Hospedados, clique em Novo.
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.
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