REDA One Centro de ajuda
PT
Idioma
English EN Español ES Português PT Italiano em breve Français FR Deutsch em breve العربية em breve
reda.one ↗
Início / REDA AI / Canais e implantação / Gestão de Respostas de E-mail

Gestão de Respostas de E-mail

Rastreamento de Respostas Quando um agente envia um e-mail e o destinatário responde, a REDA AI pode detectar a resposta, associá-la ao e-mail de saída original e acionar o próximo passo — seja disparando uma ação pré-agendada, seja encaminhando o texto da resposta para um novo turno do agente. É isso que transforma e-mails avulsos em conversas por e-mail de várias etapas.

O Que Esta Página Aborda

A Gestão de Respostas de E-mail é o lado de entrada do e-mail iniciado pelo agente. Ela combina com dois outros recursos:

  • Canal de e-mail — Envio — como o agente envia o e-mail original e o marca para rastreamento de resposta com um group_key.
  • Ações agendadas — como as ações de follow-up são armazenadas e executadas, incluindo as acionadas por resposta.

Isso não é o mesmo que Canal de e-mail — Recebimento, que serve para a captação de documentos não solicitados em um endereço de Email Service gerenciado pelo Salesforce.

Como Funciona a Detecção de Respostas

A REDA AI expõe uma ação invocável de Apex, Process Inbound Emails, que inspeciona os registros EmailMessage recém-chegados e decide se são respostas a e-mails iniciados pelo agente. Os clientes a conectam a um Flow acionado por registro em EmailMessage.

  1. O agente envia o e-mail

    O agente chama send_email com um group_key. A plataforma grava o Id e o assunto do EmailMessage resultante em qualquer Ação agendada de IA pendente com rastreamento de resposta que compartilhe essa chave de grupo. Veja Canal de e-mail — Envio.

  2. Respostas recebidas são capturadas

    As respostas recebidas chegam pela infraestrutura de e-mail do Salesforce que estiver configurada — tipicamente o Email-to-Case, mas o recurso é agnóstico quanto à infraestrutura. Cada resposta gera um registro EmailMessage com Incoming = true.

  3. O Flow é acionado

    Um Flow acionado por registro em EmailMessage, criado pelo cliente (após a inserção, filtrado para recebidos), chama a ação invocável Process Inbound Emails com os novos Ids de EmailMessage.

  4. Verificação de saída rápida

    O handler faz uma única consulta SOQL para verificar se existe alguma Ação agendada de IA pendente com rastreamento de resposta. Se não houver nenhuma, ele retorna imediatamente. Na maioria das organizações, o tempo de Apex gasto aqui é praticamente nulo em média.

  5. Correspondência assíncrona

    Se houver ações pendentes, o handler enfileira um Queueable que executa a correspondência real com os registros EmailMessage recebidos.

  6. Estratégia de correspondência

    O Queueable usa dois comparadores: uma correspondência por thread pai robusta (o EmailMessage pai da resposta recebida é igual ao Id do EmailMessage de saída rastreado) e uma alternativa por linha de assunto (com os prefixos “Re:/Fwd:” normalizados e removidos) quando o pai não está definido.

  7. A ação é ativada

    Para cada resposta correspondida, a Ação agendada de IA correspondente sai do estado pendente. Se a ação estiver configurada para processar via IA, o texto da resposta é encaminhado para um novo turno do agente; caso contrário, a carga da ação (por exemplo, um e-mail de saída com modelo ou uma atualização de registro) é executada diretamente.

Configurando o Recurso

Etapa 0 — Ative o rastreamento de respostas de e-mail

O Email Reply Tracking vem desativado, e nada aqui funciona até você ligá-lo. É uma Configuração da plataforma (REDA AI Administration › Configuration › System & Notifications). O handler o verifica primeiro em cada e-mail de entrada e retorna imediatamente se estiver desligado — então um Fluxo perfeitamente construído, com as condições de entrada certas e agentes bem configurados, vai ficar sem fazer nada, sem erro e sem nada nos logs que explique por quê.

O rastreamento de respostas também exige que o Enhanced Email esteja habilitado na organização, porque é ele que faz o Salesforce criar os registros EmailMessage que todo o mecanismo lê.

Etapa 1 — Confirme que as respostas viram registros EmailMessage

A Gestão de Respostas depende de as respostas recebidas chegarem ao Salesforce como registros EmailMessage. A maioria das organizações já tem isso por meio do Email-to-Case. Outras configurações válidas incluem o Lightning Email Relay, o Email-to-Salesforce com o roteamento adequado, ou um Email Service personalizado que crie os registros EmailMessage por conta própria.

A plataforma usa SOQL dinâmico para ler o EmailMessage, então o pacote compila mesmo em organizações onde o objeto não está disponível. Nesses casos, a Gestão de Respostas simplesmente não faz nada.

Etapa 2 — Construa o Flow acionado por registro

  1. Objeto: EmailMessage

    Configure o Flow como acionado por registro em EmailMessage, disparado após a criação de um registro.

  2. Condição de entrada: Incoming = TRUE

    Filtre apenas os e-mails recebidos. Os EmailMessages de saída não precisam de tratamento aqui.

  3. Opcional: filtragem mais restrita

    Se quiser limitar o Flow a casos de uso de e-mail específicos — apenas os vinculados a determinados casos, ou excluindo certas caixas de entrada — adicione condições de entrada extras. A ação invocável pode ser chamada com segurança para qualquer EmailMessage recebido, então disparos excessivos custam apenas um pouco de Apex.

  4. Adicione a Ação do Apex

    Passe o Id do registro que acionou o Flow como a coleção de entrada. A ação aceita uma lista de Ids de EmailMessage; o Flow tem apenas um registro por disparo, mas a ação invocável trata ambos os formatos.

  5. Ative

    Salve e ative o Flow. A partir daí, toda resposta recebida é oferecida à plataforma para correspondência.

Etapa 3 — Configure os agentes para usar ações agendadas com rastreamento de resposta

O Flow só cumpre sua função se houver Ações agendadas de IA pendentes com rastreamento de resposta para comparar. Certifique-se de que o agente que envia os e-mails de saída também esteja chamando schedule_action com gatilhos de resposta quando apropriado, e que ambas as chamadas compartilhem o mesmo group_key. Veja Ações agendadas para o contrato da ação.

Passo 4 — Direcione as respostas para um endereço que chegue até aqui

Tudo o que foi descrito acima só entra em ação depois que uma resposta realmente chega ao Salesforce. Para onde uma resposta vai é decidido pelo endereço ao qual o cliente de e-mail do destinatário responde — por isso um agente pode definir um endereço de resposta nos e-mails que envia, e é esse endereço que fecha o ciclo. Aponte-o para a caixa de entrada ligada ao roteamento do Passo 1 e a resposta volta para a conversa; aponte-o para uma caixa sem monitoramento e a resposta nunca será vista aqui, por melhor que o Flow esteja configurado.

O endereço de resposta é definido pelas instruções do agente que envia — consulte Escolhendo o remetente e o endereço de resposta. Se um agente definir um endereço de resposta que não consegue trazer a resposta de volta, o e-mail ainda assim é enviado e a divergência fica registrada, de modo que um ciclo que não leva a lugar nenhum pode ser encontrado.

Novidade na V1.14. Antes, os agentes não definiam nenhum endereço de resposta, então as respostas seguiam o endereço de envio que tivesse sido usado. Poder indicá-lo explicitamente é o que torna possível um ciclo de ida e volta confiável.

Duas Estratégias de Correspondência

O Queueable usa duas estratégias, nesta ordem:

Estratégia Como corresponde Confiabilidade
Correspondência por thread pai O ParentId da resposta recebida (ou a mensagem de saída à qual ela está encadeada) é igual ao Id do EmailMessage de saída rastreado gravado na Ação agendada de IA. A mais forte. Usada sempre que a vinculação de thread do Salesforce preencheu a referência ao pai.
Alternativa por assunto O assunto normalizado da resposta recebida (com prefixos como Re:, Fwd: e similares removidos) é igual ao assunto normalizado armazenado na Ação agendada de IA. Útil quando a vinculação de thread não ocorreu, ou quando a resposta chegou por uma infraestrutura que não preserva referências ao pai.

A correspondência por assunto é intencionalmente uma alternativa. Se um único assunto for reutilizado em várias Ações agendadas de IA para o mesmo destinatário, espere que a correspondência por thread pai resolva a ambiguidade; caso contrário, projete o agente para usar assuntos exclusivos.

O Que Acontece Depois de Uma Correspondência

O indicador Process Via AI da Ação agendada de IA determina o que acontece a seguir:

  • Process Via AI = true — o texto da resposta recebida é encaminhado para um novo turno do agente original. O agente vê a resposta como se o usuário a tivesse digitado e produz a próxima resposta (que, por sua vez, pode agendar outro e-mail com rastreamento de resposta).
  • Process Via AI = false — a carga predefinida da Ação agendada de IA é executada diretamente. Esse é o padrão certo para roteiros fixos: um e-mail de agradecimento com modelo, uma atualização de status de registro, uma notificação interna.

Em ambos os casos, a Ação agendada de IA original sai do estado pendente para que não possa ser disparada novamente. Se o destinatário enviar várias respostas, apenas a primeira que corresponder ativa a ação.

As condições também são verificadas aqui

Se a Ação agendada correspondente tiver uma condição, ela é verificada antes de qualquer execução — exatamente como seria para uma ação disparada por agendamento. A chegada de uma resposta, por si só, não significa que a ação ainda deva seguir adiante: o registro relacionado pode ter mudado nesse meio-tempo. Se a condição não for atendida, a ação é Ignorada e o motivo fica registrado nela. Consulte Execução Condicional para ver como as condições são montadas.

Alterado na V1.14. As ações disparadas por uma resposta de e-mail antes ignoravam totalmente a sua condição e eram executadas de qualquer forma. Agora elas a respeitam como qualquer outra ação. Se, depois de atualizar, uma ação disparada por resposta passar a aparecer como Ignorada, é porque a condição dela estava sendo ignorada antes — leia o motivo registrado na ação.

Observabilidade

  • Registros de Ação agendada de IA — o ciclo de vida (Pendente → Resposta Recebida → Executada) fica visível no registro da Ação agendada de IA. O Id e o assunto do EmailMessage de saída rastreado são armazenados junto com a configuração do gatilho.
  • Registros de conversa — quando o Process Via AI está ativado, o turno do agente acionado pela resposta é anexado à conversa original, mantendo o histórico de vários turnos coerente.
  • Registro de incidentes de IA — se o EmailMessage recebido não puder ser processado (erros de limites do sistema, exceções do Apex, dados malformados), um registro de Registro de incidentes de IA é criado. O próprio Flow não é responsável pelas novas tentativas; aplica-se o tratamento de erros padrão do Salesforce.

Segurança e Governança

  • O Flow é executado como o usuário que criou o EmailMessage. No Email-to-Case, esse é o usuário Automated Process; em outras configurações, depende da sua configuração. O usuário precisa ter acesso aos registros de Ação agendada de IA para que a correspondência funcione.
  • As respostas não são confiadas cegamente. Somente os EmailMessages recebidos cujo assunto ou thread corresponda a uma Ação agendada de IA pendente com rastreamento de resposta chegam a ativar algo. Spam, devoluções e respostas não relacionadas não têm efeito.
  • As colisões de assunto são limitadas. Cada Ação agendada de IA armazena seu assunto rastreado com a grafia original; o comparador normaliza apenas os prefixos de resposta, não o corpo do assunto, de modo que dois agentes não relacionados com assuntos idênticos em seus modelos é o único risco prático.
  • Sem resposta, sem ação. As ações com rastreamento de resposta só são liberadas ao receber de fato uma resposta — elas não disparam por temporizador. Combine-as com uma Ação agendada de IA baseada em tempo se também quiser um follow-up caso o destinatário nunca responda.

Boas Práticas

Sempre combine send_email e um schedule_action com rastreamento de resposta no mesmo grupo. A plataforma vincula o e-mail de saída à ação somente se ambas as chamadas compartilharem o mesmo group_key.

Torne os assuntos distintivos. A correspondência por assunto é o mecanismo de segurança quando a vinculação de thread não ocorre. Quanto mais distintivo o assunto, menos ambiguidade adiante.

Use o Process Via AI com moderação. Encaminhar respostas para um novo turno do agente é poderoso, mas consome créditos e capacidade de cache de prompts. Para confirmações simples ou atualizações de status, uma carga com modelo é mais barata e mais previsível.

Combine gatilhos de resposta com temporizadores. Agende um follow-up com rastreamento de resposta e uma alternativa baseada em tempo no mesmo grupo. Se a resposta chegar primeiro, a plataforma dispara a ação com rastreamento de resposta; caso contrário, o temporizador dispara a alternativa.

Mantenha o Flow restrito. Adicione, no mínimo, uma condição de entrada que filtre o Flow para Incoming = TRUE, e considere filtros mais rígidos para organizações de alto volume. O Apex por e-mail recebido é pouco, mas não é gratuito.

Perguntas frequentes

Ela exige alguma configuração do Salesforce que deposite as respostas recebidas como registros EmailMessage. O Email-to-Case é a mais comum, mas qualquer configuração que gere registros EmailMessage no recebimento — incluindo handlers de Email Service personalizados e configurações de Lightning Email Relay — funciona.

A plataforma usa SOQL dinâmico, então ela compila normalmente em organizações sem o EmailMessage. O rastreamento de respostas simplesmente não é acionado ali — os agentes ainda podem enviar e-mails e agendar follow-ups baseados em tempo, apenas não os acionados por resposta.

A lógica de correspondência envolve trabalho assíncrono, SOQL dinâmico, comparação normalizada de assunto e transferência condicional para uma execução do agente. Encapsulá-la em uma única ação invocável mantém o Flow trivial e permite que a plataforma evolua a lógica interna de correspondência sem quebrar os Flows dos clientes.

A primeira resposta que corresponder ativa a Ação agendada de IA e a tira do estado pendente. As respostas seguintes não a acionam novamente. Para aceitar vários turnos, o agente deve agendar uma nova ação com rastreamento de resposta a cada vez que enviar um novo e-mail de saída.

O comparador recorre à comparação de assunto. O assunto recebido é normalizado (prefixos Re:/Fwd: removidos) e comparado com o assunto rastreado armazenado na Ação agendada de IA. Se ambos corresponderem a uma ação pendente ativa, essa ação é ativada.

Sim — é exatamente isso que o Process Via AI faz. O corpo da resposta é passado ao agente como a próxima mensagem do usuário na conversa que começou com o e-mail de saída original.

O Flow é acionado sem causar nenhum efeito. A verificação de saída rápida do handler não encontra ações com rastreamento de resposta pendentes e retorna imediatamente, custando apenas uma única consulta SOQL por e-mail recebido.

Próximos passos

Leia Ações agendadas para conhecer o ciclo de vida da ação, incluindo gatilhos de resposta e alternativas baseadas em tempo, ou revisite Canal de e-mail — Envio para saber como conectar o lado de envio com group_key.