Execute um código Javascript em um contexto isolado.
Com o Floui, você pode utilizar bibliotecas em Node.js nativas ou externas já instaladas no workpsace. Saiba mais como importar ou manipular funções nativas no artigo: Bibliotecas disponíveis
Funções reservadas
Algumas funções reservadas do Floui são responsáveis por manipular no contexto de execução o objeto msg. Estas funções permitem ao conector Function Javascript aplicarem bibliotecas já instaladas no workspace ou manipular informações em tempo de execução.
Todas as funções reservadas são assíncronas. Para utilizar o await corretamente, ele deve ser usado dentro de uma função declarada como assíncrona (com a palavra-chave async). Essa palavra-chave transforma a função em uma Promise, permitindo que o código aguarde a resolução de outra Promise antes de continuar sua execução.
Permite ao usuário criar blocos de código utilizando a linguagem Javascript.
Tempo limite de execução (em milissegundos)
Campo de texto
Permite adicionar um tempo limite para controlar o tempo máximo em que o código do conector levará para executado. Caso deixado vazio irá limitar em 1000ms (1s).
Sucesso
Quando a função é executada com sucesso, os dados de retorno são atribuídos ao objeto msg do fluxo de execução, adicione novos atributos para atribuir os valores criados.
msg.usuario = {
nome: 'João',
nascimento: 2020
};
async function handler(msg) {
// Obtém o ano atual
const anoAtual = new Date().getFullYear();
// Calcula a idade com base no ano de nascimento
const idade = anoAtual - msg.usuario.nascimento;
// Adiciona a idade ao objeto msg
msg.usuario.idade = idade;
return msg;
}
Ao final da execução, seu objeto msgterá a seguinte estrutura:
Em casos de erro, um log será registrado no Workspace indicando o id exclusivo do conector e a mensagem de exceção gerada pelo fluxo de integração.
Log reportado por não encontrar o atributo data acessado.
handler(msg)
Função utilizada para manipular o objeto msg, que é gerado no contexto da execução do fluxo. Esse objeto contém informações relevantes sobre o estado ou dados processados durante a execução.
Com handler, é possível realizar alterações, validações ou transformações no conteúdo de msg, permitindo personalizar seu comportamento de acordo com as necessidades do fluxo. Ao final, a função retorna o objeto msg, já atualizado com as modificações realizadas.
Parâmetros
msg (objeto): o objeto gerado pelo contexto do fluxo, que será manipulado ou transformado. Contém dados estruturados que podem variar conforme o fluxo ou integração.
async function handler(msg) {
// seu código aqui
return msg;
}
await setFlowData( chave, valor)
Cria um objeto no formato chave-valor, conhecido como HashTable, armazenando temporariamente na memória. Os dados gravados por meio de setFlowData permanecem disponíveis apenas durante a execução do fluxo, sendo automaticamente descartados ao término do processo. Isso torna a função ideal para armazenar informações transitórias e contextuais necessárias para o fluxo atual, sem a preocupação de gerenciamento ou limpeza manual.
Parâmetros
chave (string): A chave única que identifica o valor armazenado. Deve ser uma string, clara e descritiva, para facilitar o acesso ao dado posteriormente.
valor (qualquer tipo de dado): O valor associado à chave. Pode ser de qualquer tipo (string, número, objeto, array, etc.), desde que seja compatível com o contexto do fluxo.
await getFlowData("chave")
Recupera um valor previamente armazenado com a função setFlowData. Através da chave fornecida, a função busca dentro do objeto chave-valor (HashTable) criado na memória temporária durante a execução do fluxo. Caso a chave não exista, o retorno será undefined.
Os dados acessados por getFlowData são transitórios e estão disponíveis apenas enquanto o fluxo está em execução. Após a conclusão do fluxo, toda a tabela é descartada, garantindo um ambiente de memória limpa e sem resíduos.
Parâmetros
chave (string): a chave única utilizada para identificar e recuperar o valor armazenado. Deve corresponder exatamente à chave usada no momento da inserção com setFlowData.
await getVar("chave")
Recupera o valor associado a uma variável definida no painel de configuração do fluxo ou uma variável global do Workspace, caso a variável global e do fluxo possuem o mesmo nome, irá capturar a variável do fluxo. Através do nome da variável fornecido, getVar permite acessar valores configurados, facilitando a reutilização de dados dentro do fluxo.
Parâmetros
nomeVariavel (string): o nome da variável a ser buscada. Deve ser uma string que corresponda exatamente ao nome utilizado no momento da definição da variável.
Variáveis padrões
current_date
current_datetime
current_time
timestamp
Configuração de uma variável local pelo painel do fluxo.