Problem using Gmail for SMTP with SAP BI/Crystal Server
A customer had been using Gmail for their SAP BI SMTP server for the last 6 months. All worked fine and setup was simple.
Early in February, they started to have intermittent problems sending reports by email. Probably once a week, the schedules would just fail. The fix was to simply rerun the failed instance. No huge problem, but inconvenient and worrying. There had been some other problems with the data warehouse not loading correctly, so we just put it down to the internal checks on data accuracy – it was the report checking the data had imported that was failing.
Two weeks ago, rescheduling no longer worked. Using telnet to send a test email returned a 555 5.5.2 error (Syntax error) when setting the senders address. A bit of research turned up this old blog post about RFC 2821. It looks as though Google have now decided to enforce this. The earlier intermittent problems presumably being down to the change being rolled out across their servers (If this isn’t the case, please let me know, this is just the best I could come up with).
The ‘correct’ syntax for an email address is to enclose the address is brackets with text before the brackets just being the display name. For example, instead of [email protected], it should be [email protected] <[email protected]> or, more accurately, anythingIlike <[email protected]>
I’ve not found anything official about this, but once changed, everything worked in telnet. I then realised that their were in excess of 100 schedules that would all need changing to continue using Gmail for SMTP. Being a lazy sort, I wanted an easier solution.
To continue using Gmail, you need to setup a local SMTP server. Protect it from spammers by only allowing access from the local address, then use the Gmail settings as the smart host in SMTP. Finally, change the SAP BI/Crystal Server’s settings to use the localhost for SMTP. The new local server cleans up the formatting, setting it correctly for Gmail to work.
Apologies for not going into more detail on setting up a local SMTP server. It’s too easy to create a SMTP server and leave it open for spammers. If you’re not sure about how to do this, then don’t – get someone who can.