Email & Notifications / Inbound Email
Getting Started
Tickets & Conversations
Automation & Workflows
Email & Notifications
E-mail de Entrada
Crie e responda tickets diretamente a partir de e-mails recebidos. O Escalated suporta webhooks de Mailgun, Postmark, AWS SES e polling IMAP como alternativa.
Como Funciona
- Seu provedor de e-mail recebe uma mensagem no seu endereco de suporte (ex.:
support@yourapp.com) - O provedor encaminha para sua aplicacao via webhook (ou o polling IMAP busca a mensagem)
- O Escalated normaliza o payload e verifica correspondencia de thread via referencia no assunto (ex.:
[ESC-00001]) ou cabecalhosIn-Reply-To - E-mails correspondentes adicionam uma resposta; e-mails sem correspondencia criam um novo ticket (ou ticket de visitante para remetentes desconhecidos)
Configuracao
Ative o e-mail de entrada e configure seu adaptador nas configuracoes administrativas, ou via variaveis de ambiente. As configuracoes administrativas tem prioridade sobre valores de env/config.
URLs de Webhook
Aponte o webhook de entrada do seu provedor de e-mail para estas URLs. Estas rotas nao requerem autenticacao (usam verificacao de assinatura).
| Provedor | URL do Webhook |
|---|---|
| Mailgun | POST /support/inbound/mailgun |
| Postmark | POST /support/inbound/postmark |
| AWS SES | POST /support/inbound/ses |
Polling IMAP
Para provedores de e-mail sem suporte a webhook, use o comando de polling IMAP em um agendamento.
Recursos
- Deteccao de thread via referencia no assunto e cabecalhos In-Reply-To / References
- Tickets de visitante para remetentes desconhecidos com nomes de exibicao derivados automaticamente
- Reabertura automatica de tickets resolvidos ou fechados quando uma resposta chega via e-mail
- Deteccao de duplicatas via cabecalhos Message-ID para evitar processamento duplicado
- Tratamento de anexos com limites configuraveis de tamanho e quantidade
- Log de auditoria -- cada e-mail de entrada e registrado para depuracao e conformidade
- Configuravel pelo administrador -- todas as configuracoes gerenciaveis pelo painel administrativo com fallback para env/config
Configuracao
# .env
ESCALATED_INBOUND_EMAIL=true
ESCALATED_INBOUND_ADDRESS=support@yourapp.com
# Mailgun
ESCALATED_INBOUND_ADAPTER=mailgun
ESCALATED_MAILGUN_SIGNING_KEY=your-signing-key
# Postmark
ESCALATED_INBOUND_ADAPTER=postmark
ESCALATED_POSTMARK_INBOUND_TOKEN=your-token
# AWS SES
ESCALATED_INBOUND_ADAPTER=ses
ESCALATED_SES_TOPIC_ARN=arn:aws:sns:us-east-1:...
# IMAP
ESCALATED_INBOUND_ADAPTER=imap
ESCALATED_IMAP_HOST=imap.gmail.com
ESCALATED_IMAP_USERNAME=support@yourapp.com
ESCALATED_IMAP_PASSWORD=your-app-password
Polling IMAP
// routes/console.php
Schedule::command('escalated:poll-imap')->everyMinute();