Ir para o conteúdo

Como encerrar uma chamada de voz(Calling API)

📞 Encerramento de Chamada

Quando uma chamada está ativa, qualquer um dos lados — empresa ou usuário — pode encerrá-la. O fluxo é simples, mas é importante documentar como isso ocorre para fechar corretamente a sessão WebRTC.

Existem duas formas de a chamada ser finalizada:

A) O usuário encerra a chamada no aplicativo WhatsApp

Se o usuário clicar em Desligar no app:

O WhatsApp encerra imediatamente a sessão de mídia.

O WhatsApp envia para o webhook da empresa um evento como:

calls.event: "terminate"

calls.direction": "USER_INITIATED"

B) A empresa encerra a chamada

Se o encerramento for iniciado pela própria empresa (backend), então é necessário chamar a API de finalização:

API: POST /waba/{wabaId}/client/{phoneNumberId}/chamada/termina-chamada

Request (exemplo)

{
  "callId": "string", 
}

O WhatsApp envia para o webhook da empresa um evento como:

calls.event: "terminate"

calls.direction": BUSINESS_INITIATED"

O encerramento da chamada não requer troca de SDP. O SDP faz parte apenas da negociação inicial. O término é sempre um comando unilateral (hangup) seguido de notificação via webhook.