Я использую Amazon SDK для PHP для отправки писем через Simple Email Service, все это с помощью Lumen Framework.
Я использую клиентский класс SDK вместо классов почтовых ящиков Laravel, потому что мне нужно добавить некоторые метаданные в мои электронные письма, проблема возникает, когда я пытаюсь отправить электронные письма в очередь, потому что SesClient из AWS SDK запрещает сериализацию и Laravel / Lumen использует эту функцию для создания очереди
Я попытался обернуть класс, но это не сработало, и я нашел какой-то пакет для использования SesClient, но ни один из них не позволяет мне добавлять метаданные
Я открыт для всех видов решений, если вам нужна дополнительная информация, просто дайте мне знать, и я отвечу на вопросы
заранее спасибо
Нет способа сделать это
Длинный ответ: вам нужно изменить подход к проблеме
Так как класс клиента AWS вызывает исключение для магического метода __sleep, вы не можете напрямую отправить класс в очередь Laravel, потому что часть процесса его отправки — это сериализация класса.
Вы расширяете класс и перезаписываете метод, но это принесет вам проблемы в будущем из-за обратных вызовов внутри класса клиента AWS.
Чтобы решить эту проблему, вам нужно извлечь класс из класса Laravel Job, это можно сделать, создав класс, чтобы обернуть ваш процесс, и внутри этого класса создайте экземпляр клиента AWS.
Других решений пока нет …