Casos de uso
Cases de sucesso
Nós encorajamos a integração de serviços VoIP com a Kommo, e estamos prontos para fornecer ajuda. Aqui estão algumas integrações VoIP já existentes:
- Twilio: E uma plataforma de comunicação em nuvem que oferece serviços de chamadas de voz, permitindo que você se conecte com clientes ao redor do mundo.
- RingCentral: Uma solução global para chamadas em nuvem para empresas.
- Nvoip: Permite aos usuários da Komm gerenciar toda a comunicação por voz diretamente através do CRM. Ferramentas como Click-to-call, registro automático e lembretes de chamada, tornam o engajamento com os clientes fácil e eficiente.
- GoTo Connect: Uma plataforma de comunicações unificada, combinando sistemas de telefonia empresarial com ferramentas de reuniões e colaboração.
- API4Com : Plataforma de telefonia Brasileira, que fornece um sistema completo de Voice-over-IP (VoIP) para empresas.
E muitas outras!
Entenda o objetivo
Sua integração excerce um papel central na conexão entre a Kommo e um serviço VoIP. Ela é responsável por sincronizar dados como configurações de integração, usuários, permissões de usuários e extensões. Opcionalmente, sua integração também pode permitir aos usuários fazer e receber chamadas diretamente pela Kommo.
Embora o processamento real da chamada seja feiro pelo serviço VoIP, sua integração participa do início ao fim de cada chamada. Isso inclui ações tais como: Iniciar ou responder a uma chamada, registro de dados da chamada, e exibição da janela de resultaod da chamada. Você também pode importar informações da chamada periodicamente, caso necessário.
A integração deve ser autorizada tanto na Kommo, quanto no serviço VoIP, e deve processar todos os dados com segurança.
Para melhor desempenho e consistência no tratamento dos dados, considere a quantidade de usuários da integração e utilize filas (queues) e workers para eles, se necessário.
Se sua integração incluir um componente UI/UX, garanta que ele seja intuitivo e fácil de usar. Por fim, se você planeja publicar sua integração no Marketplace da Kommo, revise e siga os Requerimentos de Integração para o Marketplace.
Casos de Uso
Aqui está uma série de requerimentos que devem ser considerados:
1. Autorização
Sua integração deve usar OAuth 2.0 para a autorização com a Kommo. Você pode escolher entre qualquer método seguro para trocar chaves com o serviço VoIP. Todos os tokens gerados e dados relacionados devem ser armazenados de maneira segura. Adicionalmente, a integração deve dispor de uma interface para que um usuário administrador da conta possa configurar e gerenciar os ajustes da integração.
Sua integração deve registrar chamadas entre contatos e gerentes, e vincular cada chamada à entidade relativa apropriada (Contato, Empresa ou Lead), de acordo com as Diretrizes de Registro de Chamadas.
Quando uma chamada é concluida dentro da Kommo, uma janela modal pode ser mostrada para permitir que o gerente grave o Resultado da chamada.
Quando estiver salvando uma chamada, sua integração também pode agregar a gravação da chamada e outros dados à Nota de chamada. A Kommo irá então exibir um botão de reprodução (player), Permitindo aos usuários escutar à gravação da chamada diretamente pela interface, junto aos detalhes da chamada.
Se uma chamada de um número desconhecido é recebida, sua integração pode permitir que o gerente salve o número como um novo contato. Um Lead de entrada também pode ser criado automaticamente. Uma vez que o gerente salve o número, ele poderá aceitar o Lead, adicionar uma nota ou criar uma tarefa.

Lead recebido do tipo 'SIP'. Pode ser aceito, rejeitado ou vinculado a uma entidade existente.
Quando ocorre uma chamada na conta de um usuário, sua integração pode exibir o nome do chamador junto com um link para a entidade associada (por exemplo, Contato ou Lead), a fim de fornecer contexto e melhorar a eficiência da comunicação.
Você pode oferecer a possibilidade de atribuir a cada gerente um número de ramal da conta do serviço de VoIP.
Para cada contato na Kommo, é designado um gerente responsável. Quando uma chamada é recebida, sua integração pode identificar o contato relacionado, determinar o gerente responsável e automaticamente transferir a chamada para ele.
A Kommo oferece aos gerentes a possibilidade de realizar chamadas à partir do cartão de qualquer contato, empresa ou lead, através de um simples clique no número de telefone dentro do cartão.
Para simplificar o trabalho de um gerente na Kommo, nós sugerimos oferecer a possibilidade de realizar chamadas dentro da conta Kommo através de um teclado numérico com botões para gerenciar chamadas, e janelas para mostrá-las. Uma notificação sobre a chamada também pode ser oferecida.
Existe a possibilidade de criar notificações acerca de chamadas recebidas, encerradas, ou que mostre erros ocorridos durante a sessão de chamada.

Chamada recebida

Evento de erro
Os cartões de eventos permitem que você abra o cartão da entidade ativa (de acordo com as regras definidas) conectada ao contato, ao atender uma chamada.
12. Lista de chamada
O SDK da Kommo permite que você agregue funcionalidades adicionais às suas listas de sistema (Leads, contatos, empresas) Itens especificos que podem ser usados para criar uma janela modal de Lista de chamada, implementando as funções de pular, pausar e intervalo de tempo.
Começando a desenvolver
Antes de qualquer coisa, nos veementemente recomendamos que você separe a interface do usuário (UI/UX) da integração, e vamos descrever nossa visão sobre como organizar as tarefas assincronas em atraso, para que você possa compreender melhor o que está por vir.
Interface do usuário (UI/UX)
A interface do usuário (UI/UX) é um widget que contém um arquivo compactado, que é carregado durante a criação da integração. O widget possui as configurações da integração, que incluem: Descrição, ícones, inscrição em eventos, definição dos escopos necessários, id da integação e chave secreta. Essa é uma estrutura geral de um widget, à qual você deve seguir:
- Arquivos i18n
- imagens
- arquivos de modelo
script.jsmanifest.json- scripts alocados em módulos separados, mas usados dentro de
script.js
Um dos arquivos básicos é o script.js. Ele contém os métodos padrão para trabalhar com os widgets, mas a coisa mais importante é que você pode expandi-lo de acordo com sua necessidade por funções adicionais, que irão expandir a funcionalidade do sistema uma vez que o widget seja instalado.
O widget inteito é representado como um objeto, que possui funções de chamada de retorno (callback) que são chamadas sob determinadas condições.
Durante o desenvolvimento, você pode usar quaisquer ferramentas e bibliotecas. A coisa mais importante a se lembrar, é que o seu trabalho deve resultar em um código JS executado dentro do script.js.
Integração
Nós encorajamos que você trabalhe dentro de um ambientente de desenvolvimento MVC. Nós normalmente usamos frameworks MVC de PHP, como Laminas Mezzio, Laravel, e vamos descrever tudo em termos PHP. Você pode usar qualquer linguagem que desejar, e ler nossa documentação para compreender as ideias que apresentamos.
Sua integração pode ter modelos que implementam tabelas de dados e um módulo de interação com a Kommo e chaves geradas. Dado que a interface do usuário (UI/UX) é um widget, você também deve oferecer uma conexão para enviar e receber informações ao frontend.
É importante que sua integração processe uma alta taxa de dados e trabalhe com uma grande quantidade de leads, e para isso recomendamos que sejam usadas filas (queues). O sistema de filas é um princípio, e não uma tecnologia específica. Filas garantem escalabilidade, permitindo que a velocidade da aplicação aumente.
O servidor de fila mantém uma lista de tarefas enviadas pela aplicação principal, e esse é seu único trabalho. De maneira simples, uma tarefa é uma informação sobre o que precisa ser feito, e como. Não é necessário utilizar uma solução/ferramenta externa para implementar um sistema de filas. Porém, a simplicidade e disponibilidade de soluções já criadas tornarão o processo mais rápido, como por exemplo Beanstalkd, Apache Kafka, ou RabbitMQ.
Pra cada caso de uso, uma tarefa é criada pra implementar o caso de uso em um worker e enviada para a fila. Um worker é um script separado que constantemente vasculha o servidor por novas tarefas. Um worker pega uma tarefa da fila e executa a lógica associada à ela.
Updated about 10 hours ago
