Adaptador web-client
Caminho de hoje. Puppeteer + Chrome. Sem chave de SDK Zoom necessária; funciona em Zoom plano gratuito e pago igualmente.
bot api · zoom
web disponível hoje · linux SDK Q3POST URL zoom.us em POST /v1/bots; entramos via cliente web hoje (sem chave de SDK Zoom necessária, sem binário nativo no seu lado). O Zoom Linux Meeting SDK chega em M5 para hosts pagos que precisam entradas autenticadas.
visão geral
Dois caminhos de adaptador. Hoje: o cliente web do Zoom. Mesmo stack Puppeteer + Chrome que Meet e Teams; funciona para hosts plano gratuito, não exige chave SDK Zoom de você, não precisa de binário nativo em lugar nenhum do seu stack. Áudio por falante vem do mapeamento SSRC do WebRTC; nomes de participantes do painel People; captions do WebSocket de captions do Zoom onde habilitado. Contrato de webhook idêntico às outras plataformas.
O upgrade ao Linux SDK em M5. Solicitamos licença do Zoom Linux Meeting SDK — quando aprovado (espera de 4 semanas), rotearemos hosts Zoom pagos pelo SDK nativo via binding FFI Bun. Significa não mais jogos semanais de quebras de DOM com cliente web do Zoom e teto de confiabilidade muito maior para clientes que precisam. O adaptador Web fica como fallback para hosts plano gratuito contra os quais o SDK não pode autenticar.
Bots logados depois. M3 traz OAuth Zoom em cima do caminho SDK — você registra app OAuth Zoom, seus usuários finais passam por OAuth, armazenamos tokens ZAK + OBO, e o bot entra como host autenticado. Isso passa pela sala de espera em planos Zoom gratuitos e significa que podemos gravar sem o host estar presente. É o mesmo padrão «OAuth multi-tenant hospedado» que estamos lançando para Google + Microsoft em paralelo.
o que você recebe
Caminho de hoje. Puppeteer + Chrome. Sem chave de SDK Zoom necessária; funciona em Zoom plano gratuito e pago igualmente.
M5 (Q3 2026). FFI C++ do Bun via bun:ffi. Maior confiabilidade para hosts Zoom pagos; substitui adaptador Web para essas contas.
M3. Cliente registra app OAuth Zoom; usuários finais autorizam; bot entra como host autenticado. Passa pela sala de espera em planos Zoom gratuitos.
Mapeamento SSRC do WebRTC juntado aos nomes de participantes do painel People do Zoom. Mesmo formato JSONL que Meet/Teams.
Onde o host tem captions habilitados, lemos enunciados finalizados do WebSocket de captions do Zoom. Fallback para raspagem do DOM se não.
waiting_for_host, host_denied_admission, removed_from_meeting, meeting_ended, recording_disabled, lobby_timeout — surgem no webhook.