WS Mail, ws_mail.cgi, is a perl script for UNIX systems which receives e-mail
address and name input via form submissions. Includes a password protected
administrative interface for mailing list maintenance, sending e-mail to mailing
lists and individuals, etc.
When an order is submitted from WebStore, the client's name and
e-mail address are appended to WebStore.list, the mailing list database
defined in
$mail_file in
outlet.setup:
Example record: susan@cgicentral.net|Susan Smith
WebStore and WS Mail:
Add .list to the filename defined in $mail_file in their respective
setup file if the filename does not end in .list.
Write mailing list entries to
TEMP.WebStore.list when WebStore.list is locked in
write mode.
WebStore.list will be locked in write mode when the administrator
is sorting or sending mail to WebStore.list or when either
WebStore or WS Mail are appending to WebStore.list
at the time of a write request from either application.
Prints WS Mail's mailing list registration form. WS Mail will require
the setup file defined in $default_setup_file, located in the DEFINE VARIABLES
section at the top of ws_mail.cgi:
$default_setup_file = 'ws_mail.setup';
WS Mail adds .setup to the filename listed in $default_setup_file
and the filename defined in setup= in query strings if the filename does not end
in .setup.
Link directly to the administrative interface, bypassing the logon registration form
by including name=value pairs in the query string for logon, username,
and password.
Disable the printing of text instructions to WS Mail's forms by including a
name=value pair in the query string for nohelp. Setting
$desc_text
= '0'; in WS Mail's
list setup file disables the printing of the Help buttons and text instructions.
Enable NS Lookup by including a name=value pair in the query string equal to
dns=E.
By default, NS Lookup is disabled and must be selected from the NS Lookup
drop down select element on WS Mail's administrative front page.
Set the initial values for timeout= and retry= used by NS Lookup.
Default values are timeout=5 (seconds) and retry=3 (nslookup attempts per e-mail address).
WS Mail saves the Subject and Mail Message of the message being
sent to the mailing list in a MSG file whose filename denotes the date, time, and
the mailing list filename the message is being sent to:
MSG.1998-12-01.08-28-46_PM.WebStore.list
MSG (message) files created by WS Mail are saved in the /Databases/Mail
sub-directory after the message has been sent to the entire mailing list
when
$save_MSG_files
= '1' in
ws_mail.setup.
If
$save_MSG_files
= '0', MSG files are deleted after the message has been sent
to the entire mailing list.
The first line of MSG files is a 200 character e-mail address buffer which
WS Mail uses to print each e-mail address as it receives the message,
followed by a pipe character: Username@Domain.com|
If the script process is terminated prematurely for any reason, the MSG
file will allow you to restart sending the message from the exact e-mail
address in the mailing list when the script process was terminated.
No one receives the message twice and everyone receives the message.
Since the last e-mail address which received the message is stored in the
MSG file's buffer, Send Mail for the message may be restarted by loading
the MSG file and selecting Sort/Send Mail. WS Mail
begins sending the message when the e-mail address stored in the buffer
is found in the mailing list. The next e-mail address in the list is the
first address to receive the message.
If you should delete the e-mail address from the mailing list which is
stored in the MSG file's buffer before the message is loaded and sent
to the entire list, the message will be sent to everyone in the list.
When the message has been sent to all e-mail addresses in the mailing list,
WS Mail clears the e-mail address buffer and stores
::entire::|
in column 1 of the buffer when $save_MSG_files = '1'.