Documentation Index
Fetch the complete documentation index at: https://zapo.to/llms.txt
Use this file to discover all available pages before exploring further.
Pede pareamento (mostra um QR) a cada reinício
Pede pareamento (mostra um QR) a cada reinício
O cliente não reconecta após uma queda
O cliente não reconecta após uma queda
zapo não reconecta sozinho. Escute o evento connection com status: 'close' e chame connect() de novo (pule quando isLogout for true). Veja o padrão de reconexão.Minha mídia envia mas sem preview / dimensões / waveform
Minha mídia envia mas sem preview / dimensões / waveform
@zapo-js/media-utils — mas sem ele não há processor para gerar thumbnails/previews, dimensões de imagem-vídeo ou waveforms de áudio, então ela pode aparecer como anexo simples ou sem preview. Para mídia adequada, instale (npm i @zapo-js/media-utils, mais ffmpeg/ffprobe) e configure um processor via opção media. Veja Mídia.Prefira stream em vez de Buffer para mídia
Prefira stream em vez de Buffer para mídia
string) ou um Readable para media, não um Buffer — o zapo faz streaming dos bytes pelo pipeline, então a memória fica constante mesmo com arquivos grandes. No download, prefira downloadToFile/download em vez de downloadBytes.O proxy não está sendo usado
O proxy não está sendo usado
proxy.ws precisa do pacote ws (o WebSocket nativo do runtime não aceita um Agent HTTP). As pernas de mídia/link-preview usam um dispatcher do undici. Veja os exemplos de proxy para SOCKS/HTTP/HTTPS e IPv4/IPv6.Para qual JID eu respondo num grupo?
Para qual JID eu respondo num grupo?
event.chatJid (o JID do grupo), nunca para o JID de um participante. Quando você tiver o LID de um contato, prefira o LID — é a identidade preservadora de privacidade e compatível com o futuro. Veja Identidades (PN vs LID).Recebo minhas próprias mensagens enviadas
Recebo minhas próprias mensagens enviadas
message com isSender: true. Filtre-os se você só quer tráfego de entrada. Veja Recebendo mensagens.Como tipar o handler de mensagem no TypeScript?
Como tipar o handler de mensagem no TypeScript?
Dá para registrar um número novo (mobile)?
Dá para registrar um número novo (mobile)?
zapo intencionalmente não fornece API de registro — registrar um número é complexo e exige um celular físico. Você conecta com credenciais já registradas. Veja Conexões mobile.QR ou código de 8 dígitos — qual usar?
QR ou código de 8 dígitos — qual usar?
auth_qr). Para um código de 8 dígitos, chame client.auth.requestPairingCode(phone) após o evento auth_pairing_required. Veja Autenticação.logout() vs disconnect()
logout() vs disconnect()
disconnect() fecha o socket mas mantém as credenciais para você retomar depois. logout() desvincula o dispositivo no servidor e limpa o estado armazenado (conforme logoutStoreClear). Veja Autenticação.Uma operação de business/newsletter dá erro
Uma operação de business/newsletter dá erro
Ainda travado?
Arquitetura em detalhes
API low-level
lowlevel.