Pular para conteúdo

Contatos e Conversas

Contatos

Cada contato e identificado pelo JID do WhatsApp (phone@s.whatsapp.net) e pelo device_id (dispositivo WhatsApp que o atende).

Campos Principais

Campo Descricao
jid Identificador WhatsApp do contato
device_id Dispositivo que atende este contato
name Nome do contato
rd_deal_id ID do deal no RD Station CRM
rd_deal_stage_id ID do stage atual do deal

Estado da Conversa (Conversation State)

Cada conversa possui um estado (key-value store) que persiste entre mensagens. O estado armazena:

  • Dados do lead: rd_lead_name, rd_lead_email, rd_lead_phone
  • Evento de origem: rd_event_identifier
  • Campos customizados do RD: Prefixo rd_field: (ex: rd_field:empresa)
  • Dados de reuniao: meeting_{id} com detalhes do agendamento
  • Variaveis do agent: Qualquer variavel salva pelo agent via set_state_variable

Acesso pelo Agent

O agent pode ler e escrever no estado via skills:

  • get_state_variable: Le uma variavel
  • set_state_variable: Salva uma variavel

Uso no Prompt

As variaveis de estado sao injetadas no contexto do agent, permitindo personalizacao da conversa com base nos dados do lead.

Historico de Mensagens

Todas as mensagens trocadas sao armazenadas no MongoDB e usadas como historico de conversa para o agent. O agent tem acesso ao historico completo para manter contexto entre mensagens.

Visualizacao no Frontend

  • /contacts: Lista de contatos
  • /chats: Interface de chat com historico de mensagens