-
Notifications
You must be signed in to change notification settings - Fork 2
Eventos
Esta página resume como os eventos do Baileys entram no Zyra, quais são as categorias mais relevantes e quais efeitos colaterais operacionais o runtime produz.
A borda principal de entrada está em src/events/register.ts.
A camada de eventos é responsável por:
- receber eventos do WhatsApp via Baileys
- registrar auditoria e logs estruturados
- alimentar stores e persistência durável
- acionar o runtime de comandos quando aplicável
- disparar sincronizações e refreshes complementares
connection.updatecreds.updatemessaging-history.set
Esses eventos afetam bootstrap, reconexão, sync inicial, QR Code, persistência de credenciais e estabilização da sessão.
messages.upsertmessages.updatemessages.media-updatemessages.deletemessages.reactionmessage-receipt.update
messages.upsert é a principal porta de entrada do runtime de comandos quando o tipo é notify.
chats.upsertchats.updatechats.deletecontacts.upsertcontacts.updatepresence.update
Esses eventos mantêm estado operacional consistente em memória, Redis e SQL.
groups.upsertgroups.updategroup-participants.updategroup.join-requestgroup.member-tag.update
Além de auditoria, esses eventos atualizam participantes, papéis e visão relacional de grupos.
blocklist.setblocklist.updatelabels.editlabels.associationcall
newsletter.reactionnewsletter.viewnewsletter-participants.updatenewsletter-settings.update
A aplicação também tenta sincronizar metadados e tratar refresh de mídia de newsletters quando necessário.
- O evento chega ao
register.ts. - O handler registra log estruturado e, quando aplicável, auditoria SQL.
- Stores em memória/Redis/SQL são atualizadas.
- Se for
messages.upsertdo tiponotify, a mensagem entra no router/runtime. - Tarefas adicionais podem ocorrer:
- sync de grupos e comunidades
- refresh de mídia
- sync de newsletter metadata
- persistência de falhas e snapshots auxiliares
A camada de eventos grava informações em estruturas como:
events_logmessage_eventsgroup_eventsnewsletter_eventsmessage_failures
Isso permite suporte, rastreamento e reconciliação posterior.
A execução de comandos não nasce no módulo de comandos; ela começa aqui, a partir de messages.upsert, e depois segue para o router e processor.
Na abertura da conexão, a aplicação tenta sincronizar grupos e comunidades para atualizar o estado conhecido logo após o login.
Para newsletters/canais, o runtime pode:
- gravar snapshots
- registrar participantes e eventos
- sincronizar metadados com TTL/retry
- tentar refresh de mídia quando o payload chega incompleto
Ao adicionar ou ajustar um handler:
- manter o comportamento idempotente sempre que possível
- preservar a auditoria e o logging estruturado
- evitar que falhas locais derrubem o fluxo global
- adicionar testes de cobertura próximos ao subsistema afetado
Zyra Wiki • Última atualização: 17/05/2026
Zyra Wiki • Última atualização: 17/05/2026
Home | Configuração | Comandos | Banco-de-Dados | Produção | Troubleshooting