Recommended SMTP provider

Got things to work, not the way I wanted initially but there might be one thing I misread. Short story, mailjet worked on the first (mailjet) try. Thanks for the help and/or a good forum with solutions.

Summary

LONG VERSION

How I tried to get it working (let’s you see how someone with very little linux memory left solves these things). So all boring steps included as well… resulting in a few developer hints and a possible bug.

Took a Digital Ocean snapshot (had some bad experiences with Discourse upgrades before :smiley: → upgrading to newest went like a charm this time since I now have 50G instead of 30G, kudos anyway)

Since lfchosting became hostpapa last autumn I decided to use hostpapa as I pay for it after all.

Irrelevant ministory about lfchosting migrating to hostpapa. One of my statistic sites that gets fed traffic from outside stopped working. Support was clueless for 3 months. THEN someone said they are going to disable some possible firewall rules - > that fix didn’t work… but that gave me a clue → they had installed ModSecurity after the migration and once I tossed that crap out the window all my traffic flowed nicely again. Just saying, you migrate old customers, use a new firewall/whatever, customer has traffic problems… and no one in support has any kind of lightbulb activity? Sheeesh.

Tried Outlook to check credentials are ok but could not get it working - that does NOT say much though. Actually tried Pegasus Mail first but that says even less these days - better readable logs though :smiley: .

telnet mail.papamail.net 465 at least replied something (don’t call me an idiot here)

Scratching head, 465 would indicate TLS/SSL and not starttls… gnnngh.

Aaargh, will just test by changing app.yml and reading logs…

=>app.yml editing => smtp password conundrum
Double quotes around or not? Had double quotes in previous working email vs gmail, but looks like it should be without quotes in so many posts. Hmm, is discourse smart enough to strip unnecessary quotes? Someone actually having “password” as a password would be rather unlikely :smiley: .
Starting to wonder if gmail actually strips double quotes from a password by default and that’s why it worked with gmail earlier?

After rebuild app, send test mail does not work. Why on earth the log of that cannot be shown directly on the test page is beyond me (hint, hint :slight_smile: , ok, maybe a security risk? ).

more shared/standalone/log/rails/production.log
Didn’t show much or too much garbage to find what I needed (see hint, hint above).

./discourse-doctor

Not much use.

./discourse-setup

Takes forever (a bit like launcher rebuild app), wondering what the fastest way to change app.yml and test outgoing mail would be?

discourse-setup BUG?: having a password like gjwha9T78&vv produced this broken line into app.yml (!):

DISCOURSE_SMTP_PASSWORD: "gjwha9T78  DISCOURSE_SMTP_PASSWORD:  gjwha9T78&vv"

Apparently the double quotes are required after all. But discourse-setup writing “garbage” into app.yml if the password contains a “&” is a bit bad.

While waiting for the nth app rebuild… setting up mailjet just in case…

One more rebuild using mailjet and mailing out works straight off the bat.

Conclusion after 2h = mailjet works. Wohoo… BUT…

There must be a faster way to test mail sending from discourse than app.yml editing + rebuild?

Since I’m assuming I did a lot of things the long and arduous way, I’m sure someone will point out better ways. Especially as the help here always is proactive, not “you stupid noob”-style :smiley: .

Kinda hellbent on actually getting hostpapa to work now as well, after all, that’s one of the things I actually pay for. Will of course post here if my guess is correct, just too late in the evening tonight.

Best references used solving this:

Useful (well, understanding the 25/465/587 port thingies):
Troubleshooting email on a new Discourse install

Also useful once you are ready to try any other mail provider:
https://github.com/discourse/discourse/blob/main/docs/INSTALL-email.md

2 Likes