Je veux envoyer des courriels à divers utilisateurs en fonction des horaires qu'ils ont définis.Laravel - Envoyer un courrier à l'avenir en fonction de la condition
Je l'ai lu beanstalkd, queues et Delayed Message Queueing et maintenant il semble approprié dans:
$when = Carbon::now()->addMinutes($minutes); // i can calculate minutes at this moment
\Mail::to($user)->later($when, new \App\Mail\TestMail);
Mais je ne suis pas tout à fait sûr sur quelques petites choses:
L'utilisateur peut annuler une calendrier futur. Dans ce cas, comment puis-je annuler un e-mail supposé être envoyé à l'avenir? Puis-je définir une condition quelque part qui est vérifiée avant d'envoyer l'e-mail réel? Essayé
return false
sur la méthodehandle
de\App\Mail\TestMail
et il a commencé à lancer erreurSuis-je utiliser la bonne approche. Je lis aussi sur Scheduler mais je ne comprends pas comment je vais annuler vos futurs emails (si elles doivent être)
créer un champ db dans la table des emails comme is_active si son un contre un email email devrait aller sinon si l'utilisateur se désabonne ou arrête de l'obtenir devrait être 0 donc vous pouvez utiliser la condition sur la base is_active. –