Issues with false sending in mautic 5

Your software
My Mautic version is: 5.1.1
My PHP version is: 8.1
My Database type and version is: MySQL

Your problem
My problem is: I am trying to use Amazon SES. When I go to the config email section and put in my ses credentials then it works fine. I can get the test email. When I go to contacts and select a contact and try to email them from there it says it sent fine however nothing is actually sent. My SES shows no usage and I don’t get the email at my specified email. I’ve tried both using the docker version and just installing it to my digital ocean droplet using composer. I’m on Ubuntu server with digital ocean

Steps I have tried to fix the problem:
Checked tables exist
Checked permissions
No email is being queued for some reason
I’ve set everything in the queue config to doctrine://default

Any help is appreciated

Are you using doctrine as queue?
Check in your database if the table message_messages is full. If it has content, it means that mautic “sent” the emails but the worker hasn’t yet actually sent the emails to your email provider.

thanks for the response. When i set it to doctrine in the queue settings it doesnt work. I checked the table right after sending an email and it shows:
mysql> SHOW TABLES LIKE ‘message_messages’;
Empty set (0.00 sec)

when i set it back to sync it works but i prefer to queue the messages. Any idea whats happening?

Have you configured the cron jobs?

yes i have

          • php /var/www/html/bin/console mautic:segments:update
          • php /var/www/html/bin/console mautic:campaigns:trigger
          • php /var/www/html/bin/console mautic:emails:send

segments update ok
campaigns trigger <— this supposedly will fill the message_messages table with the emails to be sent
emails send <— can’t remember what this does
You still need a mechanism to run “messenger:consume email” to process the messages at table message_messages, the issue is that you are not filling that table.
Sure that you configured doctrine correctly in queue?

in queue all i put was doctine://default for both options in config–>queue

was there something else to be done?

ill add messenger:consume email

Consume email has to be done differently because it’s a worker that will run each time a cron job is triggered, so you will end crashing the server very soon.
There are several ways to do this, but the main issue is discover why you are not being able to fill the messages table.

i set consume like this

*/15 * * * * php /var/www/html/bin/console messenger:consume email

every 15 min…

i think i may have realizes that the messages table isnt getting created for some weird reason

it will crash your server in some hours, I can help you tomorrow.

If you run your command every 15 min, you need to make sure it’s only alive for 15 min.

*/15 * * * * php /var/www/html/bin/console messenger:consume email --time-limit=870

This will run the email sending for 14 minutes and 30 seconds (give a 30s rest to your Mautic, it deserves it.) So you won’t have concurrent sending.

I hope its just a typo here…
Its called “doctrine” with an r in between.

thank you i will try that

thanks for that. I fixed it but that wasnt the culprit. I’m still having the issue. I’ll continue to troubleshoot