software products and customization
Contact: support@xuebrothers.net Home Page

SMTP-Over-HTTP Win32 Service


This SMTP-over-HTTP service was developed initially for ourselves. This is the story:

We have use a same ISP for seven years. The sevice agreement includes SquirrelMail but not SMTP. Although SMTP is not part of the service agreement, our provider actually let us use it until about two years ago, it stopped. We had to use SquirrelMail alone. SquirrelMail is excellent, but we want to use Outlook as well, because we want to keep a copy of each email on our own computers.

To get round this problem, we put a small CGI program on the web server, and wrote a Windows service for our own computers. The service works as a SMTP server (on 127.0.0.1:25). Outlook delivers outgoing emails to the service and the service delivers the emails to the CGI. All this happens in sync.

The service requires a INI file in the system directory like this:

www.myweb.com
80
/cgi-bin/mysmtp.cgi
password

80 is the port number of the web server. The password is for the CGI to verify that the visitor is the smtp-over-http service, not something like a web browser or a robot. It is not for HTTP login. It can be empty.

How to Use SMTP over HTTP
1. Write a Web Server Program

The smtp-over-http service uses POST command to access the Web program. The table below describes the form that the service posts to the Web program. Your Web server program should be able to process the form and continue to deliver the email. If the email is successfully delivered by your Web server program, your Web server program must response with code 200. The service takes other codes as an error.

It is a good idea to write a HTML page to test your web server program before you use it with the service.

acution URL enctype Form Entries
The third line of INI file multipart/form-data
  • from: The sender's email address. This is what the email client program (Outlook for example) sent to the service using the SMTP "MAIL FROM" command;
  • to: The recipient's email address. This is what the email client program (Outlook for example) sent to the service using the SMTP "RCPT TO" command;
  • pwd: The password for the web program to verify the service;
  • data: The email data. This is what the email client program (Outlook for example) sent to the service using the SMTP "DATA" command;
2. Write the INI File For the Service

The INI file is a text file. It must has four lines as described above. It must be named as "XBS_MyWebSMTP.ini" and saved in the system folder. (Take XP for example, the system folder by default is C:\Windows\System32)

3. Install the Service

Notes: Run XBS_MyWebSMTP.exe without arguments will show the license as well as the usage of service program.

4. Configure Your Email Client Program

Set "Outgoing mail server (SMTP)" to "127.0.0.1" and port to 25. Since the service works on 127.0.0.1:25, no logon is required for the email client program to access the service.

5. Send Testing Emails

If errors occur, the service writes the error message to the "Event Log" of the system. To view the Event Log, open "Event Viewer" from the Control Panel; select the "Application" category of "Event Viewer" and look for "SMTP via HTTP Post" in the "Source" column. See screenshot.

Buy an Individual User License

The license fee is USD 22.00. Click the button below the make the payment at PayPal. Within 24 hours after notified by PayPal of your payment, we will send you the licensed copy.

Contact Us

If you have any quesions or suggestions, please email us: support@xuebrothers.net