# Use confirmações de leitura, digitação e reações

Torne as trocas de atendimento responsivas preservando a semântica de mensagens e reações.

## Pré-requisitos

Uma mensagem recebida, permissão para operar o remetente e uma interação de atendimento compatível.

## 1. Decida o que o sinal significa

Marque uma mensagem recebida como lida quando sua equipe tiver levado a conversa para o fluxo de atendimento. WhatsApp também marca mensagens anteriores naquela conversa como lidas, então essa ação confirma mais do que a mensagem referenciada. Use digitação enquanto prepara uma resposta, e não como indicador permanente.

## 2. Use a operação publicada

Use [Marcar uma mensagem como lida](/docs/api/reference/send-whatsapp-read-receipt), `POST /v1/whatsapp/messages/{message_id}/read`, para uma mensagem recebida. WhatsApp marca essa mensagem e todas as mensagens anteriores na conversa como lidas. Defina `typing_indicator` quando você estiver preparando uma resposta. Um `202` confirma que a confirmação de leitura foi aceita para processamento; isso não prova que o cliente viu o indicador. Não há webhook de entrega de confirmação nem mensagem separada para consultar.

Depois que a Meta aceita a confirmação, a mensagem recebida pode exibir `read_at` mantendo seu status `received`. A confirmação não gera mensagem de saída cobrável. Siga a operação publicada de confirmação de leitura para expiração de digitação e idade elegível da mensagem.

## 3. Trate mudanças de reação

Inscreva-se em `whatsapp.reacted` para mudanças de reação recebidas. Uma reação anota uma mensagem referenciada; não é outra mensagem de texto `whatsapp.received`. Um emoji nulo pode representar remoção. Preserve o emoji exato em vez de normalizar valores distintos.

## 4. Mantenha histórico e estado atual separados

Use o log de reações para mudanças e as reações da mensagem para o estado atual por remetente. Uma referência antiga não resolvida do provedor pode não ter reação correspondente, então a ausência de uma entrada não prova que o cliente nunca reagiu.

## 5. Teste o fim da interação

Ensaie reações adicionadas, substituídas e removidas, processamento atrasado e uma resposta interrompida. Garanta que a resposta real ou o encaminhamento para um humano ocorra após o sinal.

## Solução de problemas

Se uma reação estiver ausente na lista de mensagens, inspecione o evento de reação e o log de mensagens referenciadas. Se a digitação persistir no estado da sua aplicação, revise sua expiração separadamente do estado de leitura. Consulte [Eventos WhatsApp](/docs/guides/whatsapp/events#reactions) para o formato publicado do webhook.

## Próximos passos

- [Explore a capacidade relacionada do WhatsApp](/products/whatsapp/two-way).
- [Encontre todos os guias e respostas explicadas sobre WhatsApp](/products/whatsapp/resources).
- [Prepare sua primeira troca completa](/products/whatsapp/getting-started).

## Related resources

- [Connecting WhatsApp to Bird: from buying a number to a live channel](/learn/whatsapp/connecting-whatsapp-to-bird) (video)
- [What is the 24-hour customer service window on WhatsApp?](/explained/whatsapp/what-is-the-24-hour-customer-service-window) (answer)
- [WhatsApp message builder](/tools/whatsapp-message-builder) (tool)
- [WhatsApp](/products/whatsapp) (product)

[Get an implementation brief](/learn/workspace?topic=whatsapp)
