[Script] Canais - Identificando o canal de origem do usuário a partir do domínio do canal


Reputação 6

Olá Blippers,


Hoje venho compartilhar um script que pode ser utilizado em projetos de chatbots multicanal, ou seja, ativação do mesmo chatbot em 2 ou mais canais de comunicação (Blip Chat, WhatsApp, Instagram, Messenger, Telegram etc.).


Além do script, é necessário:



  1. configurar uma ação de Executar um Script

  2. adicionar a variável de sistema - tunnel.originator - como a uma variável de entrada

  3. adicionar o script mais abaixo na ação configurada em seu fluxo no Builder

  4. retornar o valor para uma variável de saída denominada, por exemplo, canal


💙 Dica Blipper: ao identificar o canal do usuário, alguns usuários podem criar blocos específicos para configurar conteúdos específicos compatíveis com aquela canal. Por exemplo, posso ter um bloco com o conteúdo do tipo Menu para o Messenger e para o WhatsApp eu configuro uma Lista Interativa.



  • Para usuários mais avançados com nossa plataforma, é possível em um único bloco utilizar o conteúdo denominado Conteúdo Dinâmico para exibir o mesmo Menu no Messenger ou Lista Interativa no WhatsApp, utilizando a variável canal para executar scripts que construam dinamicamente o conteúdo de acordo com o canal


/* [ ! ] API Reference: https://docs.blip.ai/#channels */

function run(tunnelOriginator) {
var channel;

contactDomain = tunnelOriginator.split("@")[1];

switch (contactDomain) {

case '0mn.io':
channel = "Blip Chat";
return channel;

case 'tangram.com.br':
channel = "SMS";
return channel;

case 'take.io':
channel = "SMS";
return channel;

case 'messenger.gw.msging.net':
channel = "Messenger";
return channel;

case 'instagram.gw.msging.net':
channel = "Instagram";
return channel;

case 'wa.gw.msging.net':
channel = "WhatsApp";
return channel;

case 'abs.gw.msging.net':
channel = "Microsoft Teams";
return channel;

case 'businessmessages.gw.msging.net':
channel = "GBM";
return channel;

case 'skype.gw.msging.net':
channel = "Skype";
return channel;

case 'telegram.gw.msging.net':
channel = "Telegram";
return channel;

case 'workplace.gw.msging.net':
channel = 'Workplace';
return channel;

case 'mailgun.gw.msging.net':
channel = "Email";
return channel;

default:
channel = "Other";
return channel;
}
}

1 comentário

Reputação 6

ei, @Romulo_Rafael 🙂 no último dia do mês recebemos um conteúdo desses! É para fechar Julho com T-U-D-O mesmo! curti demais ✨

Comente