Skip to main content
Email & Notifications / Inbound Email

Входящая электронная почта

Создавайте тикеты и отвечайте на них прямо из входящих писем. Escalated поддерживает вебхуки Mailgun, Postmark, AWS SES и опрос IMAP в качестве запасного варианта.

Как это работает

  1. Ваш почтовый провайдер получает сообщение на адрес поддержки (например, support@yourapp.com)
  2. Провайдер пересылает его в ваше приложение через вебхук (или опрос IMAP забирает его)
  3. Escalated нормализует данные и проверяет соответствие цепочки через ссылку в теме (например, [ESC-00001]) или заголовки In-Reply-To
  4. Совпавшие письма добавляют ответ; несовпавшие создают новый тикет (или гостевой тикет для неизвестных отправителей)

Конфигурация

Включите входящую почту и настройте адаптер в настройках администрирования или через переменные окружения. Настройки администрирования имеют приоритет над значениями окружения/конфигурации.

URL-адреса вебхуков

Укажите URL входящего вебхука вашего почтового провайдера на эти адреса. Эти маршруты не требуют аутентификации (вместо неё используется проверка подписи).

Провайдер URL вебхука
Mailgun POST /support/inbound/mailgun
Postmark POST /support/inbound/postmark
AWS SES POST /support/inbound/ses

Опрос IMAP

Для почтовых провайдеров без поддержки вебхуков используйте команду опроса IMAP по расписанию.

Возможности

  • Определение цепочки через ссылку в теме и заголовки In-Reply-To / References
  • Гостевые тикеты для неизвестных отправителей с автоматическим определением имени
  • Автоматическое открытие решённых или закрытых тикетов при получении ответа по электронной почте
  • Обнаружение дубликатов через заголовки Message-ID для предотвращения повторной обработки
  • Обработка вложений с настраиваемыми ограничениями на размер и количество
  • Журнал аудита -- каждое входящее письмо фиксируется для отладки и соответствия требованиям
  • Настройка через панель администрирования -- все параметры управляются из панели администрирования с резервным использованием переменных окружения/конфигурации

Конфигурация

# .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

Опрос IMAP

// routes/console.php
Schedule::command('escalated:poll-imap')->everyMinute();