Realize integrações dos bots com os sistemas dos clientes diminuindo o tempo de programação.
Com a Functions você consegue processar os dados mais pesados do seu bot, como uma lista de endereços, e exibi-lo no seu chatbot sem a necessidade de utilizar uma API externa.
Ao criar uma ação ou nó no Builder, é possível personalizar uma lista dinâmica e tratar o seu retorno, diminuindo o tempo de programação e melhorando a agilidade no fluxo.
Acesso
Para acessar a Functions, clique em Build no menu lateral da esquerda e, em seguida, em Functions.
Criar Function
Para criar uma nova function, basta localizar o sinal de + e criar um Novo arquivo. O nome que você escolher não pode conter caracteres especiais nem números.
Feito isso, clique em Criar novo arquivo e a function estará na lista lateral à esquerda. Veja o gif de exemplo:
Inserir logs na Function
Para inserir logs nas functions e consultá-los posteriormente, basta configurar um console.log() na sua function. Por exemplo:
Visualizar Function
No menu lateral à esquerda, selecione uma function para visualizá-la e, em seguida, a tela de edição será exibida.
Se você clicar em mais de uma Functions na edição, elas ficarão separadas por abas, como mostra a imagem abaixo:
⚠️Atenção: há uma limitação de 16 milhões de caracteres, onde 1 caractere= 1 byte.
Salvar ou Desfazer Function
Para salvar a sua edição, basta clicar na opção Salvar alterações. Caso queira desfazê-la, clique na opção Desfazer:
⚠️Atenção: lembre-se sempre de salvar, pois as alterações não serão salvas automaticamente.
Multiusuários
A funcionalidade de multiusuário é uma sinalização que exibe quando uma Function estiver sendo editada por um usuário.
O aviso ficará visível tanto na sidebar quanto na área de visualização/edição da function
Dessa forma, sempre que houver qualquer alteração em código, o editor será exibido para que qualquer outro usuário seja avisado.
⚠️Atenção: o usuário não pode editar e/ou apagar uma function que está sendo editada por outro usuário. Somente será possível abrir a function e ver seu código com o editor no modo visualização, mas nada poderá ser editado, nem mesmo a área de Versões.
Testar Function
Os parâmetros setados para o teste poderão ser utilizados pela função através da variável "params". Essa opção ficará disponível na aba Código.
- Parâmetros de teste: editor onde os parâmetros devem ser setados no formato JSON;
- Resultado do teste: campo de leitura contendo o resultado da ação programada utilizando os parâmetros de teste.
A área de teste fica logo ao lado da opção Publicar. Para utilizá-la, clique no botão Exibir Área de Testes e, em seguida, em Testar. Para retirar a visualização, clique em Ocultar Área de Testes.
⚠️Atenção: caso você visualize, no momento da sua edição, que existe outro usuário também editando, você não poderá fazer nada além de visualizar.
Atributos
A estrutura do retorno de uma ação é a seguinte:{ "code":"200/404/500", "result":"retorno programado da ação"}
Atributos de um evento:
| Atributo | descrição |
| code | Código de execução da ação: 200 - Em caso de sucesso 404 - Caso a ação não seja encontrada (por erro de escrita ou por não estar publicada, por exemplo) 500 - Caso ocorra erros inesperados de execução. |
| result | Retorno da função criada. retornará exatamente o que foi programado pelo ser criador na Zenvia NLU |
⚠️Atenção: O tempo limite (timeout) para a execução das functions é de 15 segundos.
Para uso no builder, acessar através da result_variable da ação (result_variable.code ou result_variable.result), como no exemplo abaixo:
Modelo de homologação e produção
Todas as alterações feitas nas Functions só terão reflexos em versões de produção caso a respectiva function seja publicada.
Dessa forma, temos um ambiente de homologação melhor definido para testar bastante as suas functions.
No ambiente de desenvolvimento, as Functions serão executadas com todas as mudanças feitas antes mesmo de publicar.
Caso deseje publicar a sua Function, clique na opção Publicar.
⚠️Atenção: ao publicar uma versão no builder, as functions não serão também publicadas. Isso deve ser feito separadamente.
Aplicar no Assistente
Para aplicar a Function no seu assistente, siga as instruções abaixo dentro da plataforma da Zenvia NLU:
- Clique no nó que deseja adicionar a functions ou crie um novo;
- Escolha o componente de Ações </>;
- Acesse o Helper;
- Busque por Functions;
- Mantenha o prefixo "custom" e a partir dele haverá um autocomplete para selecionar a function que deseja utilizar.
Versões
Na aba de Versões, é possível visualizar todas as versões existentes com suas respectivas datas e responsáveis pela criação.
Na tela principal, você verá todas as versões presentes e diferentes da Function, separadas por linhas.
Perceba que, em cada linha, há dois botões:
Comparar: ao clicar nessa opção, você poderá comparar um código com o outro. A ferramenta exibirá, lado a lado, as versões.
Enviar para desenvolvimento: ao clicar nessa opção, a versão selecionada da Functions será enviada para a tela de edição, ou seja, para aba de código. Assim, é possível que você crie uma nova versão editada da que acabou de restaurar. Essa funcionalidade é como um backup de versões, por onde poderá recuperá-lo e editá-lo.
Para salvar uma nova versão, basta preencher com um nome no campo Digite um título para a versão e, em seguida, clicar em + Salvar nova versão.
⚠️Atenção: só é possível manter 20 versões. Logo, a partir da vigésima primeira, apaga-se, automaticamente, a mais antiga.