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

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

:blue_heart: 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;
    }
}
3 curtidas

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

1 curtida