Histórico da Página
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|
(Obrigatório)
Informações Gerais
Especificação | |||
Produto | CRM | Módulo | CRM - Relacionamento |
Segmento Executor | Manufatura | ||
Projeto1 | MANCRM01 | IRM1 | |
Requisito1 | Subtarefa1 | ||
Chamado2 |
| ||
País | ( X ) Brasil ( ) Argentina ( ) Mexico ( ) Chile ( ) Paraguai ( ) Equador ( ) USA ( ) Colombia ( ) Outro _____________. | ||
Outros | $/CRM/Docs_Proj/V11.5/Inovacao/D1180CRM06 |
Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos).
(Obrigatório)
Objetivo
Permitir a integração do sistema de telefonia com o CRM para identificação de chamadas telefônicas. O Smart CTI ao interceptar uma ligação irá notificar o CRM para que o mesmo realize a identificação da chamada; os dados fornecidos pelo Smart CTI são basicamente: o número do telefone e, quando existir, alguma informação extra (código, cpf, cnpj, nome...) obtida através da fila de discagem. O CRM então recebe essas informações e realiza a da chamada. A partir da identificação o sistema libera as operações para serem tomadas de acordo com a parametrização que o usuário realizar para si.
(Obrigatório)
Definição da Regra de Negócio
Rotina | Tipo de Operação | Opção de Menu | Regras de Negócio |
CTI - Gerenciamento | Criação | CRM > Relacionamento > Gerenciamento CTI | - |
CTI - Cliente | Criação | CRM > Relacionamento > Gerenciamento CTI > Cliente | - |
Manutenção de Ocorrências | Envolvida | CRM > Suporte > Manutenção de Ocorrências | - |
Manutenção de Oportunidades | Envolvida | CRM > Oportunidade > Manutenção de Oportunidades | - |
Manutenção de Contas | Envolvida | CRM > Gestão de Contas > Manutenção de Contas | - |
Manutenção de Tarefas | Envolvida | CRM > Relacionamento > Manutenção de Tarefas | - |
Manutenção de Histórico de Ação | Envolvida | CRM > Relacionamento > Manutenção de Histórico de Ação | - |
Pré-requisitos
- Smart CTI instalado e configurado;
- Central telefônica homologada para utilização com o Smart CTI;
- Parametrização correta do parâmetro "Endereço do servidor do Smart CTI" no CRM.
CTI - Gerenciamento
A funcionalidade de gerenciamento deverá conter a parametrização de login ao DAC do usuário assim com as operações que estarão disponíveis para realização após recebimento da ligação. Desta forma a tela deve ser desenhada conforme o protótipo: CTI - Gerenciamento.
No cabeçalho deve apresentar as informações de login, grupo e ramal que serão carregadas automaticamente ao abrir o cliente para conexão com o CTI. Estas informações poderão ser editadas através do botão 'editar'. As informações deverão ser persistidas na tabela crm_usuar conforme listadas abaixo:
- login: nom_usuar_supor
- ramal: num_ramal
- grupo: nom_grp_aces
Ao iniciar a funcionalidade pela primeira vez o sistema automaticamente irá adicionar para o usuário as operações padrões que o mesmo poderá executar ao atender um ligação. Estas operações são:
- Novo lead: irá permitir o registro de um novo lead;
- Nova conta: irá permitir o registro de uma nova conta;
- Novo contato: irá permitir o registro de um novo contato para a conta;
- Detalhar conta: irá detalhar a conta;
- Nova ocorrência: irá abrir o registro de ocorrência já com a conta e contato posicionado;
- Detalhar ocorrência: irá detalhar o registro ocorrência caso seja informado o código do mesmo, caso contrário irá abrir a tela de pesquisa de ocorrências filtrando pela conta e contato;
- Nova oportunidade: irá abrir o registro de oportunidade já com a conta e contato posicionado;
- Detalhar oportunidade: irá detalhar o registro oportunidade caso seja informado o código do mesmo, caso contrário irá abrir a tela de pesquisa de oportunidades filtrando pela conta e contato;
- Registrar histórico: irá abrir o registro de histórico já com a conta e contato posicionado;
- Registrar tarefa: irá abrir o registro de tarefa já com a conta e contato posicionado;
Estar operações, acima, serão consideradas padrões e somente podem ser habilitadas/desabilitadas. Por padrão serão habilitadas.
Estas operações deverão ser salvas nas configurações do usuário através do serviço $totvsprofile.
Maiores informações no item de seleção de operação do cliente CTI.
CTI - Cliente
O cliente para utilização da integração com o Smart CTI deverá ser inicializado através do botão "iniciar" na tela de gerenciamento.
Ao abrir o cliente, o sistema deverá verificar se já existe alguma sessão e/ou conexão aberta com o Smart CTI para o ramal e/ou sessão do usuário. Caso já exista alguma ativa o sistema deve notificar o usuário e perguntar se o mesmo deseja continuar com a operação de login. Caso opte por prosseguir o usuário que esteja logado naquele ramal será desconectado para que o usuário atual possa efetivar o login.
Caso nenhum login ativo seja identificado na abertura do cliente, o sistema irá abrir o formulário de login com as informações cadastradas previamente na tela de gerenciamento bastando o usuário informar a senha para prosseguir com o login ou fechar o cliente.
Após efetuar o login, o sistema irá minimizar o formulário e apresentar apenas a opções de "pausar" e "deslogar" além das informações de ramal, grupo e status do cliente.
Ao efetuar a operação de login, o sistema deve realizar a chamada dos seguintes métodos no SmartCTI:
- agentInService: para iniciar o monitoramento do ramal, nesta chamada será informado o endpoint de retorno para que o SmartCTI possa enviar para o CRM as informações de chamadas;
- logonPass: em seguida é efetuado o login na central do DAC (URA);
- readyPass: com o login efetuado é colocado o agente como pronto para receber ligações.
Em caso de falha em uma das operações acima a operação de login é cancelada e o usuário é notificado do problema. Em caso de sucesso é a sessão/ramal do usuário é adicionado em uma fila no server para receber as mensagens enviadas pelo Smart CTI. Estas mensagens serão retornadas para o cliente através de 'long pull', o cliente abre uma requisição para o server e fica aguardando até que uma mensagem seja recebida; quando identificar uma nova mensagem o server a retorna para o cliente, este processa a mensagem e abre uma nova requisição para o server e assim sucessivamente até finalização da operação e/ou logout do cliente.
Ao efetuar a operação de logout, o sistema deve realizar a chamada dos seguintes métodos no SmartCTI:
- notReadyPass: retira o ramal da lista de agentes do DAC (URA);
- logoffPass: efetua o logout do agente;
- agentOutOfService: para encerrar o monitoramento no ramal.
Em caso de falha em uma das operações acima a operação de logout é cancelada e o usuário é notificado do problema.
Caso o parâmetro "Solicita justificativa ao efetuar logout da URA?" estiver marcado; antes de iniciar o processo de logout será disponibilizado um campo para que o usuário informe o motivo pelo qual está realizando o logout. Tanto a operação de login quanto logout são registradas no CRM na tabela crm_log_utiliza_telef. Neste log são armazenados as seguintes informações:
- num_id_usuar: código do usuário que recebeu a ligação;
- dat_cadastro: data da operação;
- hra_cadastro: hora da chamada;
- idi_tip_acao: tipo de operação (1. login | 2. logout);
- dsl_message: justificativa de logout, quando não informada ou não necessária é considerada como 'branco'.
Estes logs poderão ser consultados através da tela de "Histórico de utilização do CTI"
As ligações recebidas/efetuadas serão automaticamente registradas também no CRM na tabela crm_log_telef para utilização futura, nela serão armazenadas as seguintes informações:
- nom_telefone: número do telefone externo;
- num_id_usuar: código do usuário que recebeu a ligação;
- dat_cadastro: data da chamada;
- hra_cadastro: hora da chamada;
- cod_livre_1: código interno da chamada no DAC (URA).
- cod_livre_2: informação complementar encaminhada pelo SmartCTI;
- num_livre_1: número do ramal que recebeu/efetuou a ligação.
Ao receber uma ligação o sistema deverá identificar a conta relacionada a chamada através do número de telefone ou por intermédio dos dados associados a chamada. Estes dados associados são encaminhados pela central telefônica quando nela é importada a lista de discagem gerada pelo CRM. A identificação da chamada deve ocorrer conforme a ordem dos dados: código do CRM, código do ERP, CPF/CNPJ, razão social e, por fim, o número de telefone.
A identificação deve ocorrer, quando não possuir dados associados, através do número de telefone. Inicialmente deve buscar todos as contas as quais os contatos possuem relação com o número e em seguida todas as contas que possuem relação direta. Em seguida, para cada conta, única, encontrada o sistema deve retornar seus contatos; caso um contato seja responsável pelo número durante o processo de identificação este deve ser marcado como identificador.
Ao retornar os dados para o cliente, já com os dados das contas identificadas, será exibido para o usuário uma lista com estas contas. Caso em uma das contas um de seus contatos esteja marcado como identificador, este deve ser automaticamente selecionado. De qualquer forma, o usuário pode trocar a conta selecionado, dentre as opções identificadas, assim como o contato, lembrando que um número não necessariamente é exclusivo de um contato.
Tendo selecionado a conta e o contato, opcional, é possível então acionar o botão de operações para que seja exibida a lista de operações que o usuário parametrizou para si. As operações de novo lead e novo contato somente ficam disponíveis quando não há uma conta selecionada.
Quando acionada uma ação de detalhar ocorrência, oportunidade ou alguma ação customizada que esteja habilitado o 'input'; é exibido em tela um campo para o usuário informar um valor que no caso da ocorrência, por exemplo, seria o código da ocorrência a ser detalhada. Quando não informado um valor então será aberto a tela de pesquisa de ocorrências já filtrando pela conta e contato, caso selecionado.
As telas de inclusão e novos registros será aberta já com a conta e o contato selecionados. Independentemente de ser ação customizada ou não os parâmetros serão passado pela URL da seguinte forma:
- num_id_pessoa: código da conta no CRM;
- cod_pessoa_erp: código da conta no ERP;
- num_id_contato: código do contato no CRM;
- cod_pessoa_erp_contato: código do contato no ERP;
- detail_code: código adicional informado em alguns casos;
Exemplo de URL: http://xxxxx:yyyy/dts/crm/:detail_code/exchange?1=1&num_id_pessoa=10&cod_pessoa_erp=101&num_id_contato=11&cod_pessoa_erp_contato=111&detail_code=abc
Nas telas customizadas estes parâmetros poderão ser obtidos através do serviço $stateParams.
Discagem / Alteração de Telefone
Para cada número de telefone exibido no CRM deverá ser adicionado um evento que ao clicar uma vez sobre o telefone deverá abrir uma tela para alteração do telefone e ao clicar duas vezes deverá discar diretamente o número do telefone.
Ao clicar uma vez e abrir a tela para acerto do telefone o sistema irá disponibilizar as operações de:
- cancelar: abortando a operação;
- discar: discando o valor exibido no campo de input da tela;
- discar e salvar: o valor corrigido do telefone deverá ser persistido no banco de dados e em seguida enviado para a central telefônica realizar a discagem.
Ao enviar o número para discagem o ramal do usuário irá tocar e quando o usuário puxar o telefone do gancho a ligação será completada e o sistema irá seguir o processo padrão de identificação de chamada.
A opção de discagem somente deve estar disponível caso o cliente do CTI esteja aberto e funcionando.
Log de utilização
A interface de consulta de log de utilização será migrada para HTML e nela será possível visualizar os logins e logouts do usuário no Smart CTI. Neste interface também estará disponível as justificativas de logout quando o parâmetro de "Solicita justificativa ao efetuar logout da URA?" estiver marcado.
Observação: A funcionalidade foi reescrita com base na especificação original (D1180CRM06), sendo apenas portada e adaptada para a arquitetura HTML.
Opcional
Protótipo de Tela
CTI - Gerenciamento
CTI - Cliente
CTI - Cliente - Operações
CTI - Discagem - Alteração de Telefone
CTI - Log de utilização (login|logout)
Opcional
Fluxo do Processo
<Nesta etapa incluir representações gráficas que descrevam o problema a ser resolvido e o sistema a ser desenvolvido. Exemplo: Diagrama - Caso de Uso, Diagrama de Atividades, Diagrama de Classes, Diagrama de Entidade e Relacionamento e Diagrama de Sequência>.
Opcional
Dicionário de Dados
Arquivo ou Código do Script: AAA – Negociação Financeira / *Versao=CP.2014.12_03*/
Índice | Chave |
01 | <FI9_FILIAL+FI9_IDDARF+FI9_STATUS> |
02 | <FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_EMISS+FI9_IDDARF> |
03 | <FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_PREFIX+FI9_NUM+FI9_PARCEL+FI9_TIPO> |
Campo | <AAA_PERESP> |
Tipo | <N> |
Tamanho | <6> |
Valor Inicial | <Varia de acordo com o tipo informado. Por exemplo, quando o campo “tipo” for date, neste campo pode ser informado uma data>. |
Mandatório | Sim ( ) Não ( ) |
Descrição | <Referência Mínima para Cálculo> |
Título | <Ref.Calc.> |
Picture | <@E999.99> |
Help de Campo | <Informar o % que o aluno pagará em dinheiro. Esse % poderá ser alterado durante a negociação> |
(Opcional)
Grupo de Perguntas
<Informações utilizadas na linha Protheus>.
Nome: FINSRF2
X1_ORDEM | 01 |
X1_PERGUNT | Emissão De |
X1_TIPO | D |
X1_TAMANHO | 8 |
X1_GSC | G |
X1_VAR01 | MV_PAR01 |
X1_DEF01 | Comum |
X1_CNT01 | '01/01/08' |
X1_HELP | Data inicial do intervalo de emissões das guias de DARF a serem consideradas na seleção dos dados para o relatório |
(Opcional)
Consulta Padrão
<Informações utilizadas na linha Protheus>
Consulta: AMB
Descrição | Configurações de Planejamento |
Tipo | Consulta Padrão |
Tabela | “AMB” |
Índice | “Código” |
Campo | “Código”; ”Descrição” |
Retorno | AMB->AMB_CODIGO |
(Opcional)
Estrutura de Menu
<Informações utilizadas na linha Datasul>.
Procedimentos
Procedimento | html-crm.cti.history | html-crm.cti.manager | crm1150.CRUDLogUtilizaTelef | crm1150.CRUDLogTelef | CTIManager |
Descrição | CTI - Histórico de Login e Logout | CTI - Gerenciamento | Histórico de utilização do CTI (FLEX) | Histórico de chamadas não atendidas (FLEX) | Gerenciador CTI (FLEX) |
Módulo | CRL | CRL | CSP | CSP | CRL |
Programa base | html-crm.cti.history | html-crm.cti.manager | crm1150.CRUDLogUtilizaTelef | crm1150.CRUDLogTelef | CRL.CTIManager |
Nome Menu | CTI - Histórico de Login/Logout | CTI - Gerenciamento | Hist. utilização do CTI (FLEX) | Hist. chamadas atendidas (FLEX) | Gerenciador CTI (FLEX) |
Interface | WEB | WEB | FLEX | FLEX | FLEX |
Registro padrão | Sim | Sim | Sim | Sim | Sim |
Visualiza Menu | Sim | Sim | Sim | Sim | Sim |
Release de Liberação | 12.1.12 | 12.1.12 | 12.1.12 | 12.1.12 | 12.1.12 |
Programas
Programa | html-crm.cti.history | html-crm.cti.manager | crm1150.CRUDLogUtilizaTelef | crm1150.CRUDLogTelef | CRM.CTIManager |
Descrição | CTI - Histórico de Login e Logout | CTI - Gerenciamento | Histórico de utilização do CTI (FLEX) | Histórico de chamadas não atendidas (FLEX) | CRL.Gerenciador CTI (FLEX) |
Nome Externo | /dts/crm/cti/history | /dts/crm/cti/manager | crm1150.CRUDLogUtilizaTelef | crm1150.CRUDLogTelef | com.datasul.ems.crm.crl.cti.view.CTIView |
Nome Menu/Programa | CTI - Histórico de Login/Logout | CTI - Gerenciamento | Hist. de utilização do CTI (FLEX) | Hist. chamadas atendidas (FLEX) | CRL.Gerenciador CTI (FLEX) |
Nome Verbalizado[1] | CTI - Histórico de Login e Logout | CTI - Gerenciamento | Histórico de utilização do CTI (FLEX) | Histórico de chamadas não atendidas (FLEX) | CRL.Gerenciador CTI (FLEX) |
Procedimento | html-crm.cti.history | html-crm.cti.manager | crm1150.CRUDLogUtilizaTelef | crm1150.CRUDLogTelef | CTIManager |
Template | Programa HTML | Programa HTML | Cadastro Simples | Cadastro Simples | Nenhum |
Tipo[2] | Relatório | Manutenção | Relatório | Relatório | Consulta |
Interface | WEB | WEB | FLEX | FLEX | FLEX |
Categoria[3] | Nenhum | Nenhum | CRUDFREEFORM | CRUDFREEFORM | MONITORY |
Executa via RPC | Não | Não | Não | Não | Não |
Registro padrão | Sim | Sim | Sim | Sim | Sim |
Outro Produto | Não | Não | Não | Não | Não |
Visualiza Menu | Sim/Não | Sim/Não | Sim | Sim | Sim |
Query on-line | Sim/Não | Sim/Não | Não | Não | Não |
Log Exec. | Sim/Não | Sim/Não | Não | Não | Não |
Rotina (EMS) |
|
|
| ||
Sub-Rotina (EMS) |
|
|
| ||
Localização dentro da Sub Rotina (EMS) |
|
|
| ||
Compact[4] | Não | Não | Não | Não | Não |
Home[5] | Não | Não | Não | Não | Sim |
Posição do Portlet[6] | |||||
Informar os papeis com os quais o programa deve ser vinculado |
|
|
|
Cadastro de Papéis
<O cadastro de papéis é obrigatório para os projetos de desenvolvimento FLEX a partir do Datasul 10>.
<Lembrete: o nome dos papeis em inglês descrito neste ponto do documento, devem ser homologados pela equipe de tradução>.
Código Papel | (máx 3 posições) |
Descrição em Português* |
|
Descrição em Inglês* |
|
[1] Nome Verbalizado é obrigatório para desenvolvimentos no Datasul 10 em diante.
[2] Tipo é obrigatório para desenvolvimento no Datasul 10 em diante
[3] Categorias são obrigatórias para os programas FLEX.
[4] Obrigatório quando o projeto for FLEX
[5] Obrigatório quando o projeto for FLEX
[6] Obrigatório quando o projeto for FLEX
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|