Ben Rubinstein wrote:

> I've one app that's been in existence for over a decade, which uses
> Shao Sean's libSmtp. It works fine.
>
> Now I find myself wanting to send email from a new stack I'm working
> on. I could just drag that library out again, but I suspect that a
> more modern way is to use tsNet.
>
> AFAICT tsNet handles the protocol of communicating with the server to
> transmit a message (i.e. the SMTP part), but doesn't offer any
> assistance with putting the message together (formatting with
> attachments etc).
>
> What do modern people use for this? Obviously I could rip the
> relevant parts out of libSMTP; or I recall that Sarah Reichelt had
> a library; is there a default answer among those who've sent email
> in the last ten years?

Personally, I've never been comfortable relying on client-side SMTP. I figure that any device configured to allow any app to send arbitrary emails without explicit user intervention will eventually become a spambot, so my hope is that it's only a matter of time before the OS provider puts an end to that.

For most systems I prefer to use the "mailto:"; protocol to open a message in the user's own email client, so they can review it and decide whether they actually want to send it.

I do have some monitoring systems that provide notification, but I don't usually install email on a server designed for any other purpose.

So instead I maintain one server on one of my shared hosting accounts as a notification center (it's not used often enough to warrant a VPS, but if you expect heavy load VPSes are cheap these days). It runs an LC CGI that accepts a compressed encoded array containing the email elements (to, from, subject, body, etc.), and it formats it for use by sendmail, which it then calls from the command line.

The advantages with using an external server to do the actual sending are:

- I'm not dependent on a local SMTP client implementation, which I
  hope for security's sake won't always be available.

- It uses a simple one-line call to a server, so it's easy to
  add email support in any client app wherever I need it.

- The CGI is relatively simple to set up (Lesson examples available
  for using sendmail with LC CGI).

- The server is reasonably protected (nothing is *absolutely*
  protectable) by virtue of only accepting the LC-specific LSON
  (encoded array) format, which is also encrypted before sending,
  and transmitted over HTTPS.

By no means perfect (nothing is a magic pony), but easy to set up, convenient to use, and at least as secure as most alternatives.

I don't currently send attachments, but the MIME format is well documented and LC provides the raw materials needed (good text handling and base64 encoding), so even if a current library isn't readily available it shouldn't take long to package up an attachment with the body.

--
 Richard Gaskin
 Fourth World Systems
 Software Design and Development for the Desktop, Mobile, and the Web
 ____________________________________________________________________
 ambassa...@fourthworld.com                http://www.FourthWorld.com

_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Reply via email to