Gammadyne Corporation
Home Contact
Rated 5/5 stars on
Sony trusts its email marketing campaigns to Gammadyne Mailer. Boeing trusts its email marketing campaigns to Gammadyne Mailer.
Kodak trusts its email marketing campaigns to Gammadyne Mailer. CBS trusts its email marketing campaigns to Gammadyne Mailer.
Ford trusts its email marketing campaigns to Gammadyne Mailer. AT&T relies on Gammadyne Mailer for its email marketing software.
Cisco entrusts its email marketing efforts to Gammadyne Mailer. Intel uses Gammadyne Mailer for its email marketing campaigns.
"Over the years Gammadyne has become a mission critical piece of software to our operations."
- David Goodale
"Finding Gammadyne Mailer was like a dream come true for us."
- Jonathan Deitch
"Gammadyne is absolutely the BEST bulk email solution out there."
- Cindy Papenheim

Email Data Extraction

The following guide explains how to configure a Gammadyne Mailer project to process data in an incoming email, and add that data to a new row of a database.

  1. Go to the Database branch.  Specify the name of the ODBC Data Source, the Table Name, the Recipient Column, and the Primary Key.  To see more information about these fields, right click on the editbox and choose "Help".
  2. Go to the Incoming/Source branch.  Check the "Process Remote Email" box.  Click the "Add" button at the bottom of the table.  Specify the details of the incoming email account (server name, protocol, port, user name, password).
  3. Go to the Incoming/Processing branch.  Set the Processing Mode to "Add to database".  In this mode, when an email is received, a new row is added to the database.  The email address will be automatically added to the Recipient Column (specified on the Database branch).
  4. Check the "Process From:" box.  The email address that is stored in the Recipient Column will be taken from the From: header of the incoming email.

On the Incoming Script branch, you can write a script that will extract other data from the email body, and store that data in the new database row.  Consider the following email body:

Name:John Public
Age: 36

To process this kind of message, the script would look like this:

[[let name = latch(-Body-, "Name:")]]
[[let age = latch(-Body-, "Age:")]]
[[let sex = latch(-Body-, "Gender:")]]

In this example, "name", "age", and "sex" are the names of database columns.


When Gammadyne Mailer was developed back in 1999, it was internally designed for ASCII.  If you want the extracted data to support unicode characters, the syntax is a little different.  This modification of the above example demonstrates how to latch unicode:

[[db_set_unicode("name", latch_text_unicode("Name:"))]]
[[db_set_unicode("age", latch_text_unicode("Age:"))]]
[[db_set_unicode("sex", latch_text_unicode("Gender:"))]]

Or, if the email is HTML instead of plain text, use this:

[[db_set_unicode("name", latch_html_unicode_until("Name:", "<br>"))]]
[[db_set_unicode("age", latch_html_unicode_until("Age:", "<br>"))]]
[[db_set_unicode("sex", latch_html_unicode_until("Gender:", "<br>"))]]


Now that the project is finished, choose Save As on the File menu to save the project.  Send a test email to the email account.  Then launch an Incoming Operation by pressing F7.  If the row is not added to the database, examine the Incoming Log for error messages (press F10).

Once testing is completed, go to the Incoming/Processing branch and change Delete Messages to "When Processed".  This ensures that an incoming email is only processed once.

Although this example demonstrates the most common type of email data extraction, many other ways of processing email data are possible.  The built-in scripting language is capable of handling almost any conceivable scenario.  Let us know if you need assistance.

See Also

Opt-Out Forms
SignUp Forms