Pular para o conteúdo

Chat, mão levantada e reactions

3 formas de interagir sem voz na chamada: chat de texto rápido, mão levantada pra pedir vez e 5 emojis flutuantes (👍 ❤️ 🎉 👏 😂). Tudo peer-to-peer — não persiste após a chamada terminar.

5 minAtualizado em 06/05/2026

A sala de vídeo tem 3 features de interação que funcionam sem áudio — úteis pra recados rápidos sem interromper quem está falando, ou pra reações sociais leves.

⚠️ Importante: nenhum desses 3 features persiste após a chamada terminar. Chat some, mão baixa automaticamente quando o participante sai, reactions são efêmeras (animação de ~3s e some). Quer registro? Use Gravação e Transcrição.

1. Chat in-call

O que é

Painel lateral de mensagens de texto, peer-to-peer, em tempo real. Aparece quando você clica no botão 💬 Chat na ControlBar.

Como usa

  1. Click no ícone 💬 (ControlBar) — abre painel lateral à direita (desktop) ou bottom-sheet (mobile)
  2. Digite mensagem no input → Enter envia
  3. Mensagem aparece pra todos os participantes simultaneamente (broadcast)
  4. Cada mensagem mostra: nome do remetente + timestamp + texto

Não persiste

Quando você fecha o painel, mensagens não somem (continuam carregadas em memória até a chamada terminar). Quando a chamada encerra, todo o histórico vai embora. Não fica salvo no banco. Não aparece no replay.

Por quê? Daily.co sendAppMessage é peer-to-peer — não passa por servidor, não toca o storage. Decisão arquitetural: chat in-call é pra recados efêmeros, não memória de longo prazo. Se quer registro permanente, fala em voz alta (vai pra transcrição) ou mande WhatsApp.

Indicador de não-lido

Quando você está com painel fechado e chega mensagem nova:

  • Badge vermelho aparece sobre o ícone 💬 com contador (1, 2, 3...)
  • Click no botão limpa o contador (mesmo que você não leia tudo)

Edge cases

  • Reload da página durante a chamada → histórico do chat vai embora mesmo que a chamada continue
  • Participante novo entra no meio da chamada → NÃO recebe mensagens anteriores (peer-to-peer não tem histórico replay)
  • Sem markdown / sem anexos — só texto puro
  • Sem emojis especiais — sistema operacional do user determina renderização

2. Mão levantada (hand-raise)

O que é

Toggle simples: você levanta a mão → todos veem indicador na sua tile. Útil pra pedir a vez sem interromper.

Como usa

  1. Click no ícone ✋ Mão na ControlBar (alterna entre raise / lower)
  2. Tile do seu vídeo mostra ícone ✋ amarelo no canto superior
  3. Outros participantes veem o mesmo indicador na sua tile
  4. Click de novo abaixa a mão

Quem vê?

Todos — dono e cliente. Não é privado pro dono. É símbolo social compartilhado.

Cliente também pode levantar

Sim. Cliente tem o botão na ControlBar dele igual ao seu. Útil em:

  • Aulas online — aluno pede pra falar
  • Atendimento médico em grupo — múltiplos participantes pedindo turno
  • Mediação — advogado modera sessão

Edge cases

  • Participante sai com mão levantada → indicador some automaticamente (cleanup quando ele desconecta)
  • Cliente cai e volta → mão é resetada (estado em memória, não em DB)
  • Sem fila ordenada — sistema não numera "1ª mão levantou às 14:32, 2ª às 14:33". Você precisa lembrar manualmente quem foi primeiro.

3. Reactions (emojis flutuantes)

Os 5 emojis

Click no botão 😀 Reactions na ControlBar abre popover com:

EmojiSignificado social comum
👍Concordo / OK / aprovado
❤️Adorei / valorizei o que disse
🎉Comemorar / parabenizar
👏Aplauso / reconhecimento
😂Foi engraçado / acho graça

São fixos — não dá pra customizar a lista (decisão de design pra evitar uso ofensivo).

Como aparece

  • Click num emoji → ele voa pelo overlay da sala com animação (sobe da parte de baixo, balança suave, some em ~3s)
  • Todos os participantes veem a mesma animação no momento que você clica
  • Posição horizontal aleatória — emojis não se sobrepõem perfeitamente
  • Máximo de 5 reactions ativas simultaneamente — se 6 são enviadas em sequência rápida, a mais antiga some pra dar espaço

Não persiste

Igual ao chat e hand-raise: termina a chamada, não há registro de quais reactions foram enviadas. Não aparece no replay.

Quando usar

  • Aulas: alunos comemoram quando professor termina explicação difícil → 👏👏👏
  • Reuniões: confirmar entendimento sem cortar fala (👍 enquanto outro fala)
  • Estética/saúde: cliente celebra resultado mostrado (🎉)

Quando NÃO usar

  • Em consultas sensíveis (terapia, advocacia trauma) — pode parecer leviano
  • Em vendas consultivas formais — quebra o tom profissional
  • Pra troll / reactions repetidas — incomoda os outros

Boa prática: reactions são complementos, não substitutos da fala. Cliente que clica 5 vezes 😂 em sequência tá distraído ou trolando.

Comparação rápida

FeaturePersiste?Quem vê?AtalhoCaso de uso
💬 Chat❌ Some na chamada terminarTodos(sem atalho dedicado)Link rápido, número, recado
✋ Mão levantada❌ Some quando participante saiTodos(sem atalho dedicado)Pedir a vez sem cortar
😀 Reactions❌ Anim ~3s e someTodos(sem atalho dedicado)Feedback social leve

Cliente vê tudo igual

Simétrico: dono e cliente têm acesso aos mesmos botões. Cliente pode:

  • Mandar mensagens no chat
  • Levantar a mão
  • Mandar reactions

Diferente das features assimétricas (gravação, sentimento real-time, sidebar dono — ver Botões da sala pra ver o glossário completo), interação peer-to-peer é igual pros 2.

Edge cases gerais

Sem internet de uma das pontas

  • Se cliente tá com banda ruim, mensagem dele pode demorar 1-2s pra aparecer pro dono (latência peer-to-peer Daily)
  • Reaction pode "atrasar" — você vê 2s depois que ele clicou
  • Hand-raise idem

Múltiplos participantes (3+)

Sistema escala bem até ~6 participantes. Acima disso, chat fica caótico (muita gente digitando), reactions ficam densas demais. Use moderação verbal ("vamos um por vez").

Confusão de identidade

Cada mensagem mostra nome do remetente (puxado do daily.participants().local.user_name). Se cliente entrou sem se identificar, aparece "Cliente" genérico — recomenda nomear pelo termo na FASE 2.5 da jornada dele.

Por que NÃO persiste? (decisão arquitetural)

Considerei salvar chat in-call no DB pra revisão pós-call. Decidi não fazer por 3 razões:

  1. LGPD/privacidade: chat pode ter informação sensível dita "off the record" (tipo "fulano me deve dinheiro") — gravar isso traz risco legal
  2. Custo storage: cada chamada teria mais 1-5KB de dados estruturados
  3. Casos de uso reais: histórico do chat nunca foi pedido por usuários — fala em voz alta vai pra transcrição que já cobre 95% dos casos

Pra casos onde chat persistente é crítico (suporte técnico longo, advocacia documentando acordo): uso recomendado é WhatsApp paralelo (que já é gravado pela Kontato no histórico do cliente).

Próximos artigos

Esse artigo foi útil?

Ainda não usa a Kontato?

Trial grátis · sem cartão de crédito · cancele quando quiser.

Criar conta grátis