Negócios no sistema de CRM
Os negócios no CRM são exibidos como cards com informações sobre o cliente, nome do negócio, descrição e valor.

Você pode adicionar outros campos, se necessário (veja a fig. 8-12).
botão "Criar negócio"

O Criar um negócio a janela permite configurar e salvar rapidamente um novo negócio.

Preencha o formulário para criar um cliente. Se o cliente existir, o MaviBot solicitará que você o selecione do banco de dados.

Se o cliente não for encontrado, conecte um bot do WhatsApp ou de e-mail ao projeto.
Envie uma mensagem ao cliente pelo canal conectado — isso criará automaticamente o perfil dele.
Selecione a etapa do funil em que o negócio deve ser colocado.

As variáveis do negócio também podem ser adicionadas no formulário modal:

Em seguida, clique em "Criar" para adicionar o negócio ao sistema.
O botão "Adicionar rapidamente"
Este botão também pode ajudar a adicionar manualmente um novo cliente ao CRM.

Clique no botão para abrir uma janela onde você pode inserir os dados do cliente.

Fig. 26 Janela de criação rápida de negócio (Observação: todos os dados são fictícios; qualquer semelhança é mera coincidência.)
Assim, o negócio será criado na "Interessado" etapa.
Pronto!
Agora você sabe como criar negócios.
Como criar um negócio pelo chatbot
Exemplo de fluxo do chatbot para criar um negócio via função
Visão geral do processo:
Crie um bloco Iniciar

Crie dois blocos de botão.

Vá para as configurações da conexão, ative a opção "Usuário insere dados" e especifique o nome do serviço que o usuário irá inserir.

Depois, adicione a pergunta "Qual é o seu nome?" em um bloco branco. Crie um novo bloco abaixo dele e ative "Usuário insere dados" em suas configurações de seta.

A configuração "Usuário insere dados" com a variável name está ativada em toda conexão que leva ao bloco "Insira seu número de telefone".
Agora, crie dois blocos — "Chat" e "Fallback" — a partir do bloco "Insira seu número de telefone".

Selecione o "RegEx math" tipo nas configurações da conexão.
Ative a configuração "Usuário insere dados".
Insira o nome da variável:
phone.

Agora, no bloco Fallback, escreva a mensagem: "Isso está incorreto! Tente novamente."
Essa configuração funcionará da seguinte forma: se o seu cliente inserir um número de telefone incorreto, ele receberá a mensagem do bloco Fallback. A mensagem de Fallback continuará sendo enviada até que o cliente insira um número de telefone correto.
Depois, pergunte ao cliente sobre o orçamento dele e crie imediatamente um novo bloco abaixo dele.

Ative a alternância "Usuário insere dados" configuração na conexão e insira o nome da variável:
budget.

Ative a "Usuário insere dados" caixa de seleção na conexão e especifique a variável de telefone client_name.
Você pode alterar o tipo do último bloco para "Leads" ou usar a
create_orderfunção.Aqui está a opção com o bloco vermelho "Leads".

Exemplo.

A função create_order(name, budget, description, client_name, phone, email, state_id) é usada para criar um negócio do chatbot no CRM.
Parâmetros
O negócio ativo atual no funil, junto com as variáveis, estará disponível apenas nas funções de gerenciamento de negócios e CRM.
name
Nome do negócio.
Parâmetro opcional; se não for passado, será aplicado ao negócio ativo atual do cliente
budget
Valor do negócio (número). Parâmetro opcional; se não for passado, será aplicado ao negócio ativo atual do cliente. Se você passar um valor não numérico no budget parâmetro, a função retornará a resposta: 'budget must be a number'
description
Descrição do negócio. Parâmetro opcional;
client_name
(parâmetro opcional) string, nome para um novo cliente
phone
(parâmetro opcional) string, número de telefone para um novo cliente
(parâmetro opcional) string, e-mail para um novo cliente
state_id
o número permite especificar o estado em que o negócio ficará após a criação (um parâmetro opcional)
Para criar um cliente, a variável de telefone ou e-mail deve ser especificada. Se o telefone for especificado e não houver cliente com esse telefone no projeto, um novo será criado.
Se a variável de e-mail for especificada sem a variável de telefone, e não houver cliente no projeto com esse endereço, um novo será criado.
No fluxo, coletamos os seguintes dados em etapas:
Nome - nome do negócio (no exemplo, I need a website e I need a landing);
Budget — custo do negócio, que foi informado nos blocos depois que o cliente selecionou o tipo de site;
Phone — número de telefone do cliente
Client_name — nome do cliente
Se você precisar criar um negócio em um estado específico da transação, passe o parâmetro state_id.
Importante!
Se você não passar nenhum parâmetro, então passe none em vez do parâmetro (como na Fig. 36, onde none é especificado em vez do parâmetro de e-mail).
Onde encontrar o id do estado (parâmetro state_id)

ID da etapa:

Outras configurações
A barra de busca é uma pesquisa de negócio pelo nome do cliente.

Filtro: permite filtrar negócios com vários parâmetros. Você também pode salvar o filtro criado se o usar com frequência.

Como acionar um bot quando um negócio se move para uma nova etapa do funil
Para acionar um bot quando a etapa de um negócio mudar no funil do CRM:
Vá para as configurações do projeto.
Abra as "Callbacks" seção.

Clique em "Configurações de callback de transição de etapa do CRM":

Depois disso, você verá uma janela modal com todos os funis do projeto. Você pode escolher o funil inteiro ou uma etapa específica.

Depois salve as configurações.
Agora, quando o estado do negócio mudar — automaticamente ou manualmente — uma notificação é gerada de qualquer lugar do site, que pode ser usada para acionar uma resposta do bot.
A notificação se parece com isto: crm_state_changed Nome do funil: Nome da etapa
A variável callback_query_id também aparecerá no card do cliente, armazenando o identificador do negócio para o qual a notificação foi enviada.

Para acionar seu bot em resposta a esse evento, insira o texto do callback no campo de gatilho de uma conexão ou de um bloco baseado em gatilho (como um bloco Iniciar ou Trigger).

Se você quiser manter o cliente no fluxo principal do chatbot, use o bloco "Chat". Esse bloco não pode ser transicionado, então, após reagir ao callback, o cliente permanece no funil principal enquanto ainda recebe a mensagem.
Se você precisar continuar o funil após uma mudança de estado, use o bloco "Start". O cliente será redirecionado para o bloco "Start" em resposta ao callback, permitindo que o funil prossiga a partir dali.
Como mover um negócio
Para mover um negócio para qualquer etapa do funil, basta clicar e arrastá-lo com o botão esquerdo do mouse até a etapa desejada.

Quando um negócio é movido para "Failed" ou "Archived," uma janela modal aparece solicitando que você especifique o motivo. Essa ação cria uma variável de negócio correspondente: failed_reason ou archived_reason.
O motivo fornecido é salvo na respectiva variável. Se o negócio for restaurado posteriormente, a variável restored_from_failed ou restored_from_archived é adicionada com o valor "true".
Como impedir a movimentação de um negócio para a etapa especificada
Se você precisar restringir as etapas para as quais os negócios podem ser movidos manualmente, configure a restrição nas configurações do estado.
Abra o funil e vá para as configurações da etapa.

Use as configurações da etapa para restringir a movimentação de negócios para etapas específicas. Selecione as etapas desejadas na lista de verificação (é possível selecionar várias) e salve as alterações.

Após salvar, as etapas restritas serão destacadas visualmente no MaviBot CRM. Elas aparecerão mais escuras, e mover negócios para elas será desativado. Se as restrições de movimentação de etapa forem aplicadas, essas etapas também ficarão ocultas na interface de chat do cliente.
Reação à exclusão de negócio no CRM
Quando um negócio é excluído no CRM, o bot recebe um callback chamado crm_lead_removed para notificar o cliente.

Como alternar negócios
Quando ações são realizadas em negócios diretamente na página do CRM, os seguintes callbacks são acionados:
change_responsible_order— o responsável atribuído ao negócio foi alterado.crm_state_changed— o negócio foi movido para uma etapa diferente do funil.crm_system_state_changed— o negócio foi movido para Lost, Won, ou Archived.crm_lead_removed— o negócio foi excluído.
Além disso, as variáveis do cliente incluirão callback_order_id, que contém o ID do negócio específico afetado pela ação no CRM.
Ao processar um desses callbacks, o negócio correspondente torna-se temporariamente ativo dentro do bloco de processamento, permitindo que você acesse suas variáveis diretamente.
Quando o fluxo avança para o próximo bloco, a lógica padrão do MaviBot é retomada — qualquer acesso subsequente às variáveis do negócio retornará os valores do negócio ativo mais recente do cliente.
Como alternar um negócio para um estágio ativo no bot
O switch_order(order_id) a função permite tornar um negócio específico ativo para acessar suas variáveis.
order_id— um parâmetro opcional para o ID do negócio específico. Se omitido, o negócio mais recente do cliente torna-se ativo.Para ativar um negócio específico, passe o ID dele para a
switch_order(order_id)função.Se você chamar essa função dentro de um bloco de calculadora e fornecer um ID de negócio de destino, poderá acessar as variáveis desse negócio em todos os blocos seguintes.

Se o switch_order função for chamada com o ID de um negócio excluído ou inexistente, nenhuma troca ocorrerá. Nesse caso, a função retornará o ID do negócio atualmente ativo para o cliente (ou None se o cliente não tiver um negócio ativo).
Você pode, portanto, verificar se a troca foi bem-sucedida comparando o order_id passado para a função com o valor que ela retorna:
switch_result = switch_order(order_id)
result = if(switch_result == order_id, value_if_true, value_if_false)

Se nenhum argumento for passado para a switch_order() função, ela ativará o negócio mais recente do cliente. Isso permite reverter ou redefinir o negócio ativo — por exemplo, após realizar operações com outro negócio, ou quando você não precisar manter um negócio temporariamente ativado por um callback do CRM.
Atualizado