Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search

[REBOL] Re: SMTP Authentication

From: Gary:Jones:usap:gov at: 29-Apr-2004 17:28

Hi, Stuart,
> My SMTP server requires authentication with a username and > password before allowing mail to be sent. > > I found esend.r and esmtp.r, installed those, ran them > individually as in the instructions and then tries to use > esend to send a mail. > > It ran without an error, but never popped up anuthing to > ask me for a username and password to authenticate with. > >Anyone know what the problem is?
I wrote those patches several years ago. I'm surprised that it ran without error, because more recent REBOLs less aggressively reduce certain information. With the newer versions of REBOL, I have successfully used this newer patch with MS Exchange server(watch for line wrap): system/schemes/smtp/handler/open-check: [none "220" ["EHLO" system/network/host] "250" "AUTH LOGIN" "334" [port/user] "334" [port/pass] "235"] Then, I would throw the following view script in front of any script that used Exchange email. Note that the script encodes the username and password in base 64, which is required by MS Exchange Server. You may of course replace "MSusername" with the default that you would like presented. Hitting return key advances the field and does final entry. view lo: layout [ text "username" f: field "MSusername" [ system/schemes/smtp/user: copy enbase/base value 64 ] text "password" field hide [ system/schemes/smtp/pass: copy enbase/base value 64 unview/all ] do [focus f] ] Then, you should be able to use the regular REBOL send command for email. Without knowing which email smtp server to which you are connecting, it is impossible to know how to encode the authentication information. I would try this method first, especially if it is an MS Exchange server. If it does not work, next try the: trace/net on command and then send a test email and capture the output. Generally, right before the authentication is sent the server indicates what form of authentication and encoding may be required. Obscuring any sensitive information, you can report that back here, and I or someone may be able to direct you how to change the patch. If that fails to capture the information, there is yet another way to figure this out that I can explain more fully. Best wishes --Scott Jones