function.jsonc da função. Se você só tem um arquivo entry.ts ou entry.js, precisará adicionar este arquivo de configuração para usar automations. Automations são implantadas atomicamente com o código da função quando você executa deploy ou functions deploy.
Tipos de automation
A Base44 suporta 4 tipos de automations:- Automations agendadas com cron: Use expressões cron para controle preciso de agendamento.
- Automations agendadas com cronogramas simples: Configure tarefas recorrentes por intervalo sem expressões cron.
- Automations de eventos de entidade: Dispare funções quando registros do banco de dados são criados, atualizados ou excluídos.
- Connector automations: Responda a eventos de serviços conectados em tempo real, como um novo e-mail no Gmail ou uma mudança de arquivo no Google Drive.
Campos comuns
Campos comuns para todas as automations
Todos os tipos de automation compartilham os seguintes campos:Campos comuns para automations agendadas
Tanto automations agendadas com cron quanto com cronograma simples compartilham estes campos adicionais:Configuração de automation
Configure automations no seu arquivofunction.jsonc usando uma das abordagens a seguir. Todas as automations usam os campos comuns para todas as automations listados acima, mais os campos específicos de cada tipo.
Cron
Use os campos comuns para todas as automations e os campos comuns para automations agendadas junto com os campos específicos de cron listados aqui. Definatype como "scheduled" e schedule_type como "cron" para usar expressões cron para controle preciso de agendamento.
Automations cron usam a sintaxe padrão de 5 campos: minute hour day-of-month month day-of-week. Veja crontab.guru para um editor interativo e referência de sintaxe de expressões cron.
Exemplo de cron
Este exemplo executa uma função todos os dias à meia-noite UTC:Cronograma simples
Use os campos comuns para todas as automations e os campos comuns para automations agendadas junto com os campos de cronograma simples listados aqui. Definatype como "scheduled" e schedule_type como "simple" para necessidades de agendamento mais simples.
Configure tarefas recorrentes por intervalo como minutos, horas, dias, semanas ou meses sem escrever expressões cron.
Exemplos de cronograma simples
Os exemplos a seguir mostram diferentes maneiras de agendar automations com cronogramas simples:Eventos de entidade
Use os campos comuns para todas as automations junto com os campos de evento de entidade listados aqui. Definatype como "entity" para disparar funções automaticamente quando registros do banco de dados são criados, atualizados ou excluídos.
Automations de entidade podem escutar 1 ou mais tipos de evento em uma entidade específica.
Exemplos de eventos de entidade
Os exemplos a seguir mostram como disparar funções com base em eventos de entidade:Connector automations
Use os campos comuns para todas as automations junto com os campos específicos de conector listados aqui. Definatype como "connector" para disparar funções quando uma integração conectada envia um evento de webhook. Use estes para reagir à atividade de serviços externos em tempo real. Por exemplo, você pode analisar um novo e-mail, sincronizar uma mudança de calendário ou responder a uma atualização de arquivo no Google Drive.
Você pode opcionalmente adicionar condições de gatilho para filtrar eventos para que sua função só rode quando o payload corresponder a regras que você define.
Quando uma connector automation dispara, sua função recebe um payload de webhook estruturado contendo o tipo de evento, detalhes da integração e os dados brutos do serviço externo.
O conector deve estar configurado no seu projeto e autorizado antes do deploy. Veja Conectores compartilhados para instruções de configuração.
Integrações e eventos suportados
Connector automations do Slack exigem condições de gatilho. O deploy falhará se nenhuma condição for definida para connector automations do Slack.
Formatos de Resource ID
O valor esperado pararesource_id varia por conector:
- Google Drive: O ID do arquivo. Obrigatório para eventos com escopo de arquivo (
file,file.update,file.trash,file.untrash,file.delete). - Gmail: Uma lista separada por vírgulas de IDs de label para observar. Padrão é
"INBOX"se omitido. - Microsoft Teams:
{teamId}/{channelId}para observar um canal específico, ou{chatId}para observar um chat específico. - SharePoint:
{siteId}/{listId}para observar uma lista específica.
Condições de gatilho
Usetrigger_conditions para filtrar eventos de webhook para que sua função só rode quando o payload corresponder a regras que você define. Se nenhuma condição for definida, a função roda para cada evento recebido. Veja Exemplos de connector automation para configurações completas.
string
Como combinar as condições. Valores possíveis:
"and" (todas devem corresponder), "or" (qualquer deve corresponder). O padrão é "and".array
obrigatório
Um ou mais objetos de condição ou grupos de condição aninhados. Máximo de 20 condições folha e 5 níveis de aninhamento.
Payload do webhook
Quando uma connector automation dispara sua função, o corpo da requisição contém um objetopayload com a seguinte estrutura. Veja Exemplos de connector automation para uma função que lê o payload.
Exemplos de connector automation
Argumentos de função
Passe dados para sua função quando ela é disparada incluindo o campofunction_args na sua configuração de automation. Isso é útil quando uma função lida com múltiplas automations com comportamentos diferentes, como uma função de sincronização que roda incrementalmente a cada 15 minutos, mas faz uma sincronização completa diariamente.
Acesse esses argumentos no código da sua função através do corpo da requisição.
Exemplo de argumentos de função
Este exemplo mostra uma função que lida com modos de sincronização incremental e completa com base no config da automation:Implante automations
Implante funções de backend com suas automations usando o comando da CLIfunctions deploy ou o comando unificado deploy. Você pode implantar funções específicas pelo nome com functions deploy <names...>.
O deploy é atômico por função. Uma função só é considerada implantada se tanto o deploy do Deno quanto todas as suas automations forem bem-sucedidas. Se qualquer automation falhar ao implantar, todo o deploy da função é revertido.
Após implantar, a CLI mostra o status por função: deployed, unchanged ou error.
Gerencie automations no dashboard
Veja e gerencie suas automations no dashboard da Base44 na aba Automations. No dashboard, você pode:- Ver logs e histórico de execução
- Executar automations manualmente para testes
- Monitorar o status das automations
Veja também
- Funções de backend: Saiba sobre funções de backend
functions deploy: Implante funções com automationsdeploy: Implante todos os recursos de uma vezlogs: Veja logs de função
Esta página foi traduzida usando IA. Para informações mais precisas e atualizadas, consulte a versão em inglês.