E-Mail Broadcaster
This E-Mail Broadcaster functionality is an optional add-on to the basic SendSafe system.
The E-Mail Broadcaster gives you the power to send e-mail to all your existing customers without worrying about following anti-spam rules. With the broadcaster you will only be able to send e-mail to your customers, and only to customers who have not opted out. Since the customer has the ability (using their MyAccount page) to opt out of receiving e-mail, you will not unintentionally violate any of the anti-spam guidelines by sending e-mail to a customer which has requested to no longer recieve e-mail. Since new customers are automatically added to the broadcast lists you will not have to manually maintain master lists. Each admin account with permission to send e-mail has its own masterlist.
The e-mail broadcasting system works in two different modes:
I-CRM broadcasting is a slower broadcast but offers greater flexibility and ability to perform mail-merging on outgoing messages. ListSever broadcasting is a faster broadcast but offers less flexibility and NO mail-merging on outgoing messages.
Sections:
Overview
I-CRM Record Broadcasting
I-CRM Testing - Test mode
I-CRM Setup
E-Mail Signup Function
How to create Image-Linked HTML E-Mail
E-Mail Broadcast Reports
Choosing listsever reipients
Steps to send an listsever e-mail broadcast from Outlook
Automatic listsever customer inclusion in lists
ListServer E-Broadcasting Configuration
Listsever E-Mail Broadcaster Job
ListServer Record E-Mail Broadcaster Job
ListServer E-Mail Broadcaster Job Tracking job
ListServer Techinical Details
ListServer Job Status
The e-mail broadcaster can be used to send generic e-mail as well as automatically generated e-mail.
The I-CRM record CSC e-mail blast can be used to create standard set of reusable e-mails or a one time e-mail. Using I-CRM CSC is the typical way e-blast are authored and sent.
I-CRM Record broadcasting is the ability to send broadcasts of specific database records. For example: You can broadcast a CSC record or an items record (note: Item Record broadcasting done from the Items admin page is NOT I-CRM; I-CRM broadcasts of items record must be done manually outside of admn pages by manuall queuing I-CRM jobs).
I-CRM record broadcasting will create a formatted e-mail from the CSC record and send it to all recipients. This is a great way to e-mail out messages and announcement to all your customers.
Item record broadcasting will create a formatted e-mail describing this item and send it to all recipients. This is a great way to e-mail out a new product announcement.
Record broadcasts are easy to send, all you have to do is press a single button found on the admin page for that record.
I-CRM E-Mail is the subsystem which send these types of broadcasts. The Admin page sending the I-CRM broadcast will setup the Job 33 for you. All customer will be selected to recieve this I-CRM email unless they have previously opted out of e-mail broadcasts.
VERY IMPORTANT Do not change the record being sent until the e-mail blast has completed. Do not run more than one broadcast job at time. Changing the record before the e-mail blast has begun or running multiple jobs at the same time can result in unexpected results such as mixed subject lines or duplicate emails beging sent out. To check status on an I-CRM job load either the CSC Admin page or Job Queue. When an I-CRM job completes, an email will be sent to the return address set for the message AND to the CC Mail list configured for the storefront.
The format of the e-mail contains configrable heads and footers plus optional advertisements. (defined as special purpose advertisements).
From: sales@mybiz.com To: mycustomer@theirbiz.com Subject: <Subject from entry field on Admin Page>
|
The special purpose advertisement type 100 is intended for the purpose of creating a general purpose header for all e-mail broadcasts. This header record often contains NO advertisement copy and instead contains an HTML header for the e-mail such as the business logo.
The special purpose advertisement type 101 is intended for the purpose of creating a general purpose footer for all e-mail broadcasts. This footer record often contains NO advertisement copy and instead contains an HTML foot for the e-mail such as the business contact info.
The types of records which can be broadcast are:
Test mode can be used when performing I-CRM record broadcasting. In test mode an e-mail is sent only to a designated test e-mail address AND not the entire list. The test e-mail address is the "notify e-mail address" entered into the record (item or CSC) Admin page. If a supervisor e-mail address is configured, this address will also recieve a test copy. The email address used in the test mode must be found in a customer record in the database. If this email address is not in a customer record then nothing will be sent.
This function will render a small sign-up form which creates stub customer records with email address and Optin set true. The function will not allow duplicate email addresses. Each account is created with null credentials so it cannot be used to login but will be included in all integrated email broadcasting functions.
Notes:
function render_signupForEmail( formBaseName, buttonFile, buttonHeight, buttonWidth )
| Param | Description |
| formBaseName | This is the base name for the form. This name must not conflict with other forms on the page |
| buttonFile | This is the path+name of the image file to use as button |
| buttonHeight | This is the height of the button image |
| buttonWidth | This is the width of the button image |
CHOOSING LISTSERVER RECIPIENTS
E-Mail broadcasting requires Selecting a list of customers to receive the broadcast. you can use managed lists or unmanaged lists. For managed lists, SendSafe automatically builds the list for you from the customer base. for unmanaged lists, you maintain the list on your e-mail server and send safe uses what you have created.
For unmanaged lists: Create the mail list on your e-mail server:
For managed lists: Start by opening the E-Mail Broadcaster Admin page then follow these steps (which are also list on the Admin page).
Please note that you cannot update customers who have opted out of the e-mail list. Customers who have opted out will have a value of zero (0=Optin) found in the Optin column of the list of customers.
General Notes for Managed and Unmanaged lists:
SENDING LISTSERVER E-MAIL BROADCASTS FROM OUTLOOK
E-Mail broadcasting from Outlook can be used to send quickly formatted broadcasts. This method of broadcasting from is inferior to using record broadcasting.
E-Mail broadcasting from Outlook (or other e-mail programs) requires two steps: (1) Selecting a list of customers to receive the broadcast and (2) Drafting the e-mail to be sent.
Start by opening the E-Mail Broadcaster Admin page then follw these steps (which are also list on the Admin page).
Subject: "7208@MYSITE Enter Your SubjectYou would send the e-mail from Outlook to "emb@mybiz.com" and your subject would be: "7208@MYSITE We Sell Apples" which would result in a subject line of the e-mal blast being set to: "We Sell Apples"
To: "emb@mybiz.com"
How to create Image-Linked HTML E-Mail
Image-Linked HTML E-Mail is the proper and respectful way to send e-mail with images in it. This type of e-mail does not contain the images (which can be very large and slow to download). Instead this type of e-mail sends only links to the images which are located on your web server. The result is e-mail that is smaller and can be download by the recipient quickly.
You can create reports which show how many e-mail jobs you have run and how many e-mails went out in that job. These reports are useful to keep track of when an e-broadcast went out and billing.
Entries labeled with a customerId = 0 are jobs that were sent out automatically by the I-CRM subsystem.
Run a report click on the "E-Broadcast Report" navigation link on the web page.
AUTOMATIC LISTSERVER CUSTOMER INCLUSION IN LISTS
New customers can be automatically added to all master lists. The EMBDefaultOptIn flag controls whether a new customer is automatically added.
If the EMBDefaultOptIn flag is set to 1 then all your lists will have all new customers added with no action requird by you or the customer.
If the EMBDefaultOptIn flag is set to 0 then all your lists will have all new customers added automatically only if the customer Opts in. The customer can optin or out by going to their MyAccount page and changing their E-Mail Settings.
You can present the new customer with the option of opting in or out during the checkout process. If you have an agreement page
then this page can also be used to ask the customer if they want to optin or out. If you do not have an agreement page then the
customer can be presented with a page which asks only the question whether they want to opt in or out. The agreement / optin
page can be configured to be displayed every time a customer checks out OR only the 1st time a new customer checks out.
*The agreement page is part of the base SendSafe system but will require some configuration before use.
LISTSEVER E-BROADCASTING CONFIGURATION
See also: CustomersExt DB Records
The basic steps to configure E-Mail Broadcasting are: setup your e-mail accounts, your list, and Sendsafe. The e-mail broadcasting system is compatible with VisNetic / IceWarp e-mail servers and any other server that supports a similar e-mail list format (support for additional servers can be added by CPrompt for a nominal cost). You must have direct network fileshare access to the e-mail server. The e-mail list will be constructed by SendSafe before each broadcast.
Step 1: Create the job tracking and relaying mailbox account. This account should be created on all e-mail servers for a domain . This is the E-Mail Broadcast Account which recieves job tracking e-mail and relay e-mail destine for listserver. This account has two e-mail aliases:
Setup the following account criteria:Step 2: Create E-Mail List on the server which will be the broadcaster.
Step 3: Configure the Global.inc.asa file for broadcasting by entering the E-Mail Broadcast Account, default optin state, and enabling broadcast operation.
Step 4: Configure the SendSafe storefront.config file for broadcasting by entering the e-mail server domain name and account credentials, the E-Mail Broadcast account, the E-Mail Broadcast tracking account, the e-mail list e-mail address, and the path to the e-mail list file.
Once the system is configured, we recommend that you run a few test e-mails to a small number of known individuals.
SendSafe global.inc.asa file:
| Keyword | Description |
| Application("EMBroadcastEnabled") = false | Set true / false to enable and disable the optional function. |
| Application("EBroadcastSharedEmailAddr") = "info@yourbiz.com" | DISPLAY ONLY E-Mail address to send outlook broadcasts (see: EBROADCAST SHARED EMAILADDR). This value is for display only and appears on the e-broadcast page as the suggested address to send your trigger e-mail from Outlook. This address is not used by any record broadcast functions. |
| Application("EMBDefaultOptIn") = 1 | Default state for OptIn flag (0/1). This flag controls whether a new customer is automatically added to the e-mail list of if they must take action to request addition to the list. |
SendSafe storefront.config file:
| Keyword | Description |
| EBROADCAST POP3 USERID = JohnDoe | The POP3 tracking account used for this list manager. Also used for ESMTP authentication or POP-Before-Send for I-CRM email blasts. This account will be polled by SendSafe for trigger e-mails sent from Outlook for relaying to the listserver list. This account will be polled by SendSafe for e-mail broadcast tracking e-mail which will be sent from the listserver. |
| EBROADCAST POP3 PASSWORD = password | The POP3 tracking account used for this list manager. Also used for ESMTP authentication or POP-Before-Send for I-CRM email blasts. |
| EBROADCAST MAILSERVER = mail.yourbiz.com | The domain name of the e-mail server to use for broadcasting. |
| EBROADCAST SHARED EMAILADDR = emb@yourbiz.com | commanly named: emb@yourbiz.com This is the owner e-mail address for the list. This owner address will be automatically added to the beginning of the list. When using an optional trigger or source e-mail, that e-mail will be sent to this address from Outlook. This e-mail address is typically the "from:" address used for all e-mail sent into the listsever. This address is often used as the return address (bounce back) for e-mail broadcasts. This configuration is made in the e-mail listserver list setup. The listsever list must NOT BE setup to echo a cc: copy of outgoing e-mail to this address. |
| EBROADCAST TRACKING EMAILADDR = echoemb@yourbiz.com | commanly named: echoemb@yourbiz.com This is the address to which the tracker job e-mail is sent. This e-mail account should be used for no other function than tracking. This address is automatically added to the end of the e-mail list. When this mailbox (pop3 username) receives a copy of the e-mail broadcast then SendSafe knows that the entire list has been sent by the listserver. This address should never be used as the return address for e-mail broadcasts |
| EBROADCAST LIST E-MAIL ADDR = bcast@yourbiz.com | The SMTP e-mail "list e-mail address" to which all broadcasts are sent. |
| EBROADCAST LISTFILE = \\servername \c$ \EmailServer \lists \mylist.txt | In managed list mode set to: the complete UNC path and filename In unmanaged list mode set to: <none> |
| EBROADCAST LIST ENTRY FLAGS = ;1; | List server flags appended to each e-mail address entry in the list (except the owner entry). |
| EBROADCAST SUPERVISOR EMAILADDR = supervisro@yourbiz.com | Optional e-mail address which will be cc: copied on all outgoing e-broadcasts (set to <none> to disable). |
This is the job which manages the lists and intiates a broadcast. This job is queued by the broadcast admin page when a job is started. This job will create a record in the EMBroadcast table.
This function is run by a JobQueue job which looks like the example below:
| Parameter | value |
| param1 | e-mail address which will receive job status / acknowledgement e-mails. |
| param2 | n/a |
| param3 | Owner-CustomerID |
This is the job which creates an broadcast e-mail for the specified DB record, manages the lists, and intiates a broadcast. This job is queued by the broadcast admin page when a job is started. This job will create a record in the EMBroadcast table.
This function is run by a JobQueue job which looks like the example below:
| Parameter | value |
| param1 | [e-mail ack address];[subject] E-mail address which will receive job status / acknowledgement e-mails. The subject is the subject line in the e-mail broadcast. |
| param2 | [objectType];[RecordID];[TESTMODE] Legal object types are any database table suported by the job (i.e. ITEMS, CONTEXTSENSITIVECONTENT, etc.). The recordId is the primary key for the record. [TESTMODE] is an optional flag which sets the job into TEST MODE where the only e-mail addresses to which the broadcast is sent are:
|
| param3 | Owner-CustomerID |
This job tracks and manages currently running broadcast jobs. This job is automatically queued by the system once a broadcast job has started. This job gets all its information from the EMBroadcast table.
This function is run by a JobQueue job which looks like the example below:
| Parameter | value |
| param1 | e-mail address which will receive job status / acknowledgement e-mails. |
| param2 | n/a |
| param3 | EBJobTrackingId (see also: EMBroadcast) |
E-Mail List format: The e-mail list use by the e-mail server must be an ascii file with a format that matches what
is illustrated below:
listowner@yourbiz.com
listsupervisor@yourbiz.com
name1@mybiz.com;1
name2@mybiz.com;1
name3@mybiz.com;1
In the above illustration, the listowner and supervisor names are added to the list without any postfix. All other
names are added to the list with the postfix ";1" - where this postfix is configurable by the keyword EBROADCAST LIST ENTRY FLAGS.
The function of these postfix flags is listserver security. The flags typically control from which accounts broadcasts can originate. The
listowner account (designated in the SendSafe system by E-Mail Broadcast Account)
is always the first account in the list and contains no flags (which typically grants this account full broadcast
privileges). The meaning and functions of these postfix flags are defined by your e-mail server and not SendSafe.
E-Mail format: Each e-mail must be in HTML e-mail format.
Plain ascii text e-mail is not supported by the broadcast system. Each e-mail that is broadcast
is invisibly tagged with a unique job number which identifies from which broadcast job the e-mail originated.
This tracking number is used by the SendSafe system to match a tracking e-mail to its job; and make the determination
that a broadcast job has been completely processed by the listserver. The syntax of this invisible tag is:
"</body>\n\n<!--[JID=JobNumber]--></html>
Database Operation: The DB columns in the Customer Record which control inclusion of a customer in a specific e-boradcast are:
The MBMembership value is the primary control used by the administrator when a master list is managed. This value controls whether a specific customer will recieve a broadcast sent by a specific administrator. Each administrator account has their own master list and this master list is defined by the state of this data column.
The MBBlockedFlag value is set to 1 if this customer is blocked from recieving e-mail. This flag is set by an administrator and unlike values in the MBMembership value which are unique for each admin, changes to MBBlockedFlag are global and effect everyones ability broadcast e-mail to this address.
The MBOptIn value is conrolled by the customer. They have the ability to set this column to 0 which means no e-mail will be sent to this customer. The customer controls the state of this value on the MyAccount page. This value cannot be changed in the E-Mail Broadcasting Admin page.
Customer records are selected for inclusion in the list using the folowing SQL which run by the SendSafe robot on-the-fly as each temporary e-mail broadcast list is constructed:
Select distinct email from addresses, customers, customersExt**Where ABC = the Owner-CustomerID of the admin account under which this e-broadcast was sent. This column controls the makeup of each admin's master list of customers.
where
addresses.addressCodeId = customers.AddressID AND
CustomersExt.CustomerID = customers.CustomerID AND
( MBBlockedFlag = 0 or MBBlockedFlag is null ) AND
( MBMembership not like '/%ABC%/' or MBMembership is null ) AND
MBOptIn > 0
order by email
For web submitted jobs (jobcode=28), the EMBroadcast record will list the number of e-mails sent after the job has been transmitted to the e-mail server. The completion of the job will not be confirmed until the tracking job has be triggered; at which time the MBendDateTime will be set.
For outlook submitted jobs (jobcode=14), the EMBroadcast record will list the number of e-mails sent after the job has been transmitted to the e-mail server. The completion of the job will not be confirmed until the tracking job has be triggered; at which time the MBendDateTime will be set.
In both types of jobs the following can be inferred:
Useful SQL:
select * from EMBroadcast where MBendDateTime is null select top 5 * from EMBroadcast where MBendDateTime is not null order by MBStartDateTime desc select * from jobqueue where jobcode = 28 or jobcode = 14 or jobcode = 15 order by jobcode desc