Mass E-Mailer and Email List Processor
Turbo-Mailer :: Documentation
Contents
- Installation
- Manual
Installation
Installation and usage of Turbo-Mailer is mostly
self-explaining.
After running the installer and starting up Turbo-Mailer, the example address file example_addresses.txt is already pre-loaded into the To: Address List of the Bulk Mailer Page, which is the main GUI portion of Turbo-Mailer.
The email List Processor Page is the second part of Turbo-Mailer. Some example address lists are already set up in the List Processor after installation.
Note: Turbo-Mailer can be controlled by command line (batch runs)
Manual
1. Bulk Mailer
The Mailer pane in TurboMailer lets you edit the SMTP configuration, the mail subject & text body the To: address list (recipients) and some important options. As a first test you may delete the initiall dummy/test email addresses from the recipients list and insert some of your own email addresses, where you would like to send the first test email to.
Quick-Start Tutorial : The First Mailing
|
User Interface / Mailer Page
SMTP Server
The address of your SMTP server (and optional port).
Examples.: smtp.mydomain.com
, smtp.my.org:2525
All known SMTP servers are supported. Most SMTP servers from ISPs need a login authentication with user and password. Some SMTP servers require to reconnect after a certain number of mails. In that case set the Mails/Block property below the Send button for block-by-block transmission.
From Address
Format :
name@server.dom
or : "Display User Name"
<user_name@server.dom>
SMTP user / SMTP password (optional)
Your login information for your SMTP server. Leave these fields empty if your (intranet) SMTP server doesn't need/support login.
Enter a email address where recipients should replay to (instead of "From Address"). Leave empty if your "From Address" is ok for replying to it.
Auto-Dial intern
Check this option and select a RAS Network for internet dial-up, in case you want Turbo-Mailer to auto-dial and close the RAS automatically after email transmissions are complete.
TO: Address List / Open File / Save / Add / Delete
This list area displays the current target address list
(recipients of your email message). This list can also contain
additional personalization
columns which can be referenced with %1%, %2% in your mail
text/html or
subject, or with %-1%, %-2%.. to even inserted un-escaped HTML snippets
from
such columns. See also Address list line format.
A new address list ( simple list with one address per line / table /
CSV file / TAB CSV
file ) can be
loaded to this list area by pressing the "Open File" button or "Menu/File/Open
address list" or by file-drag-drop or by pressing the "<<TO-LIST"
button in the List Processor Page)
You can also copy&paste a list or table from Excel using the
Windows clipboard.
The TO: list contents are permanent throughout shutdown &
re-opening of Turbo-Mailer.
Send ..
Press this button to start sending out the messages after a confirmation.
Activate this checkbox in order to enable the BCC Bulking.
BCC
Bulking: Many email address are targeted with one SMTP email transfer
using the blind-carbon-copy method. This reduces network traffic to the
SMTP server (but not behind that server).
Messages with personalization variables (%N%) are never BCC bulked.
In the BCC Bulking options dialog you can set the common "TO:" display
name, the "Maximum number of BCC addresses per email transfer". You
can also hide the BCC address list completely from the mail header.
Activate this checkbox and set a maximum number of mails (N) per block, if your SMTP server doesn't like too much email transfers to be sent during one SMTP connection. Thus TurboMailer establishes a fresh connection to the SMTP server each N mails. This option can be mixed with Multi-threaded (parallel) SMTP.
Max Threads
Activate this checkbox and set a maximum number of parallel connections in order to optimize transmission speed. This option exploits the available bandwidth most efficiently and is especially helpful, when email addresses are checked live by an SMTP server ( which slows down simple serial processing dramatically). Multiple SMTP connections are possible on most SMTP servers today.
HTML Message
Check this checkbox if you want to transmit HTML email
code.
Note: You can use the "Edit HTML" button for editing your HTML mail
using a WYSIWYG HTML editor.
Note: You can configure a non-default HTML editor in
Menu/Config/Settings.
Installing Mozilla/Netscape
is
recommended, when you don't have another professional HTML editor
installed on your
computer.
Subject / Text Body
Enter your email message here. Or load it from a .eml / .txt / .html file. Or drag-drop a file to this area.
Attachments / + / -
Add attachment file using the + and - Buttons.
Note: Embedded HTML images (local URL's) are automatically attached to
the email. You don't need to add them explicitly as attachment.
Edit HTML / Refresh
Edit your HTML mail message with an WYSIWYG HTML editor.
Press the "Refresh" button for importing a HTML mail text repeatedly after changing and saving it in your HTML editor. The "Refresh" button can only be used after a first "Edit HTML" cycle.
Note: You can configure a non-default HTML editor in Menu/Config/Settings. Installing seamonkey/Mozilla or "Kompozer" is recommended, when you don't have another professional HTML editor already installed on your computer.
Preview
Press this button in order to preview your HTML or text email message. In case of personalization columns: The preview is rendered using the first email address of your current TO: List
Email Address Format
The email address format throughout the TurboMailer application is ::
name@server.dom or "Display Name" <name@server.dom>
Address List & Table format
An address list file or table (e.g. copy & paste from Excel) for use in Turbo-Mailer contains one email address per line and optionally additional personalization columns.
Format Examples & Explanation
- Simple example address list:
# this comment has no effect (this not an email address)
name1@domain1.dom
name2@domain1.dom
name3@domain1.dom
name4@domain1.dom
... - More complex address list file / table example with
personalization columns:
# this comment has no effect (this not an email address)
"Nice Name1" <name1@domain1.dom>; Nice Name1; Personal Message 1 for you; personal_code123_1
"Nice Name2" <name2@domain1.dom>; Nice Name2; Personal Message 2 for you; personal_code123_2
"Nice Name3" <name3@domain1.dom>; Nice Name3; Personal Message 3 for you; personal_code123_3
"Nice Name4" <name4@domain1.dom>; Nice Name4; Personal Message 4 for you; personal_code123_4
... - A '#' character starts a comment line => no effect
- Each other line / row should contain a valid email address as first element. Format as described above in Email Address Format; Plus optional personalization column data as described next ...
- After
the email address additional personalization/code columns can be added
- in files: separated by TAB character (TabSV) or by the ';' semicolon
character (CSV).
Those extra columns can be referenced from your mail message by %0% (email address itself), %1% (2nd column), %2% (3rd column), %3% ...; or by %-1%, %-2%.. (negative column number) to even inserted un-escaped HTML snippets from such columns.
You can copy&paste a table from Excel through the Windows clipboard to the ACCU or to the To: address list. Use the paste toolbar button or Ctrl-V
- Turbo-Mailer log files (successful and refused email addresses) are themselves address list files according this format.
Mail Text / Subject / Attachment Personalization
The text of additional personalization fields
(columns) in an adress list files can be rendered into the mail text or
subject or attachment filenames - in order to "personalize" the mail.
The column variables are like: %0% (=email address itself), %1% (2nd
column), %2% (3rd column), %3% ...
Columns which are not present in the list/table end up as empty string
in the message.
HTML Mail: Column numbers referenced with a minus sign in front end up
as raw HTML code insertion (HTML/XML format escaping bypassed).
Example of a email subject and text with variables for personalization:
Subject: Personal Newsletter Weatherforecast for %1%(Note: the last negative variable %-3% would insert plain HTML snippets in HTML mails without escaping HTML-characters; No difference to %3% in text mode mails.)
Text:
Hello %1%,
nice weather today.
Today's personal message for you is: %2%
Regards, Dr. Weatherman
PS: this mail was sent to %0% - newletter ref = %-3%.
The resulting email for this example and address list below (first address) will be:
Subject: Personal Newsletter Weatherforecast for %1%
Text:
Hello Mister A,
nice weather today.
Today's personal message for you is: abc
Regards, Dr. Weatherman
PS: this mail was sent to aa@bb - newletter ref = personal_code123_1.
Example address/personalization list file for this message:
#Example address list (CSV file)
aa@bb; Mister A; abc; personal_code123_1
cc@dd; Mister B; def; personal_code123_2
Or copy&paste a table like this via the Clipboard from Excel:
- In Excel press Ctrl-A to select all lines; and press Ctrl-C to copy
- Click into TurboMailer's To: Address List (Recipients)
and press Ctrl-V for pasting;
(Or press the Paste address list button in the toolbar)
Attachment File Personalization
Attachment files can be personalized by adding an attachment file name like personal-attachment-%3%.gif . The filename part %3% is then replaced by the same scheme as with text or subject (4th table column in this example).
HTML Mail
HTML Mail transfer is switched on by the checkbox "HTML Mail" in the Mailer main window.
HTML Mail can be edited in code view mode or in WYSIWYG (what you see is what you get) view mode : Checkbox: HTML View.
By default a auto-generated plain text version of a HTML mail is transmitted together with the HTML format - consistent with MIME standards. This setting can be changed in Menu/Config/AppSettings/HTML_Mail
How to set a manually edited plain text version for HTML Mails
A manually edited plain text version for a HTML Mail can be set - overriding auto-generation from the HTML version. This can be done by putting the plain test version into a special HTML comment "MIME_PLAINTEXT" somewhere inside the HTML code of the message - like this:
<html>
<head>
<title>A HTML Mail with manually edited plain text version</title>
</head>
<body>
<h1>Hello!</h1>
<p>This is a HTML mail.</p>
<img src="icon.png">
<p>Thanks for reading.</p>
</body>
<!-- MIME_PLAINTEXT:
Hello!
This is a manually edited plain text version of this HTML mail.
Thanks for reading.
-->
</html>
Embedding Images in HTML Email
Embedding images in HTML emails is easy: Turbo-Mailer embeds all local images in your HTML message (image links to local files on your computer) directly into the email as internal attachment automatically when the email is sent. Image links to images on a server (<IMG SRC="http://...">) are sent unaltered. Best test for correct results with some of your own test email addresses and email viewers (sophisticated HTML is displayed differently in different email readers).
Generating a new HTML mail from scratch:
- New Mail: Press the New Mail tool bar button
or select Menu/File/New Mail.
- Select HTML Mail: Check the HTML Mail
checkbox above the "Subject" Field in order to tag the message as HTML
Mail.
- Use internal HTML Viewer/Editor: Check the HTML
View checkbox and hit the Edit button next to HTML View
in order to get additional controls for editing HTML
directly inside TurboMailer.
or / and :
- Use an external HTML editor): Press the "Edit HTML"
button on bottom-right of Turbo-Mailer (or Menu/View/HTML Editor)
for editing the current message body in a WYSIWYG HTML Editor. You are
asked to first save your (empty) message in a file. Its recommended to
do this: Thus your HTML code has a definite home folder on your hard
disk and you can insert local embedded images with relative paths
consistently.
The HTML editor can be configured in Menu/Config/Settings. Mozilla, Netscape, Dreamweaver and Frontpage are found automatically by Turbo-Mailer and offered in a drop-down list. The default HTML editor is the built-in editor of Internet Explorer (IE; version >= 5.5 ) - which is not recommended. Installing Mozilla or Netscape is recommended, when you don't have another professional HTML editor installed on your computer.
- Edit: Just edit your HTML template file locally with
your configured HTML editor. Use simple relative or absolute file paths
to your local images for embedding those images to the email.
- Preview: Press the "Preview" Button:
on bottom-right of Turbo-Mailer (or use Menu/View/Preview) in order to
check your HTML message.
- Auto-Embedding: All locally linked images are
embedded on-the-fly by Turbo-Mailer when the emails are sent out. Best
try for correct results with some of your own test addresses. When a
local image is not found during transmission you'll get an error
message and transmission does not take place.
- Non-Local Images : URLs of absolute web linked
images on a server ("http(s)://...") are left
unchanged. Such images are not embedded.
Note: It is recommended to keep big images and attachment files on a web server in order to reduce bandwidth consumption
Generating a HTML mail from an existing HTML file:
- Load: Drag-drop (or open) the HTML file into
Turbo-Mailer and edit the subject. Turbo-Mailer thus knows the home
directory of the HTML code for finding relatively linked local
(embedded) images.
- "Edit HTML" Button: You can also press the "Edit HTML" button on bottom-right of Turbo-Mailer for editing the current message body quickly in a WYSIWYG HTML Editor. The editor can be configured in Menu/Config/Settings. Default is the built-in Editor of Internet Explorer (IE; version >= 5.5 )
Here is an example HTML code of an email body with 2 locally
sourced images, which are (unlike src="http://..." web images)
auto-embedded as implicit attachment by TurboMailer. The first
image is source-linked relatively (to the folder of the document
my_html_mail.html). The second image is source-linked with an absolute
path:
[ File C:\www-edit\my_html_mail.html ]
<p>Hello %1%,</p>
<p>This is a picture:</p>
<p><img border="0" src="images/acrobat.gif" width="32" height="32"></p>
<p>This is %-2%:
<img border="0" src="file:///c:/www-edit/images/logo.gif" width="32" height="32"></p>Result:
Further Annotations / Bulk Mailer:
Log Files are stored as processed_YYYYMMDD_hhmmss.log in the directory of the list file or in the Turbo-Mailer directory + optionally refused_YYYYMMDD_hhmmss.log in case some emails are immediately refused by the SMTP server
Keyboard Bindings for the Recipients List Display and ACCU List Display: Ctrl-A = Select All, Ctrl-C = Copy, Ctrl-V = Paste, Shift-Up/Down OR Mouse-Shift/Ctrl-Click = Mark Range
Threaded SMTP offers improvement of transmission speed through multiple parallel SMTP paths. This option exploits the available bandwidth most efficiently and is especially helpful, when email addresses are checked live by an SMTP server (which slows down simple serial processing). Multiple SMTP connections are possible on most servers. You can set the maximum number of parallel SMTP connections (default=5) in the appropriate field below the "Send" button. Block-by-block transmission may be mixed with threaded SMTP. In that case the Mails/Block setting is the maximum number of mails transmitted on one connection path while Max.Threads connection paths may exist in parallel.
2. Email List Processor
The List Processor (2nd pane in TurboMailer) allowes to compute lists of email addresses. Lists can be imported, combined, filtered, ... and computed by advanced formulas (see TurboMailer API).
The core object of the List Processor is the ACCU list: All computational results, clipboard pastes (paste button in the toolbar) and SetACCU-button results go into the ACCU. The ACCU content maybe transferred to the Recipients List with the Set Rec. List button in order to proceed with sending out mailings with the Mailer.
A set of email lists is managed in User Lists. To each list a short name (SN) is assigned (can be changed). The SN of a list can be used in the formulas to reference a list.
Formula processing is a core feature in Turbo-Mailer's List Processor. The formula API is continuously expanded. Functions range from stripping/recomputing email address to scanning text/html files for email addresses or scanning newsletter subscription notification emails out of MS Outlook. See the API below.
User Interface / List Processor
ACCU List / Read File / Add / Delete
This is the address list display ("Accumulator"), which
holds the current result list of formula computations or the result of
"Set ACCU" actions. You can load the ACCU from file or add / delete /
edit (double-click) the addresses in the ACCU. You can also paste a
list/Excel table from the windows clipboard.
The ACCU list itself can be referenced in formulas as "ACCU" (
e.g. "ACCU+mylist")
The ACCU contents are permanent throughout shutdown & re-opening of
Turbo-Mailer.
<< Set TO: List
When pressing this button, the ACCU list is transfered to the TO: list (recipients of your message) of the mailer.
<< Set ACCU
Press this button to transfer the (join of) current selected user list(s).
TO:
Press this button to transfer to ACCU and TO: list of the mailer in one step.
>> Store List
Store the current ACCU content as a new user list on disk.
Up / Down
Move the current selected users lists up/down in the list display
User Lists / Add / Delete / Refresh
Displays the current set of on-disk user lists. Each list has also a short name (SN). The SN (e.g. "mylist") of a user list can be used in computational formulas (e.g.: "mylist+otherlist" ), in order to reference this list.
Formula / Execute
Enter a list computation formula (see API) or select a template from the drop-down list. Press the Execute button for running the formula. The result will be displayed in the ACCU list.
Turbo-Mailer Formula API:
List Operators | |||
| (OR) | Example: aa | ACCU | ||
concatenates lists but avoids duplicates | |||
& (AND) | Example: aa & ab | ||
computes list: items of first list where address (column 0) is contained also in the second list | |||
+ (PLUS) | Example: aa + ACCU | ||
concatenates lists without avoiding duplicates | |||
- (MINUS) | Example: aa - log1 | ||
computes list: items of first list where address (column 0) is not contained in the second list. Thus you can remove certain addresses from a set. This operator is for example useful to subtract a log-file list from partial transmissions or a "rejection list" from a list. | |||
[<start>:<end>] (SLICE) | Example: ACCU[0:7] | ||
take subset of the address list (for example the first 7 emails) | |||
List Member Functions | |||
.also_in( other_list ) | Example: aa.also_in( ab ) | ||
items which are contained (completely identical) in both lists. (Similar to & opterator) | |||
.not_in( other_list ) | Example: aa.not_in( ab ) | ||
items from first list which are (in complete form) not in the other list. (Similar to | |||
.lower() | Example: aa.lower() | ||
converts all item strings to lower characters [A-Z] --> [a-z] | |||
extract_addr(self, column=0, get_addr=True, get_name=False, xcolumns=-1) | Example: ACCU.extract_addr(get_name=True) | ||
extracts the pure email address and/or the pure display name of a complex email address ("User Name" <username@server.dom>). By default it preserves all (xcolumns=-1) extra columns and stores the 1 or 2 extracted columns as first column(s). | |||
.randomize() | Example: ACCU.randomize() | ||
mixes the list order randomly | |||
.strip() | Example: ACCU.strip() | ||
removes duplicate email addresses and empty lines and comments from a list | |||
.columnstrip( [number_of_columns[,startcolumn]] ) | Example: ACCU.columnstrip() | ||
takes out columns [startcolumn
.. startcolumn + number_of_columns] from the list.
For example aa.columnstrip(1) takes cuts out only the
first column (=email address) from a list with additional info-columns
(separated by TAB or ; ). |
|||
.xsort( [cmpfunc] ) | Example: ACCU.xsort()) | ||
sorts the list alphabetically.
The optional cmpfunc sets other sort criteria like: - reverse sorting (Python like skript syntax): ACCU.xsort( lambda a,b: -cmp(a,b) ) - sort on the length of the email address string: cmpfunc can also be a regular expression pattern, with
zero or one result group like: |
|||
.sortdom1() | Example: aa.sortdom1() | ||
sorts according the domain name of the email addresses. This function is a short-cut for .xsort and appropriate cmpfunc | |||
.sortdomL() | Example: ACCU.sortdomL() | ||
sorts according to the last piece of the domain name (.com, .uk, .de, ...). This function is a short-cut for .xsort and appropriate cmpfunc | |||
.xfilter( pat ) | Example: ACCU.xfilter( '@[aA].*' ) | ||
finds items matching a regular expression pattern 'pat'. ACCU.xfilter( '@[aA].*' ) would get all emails where the domain name starts with an 'a'. | |||
.xformat( fmt , [l1 [,l2 ... ]] ) | Example: ACCU.xformat(' "%1%" <%0%>' ) | ||
reformats a list file - with
possibly changed column ordering,. Can compose full-name email
addresses or can even mix columns of multiple lists (of same
length). 'fmt' is the format string. The column variable identifier is %column[:fileindex]%. 'l1','l2',... are short names of optional other list files who should have the same shape and length. (missing rows result in empty strings) Other examples: |
|||
.xformat_by_email( fmt , [l1 [,l2 ... ]] ) | Example: ACCU.xformat_by_email(' "%1:1%" <%0%>') | ||
reformats a list file - using
columns of other lists entries with same email address. 'fmt' is the format string. The column variable identifier is %column[:fileindex]%. 'l1','l2',... are short names of optional other list files who contain (some of the) same email addresses. Missing entries result in empty string insertions. Further example: |
|||
.xreverse() | Example: ACCU.xsort().xreverse() | ||
reverts the order of the emails | |||
.xremovedups(pat=".*@([^> ]*)") | Example: ACCU.xremovedups(".*@([^> ]*)"): | ||
removes duplicates from the
list using a regular
expression (group 1) to identify a special part of the address. The
example above (which uses the default regex pattern) would keep only
one (the first) address for each domain name. Note: ACCU.xremovedups( "(.*)" ) is equal to ACCU.strip() |
|||
Functions | |||
ScanOutlook(<outlook_folder>, <subject_pattern>, <email_pattern>) | |||
Example: ScanOutlook("inbox/newsletter_in","*Newsletter*","Email:\s*([\w.+-]+@[\w.+-]+)") | |||
Scan email text bodies in an MS
Outlook folder and search for an email address pattern (and for
optional fields), extract one email address per mail. This is for
example used in order to bulk extract addresses from subscription
notification mails'. email_pattern is a regular expression, which must return one or more groups containing the address and optional info columns: for example the ([\w.+-]+@[\w.+-]+) part of the example above extracts the email address. the \s* in the example above matches any whitespace. If no address pattern is found an email body, the scanner jumps to the next email body, thus not breaking on 'empty' mails. In case of more groups in the regular expression those groups are rendered into additional 'personalization' columns (separated by ; ) of the result table. The subjectpattern matches with unix/dos wildcards ( * ? ). Use "*" for scanning all email in the folder. The outlook_folder name is as displayed in your Outlook GUI. The Inbox is alway accessible with inbox/... . Subfolder names are separated with slash / . The above example scans my extract the adress from the following example mail in the folder "newsletter_in" folder:
|
|||
ScanOutlookSenders(<outlook_folder> [, excl=<exclude_email_pattern>]) | |||
Scans sender addresses of all mails in this Outlook folder. | |||
GetOutlookAddresses(<adressbook>) | Example: GetOutlookAddresses("Personal Address Book") |
||
fetches all email addresses contained in an Outlook (MAPI) address folder | |||
SplitList(<listname>, <items_per_list> [, <resultfilespattern>]) | |||
Example: SplitList(ae,1000,"splitresult%05d.txt") |
|||
Splits a (big) list into
smaller pices with max. items_per_list items in each list. The result_files_pattern
must contain a %s or %05d ... which is replaced with the start index
number of the first email of each result list like: splitresult00000.txt splitresult01000.txt splitresult02000.txt ... The first partial list file is returned as new ACCU content. (The rest of the files may be drag-droped from the Windows Explorer to the User Lists Set in Turbo-Mailer.) |
|||
ScanFiles(<path_pattern> [,<pa_email> [,n_emails_per_file]] ) | |||
Example: ScanFiles("C:/files/*.txt","([\w.+-]+@[\w.+-]+)") | |||
Extracts all email addresses from a set of local files specified by wildcards ( * ? ). The regular expression may contain one or more groups. In case of more groups those groups are rendered into additional columns (separated by ; ) of the result table. | |||
ODBCSelect(<db_path>,<SQL_select_statement>) | |||
Example: ODBCSelect('myaccess','SELECT email from table1') ODBCSelect('mydb/user/passwd','SELECT email,name from table2') |
|||
Fetches email (and other
columns) data lists from ODBC-connectable databases using SQL-SELECT. Hint: you can setup databases like ACCESS-files etc. for SQL-queries by adding them to the Windows Database Sharing Setup (DSN). See Windows Control Panel / Administration / ODBC. |
|||
Write to feedback@xellsoft.com for new suggestions. | |||
(the Formula API maybe extended in future Turbo-Mailer updates. Check this document online from time to time to be informed)
3. Other User Interfaces
Dialog Menu/Config/Settings
- HTML Mail: Send also a text version
When checking this option, a text-only extract of the HTML message is inserted in the mail. Thus the mail can be displayed by non-MIME & non-HTML email readers
- HTML Editor: Editor call
Set a startup call for your favorite HTML editor here or select a template call from the drop-down list. The dummy-call "IE>=5.5" uses the HTML editor of the MS Internet Explorer (version >= 5.5), which is available on most PC's. If no other good editor is installed on your system, it is recommended to install Mozilla or Netscape.
- Block-by-block SMTP transmissions: Number of seconds
Set the number of seconds to wait between block-by-block SMTP transmissions
4. Command Line Usage:
Turbo-Mailer can send out mails by using the command line (batch mode). The default settings (SMTP, auto-dial, ...) have to be set up in the GUI before using the command line.
Examples:
turbomailer_con.exe -a test_addresses.txt
turbomailer_con.exe -t mail.eml -a test_addresses.txt
turbomailer_con.exe -f "From Addr <from@adr>" -r reply@adr -t mail.eml -a test_addresses.txt
Syntax:
COMMANDLINE SYNTAX
Usage/Windows: turbomailer.exe [OPTIONS] [FILES]
Usage/Console: turbomailer_con.exe [OPTIONS] [FILES]
OPTIONS:
-a listfile : Address list file (one address per line or CSV/TabSV table file)
with extra personalization columns.
WHEN THIS OPTION -a IS USED, TRANSMISSION STARTS AUTOMATICALLY !
-t message_file (.eml, .html, .txt)
: The mail message / template. Files ending in .html or .htm are
treated as HTML. Messages beginning with "Subject:.." and
double newline like "Subject:\n\n "
define a mail subject.
Otherwise commandline option -sis required.
HTML: References to local image files automatically create
embedded attached images in the mail.
-s subject_text
: The mail Subject. Enclose subject with spaces in quotes like:
-s "My Subject"
A subject can also be defined in the message_file (-t).
An error is raised, if there is no subject at all.
-f from_address
: your "From:" email address
-i att_path : Inserts an explicit attachment file into the mail.
This option can be used multiple times for multiple attachments
-r reply_address
: address where recipients shall reply to
( instead of)
-v SMTP_server
: the SMTP server and optional port
-y : use secured SMTP with SSL after TLS
-u SMTP_user : The SMTP server user-ID for authentication
Default: No authentication
-p SMTP_pwd : The SMTP server password.
It is asked interactively if not present but "-u" used
An asked password can be stored (encrypted).
-b mails_per_block
: Reconnect to SMTP-server after eachtransmissions. --block-delay n : Sleep n seconds before sending next block (see "-b") -z max_treads : use parallel threads for transmission.
-x x_mailer_tag
: mail software name to put in the mail header
--bcc bcc_address
: Use BCC bulking method and take bcc_address as common display
--bcc-n n : Set max. number of mails for one BCC transmission.
--bcc-show : Put BCC addresses openly into the mail header
--msgid : Message-ID created by TurboMailer
--printmime : Display the MIME body of the last transfered mail item
--encoding enc
: Set the encoding for the input message.
Tries to use the UNIX "recode" filter for uncommon transfer
encodings. ( Debian Installations: "apt-get install recode" )
Example:
turbomailer_con.exe --encoding greek7 -t mail.gr7.txt
Default: Locale encoding
--utf8 : UTF8 unicode encoding for message file (= "--encoding utf8")
Example:
turbomailer --utf8 -t mail.utf8.txt
Note: UTF8 files with BOM header will be recognized auto
--license : The license key will be asked and stored
--simulate : simulation mode without really transfering mails
-c : Don't ask confirmation for sending
-l loglevel : 3=default 2=print no individual addresses on console
-h / --help : Display this help
FILES:
*.eml : Email/Template files; contain: subject, text/html, attachments
*.lst / *.txt : Recipients list files
*.ptm : TurboMailer Project files (settings + mail + recipientslist)
Examples:
turbomailer(_con).exe --simulate
turbomailer.exe -a recipients.txt -v smpt.mailserver -s "My Subject" -t mail.html
turbomailer.exe -v smtp.gmail.com -y -t mail.txt -u xy@gmail.com -f xy@gmail.com
Note:
The Linux version of TurboMailer provides an advanced command line interface : Linux Command Line Syntax.
5. Turbo-Mailer FAQ / Trouble Shooting
" SMTP Setup for a Google Mail (@gmail.com, @googlemail.com) account "
- In the Google Mail account manager (online) you have to
enable SMTP & POP:
The switch is typically found like: GMAIL Account / Edit Labels / Forwarding and POP / 1. Status / Enable POP - Access this GMAIL account at least once sucessfully by a POP download using a POP email client (your normal email client software). Only after doing this, sending through SMTP may also be possible.
- Settings in TurboMailer:
- SMTP Server: smtp.gmail.com
- From Address: YOUR_NAME@gmail.com
- Or From Address with display name: "YOUR DISPLAYNAME" <YOURNAME@gmail.com>
- SSL checkbox: ON
- TLS checkbox: ON (SSL after TLS on port 25) or OFF (direct SSL on port 465)
- SMTP user: YOUR_NAME@gmail.com (complete email address!)
- SMTP password: YOUR_PASSWORD
- Max Threads Checkbox: OFF / ON (try this option only after success without this option)
- Notes: -
" SMTP Setup for Hotmail/MSN/Live.com (@hotmail.com, @live.com) account "
- Settings in TurboMailer:
- SMTP Server: smtp.live.com:587
- From Address: YOUR_NAME@hotmail.com
- Or From Address with display name: "YOUR DISPLAYNAME" <YOURNAME@hotmail.com>
- SSL checkbox: ON
- TLS checkbox: ON
- SMTP user: YOUR_NAME@hotmail.com (complete email address!)
- SMTP password: YOUR_PASSWORD
- Max Threads Checkbox: OFF (multi-threaded transfer may not work with this email provider; try this option only after success without this option)
- Notes: first transaction may fail with error like "(550, '5.3.4 Requested action not taken; To continue sending messages, please sign in to your account.')"; In this case log-in through web interface, then retry with TurboMailer
" SMTP Setup for Yahoo Mail (@yahoo.com / @yahoo.de / ...) account "
- Enable the SMTP & POP transfer in the account of this provider if appropriate
- Settings in TurboMailer:
- SMTP Server: smtp.mail.yahoo.com / smtp.mail.yahoo.de / ...
- From Address: YOUR_NAME@yahoo.com
- Or From Address with display name: "YOUR DISPLAYNAME" <YOURNAME@yahoo.com>
- SSL checkbox: ON recommended (optional)
- TLS checkbox: OFF recommended (optional)
- SMTP user: YOUR_NAME (only ID; not complete email address!)
- SMTP password: YOUR_PASSWORD
- Max Threads Checkbox: OFF (multi-threaded transfer may not work with this email provider; try this option only after success without this option)
- Notes: see also Yahoo POP3 and SMTP Settings and Instructions for Popular Email Providers
" SMTP Setup for GMX Mail (@gmx.net ...) account "
- Enable the SMTP & POP transfer in the account of this provider if appropriate
- Settings in TurboMailer:
- SMTP Server: smtp.gmx.net
- From Address: YOUR_NAME@gmx.net
- Or From Address with display name: "YOUR DISPLAYNAME" <YOUR_NAME@gmx.net>
- SSL checkbox: ON recommended (optional)
- TLS checkbox: ON (optional)
- SMTP user: YOUR_NAME@gmx.net (complete email address!)
- SMTP password: YOUR_PASSWORD
- Max Threads Checkbox: OFF/ON (try this option only after success without this option)
- Notes: -
" SMTP Setup for other popular email providers "
- Check the "SMTP settings" docs of this provider. Test with your normal email client software first. Use same settings in TurboMailer.
- Possibly the special details for your provider can be found easily in this list.
" Where to look if mails seem to be not transferred successfully ? "
In case of seemingly non-transferred mails there are 3 places to check:
A) Are certain addresses "refused" directly by the SMTP server? Do you get immediate error messages by TurboMailer?
- You should see a short transfer statistics in the info message box, which TurboMailer raises immediately after end of mail transfer.
- Navigate into the 'log' folder besides your saved mail message file (or from Menu/File/ExplorerDataFolder), and check the latest refused_*.log files and the processed_*.log files for your transfer job.
- Adresses in the processed_*.log (text) are correctly transferred to and accepted by your SMTP server.
B) Do you get bounce mails / error messages sent to your From / Reply-to address which you are using for your mailing?
C) Check the spam filter folder(s) of your recipient test address(es).
If after some 6 hours you don't get the information about the "leak" in any of those locations (which usually also tells you the reason of stop) then this would indicate an odd configuration problem:
- Your From / Reply-To adress may be invalid
- Your SMTP / email server system could be incorrectly configured / contain a bug.
Regarding From / Reply-To adress: Is your From-address for your mailings compatible with your SMTP server? Some SMTP servers require the 'From' address using the same domain name as the SMTP-server name or even fit the SMTP user account. In such cases you cannot use arbitrary/fantasy 'From' addresses with many simple SMTP accounts.
Yet if there is such kind of problem, then you should in most cases get an immediate 'Refused' (check the refused logs as mentioned above).
Possible causes for spam classification / rejection:
- Your SMTP server may be black-listed / dynamic
- You may need to use a proper From address in the mailings (see above)
- You may need to set/change the "X-Mailer" tag in Menu/Config/ApplicationSettings (best use a personal unique name like "YOUR_ID News" for this tag)
- Your mail subject and/or content as it may 'score' regarding typical Bayesian spam filter probabilities.
- Check the hints of the spam filter or in the rejection messages.
" How do I add images and attachments to my mailings ? "
- HTML: See Embedding images in HTML email
- Text/HTML: Add the images/files as attachment in Turbo-Mailer
- For bigger bulk mailings you should put images on a web
server and use absolute web-links to images and files.
Example: Add server hosted images in HTML like :
<img src="http://www.myserver.com/images/mypicture.gif">
Link to a download in HTML like:
<a href="http://www.myserver.com/data/myfile.zip">Dowload File</a>
" How many mails are transmitted per minute ? "
- This depends on your internet connection and SMTP server speed. TurboMailer itself is not a bottleneck regarding transfer speed.
- You can however try to use multi-threaded SMTP to exploit bandwidth best: Set&Activate the Max. Threads field for example to 5 in the Mailer pane of TurboMailer
- Speed Example: if you send mails with 2000 Byte length and
you have a 1MBit/s internet connection to your SMTP server and your
SMTP doesn't cause extra delays, then you can transmit about 1000000 /
8bit / 2000 * 60s/min = 3840 (personalized) mails max. per minute
(no BCC: bundling option in use)
" I get an error like 'getaddrinfo failed', 'connection aborted' etc. "
- you do not have a proper internet connection at all
- check if your browser works on the internet.
- check if your ordinary email client software works with the same SMTP address & settings like TurboMailer!?
- ensure, that your firewall lets pass TurboMailer through on port 25 (non-SSL, SSL after TLS), and/or on port 465 (SSL without TLS) - or at whatever special port (like 1234) which you use explicitly (SMTP server like: smtp.someserver.dom:1234).
" My SMTP Mail Server doesn't allow more than N mails ? "
- your server may have a limit for the number of emails transferred within a certain time frame
- try the feature "send in blocks"; e.g. values like 10, 20 or 90; also try to use a "Delay" between blocks
- try the BCC bundling option of TurboMailer
- try the multi-threaded transfer option (parallel transfer) of TurboMailer
- try to split big email address lists in smaller parts (SplitList function in TM's ListProcessor) and send the part with a time delay
- you may need a more capable SMTP server / account type
" I get (nearly) all target addresses refused from my SMTP Mail Server (refused list long) ? "
- Maybe try to set a non-empty X-Mailer tag in Menu/Config/Settings/X-Mailer Tag. Compuserve for example is known to require the X-Mailer tag. Best use a presonalized X-Mailer Tag like "YOUR_ID News"
- Your SMTP server doesn't like something in your mails
- The target addresses may in fact be invalid
- Most SMTP servers want you to use really your correct 'from' address for your SMTP account.
" My SMTP server doesn't accept the mails for transmission? "
- Typically you get an SMTP Error with a Error Code and short description of reason.
- Example Error: SMTPDataError: (550, '5.3.4 Requested action not taken; To continue sending messages, please sign in to your account.')
- An overview/explanation of error codes and reasons is for example found here: SMTP Error codes
" My SMTP server doesn't allow to log-on? "
- Try to use the SSL login feature (SSL checkbox right to the SMTP Password in the main mailer page of TM). MSN mail is known to require SSL/TLS log-on.
" How to email to an address list via SQL SELECT query (MySQL/Linux, ODBC/Windows) "
- On Windows in the TurboMailer GUI there is a function Menu/Tools/ImportAddressListFromODBCSQL. Follow the instructions and enter the access path like odbc_export_table/user/password and the SQL SELECT query at the appropriate fields. The relevant table needs to be exposed via the Windows ODCB Manager (Windows Control Panel).
- Linux / MySQL batch example:
echo -n '#' > adr.txt
mysql testdb -B -u root -p -e "SELECT email,name FROM subscriptions WHERE ch='goodnews'" >> adr.txt
tmailer -a adr.txt -t msg.txt -s "Test Subject" - On Windows you can use the turbomailer_con.exe (commandline version) in a similar manner like the Linux 'tmailer'