AstraCalls is a production-ready fork of WaCalls that adds multi-account persistence, messaging API, webhooks, Chatwoot integration, API key auth, and Docker Swarm deployment to pure-Go WhatsApp voice calling from the browser.

Stars

46

7-day growth

No data

Forks

42

Open issues

4

License

AGPL-3.0

Last updated

2026-07-25

AI repository intelligence
FR-AI / ANALYSIS

Why it is worth attention

It transforms the original WaCalls proof-of-concept into a scalable SaaS platform by adding PostgreSQL session storage, a rich REST API, webhook events, a Chatwoot call widget, and containerized deployment—all while keeping the entire VoIP stack in native Go.

Who it is for

  • Developers building WhatsApp-based communication tools
  • SaaS providers wanting to offer WhatsApp voice calling as a service
  • Customer support teams using Chatwoot who need voice integration
  • Organizations requiring multi-account WhatsApp management with call capabilities

Use cases

  • Add WhatsApp voice calling to a custom web application
  • Build a multi-agent call center using WhatsApp as the carrier
  • Integrate incoming/outgoing WhatsApp calls directly into Chatwoot conversations
  • Deploy a multi-tenant WhatsApp calling API for internal or client-facing services

Strengths

  • Full VoIP stack in pure Go (MLow codec, RTP/SRTP, WebRTC relay) with zero Node.js dependencies
  • Production-grade persistence: one PostgreSQL database per WhatsApp session, inspired by WAHA
  • Comprehensive API beyond calls: send text and media messages, configure webhooks, manage Chatwoot integration
  • Easy cloud deployment with Docker Swarm + Traefik, including automated NAT handling for cloud providers

Considerations

  • Live audio requires cgo and a compiled opus_mlow library; without it, the server runs in signaling-only mode
  • Only 1:1 voice calls are supported—no video calls or group calls
  • The AGPL-3.0 license requires any network service to release source code, which may affect commercial SaaS deployments

README quick start

📞 AstraCalls

Chamadas de voz do WhatsApp em Go puro, direto do navegador — agora prontas para produção SaaS.

Mídia VoIP nativa, multi-conta (multi-sessão), API de mensagens, webhooks, integração com Chatwoot e deploy em Docker Swarm + Traefik.

Visão Geral · Novidades · Arquitetura · Início Rápido · Deploy · API · Suporte


AstraCalls é um fork de produção do WaCalls (de @jotadev66). Mantém todo o núcleo VoIP nativo em Go e adiciona a camada que faltava para operar como serviço: PostgreSQL por sessão, API de mensagens, webhooks, integração nativa com Chatwoot (inclusive um widget de chamada dentro do Chatwoot), autenticação por API key e deploy containerizado em Docker Swarm com Traefik/HTTPS. Todos os créditos do projeto original estão preservados em Colaboradores.


📋 Visão Geral

O AstraCalls pareia uma ou mais contas do WhatsApp via QR code e permite fazer e receber chamadas de voz 1:1 de qualquer navegador. O microfone do navegador é enviado por WebRTC (Opus) para o servidor Go, que transcodifica para o codec MLow da Meta e injeta a mídia na malha de relay SRTP do WhatsApp — e o caminho inverso traz o áudio do outro lado de volta ao navegador.

Toda a pilha VoIP roda nativamente em Go: o codec de voz MLow, a empacotagem RTP/SRTP, STUN, o transporte WebRTC/SCTP relay e a sinalização ``, integrados ao whatsmeow e servidos a um cliente React 19. A única dependência em C é o codec opus_mlow (via cgo) — e ela é opcional: sem ela o servidor roda em modo somente sinalização (pareamento e setup de chamada funcionam; sem áudio ao vivo).

Várias contas do WhatsApp podem ser pareadas e operadas lado a lado, cada uma com seu QR, status de conexão e histórico próprios. Uma única conta também pode manter várias chamadas 1:1 simultâneas — uma po

Description

Chamadas de voz do WhatsApp no navegador (Go + whatsmeow + pion + MLow) com PostgreSQL por sessao, API de mensagens, webhooks, integracao Chatwoot e deploy Docker Swarm. Fork do WaCalls.

Related repositories

Similar projects matched by category, topics, and programming language.

nethical6
Featured
nethical6 GitHub avatar

conversation-steganography

A tool that hides encrypted secret messages inside innocent-looking AI-generated chat text for private communication over any messaging platform.

Go
1,149
programmersd21
Featured
programmersd21 GitHub avatar

flow

flow is a minimalist terminal dashboard that displays real-time network throughput with smooth animations, multiple responsive modes, and zero configuration.

Developer ToolsCLI & Terminal
277
MobAI-App
MobAI-App GitHub avatar

simslim

simslim reduces iOS simulator memory usage by 4x by disabling unnecessary background daemons, allowing many more simulators to run on a single Mac.

Go
248