Transferir contato originado pelo e-mail ao Desk

Olá,

Tenho alguns subbots para atendimento interligados a um router e gostaria de configurar que os contatos recebidos por e-mail fossem direto para o atendimento humano no Desk, sem passar pelo Boas Vindas ou Menu Principal (que direciona para os subbots).

No meu bot principal, adicionei uma condição de saída no bloco inicial que verifica o canal utilizado pelo usuário através da variável contact.source para que, caso ela seja “mailgun.gw.msging.net” o bot principal transfira para um subbot que apenas direciona o contato para o atendimento humano no Desk.

image
[Configuração de saída no Bloco Inicial do Bot Principal]

image
[Bot que realiza a transferência do contato via e-mail para o Desk]

Não sei se essa seria a maneira adequada, mas de qualquer forma, não está dando certo.

Quando encaminho um e-mail para o endereço do bot ainda está retornando o menu principal com as opções de contato que direciona aos demais subbots.

Eu imagino que possa ter relação com a regra de atendimento para esse caso, pois não encontrei uma forma de definir ainda.

Alguma sugestão?

Tente trocar a ordem das condições. Como a mais geral está em primeiro, ele nunca irá fazer a verificação do contact.source.

@Bruno

Fiz a alteração e agora ele me retornou conforme o Erro Padrão.
Entendo que funcionou para o caso de não passar pelo Boas Vindas ou Menu Principal.

No entanto, estou enfrentando outro problema.

Conforme explicado anteriormente, adicionei essa condição de verificação do canal utilizado pelo cliente no Bot Principal e caso seja e-mail ele é direcionado para um subbot que deveria fazer a transferência para o Desk independentemente de qual fosse o conteúdo informado pelo cliente.

O problema é que para isso não estou conseguindo determinar uma regra de atendimento como para os demais subbots onde utilizei o Extras Contatos ou a verificação do conteúdo da mensagem.

Teria alguma ideia de como posso fazer o contato gerado através do e-mail ir direto para o Desk (para uma equipe específica) sem ter que tratar o conteúdo?

Obrigado!

E se antes de você enviar ele pro atendimento, você enviar ele pra um bloco que não espera entrada de usuário e sirva apenas para definir um campo no Extras do Contato? Aí você pode utilizar esse campo para criar uma regra de atendimento.

@Bruno

Fiz um novo teste direto pelo subbot e agora deu certo, seguindo sua sugestão de utilizar um bloco sem aguardar entrada do usuário.

Porém, esbarrei em outros dois problemas.

Para que o atendimento fosse direcionado ao Desk, a condição de saída que verifica se o contato foi originado pelo e-mail parece não ter funcionado.

Dessa forma, acabei alterando a saída padrão do bloco de Início pra direcionar pro bloco de definição do Extras Contatos, conforme print.
image
E aí sim, quando mandei um e-mail para o endereço do subbot, caiu no Desk.

Mas entendo que isso não está correto né? O ideal seria que ele reconhecesse que o contato foi originado por e-mail e desse continuidade conforme o fluxo. No entanto, se eu deixar a saída padrão apontando para Exceção, o retorno que recebo por e-mail é sempre a mensagem de Erro padrão.

Enfim, esse foi um teste só pra entender se a regra de atendimento funcionaria conforme sugerido, e vi que funciona.

Minha dúvida agora é como fazer esse bot funcionar através do router.
Quando envio um e-mail para o endereço do router, ou do bot principal (que é onde configurei pra transferir pro subbot de e-mail), acaba me retornando a mensagem de boas vindas com o menu principal ou a mensagem de erro padrão. E o atendimento não chega a ser direcionado para o Desk.

Tente deixar a condição com Contém e também adicone o valor Email à caixa de valores.

Sempre envie para o email do Router, ele se encarregará de enviar o usuário para o bot correspondente. Se você enviar para o bot principal direto, é como se ele não estivesse na arquitetura de roteador.

@Bruno

Dessa forma ele me retornou com a mensagem de Erro Padrão e não foi pro Desk.

Alterei a configuração no Bloco Inicial do bot principal pra executar o teste pelo Router, mas aconteceu a mesma coisa.

Segue o print com a configuração, pra confirmar se era assim mesmo.
image

Uma dúvida, essa configuração eu utilizo somente no Bloco Inicial do Bot Principal?

No subbot eu deixei apenas como Resposta Existe > Segue para o bloco de Definição do Extras Contato.

Seria possível você postar um print da tela de Debug no momento em que você está encontrando o problema?

@Bruno

Nesse caso, percebo o problema conforme o retorno que recebo por e-mail ou se cai no Desk.

Pela opção de teste do builder mesmo não sei se teria como fazer, visto que pra saber se deu certo o contato tem que ser originado pelo e-mail.

Tem algum outro lugar do Blip onde eu consiga analisar isso?

Pela tela de Log do portal do BLiP.

@Bruno

Seria esta?


@Marcelo_Henrique_da fiz um teste aqui e notei que o contact.source é Mailgun, desculpe pelo engano :sweat_smile:.
Portanto, coloque esse valor na condição de saída e irá funcionar.

Eu fiz da seguinte maneira:

  1. Enviei um email pro email do meu router.
  2. No bloco início do meu bot principal eu fiz a verificação e em casos positivos, encaminhava ele pro atendimento.

@Bruno
Peço desculpa pela minha insistência/inexperiência, mas alterei a condição de saída no bloco inicial do bot principal pra ficar conforme você sugeriu por último e agora voltou a ocorrer o problema do bot retornar por e-mail o conteúdo do bloco de Boas Vindas e Menu Principal.

Também conferi se tinha deixado essa opção em segundo lugar nas condições, mas vi que já está em primeiro, conforme você havia sugerido anteriormente.
image

Eu preciso adicionar essa verificação no bloco inicial do subbot também?

Nele eu mantive a condição de saída comum “Resposta existe”.

Imagina, estamos aqui para discutirmos e resolver juntos :grinning:

Eu fiz assim, saca só:

Esse subbot só é acessado por quem já foi transferido vindo do email? Se sim, não precisa adicionar essa verificação.

1 Curtida

@Bruno

Ah, eu deveria apenas ter incluído o Mailgun, falha minha no entendimento da instrução.

Alterei a verificação conforme seu exemplo.
transf. email
Mas ao executar outro teste pelo e-mail do router o bot me retornou com a mensagem de erro padrão.

Segue o print do log.

teste_1_1

No seu exemplo notei que logo após a verificação no bloco inicial você direciona para o Atendimento Humano. Dessa forma ainda não testei.

Há alguma recomendação para não fazer esse direcionamento pro Desk diretamente pelo bot principal? Porque se não tiver problema, eu poderia tentar dessa forma.

O único fator que me fez optar por transferir primeiro para um subbot foi seguir o padrão que já havíamos estabelecido, onde para todas as outras opções de contato do Menu estamos direcionando para um bot específico.

Esse subbot só é acessado por quem já foi transferido vindo do email?

Isso mesmo.

Erro meu que não fui claro!

Uma dúvida: você está definindo um tempo de expiração de sessão nesse bot? Se não, após a mensagem do erro padrão ele vai para qual Bloco? Se não for pro inicio, ele nunca vai fazer a verificação ser for um contato que já conversou com o bot.

Depende de cada caso. No meu caso o atendimento ficava no próprio bot principal, mas não tem problema transferir para outro bot e atender por lá.

@Bruno

Uma dúvida: você está definindo um tempo de expiração de sessão nesse bot? Se não, após a mensagem do erro padrão ele vai para qual Bloco? Se não for pro inicio, ele nunca vai fazer a verificação ser for um contato que já conversou com o bot.

Eu acho que está indo pro início sim. Se entendi certo, o print abaixo mostra isso.
erro padrão

Sobre transferir primeiro pra outro bot, é mais uma questão de “padrão” interno nosso aqui mesmo. Porque como estamos transferindo para todos os outros casos, não queria “poluir” o bot principal com blocos de atendimento direto nele.

Mas, se não encontrarmos solução na transferência para o subbot posso tentar dessa forma.

Estamos deixando passar algum detalhe importante rs

Vou deixar um passo exatamente de como eu fiz.

  1. Adicionei 2 serviços no meu Router - Principal e Atendimento
  2. No bot Principal, coloquei a condição de saída no bloco Início (o pretinho) para um bloco chamado Transf. Email:
    image
  3. No bloco Transf. Email, removi a entrada do usuário
    image
  4. Defini uma Ação de Saída para o serviço Atendimento e passei uma mensagem qualquer.
  5. No bloco Início deste bot, deixei como condição de saída um bloco chamado Recepção, que envia uma mensagem qualquer apenas para teste.
  6. O bloco Recepção não espera nenhuma resposta do usuário após o envio da mensagem e em condições de saída direciona para o bloco de atendimento humano.

Obs.: As ações descritas nos passos 1 a 4 poderiam ter sido feitas diretamente no bloco Início através do uso de uma Ação de Saída que direciona a um serviço, com a condição da contact.source

@Bruno

Conferi o passo a passo descrito acima e vou repassar aqui pra que você possa confirmar se pulei alguma etapa, por gentileza.

  1. O serviço EdEmail e o principal já estavam adicionados no Router.
    image
    image

  2. O Bloco Inicial do bot principal já estava configurado com a condição de saída para transferir para o bloco Transf. Email.
    image

  3. O bloco Transf. Email já não aguardava a entrada do usuário.
    image

  4. A ação para direcionar ao serviço EdEmail tinha sido criada nas Ações de Entrada.
    Alterei para saída agora e fiz um novo teste pelo endereço de e-mail do Router.
    Agora não retornou a mensagem de erro padrão, mas o atendimento caiu na fila Default.

  5. No bloco Início do subbot, a configuração de saída já estava direcionando para o bloco de Definição do Contato.
    image

  6. O bloco Definir Contato já não aguardava entrada do usuário e já estava direcionando para o Atendimento Humano.
    image
    image

Minha dúvida aqui, agora, está mais relacionada a definição do Extras Contatos, pra poder definir a regra de atendimento.
Nas ações de entrada utilizei o recurso Definir Contato da seguinte maneira: ação entrada
image

Pensando nisso, a regra de atendimento ficou assim:

Não sei se está correto, e talvez esteja aí o problema identificado no último teste (do atendimento estar caindo na fila Default em vez de ir para a equipe certa no Desk).

Obs.: estamos enfrentando o mesmo problema com outro subbot nosso, mas foi identificado pela pessoa que acompanhou o caso que se trata de um bug no contexto do router.
Nesse outro caso, ao desativar o contexto do router, o transbordo do usuário para a equipe do Desk aconteceu de maneira correta.
Tentei repetir isso no subbot do e-mail, mas não funcionou. Então acredito que seja por outro motivo.