Campaign Enterprise v12 User Documentation

!
Campaign Enterprise v12 User Documentation
Revised 2015-07-05 (v12.0.262)
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !1
Table of Contents
Introduction ...............................................................................................................3
Major Changes In Campaign Enterprise v12 .........................................................4
Campaign Enterprise Deployment ..........................................................................5
Installation Instructions ...........................................................................................6
Bounce System Setup ............................................................................................15
Administration Functions ......................................................................................17
Email List Administration ......................................................................................29
Campaign Administration ......................................................................................37
Message Content Programming............................................................................57
Using External Databases .....................................................................................63
CECONFIGURATION.TXT File Settings ................................................................65
Uninstalling Campaign Enterprise ........................................................................68
Moving The Campaign Enterprise Database (CampaignDB1)............................69
Revision History ....................................................................................................70
Troubleshooting......................................................................................................87
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !2
Introduction
Campaign Enterprise has been re-written from the ground-up in the .NET framework, supports true multi-threading
managed by the OS, and now uses the Microsoft Internet Information Service (IIS) for all web activities. The IIS system is
used for administration of Email Campaigns and Email Lists, open tracking, click tracking resolution, view-as-webpage
functions, and unsubscribe functions. Using the IIS system you will have control over all aspects of how the product
functions including security, SSL certificates for HTTPS functions, NTML user authentication, and everything else IIS
offers. All offline functions, such as email sending, schedule processing, and bounce handling are done in a separate
service apart from the web activities. All these functions utilize the same SQL server(s) to communicate and stay in
coordination.
The back-end database for Campaign Enterprise will now be based on Microsoft's SQL server, but if you do not have a
license for MS SQL we will provide a version of MS SQL Server system that will have plenty of power for Campaign
Enterprise. You can still use all the previous databases like Oracle, MySQL, DB2, MS Access as always.
Campaign Enterprise comes in 3 different editions depending on your needs, but all editions of Campaign Enterprise
include the following elements:
• The system has been completely rewritten in a modern language (.net) that supports today's OSs in 64 bit, and multithreading (no lockups)
• The web server portion utilizes Windows IIS. Using IIS brings all of the advantages of using an IIS server including
higher security and scalability
• Introduction of "Run-Instances" where each campaign run is stored in the database and all response events can be
attributed to a specific run of that campaign. This is very important if you run the same campaign many times and need
to know the effectiveness of each run.
• Email sending speeds have been dramatically increased (600k/hour on one thread, small message)
• The user interface is more intuitive to sending email similar to a web-mail client
• You can send campaign simultaneously
• Use the campaign scheduling system to launch campaigns at a specific date and time, you set the campaign to run on a
repetitive cycle. This is perfect if you need to monitor a database for orders or other database triggered events for
sending an email.
• Drag-and-Drop calendar scheduling function showing US holidays and blackout days
• There is now a built-in POP server so all bounce handing is done internally and you don't have to establish bounce POP
accounts for each campaign as before (you just set an MX record to Campaign Enterprise). Since the system will use a
VERPS technique (Variable Envelope Return Path) for bounces, every bounce will be recorded correctly since the
information returned is embedded into the return-path address that is not modified by the SMTP server system.
• You can create and maintain built-in Email Lists with importing capabilities. Custom fields can be added to the email list
so you can save other information. By using Filtered Email Lists you can create a new email based on a larger list.
• The backend database is MS SQL Server. You can use the free version of MS SQL or use an instance of your own SQL
server
• Email sending is done using multiple sending threads instead of a singular sending thread
• Since we are using IIS for the web server all SSL certificates for communicating in HTTPS are support
• Windows user login ability (NTLM) allows you to choose to use your Windows login context to log into Campaign
Enterprise
• View email as a webpage capability just by enabling it
• Built-in web-based unsubscribe ability. During unsubscribe you can optionally ask the “reason”.
• Graphics that are used in emails are uploaded to Campaign Enterprise through the editor interface. The images are
hosted on the Campaign Enterprise system or can be embedded in the email
• Higher performance click tracking and open tracking due to the IIS server and MS SQL server
• More reporting capabilities with the combination of MS SQL server table and better recording structure
• Able to submit campaign initiation from outside of Campaign Enterprise (API)
• Ability to have multiple Campaign Enterprise systems behind a load-balancer to distribute high-volume responses and
also to allow Campaign Enterprise systems to be shut down while others run (100% uptime)
• New user interface, less graphics, very fast, and more business oriented.
• Built-in Mail Server test system. Allows you to send your campaign to a “fake” SMTP server that can measure the
fastest speed possible to your normal SMTP server.
• Per-User session timeout limits
• Automated password retrieval
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !3
Major Changes In Campaign Enterprise v12
Run Instances - In the past, when you ran a campaign several times, all of the statistics were
grouped into one cumulative set of data so you really did not know what results you obtained from
running the campaign over time. With the introduction of Run Instances, Campaign Enterprise stores
individual statistics on every campaign that is run (more than a log). You can run reports based on
the whole campaign or on individual campaign runs.
Unlimited Sending Threads - In version 11 and earlier, the number of sending threads you could
send at the same time was limited by your user license count. Those limitations have been lifted!
Also, Campaign Enterprise is now a completely multi-threaded system and can more effectively use
CPUs (cores) and memory. Each Mail Server can now be assigned a number of “threads” that can
be sent to that Mail Server concurrently.
Mail Server Groups - You are now able to establish Mail Server Groups which are collections of Mail
Servers. A Mail Server Group can be selected to send your campaign like any other single Mail
Server, but having a group of Mail Servers working together will increase sending performance and
add redundancy. If a Mail Server in a Mail Server Group is shut down for maintenance or is having a
problem and cannot receive email anymore, that Mail Server is “invalidated” by Campaign Enterprise
for that specific campaign run and the other Mail Servers in the group will take up the slack and
continue.
Bounce Handling - No more POP accounts! This is one of the biggest changes to Campaign
Enterprise and was one of our most asked for feature. Campaign Enterprise now has a built-in SMTP
receiver service that will accept and process bounced emails based on VERPs technology (Variable
Envelope Return Path). In the past, you had to establish a POP account for almost every campaign
you did. Campaign Enterprise then had to monitor all of those POP accounts which was a huge
bottleneck and drain of resources for large system or systems that have been running for a period of
time. Now, you simply create a bounce domain name (or multiple domain names) in DNS which can
be a sub-domain of your current domain name. Emails are sent using a special return-path address
including the domain you established, the email list, and recipient record ID. If the email is returned
by the recipient SMTP server then Campaign Enterprise will record that bounce perfectly.
Use of Windows IIS Webserver - Campaign Enterprise now uses the familiar Windows IIS system
for all webserver activities. The advantages of using this webserver would fill pages of
documentation, but the most important improvement will be reliability and configuration possibilities.
Using this system can also being used to establish load-balancing to multiple Campaign Enterprise
instances if needed.
Use of Microsoft SQL Server - In the past, you had to purchase a higher-priced edition of Campaign
Enterprise so that Campaign Enterprise would use an external database for backend database
activities. Today with version 12, using an SQL Server is standard and the single database file is no
longer used. The SQL Server can either be an SQL “Express” version, which is free of charge, or if
you have your own SQL Server system already running than Campaign Enterprise can use that.
Because the SQL Server is truly a transactional database, lock-ups will not occur as in the past when
the single-file database was getting hit too hard. Using the SQL Server also lends to more reliability,
more security, and easier backups.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !4
Campaign Enterprise Deployment
Below is an overview of the way that Campaign Enterprise can be deployed. In this graphic, the SQL
Server configuration is shown to be on a separate machine, and even shows the mirroring ability if
required, but the SQL Server can exist on the same computer as Campaign Enterprise.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !5
Installation Instructions
Recommendations
We recommend installing Campaign Enterprise on a fresh new system so there will be no chances of
compromising any other operations a computer may be doing. If you cannot, please be sure the
machine is backed up, especially the IIS System meta-base because the install will be making
additions to the IIS system. You may install the program on a test computer and move it to a
production computer later. Over-use of the license key may cause it to be invalidated.
Prerequisites
Machine requirements:
•
•
•
•
•
•
•
Microsoft Windows 2008 or better, 64-bit OS only, Cannot be on a Domain Controller
Microsoft Windows IIS 7 Web Server or better
At least 2 CPU cores
4GB minimum but 8GB or more is recommended
SQL Server 2005, 2008, or 2012, Full or Express version
100MB Disk just for Campaign Enterprise programs, your database are additional
2 IP addresses if you already have a full Email Server (SMTP) that listens to port 25 because
Campaign Enterprise needs to listen to port 25 for bounce recording
- If you DO NOT have an SQL Server to use - SQL Server is required for all back-end database
activities for Campaign Enterprise. You can use the free SQL Server Express 2012 and we
recommend downloading latest version from the website below. There are several variations of SQL
Server Express to use but we recommend using the “MS SQL Express 2012 with Tools” so you can
administer the SQL Server if needed.
http://www.microsoft.com/en-us/download/details.aspx?id=29062
After downloading and installation the SQL Server Express, make sure the SQL Server Service is
running before installing Campaign Enterprise by checking the Windows Services area in the
Windows Control Panel.
- If you DO have an SQL Server on another machine - Then you will need to run a few scripts on
your SQL Server to build the database required to run Campaign Enterprise. You will need to be able
to log into the SQL Server Management System (SSMS) to run these scripts, and you will need to
establish either SQL or Windows authentication security records so you can access these new
databases.
- You may need to enable ASP in your IIS setup. Most "server" computers will already have this
enabled in IIS but some may not. You can check this by looking the ASP setting, IIS Server, in the
System Roles on the computer. This configuration area can be in the "Turn Windows Features On of
OFF" link in the "Programs And Features" area of the Windows Control Panel.
- Verify that the IIS website service is up and running.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !6
- For bounce processing, open port 25 to the Campaign Enterprise computer. We assume that port
80 is already open for HTTP activity
- Create DNS entries for admin, public, and bounce activities.
•
You should have an "A" record in your DNS pointing to the IP address for the IIS system for
administrative website activities. Example: http://ceadmin.arialsoftware.com. This URL will be
used to log into the Campaign Enterprise system to configure and monitor campaigns.
•
You should have an "A" record in your DNS pointing to the IP address for the IIS system for
public website activities. Example: http://cepublic.arialsoftware.com. This URL will be used by
the outside world to get images for emails you send out (not embedded), respond to
unsubscribe requests, click tracking requests, etc.
•
You have to create an "MX" record for bounce processing. Using the VERPs method, any
emails that are rejected by the destination email server will be returned to the Campaign
Enterprise system by using this domain name. The bounce domain should point to the Public
Domain Name above. Usually it is best to use a sub-domain of your main domain for
consistency. For example, if your domain name for email is "arialsoftware.com", then a good
domain to use would be "cebounce.arialsoftare.com". Example DNS entry would be:
cebounce.arialsoftare.com MX 10 cepublic.arialsoftware.com
Program Installation
Run the installation EXE file that is found in the zip file you downloaded. You will need to run the
installation EXE with administrator rights. The installation will first extract the files/folders it needs
into a temporary area, then you will be presented with a configuration screen.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !7
After the file extraction phase, and the installation of support files, you will be presented with this
screen:
License Key - Enter the license key you were given by Arial Software in this email. This may either
be a full license or a trial license.
!
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !8
!
Installation Folder - On the initial installation of the product you will see this screen. Enter the disk
path for the ultimate location of the Campaign Enterprise files. We recommend using the normal
"inetpub" path that IIS uses for that other websites, but technically it can be located anywhere. Do
not use an ending back-slash in the path. Example: c:\inetpub\ce12
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !9
!
SQL Server Name or IP - This is the name of your SQL Server to be used. This setting may be the
computer name, the computer name and the SQL instance name, or IP address depending on how
you set it up your SQL Server. For example, it could be "COMPUTER1" or it could be
"COMPUTER1\SQLEXPRESS". The easiest way to find this out is setting is to start up the SQL
Server Management tool (SSMS) in the start menu, and when attempting to log on it will show the
SQL Server name in the login box.
Authentication - When using “Windows Authentication”, the username you are currently logged in as
will be used to access the SQL server specified. When using “SQL Authentication” you will be
prompted to enter the SQL username and password.
Skip creating databases now but make SQL script - This setting is for when you want to install
Campaign Enterprise now but you do not presently have access to the SQL Server that you need to
use. This can happen in companies where the SQL servers are handled by another department.
Whether or not the connection to the database is made during this installation, an SQL script will be
created to reproduce the backend database tables, default data, and security. If you already have an
SQL Server on a different computer for the back-end for Campaign Enterprise, check this box and the
installation will not attempt to create the database volumes during installation. The created script can
then be used by you or others to create the databases. Because of the database not being created
immediately, none of the services will be started and the administration website will not function. After
installation, you will need to create the database volumes and security entries on your SQL Server
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !10
manually. This SQL script , called “ce.sql”, can be found in the “CE12\support” folder after installation
that you will run on your external SQL server.
!
Admin Domain Name - This is the domain name that gets set in the IIS system for the
Administration website entry. (see reference above in prerequisites)
Public Domain Name - This is the domain name that gets set in the IIS system for the Public website
entry. (see reference above in prerequisites)
Bounce Domain Name - This domain is used in the Return-Path portion of the emails that will be
sent out and concerns email bounces. (see reference above in prerequisites)
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !11
!
Create local machine usernames - When this is selected, the installation will create the usernames
specified on the current machine. This is usual when the SQL Server also resides on the same
computer. Just include the username itself and not the machine name.
Use existing Domain usernames - When this is selected, the installation will validate that these
domain usernames (for admin and public) and then use these usernames and passwords to establish
security and run-time context for the webserver and services. When entering the username be sure
to use the full domain username like [email protected]
Campaign Enterprise Admin Account - This is the username and password that will be used when
the installation is creating the Windows user account "ceadmin". This new username is used for the
Campaign Enterprise IIS website activities concerning the administering of campaigns, and allows
Windows Authentication to be use to connect to the SQL Server. This new username is also granted
"Log On As Service" privilege to run the background services for the Campaign Enterprise system.
Campaign Enterprise Public Account - This is the password that will be used when the installation
is creating the Windows user account "cepublic". This new username is used with the Public IIS
server entry for website activities like response events like click tracking and unsubscribes. Optionally
you can reduce the privileges of this user in the SQL Server for added security.
Proceed by clicking on the Continue button and monitor the installation of the system. Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !12
After Installation
• After installation, make sure the CE services are running (if you allowed the SQL databased to be
created). The services involved with Campaign Enterprise are:
•
•
•
•
•
World Wide Web Publishing Service (IIS)
CEMain
CEBounce
CEMailServer
CEQSend
• Make sure that the IIS Website entries have been made in the IIS Management Console
• Make sure that the two database volumes were created in the SQL server:
• CampaignDB1
• CampaignLists
• Log onto the system using the Admin URL like above: http://ceadmin.arialsoftware.com (your
specific URL) The default login information is:
email:
password:
[email protected]
adminadmin
• After login in, you can go to the Administration section of the program (click on Administration upperright-hand corner) and go through these management areas to get started:
•
•
•
•
•
•
System-Wide settings and add mail server information that will be used by the system for email
notifications/alerts.
Site-Specific settings will allow you to set up some features specific for your installation
User Management - Change the email and password you just used to log in in the "User
Management" area
Bounce Domain Name Management - You should have one entry in this section that was
created during installation
Public URL Management - You should have one entry in this section that was created during
installation
Mail Servers - By default there will be a pseudo email server entry for testing. Add at least one
more Mail Server that will be selectable by the Campaigns
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !13
Notes
• Since Microsoft IIS is being used, you are completely open to making any changes you want to that
system concerning security, scaleability, etc. You can add SSL certificates for secured
communication and even lock down folders if needed.
• During installation the system will create a file called ceconfiguration.txt in the “system” folder under
“ce12” folder. This file allows you to modify the connection strings to the databases and update
license keys if needed. You can also control levels of system debugging using switches. After
modifications to this file it is recommended you restart all services to use the new settings.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !14
Bounce System Setup
Bounced Emails and VERPs
A “bounced” email refers to an email that could not be delivered to the recipient, for various reasons,
and it is returned to the address specified in the “return-path” address of the email. Campaign
Enterprise acts like a mail server using this customer domain name you supply. Campaign Enterprise
uses VERPs (http://en.wikipedia.org/wiki/Variable_envelope_return_path") to manage these these
emails. When a email is sent from Campaign Enterprise the “return-path” email address used is
unique to that recipient so that when the bounced email is returned it can be identified to that exact
recipient. The return-path address that Campaign Enterprise generates may look like this:
[email protected]
The first part of the email (to the left of the @ sign) is an encoding of the unique ID of the recipient,
the campaign ID, and the recipient email address used to send the email. The domain part of the
email (to the right of the @ sign) is what you specify as the “bounce domain name”. This format will
vary slightly if the UniqueID and EmailAddress columns you specify are the same where it will only
include the information once in the return-path string.
Setup & Testing of the Bounce System
Step #1: Set up an MX record in your DNS so the bounced emails can make it back to the Campaign
Enterprise computer. We recommend that you create a subdomain or your main domain name
because if you use your main domain name then the bounced emails will returned to your normal mail
system and not Campaign Enterprise. For instance, if you normal email domain is arialsoftware.com,
then make a subdomain called cebounce.arialsoftware.com.
Here is a sample DNS MX record entry:
cebounce.arialsoftware.com
MX
0
cepublic.arialsoftware.com
It is assumed there is already an “A” record for cepublic.arialsoftware.com pointing to the IP or your
Campaign Enterprise box.
Next you need to create an SPF record for the bounce domain name. This is used by the receiving
mail server to validate that the sending mail server is authorized to send for the domain.
Step #2: Open a port 25 from the outside internet to your Campaign Enterprise box. In this way, they
mails servers of the world can bounce the emails directly back to Campaign Enterprise for
processing.
Step #3: On a computer outside your network, using NSLOOKUP, test that the MX record that you
established is available. You can do this by running NSLOOKUP from a DOS prompt, then typing
“set q=mx” telling NSLOOKUP to look at MX records, then type in your bounce domain name. The
return information should show the MX record with it pointing to your public domain name for
Campaign Enterprise.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !15
!
Step #4: Now that the MX record is established and port 25 is open, you can test if the Campaign
Enterprise bounce system can be communicated with from the outside. Again, on a computer outside
your network, go do a DOS prompt and run TELNET. Once in TELNET, type something like:
TELNET> open cepublic.arialsoftware.com 25
If everything is working you will get a prompt from the Campaign Enterprise bounce system which
says “Arial Here”.
!
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !16
Administration Functions
By clicking on the “Administration” at the top of the page, you are taken to the administration selection
screen where you can setup defaults for the system, create new users (depending on your version),
create mail servers, and many other settings.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !17
System Wide Settings
Use this screen to set up the system mail server used to send alerts, email campaign summaries,
forgotten password request fulfillment.
System Email
This email address is used to send password recovery emails and other alert emails.
Mail Server Settings
The remaining mail server settings are just normal setting for mail servers. This mail server definition
is separate from normal campaign email servers because the emails sent to this mail server are
independent of any campaigns.
Site-Specific Settings
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !18
Client Name (For Business Edition)
You can change the Client name in this box which will be reflected on the administrative website
pages. If you have a Standard Or Professional edition of Campaign Enterprise, the client is fixed by
the license key.
Contact Name/Email/Phone Number
This is just for reference when it is appropriate for the administration to send correspondence.
Allow External Email Lists (For Business Edition)
By disabling this setting you can restrict clients from accessing external email lists and they must use
the internal list system.
Apply Default Email List Custom Fields
When the user creates a new internal email list, you can apply the default email list custom fields.
Allow Email List Custom Field Changes
As as administrator you can restrict the user from making any changes or additions to the email list
fields you have established.
Make Summary Reports Detailed
With this setting you can cause the system to add more verbose text to the campaign logs.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !19
Disable link checks (src and href) when running campaign
With this setting you can disable Campaign Enterprise from checking the links in your email. This is
not recommended because it is always best to make sure your links are good, but if the system you
are running does not allow for external internet access or you have so many links in your email that it
take too long to check them all then you do have the option to disable this feature.
Email Summary Report SUCCESS Subject line
You may modify the subject line for emails that are sent to users after an campaign send is complete.
You can use the system merge field {%CAMPAIGN_NAME%} in this setting.
Email Summary Report FAILURE Subject line
You may modify the subject line for emails that are sent to users after an campaign send is complete.
You can use the system merge field {%CAMPAIGN_NAME%} in this setting.
View As Webpage Header
If the View As Webpage option is turned on for a campaign, this HTML header is added to the top of
each email sent out. This header should be simple, non-intrusive, and obvious. The reason this
header is placed at the top of the email message is to make it easy to see if the email is not rendered
correctly.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !20
!
Unsubscribe Footer HTML
If the Enable Unsubscribe option is turned on for a campaign, this HTML footer is added to the bottom
of each email sent out. This footer should be simple, non-intrusive, and obvious. This setting can be
overridden on a campaign-to-campaign basis by using the {%UNUSUBSCRIBE_URL%} merge field
somewhere in email message.
Unsubscribe Yes HTML
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !21
This is the webpage that is presented to the email recipient confirming the unsubscribe action. This
webpage can contain any information. It is suggested that this webpage has links to leave this
webpage to your website or other location.
Unsubscribe Confirm HTML
This is the webpage that will be presented to the email recipient requesting to be unsubscribed.
The webpage can contain any content, but there are some merge field you can use to include the
unsubscribe functionality:
{%CONFIRM%} which is replaced by a button used to unusubscribe (required)
{%REASON%} which is replaced with a “;Reason”; dropdown box (optional)
Reasons used are:
Unspecified (if they choose not to select anything)
No Longer Interested
Never Signed Up
If you use the {%UNSUBSCRIBE_URL%} link in your email you can add additional parameters if you
want to show more data in the Unsubscribe Confirmation HTML page. Any parameters you add will
be available for merging in the page:
Example:
{%UNSUBSCRIBE_URL%}&email={%%EmailAddress%%} in your email message
will allow the {%%email%%} merge field available in the unsubscribe confirmation page
This is also useful if you are planning on using your own unsubscribe page.
Enable API (Business and Professional Editions)
When you enable the API functionality this will open the Campaign Enterprise system to be accessed
from outside systems. The API can be used to trigger events or request information. API calls are
made via HTTP or HTTPS (HTTPS recommended) and should include a parameters for
authentication, the command, and then any parameters. Results are sent back in JSON format. For
more information on this subject, see the dedicated section on API in this document.
User Management
User List (For Professional and Business editions)
When selecting User Management you will be presented with a user list page. From here you can
create a new user, copy a user, delete a user, or add a user.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !22
User Edit
Session Timeout
You can select a timeout for individual users in minutes. The default is 10 minutes. You may want to
increase this time if you are creating HTML messages inside Campaign Enterprise which usually
requires more time.
Windows Username
If you want to by pass the normal Campaign Enterprise log in screen and rely on a Windows
username, you can enter the username here. If the person is logged into a domain, the user
information is passed along in the browser request. Campaign Enterprise will look for the proper
header in the browser request, compare it with the Windows Username you enter here, and log them
in without having to re-enter any authentication.
Is Admin
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !23
You can mark a user as an admin which will allow them to enter the Administrator area and make
system changes
Allow Sender Queue Priority Changes
If you limit the amount of threads a particular mail server is using, say 2 threads, and both are being
used simultaneously, other campaigns can be submitted to the queue and will wait for one of the
threads to finish. This setting allows this user to change priority of what is submitted from the queue
to the sending thread. If you have campaigns running and some backed up, this user will be able to
send a campaign with a priority.
Disable Email List Access
This setting will allow a user to select an email list when creating a campaign but they will not be able
to enter the Email List administration area or modify any records within the email list.
Group Assignments
Selecting this tab will allow you to assign this user to a particular group. When assigning this person
to a group you will be giving them permission to all the resources permitted for that group.
Mail Servers
Selecting this tab allows you to assign the mail server and mail server groups that this user is able to
utilize.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !24
Public URLs
Selecting this tab allows you to assign the public urls that this user is able to select. This is important
if you are dealing with different clients that need different identifies.
Bounce Domain Names
Selecting this tab allows you to assign the bounce domain names that this user is able to select. This
is important if you are dealing with different clients that need different identities.
User Group Management
This is where you can maintain a list of groups that you want to use. Groups are mainly created to
give permissions to resources.
Bounce Domain Name Management
This area is where you would enter the Bounce Domain Names that you have established for your
system. Each Bounce Domain Name should have a corresponding MX record in your DNS that
should point to the Campaign Enterprise computer. The bounce processing system is set up to only
respond to incoming emails that have this domain as part of their TO address, all other incoming
emails are disconnected.
Public URL Management
This area is where you would enter the Public URLs that you have established in DNS to point to the
Campaign Enterprise system. The Public URLs enter here should have a DNS record and the
domain will have to be entered into the “Bindings” area on the cepublic IIS webserver.
Campaign Category Management
This area is where you would maintain predetermined categories that can be selected by campaigns.
These categories can be sorted on.
Mail Servers
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !25
This area is where you would establish all of the mail servers you want available to the Campaign
Enterprise system. Each mail server will have connection settings, and the mail servers can also be
tested here. You can assign permissions to users or groups. You can also set up mail servers that
will throttle, and establish how many threads can be sent to the mail server at the same time.
Mail Server Groups
You can create a Mail Server Group and add pre-entered mail servers to be part of the group. When
you send an campaign using a Mail Server Group, the email messages are partitioned off to mail
servers within the group. When a mail server in the group is finished sending an email, it requests
another email message from the queue. If a mail server in the group becomes unusable, Campaign
Enterprise will “invalidate” that mail server for the remainder of that Campaign Send and will use the
remaining Mail Servers.
Email Footers
This is where you can manage predefined email footers that your users can select as being part of a
campaign. These foots might be a company privacy policy or a physical address and phone number
of the company.
Blackout Days
Here you can establish company-wide policies of what day schedule campaigns can be run. In
addition, all US holidays are show on the campaign’s calendar but are not blacked.
Email Template Management
This is where you can maintain a list of templates that users can draw on to start a new email
campaign. You may have established formats for newsletters, announcement, and other messages.
These may include logo, policies and other information that is a basis for a new email.
Edit Help Info
You will be able to edit the help menus in Campaign Enterprise from this area. You may want to edit
the help area (the popups) so that you could put in your own company-specific information or policies.
Unsubscribe Reasons Management
This is where you can modify the reasons why people unsubscribe from a mailing. When using
normal unsubscribe (not one-click unsubscribe), you have the option of adding a “Reason” box to the
unsubscribe page and this is where the reasons will be shown.
System Status
This section shows the status of the Windows Services that support Campaign Enterprise. The four
services are:
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !26
CEMain - This service is the responsible for sending campaigns, launching scheduled campaigns,
processing database updates for unsubscribes, open tracking, click tracking, and bounces. It also is
responsible for routine maintenance functions on the database.
CEBounce - This service monitors port 25 for incoming returned emails. The services acts as a
receiving SMTP server for the bounce domains you specify in the Bounce Domain Management
section.
CEMailServer - This service is the pseudo mail server that is used for performance testing. If you do
not plan on doing any performance testing this service can remain stopped. The service monitors
port 1111 for incoming SMTP submissions from Campaign Enterprise. Email is received like any
other mail server but no processing or storing is done which makes it faster than any other mail
server. All emails send to this service are received but never relayed.
CEQSend - This service is used to send “system” type emails that are not associated with any
campaign. It is used to send alerts, email campaign summaries, forgotten password request
fulfillment. This service relies on the Mail Server settings in the System-Wide settings to follow.
System Functions
This section is for reference and archive lookups.
Sender Queue - The sender queue will list all of the campaign that are currently in the queue and/or
sending.
User Login List - This area will allow you to see the login activities of users.
Send Message Log Lookup - This screen is used to lookup emails sent out of the system. If you
need to find out what emails have been sent to a specific email address, this screen will allow you to
look them up.
Debugging
This section is used to turn on and off debugging activities that are useful when trying to diagnose a
problem with the Campaign Enterprise system. Severe errors that are generated will always appear
in the trace logs. If you want more detailed debugging information to be recorded in these logs, turn
on debug at the top.
Warning: It is not recommend to leave debugging on for extended periods of time especially when
sending large email list because the trace log files can become too big.
By clicking on any of the trace logs you will be prompted to allow downloading of these file.
The various log files are explained below:
Admin Website Trace Log - This log is created by the activities of the administrative side of Campaign
Enterprise concerning the website activity.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !27
Public Website Trace Log - This log is create by the activities of the public side of Campaign
Enterprise concerning the website activities including click tracking, unsubscribes, and open tracking.
CEMain Service Trace Log - This log is created by the activities of the CEMain service. Entries in the
log will how sending problems and database update issues.
Mail Sender Trace Log - This log is created by the sending system and shows the conversations that
Campaign Enterprise mail sending system has with the designated mail server for the campaigns.
Bounce Trace Log - This log is created by the CEBounce service and pertains to any errors that
happen in reference to accepting and recording bounced emails in the database.
Trace Log Purge - Use this link to initiate the purging of all log files. When debugging a specific
issue, it is good to purge all the log files first, then cause the issue to happen, then download the
specific log file that the errors would occur in.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !28
Email List Administration
Email List “List”
The email list will contain email lists that either belong to you or you have been given permission to
manage.
Email List Edit
Clicking on the List Name will cause the email list editor to appear. For internal email lists you will be
able to edit any records in the list. If you are using an external email list, you may or may not be able
to edit due to limitations of the external list connection. Most of the time, if you just specify a Table in
your external email list, you will be able to edit records if you have permission of your database
security. If you connect to your external email list with an SQL statement or with a stored procedure
you will be able to view email records but not edit them.
You can edit records on this grid, or if you hit the small edit icon you can edit record in a form view:
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !29
Email List Configuration
If you click on the small sprocket for the email list you will be able to edit the configuration of the email
list. The configuration screen will look different depending on if the list is Internal or External.
For Internal Lists:
!
Email List Name
This email list name should be used to uniquely identify the email list.
Add New Data Field
Internal Email Lists have several required data fields that are included at the time the email list is
created. To add additional information to your email list click Add New Data Field, name the field with
no spaces in the name, and select the datatype.
Bounce Domain Name
A “bounced” email means an email could not be delivered to the recipient, for various reasons, and it
is returned to the origin Mail Server. Campaign Enterprise can act like it is this origin Mail Server by
using this customer domain name you supply. Campaign Enterprise uses VERPs (<a href="http://
en.wikipedia.org/wiki/Variable_envelope_return_path" target="_blank">Variable envelope return
path)</a> to deal with these emails. When a email are sent from Campaign Enterprise the “;ReturnPath”; email address used is unique to that recipient so that when the bounced email is returned it
can be identified to that recipient. The return-path address the Campaign Enterprise generates may
look like this:
[email protected]
The first part of the email (to the left of the @ sign) is an encoding of the unique ID of the recipient,
the campaign ID, and the recipient email address. The domain part of the email (to the right of the @
sign) is what you specify in this field. This domain name needs to be established in your DNS system
for the domain you are using that “;points back”; to your Campaign Enterprise computer. This entry in
DNS is called an MX record. We recommend that you create a subdomain or your main domain name
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !30
so that these bounced emails will exist with your normal email domain. For instance, if you normal
email domain is yourdomain.com, then make a subdomain called bounceproc.yourdomain.com and
use this for Campaign Enterprise.
Note: In order for Campaign Enterprise to process bounced emails, port 25 needs to be opened. The
Campaign Enterprise computer will listen on port 25 for traffic on that port. If you already have an
SMTP server running on the Campaign Enterprise box, then you will have to use a different IP
address than that used by the current SMTP server.
Email List Permissions
As the owner of the email list you have the ability to assign who can access your list. Security can be
set on a user or group level. Only the owner of the email list has the ability to change the email list
security.
Add New Data Field
If you click on this button you will be able to create a new data field in your internal email list:
Field Name
Field Names are recommended to be letters, numbers, a dash (-) or underscore (_). Spaces and
other characters can be used but since SQL statements reserve certain characters for special
functions, like quotes or ampersands (@), it is best to avoid using them.
Field Type
The field type should be used that describes your data in the best way. This is mentioned because
sometimes using a Text type instead of a number type is preferred especially in the case of a zip code
that has a leading 0. Phone numbers are usualy text types as well.
Text - Any characters can be used in this field type
Number - Any integer ranging from -2,147,483,648) to 2,147,483,647
Date/Time - Any date ranging from January 1,1 AD through December 31, 9999 AD
Money - Any number from -922,337,203,685,477.5808 to 922,337,203,685,477.5807 with 4 digits
behind the decimal point precision
Notes - This is a text field that is unlimited in size, but it is not searchable like a Text-type field
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !31
Field Size
Field “size” only pertains to a Text-field type. Setting this number to the maximum size of the text to
be entered will save storage space for large tables.
For External Lists:
!
Email List Name - This list name is used in a Campaign when you are selecting the email list. If you
change the email list here, it will change it for all the Campaigns it is connected to
Database Connection - A database connection is a set of instructions that allows Campaign
Enterprise to connect to external lists. You can select a Database Connection here. If you click “Edit”
you are able to make changes to the database connection. Clicking “Edit” without selecting a
Database Connection then you will be prompted to create a new one.
Record Source Types
The Record Source Type establishes how records from your database are retrieved. There are 3
different methods:
Table - By selecting a table Campaign Enterprise will have the ability to access all data fields in the
table and also be able to use all the records in the table. This selection give Campaign Enterprise
more flexibility with list filtering, obtaining record counts efficiently, and proper updating of bounce and
unsubscribe information.
SQL Statement - Using this setting you can use any SQL statement to obtain records. You can limit
the data fields to be used, perform special filtering, even set up an order. This SQL statement is
directly sent to your database server to be executed. It is recommended that you optimize this
statement to not exceed 10 minutes of execution time. Campaign Enterprise will attempt to do a
record count for your SQL statement but it may not be able to or timeouts may occur.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !32
Stored Procedure - This setting is similar to the SQL Statement setting but it gives Campaign
Enterprise more specific information about the request being made. Be sure your Stored Procedure
returns a recordset ultimately with fields that can be used by Campaign Enterprise. Stored
Procedures are useful for many reasons including the grouping of multiple tasks together, security on
data where the database administrator can allow only access to specific information without direct
access to tables, etc.
UniqueID
Enter the column name in your database for the unique ID. If you unique ID column you are using is
non-numeric in nature, then check the “Is Non-Numeric” box.
!
Identity field types are typically used in order to generate a unique number for the record.
Email Address Field
Enter the column name of the Email Address. Since your email address field could be named in any
way you want, it is required that you enter this column name so Campaign Enterprise can identify
which column in your table to use for the TO addresses.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !33
Bounce/Unsubscribe Processing Tab
Bounce processing can be performed on external email lists using the Bounce SQL Statement below:
Bounce SQL Statement
(Note: This feature is only available when you are using an External Email List)
This SQL statement is executed when a bounced email is received. The system merge fields
available in your SQL Statement are:
{%UNIQUE_ID%} - This is the unique ID
{%CAMPAIGN_ID%} - This is the campaign ID found in the tblCampaigns table
{%EMAIL_ADDRESS%} - This is the original email address that was used for the recipient
{%BOUNCE_DATE_TIME%} - The date and the time the bounce occurred
{%BOUNCE_TYPE%} (if used see Bounce Types below for useage)
{%CAMPAIGN_RIID%} - This is the Run Instance ID of the campaign
{%CAMPAIGN_NAME%} - This is the campaign name text
{%MESSAGE_TEXT%} - This merge field will contain the original message text that was returned
(bounced). For this merge field to return this message text you will need to turn a ceconfiguration.txt
switch to instruct the system to store this message text optional information. Here is the switch you
can add or edit in the ceconfiguration.txt file found in the ce12\system folder.
<EnableBounceMessageTextStorage>ON</EnableBounceMessageTextStorage>
Example:
update tblYourTable set Bounced=1,BouncDateTime=’{%BOUNCE_DATE_TIME%}’ where
UniqueID={%UNIQUE_ID%}
Assuming you have a boolean or integer field called “;Bounced”; and a date field called
“BounceDateTime”.
Notice the single quotes around date/time merge field which is usually required for assigning SQL
date/time values.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !34
Bounce Types
Any bounce that is received into Campaign Enterprise is recorded. Some bounces may be
considered “hard bounces” where a permanent failure was detected and there is no hope of sending
to this email address again. The remaining bounces that are not found to be hard bounces are
usually termed “soft bounces” which could just be responses to a full mail box or a vacation message.
When the bounces are received into Campaign Enterprise they are categorized based on an analysis
of the returned email content. Some returned emails are of a “good format” and are easily recognized
as hard bounces, while other returned emails may have just human-readable text in them. Below is
the “BOUNCE_TYPE” number that will be returned in the {%BOUNCE_TYPE%} merge field when
this analysis is done:
1 - Hard Bounce - The email could not be delivered and can be ignored in the future (500 series
error)
2 - Soft Bounce - A temporary condition exists causing the email delivery to fail.
3 - General Bounced Mail - Cannot determine if it is hard or soft, and the internal email address
could not be determined.
4 - General Bounced Mail - Cannot determine if it is hard or soft, but an email address is available.
5 - Mail Block - A bounce occurred because the sender was blocked.
6 - Auto-Reply/Out-of-Office email - An auto-responder answered (may not occur as a bounce)
7 - Transient message - Such as "Delivery Status / No Action Required".
8 - Subscribe request - This can happen if you send to a mailbox that is locked until you respond
manually
9 - Unsubscribe request - This can happen if a request is made to unsubscribe
10 - Virus email notification - Your email was detected to have a virus
11 - Suspected Bounce - But no other information is available
12 - Challenge/Response - Auto-reply message sent by SPAM software where only verified email
addresses are accepted.
13 - Address Change Notification Messages - If an address changes and a new one if provided
14 - Success DSN - Indicating that the message was successfully relayed.
15 - Abuse/fraud feedback report
Many of these bounce types are of no use to a mass emailing system because of the shear quantity,
but you can record these types if needed. The bounce analysis system in Campaign Enterprise will
change over time as new email formats are discovered and categorized. Since there is not standard
return format for bounce emails analyzing these emails turns out to be an “art”. Overall, a
{%BOUNCE_TYPE%} of “1” is most significant because the email returned was found to be a definite
hard bounce. If you create an SQL Statement that updates your data when a bounce occurs, be sure
to use the {%BOUNCE_TYPE%} so you can determine the nature of the bounce and filter your data
appropriately.
VERY IMPORTANT - Please read this about the {%BOUNCE_TYPE%} merge field!
When the {%BOUNCE_TYPE%} merge field is NOT used, it is assumed that only hard bounces will
trigger the bounce SQL Statement you have entered since. If you choose to use the
{%BOUNCE_TYPE%} merge field for recording the exact number, the SQL Statement will be
executed for every returned email regardless of its returned bounce type. If you record this bounce
type and then run subsequent campaigns based on this information, you may not want to send to
records that have a {%BOUNCE_TYPE%} of “1”.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !35
Here would be an example of a bounce SQL Statement when using the {%BOUNCE_TYPE%} merge
field:
update tblYourTable set BounceType={%BOUNCE_TYPE
%},BouncDateTime=’{%BOUNCE_DATE_TIME%}’ where UniqueID={%UNIQUE_ID%}
Bounce Column Name
For an external email list, when you are using a normal Table for the recordsource, Campaign
Enterprise has the ability to utilize a bounce column for filtering of outgoing emails and reporting. In
order for Campaign Enterprise to accomplish these tasks, a boolean-type Bounce Column name
needs to be entered.
Note: When using an SQL statement or Stored Procedure this feature is not available.
Unsubscribe Column Name
When you create an internal email list, the boolean type unsubscribe field is created automatically.
If you decide to use an external email list, you will need to add the field to your table. A boolean field
will indicate whether the person is unsubscribed or not. This field is used to filter out those records
that are unsubscribed.
To record additional information to your external database, a SQL Statement or Stored Procedure
may be used.
Note: When using an SQL statement or Stored Procedure the boolean unsubscirbe feature is not
available.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !36
Campaign Administration
Usability & Terms
The following is an explanation of some of the terms you will see in the documentation to follow.
Merge Fields - The merge field designations in version 12 have change from previous versions of
Campaign Enterprise in order to expand the merging capabilities to include programmable functions.
The two major categories are:
Database Field Merge Fields - The use of the brace and single percent symbol is used to
designate a database field merge, for example {%FirstName%}. The merge field name here
must match the database field name and is case-sensitive.
Built-In or Calculated Merge Fields - The use of the brace and double percent symbol can
be used to designate a built-in merge. For example,{%%CAMAIGN_NAME%%} would be
replaced by the Campaign Name that sent the email. The {%%...%%} can also be use for the
calculated merge fields which are explained later.
Logging In To Campaign Enterprise
Start up a browser and type in the URL you established for your administrative website.
For a new Campaign Enterprise installation, the default username is [email protected] and
the password is adminadmin (case-sensitive). Be sure that you change the username and password
as soon as possible in the Administration area. On this screen you also have the ability to have your
password sent to the email address you enter if it exists.
Campaign List/Main Menu
After logging in, you will be presented with the list of Campaigns that you own or are given permission
to use.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !37
Sign-Out - Clicking this link will log you out of Campaign Enterprise. You will also be signed-out
when you do not have any activity, like moving from page to page. This inactivity (or session) timeout
can be set on a user-by-user basis in the User Management area in Administration.
Alerts - Clicking this link will take you to the alerts listing for your account. In this list you will see all
the recent alerts that happened for your account. Alerts can be informational or errors. When an
error type alert is created, the Alerts link with turn red and pulsate to draw attention.
Email Lists - Clicking this link will take you to the Email Lists for your account. You will see email
lists that you own yourself and email lists that you have been given permission to access.
Administration - Clicking this link will take you to the Administration screen which will have more
options described later in this document. You will only see this link if your username has been
designated as an Administrator.
Help - Clicking this link will take you to a generalized help screen with an opportunity to send a
request for help, submit a new idea, or chat with our staff online. There is no index for help but
throughout the program there are small blue help buttons, in context, where you can obtain
information specific for the element you are interested in.
New Campaign
Clicking on a new campaign you will be presented with a screen to create a new campaign. After
entering the name, you will be presented with the Campaign Edit Screen.
Delete and Archive Buttons
Below the “New Campaign” button you will notice the two buttons that are used for Delete and
Archive. To use these buttons, selected the campaigns you intend to delete or archive in the list
using the checkboxes and click on the button. It will confirm your action with a verification popup box.
Buttons On The Campaign Listing Lines
On the listing of Campaigns there are several clickable area and buttons.
Campaign Name - By clicking on the campaign name you will be taken to the campaign edit screen.
Run Count Number - Clicking on this will take you to the “Run Instances” list where there is a list of
each time this campaign has been run with statistics. If the campaign is set to be a normal scheduled
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !38
or one-time sending campaign, then the number times the campaign has been run will be shown. If
the campaign is set as a repeat-interval campaign where it run every X amount of time, then you will
see a cycle icon like this
will be shown for that campaign. Since this campaign could possibly run
many times over and over the last run instance record will be used to record the campaign run
activity.
Campaign Edit - Clicking this icon will allow you to edit the campaign.
Campaign Copy - Clicking this icon will allow you to copy this campaign. You will be presented
with a popup box to name your new campaign, then you will be taken to the normal edit screen.
Reports - Clicking this icon will take you to the Run Instances list for the campaign where you will
be able to run reports for the overall campaign or a specific run instance of the campaign.
Calendar/Scheduling - Clicking this icon will take you to the calendar scheduling system for this
Campaign.
Run Campaign - Clicking this icon will run the campaign.
Scheduling/Calendar
When you click on the calendar icon for a campaign on the campaign list screen you will be
presented initially with the calendar below:
Schedule Type - There are two types of schedule modes, Campaign Scheduling and RepeatIntervals. Campaign Scheduling allows you to set the campaign to run one-time on a certain day at a
certain time, or repeat each week on that day of the week at a certain time. Repeat-Intervals are
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !39
where you can run a campaign every X amount of time. The calendar above will be shown when the
Schedule Type is set to “Campaign Scheduling”.
Examining the calendar, the color of the day boxes are:
Grey - Days in the past
Green - Today
Black - Days that have been entered into the Blackout Days area in Administration
White - Days you can schedule a campaign to run
Within the day boxes there will be the events that are happening.
Yellow - US Holidays
Blue - This is a one-time scheduled event
Red - This is a repeated day and time event
You can schedule the campaign to run by first clicking on the day you want it to run. You will be
presented with a popup box to fill in the details:
You can give the scheduled event a name, and select the time. If you check the Repeat box, then the
campaign will run each day of the week at the designated time until you turn it off. Once you hit
“Save”, the event is put onto the calendar. If you need to modify or delete the scheduled event, then
click on the event in the calendar, you will be given this popup box again, and you can change or
select delete.
When you switch the Campaign Type to “Timed-Intervals”, then you are presented with this screen.
You can set the time interval you want, enable or disable this action. Using Timed-Intervals for
campaigns is most useful in monitoring a database for events and then sending a campaign based on
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !40
those events. For example, you may set up a campaign Timed-Interval to run every 5 minutes to
monitor new signups on your website so you can send them an informational email.
Note: If you want to run a campaign everyday at a certain time, you will have to switch to the calendar
scheduling, create a schedule for the day and time you want to run the campaign, then click the
“repeat” check box.
Campaign Edit Screen
When you click on a campaign to edit, you will be presented with the Campaign Edit screen below:
!
From Name
The From Name field is optional but should be used so that the recipient will see a formal name
instead of just an email address alone.
You can use a merge field in this area if you have a field name in your table, corresponding to a from
name, {%%FromName%%} for example.
From Email
The From Email address, in conjunction with the From Name field, will indicate who the message
appears to be from. This field contains the actual email address. If you do not have a separate Reply
To address field selected, any replies to the message will go to this address.
Using a merge filed {%%FROMEMAIL%%}, (where FROMEMAIL, would be the field name in your
table corresponding to the sender), can help you personalize the From Name.
Email List (To)
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !41
Select the list of email addresses to whom you want to send this campaign. If you do not have a list
available, you can create one in the Email List area. If it appears you cannot create a list, please
contact your company’s Campaign administrator.
Email List Filters
Email List Filters are used to select certain email recipients based on specific criteria. These filters
maybe in combination with other filters at the email-list level. There is one merge field you can use
for a value and that is {%CAMPAIGN_ID%}.
For Internal email lists, these filters will work without any other configuration.
For external email lists, there are some conditions that apply. If you Email List record source type is
set to:
Table - Nothing else required, you can use the filters in the campaign because with having just the
table name we are able to “predict” the structure of the WHERE section of the SQL statement that is
used to collect the email records
SQL Statement or Stored Procedure - When using the record source type the structure of the SQL
Statement you use is not predictable. You may already have a WHERE in your SQL Statement and
applying the filters at the Campaign level it not possible. To compensate for this, and to give you
maximum control, if you use an SQL Statement or a Stored Procedure, use the built-in custom field
called {%CAMPAIGN_FILTER%} in your SQL statement so you can properly construct the logic you
want to achieve. For example, your SQL statement may look like this:
SELECT * FROM tblYourTable WHERE CompanyID=1 AND {%CAMPAIGN_FILTER%}
During sending, the {%CAMPAIGN_FILTER%} merge field in your SQL Statement will be replaced by
the filter logic that was being applied in the Campaign itself. If no filter is selected in the campaign,
the the {%CAMPAIGN_FILTER%}
Reply To Field
The Reply To field can be used if you want any replies to go to a specific email address. By default,
replies go to the From Address, but if that is an unmonitored account, you might want to set up a
separate Reply To address for customer service. Using a merge field for the Reply To, {%%ReplyTo%
%}, is an effective way to get your customers to their assigned representative, if that is your business
model. In this example, the ReplyTo field needs to be included in your database, and populated with
an email address.
CC Field
CC (Carbon Copy) is offered but of limited use in Campaign Enterprise since each recipient already
receives a personalized email. There are some instances where CC might be useful. For example, if
you sent out individualized statements but what yourself to receive a copy of each one that goes out
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !42
AND show that you (or others) received the same email. Then using your email address in the CC
field would accomplish that requirement.
BCC Field
The BCC (blind carbon copy) field allows you to send a copy of the email to anonymous accounts.
One of the tricks you use to send out mass emails with Outlook or some other email client is to send
the email to yourself and then use BCC (Blind Carbon Copy) to send to all the other people you want
to get the email without the recipients see all the email addresses to whom you send.
This field is not used very often because the whole point of Campaign Enterprise is to send out
emails to recipients without have to use BCC.
We do not recommend using this feature unless you understand that a raw email address listed here
will receive a copy of every email that goes out. If you have 10,000 in your list, an address listed here
will receive a copy of each one.
There are two reasons you might use a BCC field.
You have a bcc field in your table, that is populated with an address to which you want to receive a
copy.
You are required to track and save each email that goes out, for financial or tax reporting reasons.
If you are tracking ever email that goes out, you might want to ensure you have a mail account large
enough to handle the capacity.
Attachments
You can attach files to your email, but these may be limited by the email server through which you are
sending. Attachments will slow your email blast considerably. For large files, we recommend posting
those on a website with a link where they can be downloaded instead.
Options Screen
After hitting the Options button, you will see this screen:
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !43
General
Campaign Name
Enter the name of the campaign that will be used to identify the campaign.
Notes
This are is just for your reference
Categories
Select a category from the drop-down box. Categories can help you find campaigns in the main menu
when you have a large number. Categories are created by the Campaign administrator.
Footer
Select a footer to attach to the bottom of the message. These are set up globally and can be selected
from the drop down menu when available. These are frequently legal statements, disclaimer, or other
information that you want to standardize for all your emails.
Message Type
You can select the message type to be:
- HTML & Autosync Plain Text
- HTML & Manual Plain Text
- HTML Only
- Plain Text Only
Summary Report Email
When the campaign is completed the run log will be sent to the email address you enter here.
Sample Email Address
When the campaign begins the first email that is sent to a recipient will also send a copy of the email
to the email address you specify here.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !44
Sending
Mail Server
Choose the mail server you want to use to send the email. You may have different email connections
for different purposes or clients that need their own mail server. If you have no mail servers to choose
from, contact the Campaign administrator to set one up or get permission to.
Detect and Skip Duplicate Email Addresses
If your email list has known duplicate email addresses you can turn this feature on to avoid sending
the same email more than once. De-dupe check does affect sending performance for lists above
50,000.
We recommend de-duping your list as you import or add email addresses.
SQL Write-back During Send
(Note: This feature is only available when you are using an External Email List)
The SQL Write-back feature allows you to run an SQL statement after each email is sent. This can be
useful to mark in your database that an email has been sent either by setting a boolean flag, a date,
etc. Any SQL statement will work by using special merge fields that describe information about the
recipient currently be sent to. The merge fields are:
- Any field you have in your original SQL statement between the database merge field delimiters, ie
{%%FirstName%%}
- Any of these system merge fields:
{%CAMPAIGN_ID%} - The Campaign ID if needed to reference the original information in the
tblCampaigns table
{%CAMPAIGN_RIID%} - The Campaign Run Instance ID found in the tblCampaignRunInstances
table
{%UNIQUE_ID%} - The unique ID of the recipient
{%EMAIL_ADDRESS%} - Email address of recipient
{%CAMPAIGN_NAME%} - The Campaign name being run
{%MESSAGE_TEXT%} - The MIME text of the message, be sure to format to allow for termination of
this string value in your SQL statement
{%ABMESSAGE%} - If you are using A/B Messaging then this value will be 0 for the A message and
1 for the B message
{%FROM_EMAIL_ADDRESS%} - The FROM email address defined in the campaign
{%FROM_NAME%} - The FROM NAME defined in the campaign
Since an SQL statement is run between each email it will affect performance waiting for the SQL
statement to complete.
This feature is only available with External Email lists.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !45
Response Events
View As A Webpage
Enable this feature to create a link at the top of your email message on which the recipient can click
and view the message on a webpage. This is useful if the HTML is unviewable in the recipient’s email
client. Contact your Campaign administrator if this feature is not available to you.
Open Email Tracking
The Open Email Tracking feature places a small 1x1 pixel tracking image reference in the HTML
portion of your email. An image that small is not displayed, but a request for the image will be made
against the Campaign Enterprise server. The image request is embedded with information on the
recipient and recorded by Campaign. This feature will only work if the recipient allows the image
reference to check in with the Campaign Enterprise computer. A recipient who turns images off, will
not record an open.
Open Tracking SQL Statement
(Note: This feature is only available when you are using an External Email List)
You can specify what you want done when an open event occurs using an SQL statement. You can
use any valid SQL statement and use the available system merge fields:
{%CAMPAIGN_ID%} - The Campaign ID associated with the email sent out
{%UNIQUE_ID%} - Then unique ID of the email recipient
{%IP%} - The IP address the open tracking occurred from
{%OPEN_DATE_TIME%} - The date and the time the open event occurred
{%EMAIL_ADDRESS%} - The original email address used to send the email
{%TABLE_NAME%} - If you are using a table record source type in your email list then this merge
field will contain the valid table name
{%CAMPAIGN_NAME%} - The name of the campaign that generated this open tracking event
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !46
Examples:
update tblYourTable set LastOpenedDateTime=’{%OPEN_DATE_TIME%}’ where
UniqueID={%UNIQUE_ID%}
or
insert into tblOpenTrackingLog (CampaignID,UniqueID,IPAddress,OpenedDateTime) values
({%CAMPAIGN_ID%},{%UNIQUE_ID%},’{%IP%}’,’{%OPEN_DATE_TIME%}’)
NOTE: The single quotes around the merge fields above for the IP address and the open date/time.
You will need to include these quotes for any date/time or string type database field.
This feature is only available when you are using an External Email List.
Enable Unsubscribe
Enable this feature to attach an unsubscribe footer to each email. If you want to place the
unsubscribe link elsewhere in your message, add the {%UNSUBSCRIBE_URL%} to your message
where you want the link to appear. If this merge field is found in the body of the HTML, the footer will
not be applied.
When the recipient clicks on the unsubscribe link in your email, they are redirected to the Campaign
Enterprise unsubscribe page as defined by the Campaign administrator.
If you use your own manual {%UNSUBSCRIBE_URL%} merge field, you can include parameters that
will be passed onto the unsubscribe webpage. For example, if you use a link like this:
<a href=“http://{%UNSUBSCRIBE_URL%}&FirstName={%%FirstName%%}”>Click Here to
Unsubscribe</a>
then the FirstName merge field can be used in the Unsubscribe Webpage, like this:
“We are sorry you have chosen to unsubscribe {%%FirstName%%}, thank you for your time”
Enable One-Click Unsubscribe
In some instances, you may want to allow the recipient to unsubscribe without having to confirm the
request. When one-click unsubscribe is enabled the recipient will click the link in the email, which
checks in with the Campaign Enterprise server, and they will be unsubscribed. The confirmation
message is configured by the Campaign administrator.
Unsubscribe SQL Statement
(Note: This feature is only available when you are using an External Email List)
When an unsubscribe event occurs the SQL statement you specify here will be executed. You can
use any valid SQL statement and use the available system merge fields:
{%CAMPAIGN_ID%} - The ID number for the campaign
{%UNIQUE_ID%} - The unique ID associated with the email that has been opened
{%IP%} - The IP address that the open was triggered from
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !47
{%UNSUBSCRIBE_DATE_TIME%} - The date and time the unsubscribe occurred
{%ABMESSAGE%} - Will be replaced by a “A” or a “B”
{%EMAIL_ADDRESS%} - The original email address used to send the email
{%UNSUBSCRIBE_REASON_ID%} - The ID of the unsubscribe reason found in the the
tblUnsubscribeReasons table
{%UNSUBSCRIBE_REASON%} - The text of the unsubscribe reason selected by the recipient
{%TABLE_NAME%} - If you are using a table record source type in your email list then this merge
field will contain the valid table name
{%CAMPAIGN_NAME%} - The name of the campaign that generated this unsubscribe event
Examples:
update tblYourOriginalTable set
Unsubscribed=1,LastOpenedDateTime=’{%UNSUBSCRIBE_DATE_TIME%}’ where
UniqueID={%UNIQUE_ID%}
or
insert into tblUnsubscribeLog (CampaignID,UniqueID,IPAddress,Unsubscribed,DateTime) values
({%CAMPAIGN_ID%},{%UNIQUE_ID%},’{%IP%}’,’{%UNSUBSCRIBED_DATE_TIME%}’)
NOTE: The single quotes around the merge fields above for the IP address and the open date/time.
You will need to include these quotes for any date/time or string type database field.
Public URL
The Public URL setting is campaign-specific and is used for all the the links in the email including
unsubscribes, open tracking, and click tracking. The Public URL you set should “point back” to the
Campaign Enterprise server so that the links in the emails are properly resolved. The Public URL
should have a different domain than your administrative URL to avoid hackers trying to get into the
Campaign Enterprise system.
To establish a Public URL, find the external IP address for your Campaign Enterprise computer, go
into the DNS management system for your domain, and create an “;A”; or “;CNAME”; record for that
domain. Usually a sub-domain is best.
For example:
If your normal website is http://arialsoftware.com or http://www.arialsoftware.com, you can create a
sub-domain called http://ce-public.arialsoftware.com and have that point to the external IP of the
Campaign Enterprise computer. In the IIS webserver be sure to add this new domain to the list of
domains the webserver will recognize and let the request through.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !48
Advanced
Custom Header
The custom header section allows you to add headers to your email. Each line should be a label/
value pair separated by a colon (:). You are allowed to use database merge fields here.
Enable WYSIWYG Editor
WYSIWYG stands for What You See Is What You Get, and indicates that your message should
appear in the email client, the way you see it in your editor. Different email clients treat HTML
differently, and sometimes in ways you do not expect or want. It is best to base your email design on
the way different email clients display your message.
The editor in Campaign Enterprise is great for many things and can be used to effectively manage the
content of your email message. There are times though when the editor may auto-correct your HTML
code (which cannot be disabled using an online editor) and this may not be acceptable. In that case
we recommend turning off the editor and pasting your HTML code directly in the system. By
unchecking the built-in editor, Campaign Enterprise will send the HTML message verbatim and will
not modify it in any way.
Enable A/B Messaging
By checking this box you are turning on the capability of sending two different renditions of an email
in an alternating fashion during sending. Turning on this feature also causes another HTML tab to
appear back on the Campaign editing screen.
Enable Message Sent Log
Turning of this feature will cause the system to store a copy of every email that is sent out of the
system. This should not be used for large email sends because the database will become bloated
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !49
and performance will be diminished. If you do use this feature, make sure you are using a full SQL
Server so that you will not run into the 10GB volume limit of SQL Express.
Character Set Override
Use this setting to specify the Character Set you want to use. In most cases, Campaign Enterprise
will choose the appropriate character set for you so you don’t have to make any changes. Character
Set changes are primarily used to international languages or languages that require double-byte
character sets (ie. Chinese, Japanese, Cyrillic).
Some common Character sets are:
UTF-8
ISO-8859 Series
ISO 8859-1 Western Europe
ISO 8859-2 Western and Central Europe
ISO 8859-3 Western Europe and South European (Turkish, Maltese plus Esperanto)
ISO 8859-4 Western Europe and Baltic countries (Lithuania, Estonia, Latvia and Lapp)
ISO 8859-5 Cyrillic alphabet
ISO 8859-6 Arabic
ISO 8859-7 Greek
ISO 8859-8 Hebrew
ISO 8859-9 Western Europe with amended Turkish character set
ISO 8859-10 Western Europe with rationalized character set for Nordic languages, including
complete Icelandic set
There are many other character sets you can use. For more information about character sets <a
href="http://en.wikipedia.org/wiki/Character_encoding" target="_blank">click here</a>.
Embedded Images In Email
Select this option if you want to embed the images in the message. The image is encoded into the
message as specialized attachments that are displayed in the email without having to go request the
images from an outside server. Though sometimes useful, we do not recommend using embed
images because:
• It makes the email message itself very large.
• Information shown it images cannot be analyzed by SPAM filters to many times the email will just
get marked as SPAM
• Many email clients handle these embedded images differently so the success rate is not 100%
If you do need to use this feature keep images small to prevent from being marked as SPAM. Also, if
you just have one big image instead of text it will most likely be rejected. Keep at least half your
webpage readable text.
Digitally Sign Email
You can use this feature to digitally sign your email so that recipients can digitially verify your email
address. The SSL certificate applies to the From email address and is stored and managed on your
server. We do not supply, troubleshoot, or manage your SSL certificate. Talk to your Network
administrator for setting one up if you feel you need this feature.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !50
Encrypt Email
This encrypt feature is rarely used because it requires you to obtain a public secure key for each
recipient. If you need to send secure emails to a limited amount of recipients this feature is available.
Is Template
Checking this box will allow you to show this campaign as a selectable template when you are
creating a new campaign.
Permissions
Owner
The owner of the campaign is listed here. If you are the owner or an administrator you are allowed to
change the owner of this campaign.
Campaign User Permissions
As the owner of the campaign you have complete control of your campaigns. To allow other
individuals to have control you can add their username to the list of approved users. Only the owner
of the campaign can set permission for the campaign.
Campaign Group Permissions
As the owner of the campaign you have complete control. To allow other groups to have control you
can add a group to the list of approved groups for this campaign. Only the owner of the campaign can
set permission for the campaign.
Actions
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !51
Actions are a new feature that allows you to do an array of different actions triggered by certain
events. You can use this feature to do some of the following:
- Run a campaign after this one completes (chaining)
- Execute an SQL statement when a campaign starts
- Send an HTTP POST to a URL when a click tracking event happens
- Many more…
Add Action Item
By clicking this button, you will be presented with a screen that you use to add an action item. First
you will be asked to select the “Event”:
After selecting the “WHEN” event, you will be asked what you want to do when the event happens:
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !52
After selecting the “ACTION”, you will be presented with the parameters needed for that action. Some
examples are:
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !53
NOTE: Some “Events” will only have particular “Actions”. For instance, an open tracking event will
not let you launch a campaign.
Here is a matrix of the merge fields that are available for various different Event/Action types:
Execute SQL
Send Email
Execute HTTP Get
After Campaign
Completes
%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%}
{%CAMPAIGN_NAME%}
{%SENT_COUNT%}
{%SKIP_COUNT%}
{%BAD_EMAIL_ADDRESS_COUNT%}
{%TABLE_NAME%}
%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%}
{%CAMPAIGN_NAME%}
{%SENT_COUNT%}
{%SKIP_COUNT%}
{%BAD_EMAIL_ADDRESS_COUNT%}
%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%}
{%CAMPAIGN_NAME%}
{%SENT_COUNT%}
{%SKIP_COUNT%}
{%BAD_EMAIL_ADDRESS_COUNT%}
Open Tracking Event
%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%
{%UNIQUE_ID%}
{%IP%}
{%OPEN_DATE_TIME%}
{%EMAIL_ADDRESS%}
{%TABLE_NAME%}
Click Tracking Event
{%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%
{%CLICK_TRACKING_ID%}
{%UNIQUE_ID%
{%IP%}
{%CLICK_TRACKING_URL%}
{%CLICK_DATE_TIME%}
{%SENT_DATE_TIME%}
{%ABMESSAGE%}
{%EMAIL_ADDRESS%}
{%TABLE_NAME%}
Bad Email Format Event
{%CAMPAIGN_ID%}
{%UNIQUE_ID%}
{%EMAIL_ADDRESS%}
{%TABLE_NAME%}
Unsubscribe Event
{%CAMPAIGN_ID%}
{%UNIQUE_ID%}
{%IP%}
{%UNSUBSCRIBE_DATE_TIME%}
{%ABMESSAGE%}
{%EMAIL_ADDRESS%}
{%UNSUBSCRIBE_REASON_ID%}
{%UNSUBSCRIBE_REASON%}
{%TABLE_NAME%}
{%CAMPAIGN_ID%}
{%UNIQUE_ID%}
{%IP%}
{%UNSUBSCRIBE_DATE_TIME%}
{%ABMESSAGE%}
{%EMAIL_ADDRESS%}
{%UNSUBSCRIBE_REASON_ID%}
{%UNSUBSCRIBE_REASON%}
{%CAMPAIGN_ID%}
{%UNIQUE_ID%}
{%IP%}
{%UNSUBSCRIBE_DATE_TIME%}
{%ABMESSAGE%}
{%EMAIL_ADDRESS%}
{%UNSUBSCRIBE_REASON_ID%}
{%UNSUBSCRIBE_REASON%}
Hard Bounce Event
{%UNIQUE_ID%}
{%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%}
{%EMAIL_ADDRESS%}
{%MESSAGE_TEXT%}
{%BOUNCE_DATE_TIME%}
{%TABLE_NAME%}
{%UNIQUE_ID%}
{%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%}
{%EMAIL_ADDRESS%}
{%MESSAGE_TEXT%}
{%BOUNCE_DATE_TIME%}
{%UNIQUE_ID%}
{%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%}
{%EMAIL_ADDRESS%}
{%MESSAGE_TEXT%}
{%BOUNCE_DATE_TIME%}
Soft Bounce Event
{%UNIQUE_ID%}
{%BOUNCE_TYPE%}
{%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%}
{%EMAIL_ADDRESS%}
{%MESSAGE_TEXT%}
{%BOUNCE_DATE_TIME%}
{%TABLE_NAME%}
{%UNIQUE_ID%}
{%BOUNCE_TYPE%}
{%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%}
{%EMAIL_ADDRESS%}
{%MESSAGE_TEXT%}
{%BOUNCE_DATE_TIME%}
{%UNIQUE_ID%}
{%BOUNCE_TYPE%}
{%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%}
{%EMAIL_ADDRESS%}
{%MESSAGE_TEXT%}
{%BOUNCE_DATE_TIME%}
Before Campaign Starts
{%CAMPAIGN_NAME%}
{%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%}
{%CAMPAIGN_NAME%}
{%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%}
{%CAMPAIGN_NAME%}
{%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%}
N/A
{%EMAIL_ADDRESS%}
{%CLICK_TRACKING_URL%}
N/A
%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%
{%UNIQUE_ID%}
{%IP%}
{%OPEN_DATE_TIME%}
{%EMAIL_ADDRESS%}
{%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%
{%CLICK_TRACKING_ID%}
{%UNIQUE_ID%
{%IP%}
{%CLICK_TRACKING_URL%}
{%CLICK_DATE_TIME%}
{%SENT_DATE_TIME%}
{%ABMESSAGE%}
{%EMAIL_ADDRESS%}
{%CAMPAIGN_ID%}
{%UNIQUE_ID%}
{%EMAIL_ADDRESS%}
ACTION NOTES:
- The Run Campaign Action has no parameters and is not included in the grid because it only
works with the “Before Campaign Starts” event and the “After Campaign Completes” event
- The Execute HTTP Post has no merge fields but sends all merge fields that are in the Execute
HTTP Get but form fields
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !54
Click Tracking
Campaign Enterprise allows you to track any links you have in your emails by replacing the links with
a new links that directs the request back to the Campaign Enterprise system. In order for this to
happen, if your computer is behind a firewall you will have to enable port-forwarding for port 80 to the
IP address on the Campaign Enterprise system computer.
Preparing Click Tracking Links In Your Email
The links in your email can merge fields from the database you are using. For example, you might
have a link like this:
<a href=”http://arialsoftware.com?cid={%%CustomerID%%}”>Click Here</a>
Is this case, the {%%CustomerID%%} database field will be replaced with the proper data in your
database and the time the email is sent.
You can also use the {%CAMPAIGN_ID%} system field in click tracking URLs if you need the
Campaign ID.
Open Click Tracking
When editing a message clicking on the Click Tracking button will reveal all the the click tracking links
you have specified for the campaign.
Extract Click From Message
The extraction function automatically scans your HTML for all clickable items, (hyperlinks or elements
with an HREF) and adds them to this list. Once they are loaded, you can enable them and assign a
tracking code to each for statistical purposes. If you are using an External Email List you will see an
SQL Statement box. This SQL statement is executed when the someone clicks that particular link.
Delete All
This button deletes all the click tracking entries in the list.
SQL Statement
If you are using an external email list you will be able to execute an SQL statement when the click
tracking event happens. There are system merge fields you can use in your statement:
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !55
{%CAMPAIGN_ID%} - The campaign ID found on the Campaign List
{%UNIQUE_ID%} - The unique ID of the record that generated the email
{%IP%} - The IP address the click occurred from
{%CLICK_DATE_TIME%} - The exact time the click happened (YYYY-MM-DD HH:MM:SS)
{%ABMESSAGE%} - Will be replaced by a “A” or a “B”
{%CLICK_TRACKING_URL%} - The original URL used in the hyperlink
{%SENT_DATE_TIME%} - Date and time the campaign was sent (YYYY-MM-DD HH:MM:SS)
{%EMAIL_ADDRESS%} - The original email address used to send the email
{%CLICK_TRACKING_ID%} - ID of the click tracking record in the tblCampaignClickTracking table
{%TABLE_NAME%} - This is the table name for an Internal Email List that can be used in an Action
Item SQL Statement you are needing to execute
{%CAMPAIGN_NAME%} - The name of the campaign that generated this click tracking event
Example:
Insert into tblClickTrackingResponse (CampaignID,UniqueID,IPAddress,ClickDateTime) values
({%CAMPAIGN_ID%},{%UNIQUE_ID%},’{%IP%}’,’{%CLICK_DATE_TIME%}’)
Notice the last three value parameters have single quotes around them. This is because these merge
field are text values and need to be delimited for the SQL server to accept them. The
CLICK_DATE_TIME merge field is in a universal format (YYYY-MM-DD HH:MM:SS).
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !56
Message Content Programming
The HTML section can include any HTML text, database merge fields, and system merge fields.
Database merge fields - These fields allow for the insertion of information from your database into
your email message. If you had a database column called “FirstName”, then you could enter:
Example:
Dear {%%FirstName%%}
would return “Dear Chris”
Merge Functions
The function and column names are case-sensitive. Column names must match the same case as in
your database. The delimiters for Merge Functions has three % signs
Example:
Dear {%%%=NZ(Firstname,”Valued Customer”)%%%}
NZ(<ColumnName>,<DefaultValue>)
This function will return the data in the column name if the data is not null. If the data is null then the
default value is returned.
Example:
Dear {%%%=NZ(FirstName,”Valued Customer”)%%%},
would return “Dear Valued Customer,” if the FirstName column was empty
FormatNumber(<ColumnName>,<FormatString>)
This function formats the data in the specified column using the format string specified.
Formatting characters:
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !57
Format Specifier
Description
Example
“0”
Zero Placeholder - Replaces the zero with the corresponding digit if
one is present; otherwise, zero appears in the result.
0.00 -> 0.10
“#”
Digit Placeholder - Replaces the "#" symbol with the corresponding
digit if one is present; otherwise, no digit appears in the result.
#,### - > 5,123
“.”
Decimal Report - Determines the location of the decimal
separator in the result string.
1.23
“,”
Group Separator and number scaling - Serves as both a group
separator and a number scaling specifier. As a group separator,
it inserts a localized group separator character between each
group. As a number scaling specifier, it divides a number by
1000 for each comma specified.
12,129
“%”
Percent Placeholder - Multiplies a number by 100 and inserts a
localized percentage symbol in the result string.
12%
Example:
If the field name “Cost” had the number 4012.1,
{%%%=FormatNumber(Cost,”#,###.00”)%%%}
will return “4,012.10”
FormatDateTime(<ColumnName> or SYSTEM_TIME,<FormatString>)
This function formats a database date type column or using the SYSTEM_TIME setting using the
format specifiers:
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !58
Format Specifier
Description
Example
“d”
Day of the month 1-31
“dd”
Day of the month 01-31
“ddd”
Abbreviated day of the week
Mon, Tue, Wed
“dddd”
Full name of the day of the week
Friday,понедельник
“h”
The hour, using a 12-hour clock from 1 to 12
“hh”
The hour, using a 12-hour clock from 01 to 12
“H”
The hour, using a 24-hour clock from 0 to 23.
“HH”
The hour, using a 24-hour clock from 00 to 23.
“K”
Time zone information
“m”
The minute, from 0 to 59
“mm”
The minute, from 00 to 59
“M”
The month, from 1 through 12
“MM”
The month, from 01 through 12
“MMM”
Abbreviated name of the month
“MMMM”
The full name of the month
“t”
The first character of the AM/PM designator
“tt”
The AM/PM designator
“yy”
The year, from 00 to 99
“yyyy”
The year as a four-digit number
“:”
The time separator
+05:00
March
9a
Example:
When using a database column, for a date like May 5, 2012,
{%%%=FormatDateTime(TheDate,”yyyy-MM-dd”)%%%}
would return “2012-05-05”
When using SYSTEM_TIME, if today was January 15th, 2013,
{%%%=FormatDateTime(SYSTEM_TIME,”yyyy-MM-dd”)%%%}
would return “2013-01-15”
FormatCurrency(<ColumnName>)
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !59
This function formats the data in the specified column using the currency format for the regional
setting of the operating system.
For a number like 3123.55, if the operating system was set to United States
{%%%=FormatCurrency(Cost)%%%}
will return “$3,123.55”
Select(<ColumnName>,<MatchValue1>,<ReplaceValue1>,<MatchValue2>,<ReplaceValue2>,...)
This function allows the data in a column to conditionally select the value you want to return. The first
parameter is the column name, and then following will be pairs of the matching data and the return
value if for the match.
Example:
{%%%=Select(Gender,"M","Male","F","Female",Default,"Male or Female”)%%%}
If a <ReplacementValue> begins with “FILE:” followed by the path of file, then the contents of that file
will be used in the merge.
Example:
{%%%=Select(Gender,”M”,”FILE:C:\yourfilefolder\male_offer.txt”,”F”,"FILE:C:\yourfilefolder
\female_offer.txt",Default,"FILE:C:\yourfilefolder\unidex_offer.txt”)%%%}
If(<ColumnName>{conditional}<Constant>,<TrueValue>,<FalseValue>)
This function allows the data in a column to be compared to a constant. If the condition is true, then
the “TrueValue” will be returned. If the condition is false, then the “FalseValue” will be returned. The
conditional statements available are:
=
<>
>=
<=
equal
no equal to
greater than or equal
less then or equal
Example:
{%%%=If(Gender="M","Male","Female")%%%}
IncludeTextFromURL(<URL>)
This function allows the text data obtained from a URL reference to be inserted into the position of
this merge field.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !60
Example:
{%%%=IncludeTextFromURL(“http://arialsoftware.com/afiletoinclude.html”)%%%}
IncludeTextFromFile(<FilePath>)
This function allows the text data obtained from a file reference to be inserted into the position of this
merge field. The file path can be any valid windows file path including UNC paths. The windows
username that is running the CEMain service must have enough permission to obtain the file from the
designated path.
Example:
{%%%=IncludeTextFromFile(“c:\updatedfolder\stockprices.txt”)%%%}
IncludeAttachmentFromFile(<FilePath>)
This function allows a variable attachment to be added to the email. Each attachment file must exist
at the path and file specified. This text will be removed from the email message.
{%%%=IncludeAttachmentFromFile("c:\temp\chris.gif")%%%}
The database merge field can be used for the FilePath:
{%%%=IncludeAttachmentFromFile("{%%PersonalAttachmentColumn%%}")%%%}
Regarding the database merge field remember that the value is replaced but the quotes are not
included, so you will need to include them as seen above.
IncludeAttachmentFromColumn(<ColumnName>)
This function allows you to insert text from a column in your message before merge field
replacements take place. This allows you do to embedded merge fields where a column in your data
contains other column references.
Example:
{%%%=IncludeAttachmentFromColumn(AttachmentColumnName)%%%}
IncludeTextFromColumn(<ColumnName>)
This function will allow you to include text from a database column before the actual data merges
happen. This will accommodate embedded merge fields.
Example:
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !61
{%%%=IncludeTextFromColumn(MessageBodyColumnName)%%%}
Redirect(<DestinationURL>)
This function can currently be used in the Unsubscribe Confirmation HTML area in Site-Specific
Settings area in Administration. This function will override any other HTML in the Unsubscribe
Confirmation HTML area and after an unsubscribe action is done the user will be redirect to the
specified Destination URL.
Example:
{%%%=Redirect(“http://www.arialsoftware.com”)%%%}
System merge fields
These field have different delimiters (one fewer % sign) and include:
{%UNSUBSCRIBE_URL%}
{%VIEW_AS_WEBPAGE_URL%}
{%UNIQUE_ID%}
{%CAMPAIGN_NAME%}
{%CAMPAIGN_ID%}
{%CAMPAIGN_RIID%}
{%EMAIL_ADDRESS%}
{%DATETIME%}
These merge fields are primarily used if you need to create links in your email that go off to other
website and you need to pass that information on the recipient in the URL.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !62
Using External Databases
MySQL
It has been found that Oracle has purchased MySQL. Also, the OLEDB support for the product from
Cherry City is no longer available. Since there are no OLEDB providers currently, we are forced to
use ODBC connections. Because Campaign Enterprise uses both 32 and 64 bit communications
with databased, both the 32 and 64 bit ODBC drivers will have to be installed on the Campaign
Enterprise computer in order for it to function properly. Also, definitions in both the 32 and 64 bit
ODBC Management areas in the OS will have to be established. When creating the ODBC
connections be sure to use the same DNS for both 32 and 64 bit. We are trying to work out a better
solutions to this issue, either waiting for a new OLEDB provider or using the .Net connector to
MySQL.
MS SQL Server
The Native Client (OLEDB) driver, 64 bit, is loaded when you install Campaign Enterprise so there is
no need to do a separate install.
CSV Files
It is possible to use a text file for email lists, but you have to create an ODBC connection. This
connection as a definition but is not directly connected to any text file. This is done later inside
Campaign Enterprise.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !63
Create a Database Connector that points to the ODBC entry. Use the Microsoft Access (MDB)
Database type since it matches the driver you created in the ODBC connection:
Create an Email list using the full path filename to the text file for the Table Name. Only the table
Record Source Type is valid when specifying a text file:
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !64
CECONFIGURATION.TXT File Settings
The file is found in the inetpub\ce12\system folder and is used by Campaign Enterprise as a basis for
database connections and system-wide configuration.
The settings are made by tag pairs <thesetting> </thesetting> with the parameter in between.
The following is a of current configuration switches and settings:
<PrivateDBConnectionString> (Connection string text)
This is the primary connection string that Campaign Enterprise uses to connect to the CampaignDB1
database in your SQL server. It is used both for the database access for the 2 websites (ce12-admin
and ce12-public) and for the 4 Campaign Enterprise services (CEMain, CEBounce, CEQSend, and
CEMailServer). This connection string can be any valid connection string that the MS SQL Native
database driver will accept. By default the connection string uses “Windows Authentication” which
makes it so you do not have to have usernames and passwords exposed in this connection string.
Using the Windows Authentication method causes the connection credentials to the database be that
of the process running.
Provider=SQLNCLI11;Data Source=SCT01\SQLExpress;Initial Catalog=CampaignDB1;Integrated Security=SSPI;
If you choose to use SQL Authentication, then your connection string may look like this:
Provider=SQLNCLI11;Data Source=SCT01\SQLExpress;Initial Catalog=CampaignDB1;user id=ceuser;password=Arial1;
<PublicDBConnectionString> (Connection string Text)
Normally this setting is the same as the PrivateDBConnectionString. This is a connection string to the
Campaign Enterprise backend databases for the ce12-public website. This separate connection
string is available so you can set higher security on the public-accessable side of the Campaign
Enterprise system.
<LicenseKey> (License Key string text)
This is the license key is a series of characters which constitutes your license. Be sure you do not
have any carriage returns in this line. Sometimes when you receive these emails keys via an email it
may seem like there a carriage returns because of the word-wrapping email clients can do.
<UploadFolder>
This is the location of the root of the upload folder that is used when you upload something to
campaign enterprise. An example would be:
<UploadFolder>C:\inetpub\ce12\uploads<\UploadFOlder>
<Debug> (ON, OFF)
This switch will turn on system-wide debugging. You can turn on this same switch from within
Campaign Enterprise but that is assuming the system is working to the point you can log in and go to
the Administration screen. If you are unable to log in and need to turn this switch on then you can do
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !65
it here. You will need to restart the Campaign Enterprise services in order for the system to log debug
information. Example:
<Debug>ON</Debug>
<CEBounceBindingIP> (IP Address)
In some instances, you may have an SMTP Server on the same system as Campaign Enterprise. By
default, both Campaign Enterprise and your SMTP Server may need to listen to port 25 which causes
a conflict since only one system can monitor port 25 on a single IP at a time. Since the bounce
system in Campaign Enterprise has no choice but to listen to port 25 for bounce emails coming back,
the best thing to do is change the port that the SMTP server is using to listen for request to another
port, like 2525. If your SMTP Server has to listen to port 25 as well, then the only other solution is to
have two IPs on the computer, with each system using one of those IPs. In this case, you will need to
set up your SMTP Server so it uses one IP and Campaign Enterprise use the other. This setting
allows you to establish which specific IP Campaign Enterprise will use to listen for port 25 traffic. Here
is an example:
<CEBounceBindingIP>192.168.1.111</CEBounceBindingIP>
<CEBounceWelcomeMessage> (string value)
In some instances, you may have need to change the initial welcome message when an outside
SMTP server attempts to connect to the bounce system. Adding this value will change that initial
welcome message as in this example:
<CEBounceWelcomeMessage>cebounce.arialsoftware.com ready</CEBounceWelcomeMessage>
<CEExternalSQLServer> (TRUE, FALSE)
If the SQL Server you are using for Campaign Enterprise backend tables is located on a different
computer, then set this switch to “TRUE”. This is primarily used for email lists imports into internal
Email Lists. If this setting is not present or set to FALSE, Campaign Enterprise will use a “BULK
INSERT” to import email addresses into the Email List but this method requires the imported text file
to be on the same computer as the SQL Server. This method is most efficient for large imports. If the
SQL Server is located on a different computer, the uploaded text file will not be accessable to that
system because it is uploaded onto the Campaign Enterprise computer. Setting this to TRUE causes
Campaign Enterprise to bypass the BULK INSERT operation and uses a less efficient importing
system. Here is an example:
<CEExternalSQLServer>TRUE</CEExternalSQLServer>
<EnableBounceMessageTextStorage> (ON, OFF)
Under normal circumstances the Campaign Enterprise system does not store the original bounce
messages returned when an email is undeliverable. The information is analyzed by the Campaign
Enterprise system and only information that is useful for Campaign Enterprise to report on is stored. If
you need to store and access the original bounced email information, you can turn this switch on and
this information will be stored along with the other information in the tblBounceLog table. Be aware
that storing this information will cause your tblBounceLog table to become large so if you use it over a
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !66
long period of time you may want to set up something in the SQL server to purge the information.
Here is an example:
<EnableBounceMessageTextStorage>ON</EnableBounceMessageTextStorage>
<DomainUsernameAuthentication> (ON, OFF)
When you turn on this switch, this will cause the system to use Windows/Domain username
authentication to log in. This domain authentication method will only work with the
username@domain format, the pre-windows 2000 username format of domain\username is not
supported.
CAUTION: When using this domain authentication system method, your username and password will
be transmitted to the Campaign Enterprise website in plain-text format. It is highly recommended if
you use windows domain authentication that you obtain an Secure Certificate (SSL) and apply it to
ce12-admin website in IIS so that this information is encrypted.
Here are the changes to the user interface that will happen if this switch is on:
1. The login screen will now require a domain name as well as a username and password
2. When you create a new user, you will not be asked for a password but you will have to enter in the
domain\username of the user being created
3. You will not be able to set or change the password in the User management section
4. On all the screen in the interface the “Change Password” link will be hidden because you cannot
change a windows/domain password from Campaign Enterprise.
Here is an example:
<DomainUsernameAuthentication>ON</DomainUsernameAuthentication>
EnableLegacySQLStatementBoxes (TRUE,FALSE)
When set to TRUE, this will expose the older-type SQL Statement boxes in the Campaign Edit
Options area. The use of these SQL Statement boxes is deprecated to the using the Actions system
and will eventually be removed from the system. Only use this setting if you have previous
campaigns that use these boxes. If this entry is not in the ceconfiguration.txt file then TRUE is
assumed. So for previously installed systems, the SQL Statement boxes will be visible, but for new
installations this will be disabled because of this switch.
<EnableLegacySQLStatementBoxes>FALSE</EnableLegacySQLStatementBoxes>
ConsecutiveErrorRetryCount (Default is 10)
This setting can be used to change the number of consecutive errors that can occur when attempting
to send emails to an SMTP Server.
Example:
<ConsecutiveErrorRetryCount>20</ConsecutiveSMTPErrorRetryCount>
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !67
Uninstalling Campaign Enterprise
There is no automatic way of uninstalling Campaign Enterprise because of the risks with other
systems running, but it is quite easy and safe to remove the system using the steps below:
IIS Server Administration
• Delete the ce12-admin and ce12-public websites
• Delete the ce12-admin and ce12-public application pools
SQL Server Management
• Delete the CampaignDB1 and CampaignLists
• In Security/Logins area, delete the ceadmin and cepublic usernames you used to access the SQL
Server. These might be SQL authentication or Windows usernames.
Deleting Services
At a DOS prompt, to remove the services, type in and run each one of these:
SC DELETE CEMAIN
SC DELETE CEBOUNCE
SC DELETE CEQSEND
SC DELETE CEMAILSERVER
Delete Users:
If local windows user accounts were created (default) go into the Windows User Management area
and delete the ceadmin and cepublic usernames
Delete CE12 Folder:
Delete the CE12 folder usually found in your INETPUB folder on your disk install disk
Delete Registry Keys if either exist:
HKEY_CURRENT_USER\Software\VB and VBA Program Settings\CE12
HKEY_LOCAL_MACHINE\Software\CE12
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !68
Moving The Campaign Enterprise Database (CampaignDB1)
At times it is necessary to move the Campaign Enterprise database from one computer to another.
Many times the database is initially installed on the same computer as the Campaign Enterprise
system and then it is moved to another system later. Moving the database itself consists of backing
up the database, then restoring it on the new system. The more complex part of this operation is the
new connection string to the SQL Server and the security model you plan on using to allow Campaign
Enterprise to communicate with the SQL Server.
When the SQL Server is on the same computer as the Campaign Enterprise system usually Windows
Authentication is used to connect to the Campaign Enterprise system because it is usually very
simple. When you move the databases to the SQL Server you must first modify the system database
connection string found in the ceconfiguration.txt file in the ce12\system folder. BUT, before you do
this, you need to decide the method of authentication you want to use:
SQL Server Authentication - If you are using separate computers but do not have domain then this
is the only method you can use. You will have to:
- Restore the CampaignDB1 and CampaignLists databases on the new server
- You will need to erase the security records found within security for the two databases for the
ceadmin and cepublic usernames you created.
- Create new ceadmin and cepublic usernames in the SQL Security Logins area and grant access to
both of these new usernames and make them db_owner
- Modify you connection string in ceconfiguration.txt to use “USER ID=“ and “PASSWORD=“ in the
connection string
Provider=SQLNCLI11;Data Source=YourSQLServerNameOrIP;Initial Catalog=CampaignDB1;User
ID=ceadmin;Password=yourpassword;
Windows Domain Authentication - When you use Windows Domain Authentication to access the
SQL Server then you will not have to expose your SQL Server connection string password. To use
this method you will have to:
- Restore the CampaignDB1 and CampaignLists databases on the new server
- You will need to erase the security records found within security for the two databases for the
ceadmin and cepublic usernames you created.
- Add the windows domain name for ceadmin and cepublic in the SQL Security Logins area and grant
access to both of these new usernames and make them db_owner
- Modify you connection string in ceconfiguration.txt like this:
Provider=SQLNCLI11;Data Source=YourSQLServerNameOrIP;Initial
Catalog=CampaignDB1;Integrated Security=SSPI;
NOTE: After changing these connection string be sure to restart the CE services and restart the
admin and public Applications pools in IIS for the new connection string to take affect.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !69
Revision History
version 12.0.262
• Fixed issue with chained campaigns not running when Email List has not records
• Fixed emptied help file bubble popups
• Loads email templates when the the templates table is empty
version 12.0.261
• Added campaign-specific unsubscribe ability
version 12.0.260
• Fixed issue with install not starting MTA service
• Fixed issue where “forget password” system send out multiple emails
version 12.0.259
• Added new switch to allow email return-path (VERPs) addresses to include Unique IDs only.
• Added new SMTP Queue and Arial MTA system option
• Fixed issue with System-Wide settings not saving the mail server settings correctly so summary
report logs were not being sent.
• Modified CEBounce service to recover from Null errors
• When counting records for SQL Statement in email lists if you used an alias of “t” in the statement it
would collide with the counting SQL statement because CE was using “t” as well. This alias has
been changed to a random one that should not collide with the user’s.
version 12.0.258
• Fixed issue with stored procedure record counts not working
• Removed error for nzFormatDateTime function in error logs
version 12.0.257
• Changed bounce detection to allow SMTP code 5.2.2 (mailbox full) errors
• Changed installation to allow the shutting down of services so the new DLLs could be installed
• Fixed issue with Bad Email Address Action processing not recognizing the new
{%CAMPAIGN_NAME%} merge field
version 12.0.256
• Added merge field {%CAMPAIGN_NAME%} merge field to all response events SQL Statement
areas.
• Locking of the FROM Address and From Name on a user-basis controlled by an admin
• Fixed issue with SQL statement not executing in certain circumstances for Click Tracking events
• Changed embedded images to use the CID (Content-ID) method
• Changed installation system to force overwriting of DLL support files during upgrades
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !70
• Added a new switch in User area to lock FROM address and name in the email to the specific
user’s information
version 12.0.255
• When a mail server was deleted, if it was part of a mail server group the association was was delete
but has been corrected.
version 12.0.254
•
•
•
•
Public URL entry in Administration now requires the http://
Better email format checking
There was a problem with counting of Click Throughs in statistics that has been corrected
When a campaign is run the email list could is recalculated
version 12.0.253
• ODBC connections are allowed again
• Interval scheduling at 1 minute intervals had problems on systems in load balancing scenarios
which has been corrected
version 12.0.252
• When a campaign is run sometimes the Mail Server would test good when there was a problem
which has be corrected.
• When a bounced email was processed there was an “object” error that has been corrected
• When searching within an email list if the value entered was larger than 28 characters then there
was an error which has been corrected
version 12.0.251
• When sending if a bad email address was encountered the campaign would stop and due to an
unhanded error when writing to the database which has been corrected.
version 12.0.250
• Due to un-capture-able database errors that occurred in the CE services the database connection
method used in these services have been changed.
version 12.0.249
• Added Purge Campaigns function in Administration
• Allows for CC field in email to have database merge fields that have multiple addresses in them
separated by commas
version 12.0.248
• Added ability to re-import exported campaigns
• Added ability for export and import of campaigns to carry along the associated email list
• Created an audit trail file that can be used to find when information changes in a campaign and
other areas
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !71
• Email Alerts can now be sent to multiple email addresses
• Site-Specific settings area for View as Webpage and others were limited to 5000 characters but
now it is unlimited.
• In some instances the user interface would return “Create Object error” which has been corrected.
version 12.0.247
• Added TLS communication ability to the System Settings for the SMTP Server
• Added license expiration date and number of days to Administration screen
• For campaign level email list filtering, IS NOT IN LIST has been added for numeric and string type
columns
• The Campaign sending process has been moved to its own Windows service called CESend. This
allows the sending of a campaign to continue even when there is an error during recording of
response events.
• Decreased the time of the CEMain service starting when there are a many campaigns
• The “Preview” button when editing a campaign now shows all of the columns within the email list
• Fixes bounce recording of email addresses that have apostrophes in the email address
version 12.0.246
• After copying an internal email list, if you imported or added a record to the new email list the Date
Added field
• Added the {%TABLE_NAME%} merge field in Action items for SQL Statements when using external
email lists.
• When importing email addresses into an internal email list the DateAdded is defaulted
• When chaining campaigns, if the first campaign had 0 records then subsequence campaigns would
not run, which has been corrected.
• Added the ability for the {%CAMPAIGN_ID%} system merge to be used in a campaign-level filtered
value box.
version 12.0.245
• Database merge fields were not working with the BCC email field but has been corrected
• When using Internet Explorer, when using the Column Name lookup buttons, when clicking Add the
column name was not copied to the main page.
• Email format checking now looks for periods at the end of the email addresses
• Added new ceconfiguration.txt file entry to allow for adjustment of the number of consecutive SMTP
errors that can occur before a campaign is terminated
• Added a new merge field to Action Items call {%TABLE_NAME%} which is used for internal email
lists when executing an SQL Statement
version 12.0.244
• Fixed “IF” and “SELECT” merge functions to allow commas in the return values
version 12.0.243
• In some circumstances, when a campaign completion email is attempted to be sent there would be
a mailer error referring to an unlock error. This conflict has been removed.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !72
• Changed the email list copy function so you can only copy structure or structure and data for an
internal email list type
• Allows database merge fields in CC and BCC
version 12.0.242
• Added a database connection type INFORMIX database type
• Changed Mail Server TLS/SSL setting issue you want to use TLS but not SSL
• When using the IncludeAttachmentFromFile merge function, two attachments were being added,
this has been corrected.
version 12.0.241
• The new Email List categories selection box was not showing up in the External Email List
configuration screen
• During installation, the registry key is now read and the Installation Folder is verified to be present
before the installation starts.
• If a custom header of “List-Unsubscribe” is used it will override the built-in “List-Unsubscribe” header
• Click tracking extraction was identifying the custom “view as webpage” merge field as a click
tracking link which needed to be ignored. This has been fixed.
• If Unsubscribe Reasons was not utilized then a NULL value for this value caused the unsubscribe
not to be updated. This has been fixed so unsubscribe reasons are not needed for success
recording
• For campaign level email list filtering for the IS IN LIST operator you can now activate a LIKE
sequence by using percent signs (%) in the values.
• The following will occur when a connection is made to an SMTP: 1) If the SmtpPort property = 465,
then sets StartTLS = False and SSL = True 2) If the SmtpPort property = 25, sets SSL = False
• When editing internal email list records using the full screen editor some of the values were not
being saved which has been corrected.
version 12.0.240
• When using an =IF merge function, if the return values were less than 5 characters long the merge
function would not work.
• Created new merge function =IncludeTextFromColumn that will include text from a database column
before the actual data merges happen. This will accommodate embedded merge fields.
• When database connections where lost during a batch record update for unsubscribes, bounces,
etc the CEMain process potentially could be stopped. This has been corrected.
version 12.0.238
• Unsubscribe Action items where failing when an unsubscribe reason was deleted instead of just
recording the default.
• Added Email List Categories
• When campaign completes and post Action is processed an error will not cause the campaign to fail
but just report on it
• De-duping of email addresses during an email send are now case-sensitive
version 12.0.237
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !73
• The username to log in used to be the same thing as the email address of the user. Now, username
and email address are separate fields.
• Fix issue where when adding a new campaign using a template it would make the new campaign a
template as well.
• Starting a campaign with a mail server group caused an error that has been fixed.
• Corrected error when trying to run a campaign using a Mail Server Group
• Removed requirement for record count being greater than zero when trying to run a campaign in
consideration that the pre-processing SQL Statement may produce records to send to
version 12.0.236
• Fixed various typos
• Modified installation to use LOCAL_MACHINE registry storage instead us USER registry storage
version 12.0.235
• For the unsubscribe response SQL Statement the {%EMAIL_ADDRESS%} was returning nothing
which has been corrected.
• Fixed issue with deleting mail server permissions for users
• Changed Public URL Management edit screen so include the permissions for users
• Fixed upgrade registry key search for older version
version 12.0.234
• Added {%FROM_EMAIL_ADDRESS%} and {%FROM_NAME%} as system merge fields that can
used in the message
• For the click tracking action item, the IP address merge field was not reported correctly but has
been corrected.
• Added {%CAMPAIGN_RIID%} merge field to the Open Tracking Action execute SQL statement
• Fixed issue with SQL Statements being separated for execution by the ending semi-colons. This
happened mostly with using message text which had semi-colons in it.
version 12.0.233
• When an SQL server failure is detected, now in retrying to connect, the connection string is
reloaded from the ceconfiguration.txt file in case it changed.
• When deleting a campaign the records from tblActionInstances and tblCampaignFilterCriteria was
not deleted along with the campaign
• Carriage-returns are now removed from Campaign Actions multi-line SQL Statements
• Fixed Action SQL statement size limits from 500 to 25000 characters
• Fixed internal Email List copy so the custom fields are also copied to new Email List
• When you copy an internal Email List now you can choose to copy just the structure or the structure
and data
version 12.0.232
• Admins can now set permissions for campaigns, email lists, and database connections that are not
owned by them
• Added the {%CAMPAIGN_ID%} merge field so you can use it in the campaign-level filter value
• Modifications to the SQL Server recovery. If the SQL Server is unavailable the all services will trying
even 10 to 15 seconds to make the reconnection until the service is stopped
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !74
version 12.0.231
• Expanded the storing ability of the SQL statement used in an email list to 25,000 characters instead
of 5,000 characters.
• When copying a campaign the Actions and the Campaign Filter items are now copied too.
• When SQL Statements were not used for response events there could be an error where the
database connection was not found. Workaround is to set the SQL to “SELECT 0” so it has
something. This version fixes that
• Sender queue screen now refreshes every 5 seconds
• Fixed info popups for Database Connection editing screen
• Fixed installation system so that older versions will include the bounce and public URL domains
version 12.0.230
• Actions - This new system allows a campaign to execute specific actions before, during, and after a
campaign is run. See documentation for more info.
• Campaigns can be marked as “Is Template”. When you add a new campaign it will give you a list of
the campaigns marked as “Is Template” and the new campaign will have all the settings of the new
campaign
• Due to a caching issue, Internet Explorer would sometimes not update dynamically created lists and
status updates. Caching is now being forced off for all browsers so the lists should work.
• Fixed issue when in Email List configuration for bounces. When the UniqueID and the
EmailAddress columns are the same, the email addresses being stored retained the = sign used in
the return path email address. These = signs are now converted back to @ signs.
• In a load balancing situation it was possible for a campaign to be started on both CE systems at the
same time. This has been corrected by one locking out the other.
• Added UnsubscribeReason field to the Unsubscribe Log file found in the Campaign logs area
• Added {%CAMPAIGN_RIID%} merge field to the SQL Statement box
• Found situation where tblBounceLog information was updated incorrectly.
• Added system merge field {%EMAIL_ADDRESS%} and {%CAMPAIGN_RIID%} for use in
messages being sent.
• Fixed issue with the “=NZ” merge function that returned an error
• Set a standard date format for all response log date output (yyyy-MM-dd HH:mm:ss)
• When sending email a 550 error will increment the Bad Email Address counter and not count as a
hard SMTP server error that would stop the sending.
• Added a new variant to the merge function SELECT where if the selected value begins with “FILE:”
followed by a path to a file then the contents of that file will be used in the merge
• Added new filter item for Campaign specific email list filter for dates IS NULL
• The CEBounce service which provides the listener on port 25 and writes bounce-backs to the
database, has been modified to compensate for the MS .NET 4.5 “feature” that will not trap certain
Operating Systems errors which caused the service to shut down. The switch has been turned on to
disable this feature in future builds of the CEbounce as well as the rest of the services.
• When using AB messaging, identical click tracking links in each message type were not being
differentiated so only one of the click tracking definitions were being used so the click was not
associated with the A or B message, and this has been corrected.
• Added merge field {%CAMPAIGN_RIID%} to the click tracking SQL statement box
•
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !75
version 12.0.228
• When the exporting internal email lists all records are not exported even if they are bounced or
unsubscribed
• If a campaign is stopped during a send because of 10 consecutive SMTP errors, the system now
throws an actual error and then allows the campaign to be resume after review/correction.
• Added {%CLICK_TRACKING_ID%} merge field to the click tracking SQL statement area
• Click tracking SQL boxes for external email lists have been been made larger
• Add ability to change the bounce system’s welcome message using the ceconfiguration.txt setting
called <CEBounceWelcomeMessage>
• When adding a new Database Connection, the user id was not attached to the record and this made
it so the Database Connection did not show up in the drop-down box in the Email List. This
happened in version 12.0.227
• When there is a HTTP_X_FORWARDED_FOR header in response event calls back to CE, CE will
show favor the IP in this header over the normal IP (used in Proxy Servers). Also, the port is
stripped out if it is included (assumes the IP is up to the colon)
version 12.0.227
• When the “Unavailable page” for a Public URL was not set then an error occurred, then the IIS
system would not provide an “Page not available” text but would show an IIS server error. This has
been corrected
• Fixed URL Encoding problem with unsubscribe merge field data in the Unsubscribe confirmation
page. When sending an email address in a parameter the @ sign would be view as a %40 which
has been corrected
• Added “Bad Email Format” statistic in reporting statistics for overall campaign and for individual
campaign run instances. These bad email formats will not be marked as bounced anymore.
• When Campaign Run Instances are purged it will now not purge those records that are in a
transition state, running, run request, etc.
• When adding a new Mail Server or Database Connection, if you moved to the Permissions tab there
was an error message because the record had not been created yet so permissions could not be
assigned. Now when creating a new Mail Server or Database Connection there is a pop up
prompting for the name and the record will be created and then it can be edit as normal.
• Fixed IncludeTextFromURL merge function, was not merging correctly.
version 12.0.226
• Any new internal email lists will now not allow duplicate email addresses
• A new Unsubscribe Info tab has been added to the campaign edit screen. A campaign can now
have specific unsubscribe info.
• Added ODBC and Generic database connection types
• Changed PlainTextMessage storage to allow for double-byte characters (caused error when saving)
• Added range protection for the Session Timeout in the user management area, Internal Email List
custom field text-type entry width setting
• Merge fields within hrefs and src HTML tags will now be ignored when the references are checked
when a campaign start is initiated.
• Merge functions were not functioning in certain circumstances which has been corrected.
• Allow the passing of parameters in Unsubscribe links so they can be displayed on the unsubscribe
confirmation page.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !76
version 12.0.225
• When stopping and starting a campaign two times in a row now keeps the sent file log intact instead
of erasing it.
• When a campaign is stopped and restarted, it will not create a new run instance record, it will use
the last one available.
• The Campaign Run Instances log now will only keep the last 10,000 characters to save space
• Increased in the install the unsubscribe reasons from 20 to 50 characters
• Searching for campaign names has been fixed for campaigns that you do not own but have
permission for
• Moved the DB updating to the CEMAIN service . Each time the CEMAIN process starts the
database is checked.
• Added new Unsubscribe Templates area in Administration. You can apply any unsubscribe
template to a campaign.
version 12.0.224
• Changed format of return-path addresses to be more efficient, also accommodates for uniqueID
being the same column as the email address field.
version 12.0.223
• Fixed issues with bounces not being recorded in some instances because of different formats the
return-path address was being sent in.
• Field merges can exist within merge functions, example: {%%%=Select(OrganizationType,1,”Hi {%%Salutation%%}",2,"Hello {%%Acct%%}”)%%%}
version 12.0.222
• Added new SQL merge fields for unsubscribe called {%UNSUBSCRIBE_REASON_ID%} and
{%UNSUBSCRIBE_REASON%}
• Sometimes the formatting involved with Merge Functions like {%%%=Select…%%%} was too strict
so these functions were not being found. This has changed so the merge function names are not
case-sensitive (Select vs SELECT).
version 12.0.221
• Added new section in Campaign Overview report that shows a pie-chart of unsubscribe reasons
• Added new section in Campaign Overview report that shows a pie-chart bounce reasons
• For external email lists using an SQL Statement or a Stored Procedure, there is a new merge field
called {%CAMPAIGN_FILTER%}. If you include the field, you will be able to also filter at the
Campaign level and this merge field will be replaced with the filter criteria you set in the campaign
itself.
• Added new background maintenance cycle to clean up tables, etc. Starts at midnight each day.
• Added email list record count refresh button
• Now when you edit records in the email list record list, when you leave that screen the email record
count is updated for that list
• When inserting templates into campaigns sometimes it would fail if there was not plain text
message available. This has been corrected so you don’t need a plain text version.
• Open tracking log was not showing the email address which has been corrected
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !77
• Log file reports are now available for click tracking, unsubscribe, bounces, and opens
version 12.0.220
• In the Email List record edit screen, there is now a “Page” drop down box to move directly to a page
• In the Email List record edit screen, searching for values now search within a string instead of an
exact match
• You can now edit filtered internal Email List records
• Added API table to the Site-Specific settings the API credential entry boxes for the Professional
edition of Campaign Enterprise
• Updated HTML editor to CKEditor 4.3.4
• Updated javascript jQuery tool set to version 2.1 so only IE 9 and later will be supported
• Fixed issue with Email Template lists failing on multiple pages of listings in both Email Template List
Management in the Administration area and when selecting a template from for a Campaign.
• Fixed issue with CEQSend service which sends out system email notifications and password
retrieval. If database connectivity was lost during a cycle the system would stop running.
• Fixes issue with CEMain service not being able to write to the Windows Event Log and would stop
functioning. This may be due to the SQL database not being available for an instant.
• Fixed issue with sending just Plain Text only messages. Before it was sending the HTML message
as well.
• Reports for the campaigns have been changed. The individual reports for click tracking,
unsubscribes, etc have been removed in favor of an overall report that shows all the aspects of the
campaign
• The Email Templates Management and Insert Email Template inside of the Campaign Edit had an
error when going beyond page 1 which has been corrected.
• Fixed plain text auto-sync feature
version 12.0.219
• Export Campaign function with the ability to export a campaign as an SQL Script that can be
imported into another Campaign Enterprise database. To use this, you will need to allow exporting
campaign in the individual user record. Once activated, you can select one or more campaigns to
export from the Campaign List.
• Found a problem with campaigns using filtered internal emails list stopping and saying “cannot find
object tblEmailList203” when the sender encountered a bad email address format. This has been
corrected and now the record is marked “bounced” if the email address format is bad and the
campaign will continue.
• Fixed the ability to export a filtered internal record list
•
version 12.0.218
• Revised domain usernames login method to use the UPN form of login (username@domain)
• Fixed filtered internal list select popup box
• Fixed “invalid object name tblEmailListXXX” when running a campaign when using a filtered list
version 12.0.217
• Fixed issue with using {%BOUNCE_DATE_TIME%} where the date was formatted incorrectly and
would not work insert using an SQL statement
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !78
version 12.0.216
• Added a new ceconfiguration.txt swtich to enable the use of Domain usernames when logging into
the Campaign Enterprise system. You will still need to make users in CE so that only those that are
allowed into CE will be let in, and it also will assign resources and security to that username. See
CECONFIGURATION.TXT Setting section above for more information
version 12.0.215
• Changed email validation tool to allow all valid characters while still holding certain rules about
email address format.
• Added new log reports for unsubscribe, opens, and click tracking
• Added {%EMAIL_ADDRESS%} merge field to unsubscribe, opens, and click tracking SQL
statement boxes
• Added “Use TLS” mail server setting
version 12.0.214
• Email format checking now allows for underscores before the @ sign in the local part of the email.
• Added a search for a header HTTP_X_FORWARDED_FOR in the public website requests so that if
Campaign Enterprise can record the true request IPs if behind a proxy server.
• Bounces are now attributed to Campaigns. There is a new column in the Campaign Logs area that
will show the bounces that occurred for a particular campaign run instance.
• Email List Export feature was throwing an error that has been corrected.
• A new switch has been added to the ceconfiguration.txt file found in the ce12\system folder where
you can now turn on the ability for the original bounce message text to be added to the
tblBounceLog table. The switch is: <EnableBounceMessageTextStorage>. You can also now use a
new merge field in the Bounce SQL box in Email Lists configuration that allows you to access the
original text from the returned (bounced) message called {%MESSAGE_TEXT%}
• A new report has been added to view/save the hard bounced emails attributed to a particular
campaign.
version 12.0.213
• Made the Email List copy popup larger so you don’t have to scroll
• Changed the Disable Sent Message Log switch in the Campaign Options to be Enable Sent
Message Log switch. Now you have to explicitly turn on the Sent Message Log if needed. It used
to be on by default and you had to disable it. This made so the SQL Server volume grew too large
and the tblSentMessageLog had to be truncated.
• Fixes problem with Filtered email lists not being able to preview
version 12.0.212
• Found problem with click tracking not recording due to new CLICK_TRACKING_URL merge field
which has been corrected
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !79
• When using Internal Email List with a filter there was a problem with opening these lists which has
been correct in this version
• Certain filter operators were missing in the 12.0.211 version which are not added with this version
concerning the “In Lists” operator type
• Allows for large password strings for users
version 12.0.211
• NEW - Added new function to Email Lists that allow you to use an SQL statement inside a
campaign. Now you can create one email list and then use it over and over in campaigns with each
having its own SQL statement
• NEW - New merge fields have been added to Click Tracking SQL processing including the original
URL link being used and the original sent date of the campaign that is initiating the click.
• NEW - Changed built-in Bounce VERPS system to include {%EMAIL_ADDRESS%} and
{%CAMPAIGN_ID%} in the SQL processing
• ORDER BYs in the SQL statements were causing the record counts to fail. This has been
compensated for by removing the ORDER BY statement during the counting calculations
• Internal list imports where not working when the Campaign Enterprise CampaignDB1 database was
located on an external SQL Server. If the CampaignDB1 volume is on an external computer then
you must set the <CEExternalSQLServer> setting in the ceconfiguration.txt file (in the ce12\system
folder) to TRUE. This will cut performance because the SQL Bulk Insert function cannot be used. If
the <CEExternalSQLServer> </CEExternalSQLServer> pair is not in your ceconfiguration.txt file
you can create it manually.
• MySQL record counting in the email list and the campaign run screens has been fixed
version 12.0.210
• NEW - Campaign-level filtering has been added so that at a campaign-level you can select filters to
choose email records based on criteria
• Fixed bug with click tracking and bounces having SQL statement errors in the log
• Main Menu list of campaign now holds it page number when leaving to a different screen
• Sample emails will no longer be sent when a test campaign run is sent
version 12.0.209
• Added new page number combo boxes to all applicable list pages
• The click tracking extraction is now working for HTML content that uses the IncludeTextFromFile
function
• Removed large error log from Campaign reports are and just showing error codes instead, also not
sending these transient errors to the Alerts system (redundant)
• Bad email address formats are now enforced again. If a bad format is found for an email then the
Bounce SQL statement is run (found in Email List configuration)
•
version 12.0.208
• NEW - Added new {%ABMESSAGE%} merge fields to the Click Tracking and Unsubscribe
response SQL Statements. If you are using AB Messaging, you will be able to record what version
of your email triggered the response.
• In the HTML editor within a campaign, the “B” message if used did not have the insert merge fields
functions and the merge fields were not high-lighted as the “A” message which has been corrected.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !80
version 12.0.207
• NEW - Added new “Database Connection” layer to Email List system. Now the connection strings
to the database are stored in a separate area and can be used my multiple Email Lists. Database
Connections have their own User and Group security ability.
• NEW - Sample Email Address has been added in the Campaign Edit Option area. This email
address will be used in the BBC of the first email going so you will get an exact sample of the email
with all the merges
• If the merge field {VIEW_AS_WEBPAGE_URL%} is used in the HTML text then this will override the
default View As Webpage text found in Site-Specific settings in administration.
• When running a campaign in the past, during the broken link check, any link that had a Campaign
Enterprise merge field in it cause a bad link failure. Now, any link that has {% and %} will not be
checked.
• For broken link check when running a campaign, the check only downloads a small portion of the
link information to prove it is active. If a bad domain is used there still be be a 5 second delay for
each of these links that are broken in this way
• The test email function has changed so that the test email will be based on the first recipient in your
email list with only the recipient email address being changed. This will now allow the full email to
be merged if there are any merge fields.
• Messages being stored in the tblSentMessageLog table now only stores the HTML part of the
message reducing table size.
version 12.0.206
• Modified link checking when running a campaign. Now the whole page or image is checked instead
of just the HEAD being checked which was rejected by some websites. It may take longer if not
disabled but it will be a definitive proof that the links to work as intended.
version 12.0.205
• Fixed issue with merge functions string delimiters. Sometimes the &ldquo; adn &rdquo; encoding
was used which was not a valid delimiter. Now if these characters are used the are converted to
real &quot; characters when they are saved.
• During an version upgrade the help information is revised to the latest text
• Leading and trailing spaces are removed when saved in website pages (caused issues with column
name definitions)
version 12.0.204
• NEW - Added {%MESSAGE_TEXT%} merge field to the email writeback SQL section
• NEW - In the HTML Message editor there is now a button to insert database fields from a list
• NEW - Database merge fields inside an HTML message are now highlighted to show them being
recognized as database merge fields
• Correct issue with Email List list not displaying after an upgrade
version 12.0.203
• NEW - Campaign ID is re-introduced into the Campaign List area and can be sorted by this column
• NEW - You can now include parameters in the SQL or Stored Procedure entry boxes for Email Lists,
and these parameters will be asked on a campaign-basis. (See documentation on Email Lists)
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !81
• When merges are happening in emails and the database merge fields specified do not exist in the
real database then the bad merge field is identified.
• In the Email List listing screen, the column “Record Count” used to be calculated for each Email List
every time the list was generated. Some Email List counting procedures would lock up the screen
in order to finish which caused delays. Now, the column is called “Last Count” and will reflect the
most recent record count of that Email List when it was last run or configured.
version 12.0.202
• In the Administration area, when viewing the user login list, the “Purge Logins” button was not
working which has been fixed.
• When a repeat schedule was used for a campaign and an “AM” time was entered, the time of day
was reset to a “PM” time. This has been corrected.
• Campaign Category lists are now alpha sorted
version 12.0.201
• NEW - The addition of the “Sent Message Log” records every message that is sent out of the
system. In the Administration area, you can lookup all of the emails sent to a specific email address
and view the exact message that was sent to them.
• NEW - Database Merge fields can now be used in Click Tracking links. Also, destination URLs with
all merges are now encoded into the Click Tracking links so that no database lookups are required,
increasing performance and assuring the click will function even if the campaign is deleted.
• NEW - In Campaign tracking configuration area, you can now do a “Delete All”
• NEW -The Category and the column sorting are now “sticky” even between login sessions
• NEW - Added more date format (the order of day, month and year) selections to the internal email
list import routine
• NEW - When an Email List is deleted it will also delete any dependent Email Lists
• URL links in the editor with multiple parameters (using the & symbol) used to get the ampersand
List-Unsubscribe header in the email used to be included even when unsubscribe was disabled, this
has been corrected
• When using manual plain-text then plain text MIME section was not appearing in the email, this has
been corrected
• Email List count for Oracle databases is now calculating correctly on complex SQL statements
• changed to &amp; which caused the link to fail in some circumstances. This has been fixed.
version 12.0.200
• Improved record counting consistency for external email lists, will handle more complex SQL
statements or stored procedures
• Fixed the SMTP port in System Wide Settings in Administration to accept port other than port 25
• Various Administration screen lists searching ability was broken. These have been corrected.
• Corrected issue with Alert system, if error occurs, a alert will be generated
• Added “Unavailable Page” section for PublicURLs. When any request is made back to Campaign
Enterprise for an unsubscribe, click tracking, or view as webpage request, and the record cannot be
found, this page is shown.
• Added new merge function to programmatically add variable attachments. See new above in merge
function definition section.
version 12.0.199
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !82
• For merge function IF you can now have commas and other formatting characters in the return
values. Tested with commas, quotes, and HTML
• Sending threads over 2 were causing the 3rd thread and above to fail. Up to 100 threads can now
be executed at once.
• The campaign cannot be edited when the campaign is running
• Mail Server Edit screen was modified by removing rarely used parameters to an “Options” tab, does
not show XXXXXXX in the password field when the password is blank, renamed labels for settings
• When the CEMain process is shut down while campaigns are running (not good to do), when the
CEMain system starts back up it will reset all campaigns run instances status to “stopped”
version 12.0.198
• CEBounce service is not able to bind to a specific IP address if the computer running Campaign
Enterprise already has an existing mail server listening to port 25
• Found issue in installation where if the user that is installing has a username with a space in it then
the install will fail. This has been fixed.
• Added new merge function “IF” with many conditional statements
version 12.0.197
• Ability to disable src and href link checks when sending campaigns in Site-Specific Settings in
Administration
• For multi-user editions the ability to copy users along with all their permissions and resource
assignments.
• Fixed one-click unsubscribe system that was failing to add a record to the unsubscribe logs
• Fixed batch archive, unarchive, and delete functions, previously would only delete one selection.
version 12.0.196
•
•
•
•
•
Fixed dates with international formats on all screens
Run instance Start Date Time may have switched month and day around, corrected in this version
Removed unused tracking code from click tracking
Added new built-in variable SYSTEM_TIME to the =FormatDateTime() merge function
User and Group permissions are now copied when copying a Campaign or Email List
version 12.0.195
• Non-numeric unique IDs are now accepted for external email lists. A check box has been added by
the Unique ID column entry box for external email lists.
• Help files have been added back into the installation.
• The password column size has been increased for user records to 100 characters to account for
encryption.
version 12.0.194
• System now allows all Latin accent characters to be used in messages and user interface
• Added checking of complete custom header entries (ie: label:data)
• Allow merge functions to be used in Subject line and other message elements
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !83
• When an error occurred during sending sometimes the campaign would not start up again saying
there was a file in use which has been corrected.
version 12.0.193
• Installation system now creates the backend database even if SQL server is on a different machine.
It also creates a taylor made SQL script to run to create the databases if needed.
• HTML preview windows have been added to the message editor. On the message tab there is a
preview icon that will create a new window with the preview of the email.
• From Address merge field will now allow merge fields to be replaced correctly
• Merge Functions delimiters have been changed to {%%%...%%%} format (3 percent signs)
• When stopping a campaign manually there was an error updating a database field which cased the
start point to be lost. This has been corrected.
• You can now disable the links check (src and href) when you run a campaign. The switch for this
function is in Site Specific settings in Administration
• The bounce domain name list is refreshed once a minute in the CEBounce service. Before the
bounce domain list was loaded only when the service stated and ignored new bounce domain
names until a CEBounce server restart.
• A new “Unsubscribe Reason Management” area has been set up in the Administration area to add
or remove the unsubscribe reasons box used when a recipient unsubscribes from a list.
version 12.0.190
•
•
•
•
•
Installation system now stored the installation folder for future updates
Allows database merge fields in the sending write-back SQL box
Able to now disable schedules without deleting them
Fixed the bounce date and time not being recorded
When sending if there are 0 email to send then it records the information correctly
version 12.0.189
• Fixed External Email permission list to refresh the user permissions after deleting
• For the {%UNSUBSCRIBE_URL%} link, you can add additional parameters if you want to show
more data in the Unsubscribe Confirmation page in the Site-Specific area. Any parameters you add
will be available for merging in the page.
Example:
{%UNSUBSCRIBE_URL%}&email={%%EmailAddress%%} in your email message
will allow the {%%email%%} merge field available in the unsubscribe confirmation page
version 12.0.188
• Added lookup table button for external email lists after the connection string is entered
• Added lookup column button for external email lists after the connection string and record source is
added (settings will be saved when using this feature)
• Fixed installation so you can select using a domain user instead of a local user
version 12.0.187
• Added same toolbar items to all WYSIWYG editors in the program
• You can now purge run instances entries
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !84
• Fixed situation when “reason code” was left out of the unsubscribe confirm and error was thrown
when the recipient tried to unsubscribe
• Fixed MS Access connection problem. Now works will all Access versions including 2013
• Added new User Login List area in Administration to track logins
version 12.0.186
• When extracting click tracking links, the B message is not searched when A/B messaging is off
• When extracting click tracking links, carriage return line-feeds are moved from href records so they
can be replaced properly during sending
• On campaign run and schedule all links to images and URLs are checked to make sure they are
active.
• On Administration screen there is status of the Campaign Enterprise services
• When running a campaign it will check if CEMain service is running which is responsible for sending
the email and will not start the campaign is this is not running.
• When upload images into the editor the file size limit is checked and reported on if exceeded.
• Reworked email sending engine. Now all emails attempted with any return code will cause the
system to continue to subsequent emails, while if there is a mail server connection problem the
emails will be retried until the campaign is stopped or the mail server comes back online.
version 12.0.185 (2013-9-27)
• For internal emails list, when adding a field for text, you now have to enter a number from 1 to 255
and the field name cannot be blank
• Image uploads now work in Footers, Email Templates, View As Webpage template, and all
unsubscribe templates
• Overview report error is corrected
version 12.0.184 (2013-9-25)
•
•
•
•
•
•
•
•
Copying a campaign now does not carry forward the accumulated numbers
Double quotes are allowed in Campaign Names and don’t cause errors on the main menu
When deleting filter elements on built-in lists, the list of remaining filters is refreshed
British pound symbols (and other special characters) are now able to be searched on with internal
filters
Only unique counts are now recorded for opens, clicks, and unsubscibes. For pre v12.0.184
Campaign installations, you will need to clear the tables tblClickTrackingLog, tblOpenTrackingLog,
and UnsubscribeLog. once it is cleared this indexes will be add when CEMain service is restarted.
Click Tracking Report - only the click tracking records that are “active” show in the report
Custom Headers have been re-introduced
New logs are created during email sends so that each email that goes out is recorded so if there is
an error the campaign can resume where it left off
version 12.0.183 (2013-9-20)
• Added field merge ability to all elements in email, subject, etc.
• Mail server testing was working but setting the wrong success code which has been fixed.
• You can now use a fixed email address for the bounced address. If you put a full email address as
the bounce domain name in the administration section then the CE will use this address as the fixed
return path
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !85
• When importing records into an internal email list, non-ASCII characters were changed due to
codepage difference with SQL server. The Bulk Insert statement now includes a CODEPAGE=ACP
which allows these non-ASCII characters to be stored properly
version 12.0.180 (2013-9-20)
• Completely re-written IIS DLL interface in 64bit .Net. You no longer need both 32 and 64 bit
database drivers for many databases. Also, the applications pools on the IIS system now are
Framework 4 and are running in 64 bit mode.
• The built-in function =NZ was not merging the default value when the field as empty (instead of
NULL)
• Normal fields in the interface pages where not storing any double-quote characters which has been
fixed
• The new installation package allow for full installation as well as updating an existing system.
version 12.0.161 (2013-9-25)
• When an “emails per connection” was not set or set to 0 then SMTP connection during sending was
never closed. In some cases SMTP server returned a 4.3.1 error designating a “exceeding
resources” error. If no “emails per connection” is set, then the default emails per connection will be
100.
• Added new support file adodb.dll because it was missing on some OSs
version 12.0.160 (2013-08-25)
• Moved the Bounce Domain Setting for the email return path from the Email List settings to the
Campaign settings. Now each Campaign regardless of email list can use whichever Bounce
Domain Name it has privilege to use.
• Fixed server time problem on header of website
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !86
Troubleshooting
Image/Attachment/List Upload Problems
IIS has certain protections built in that limit certain operations. One of the limitations that may be in force is an upload file
size maximum. If you are finding that the uploading of attachments are not working, then it may be an IIS setting. The
graphic below is a section in IIS7 under ASP, limitations, that may need to be reset. Since attachment file sizes in
Campaign Enterprise is 5MB, increase the parameter below as shown:
!
CEMain Service Is Not Starting Automatically
When CEMAIN service operates normally but does not start up when a machine is started or rebooted, then usually the
problem is that the SQL Server you are using is on the same machine and is also starting at the same time as the CEMain
service. CEMain will wait for a connection to the SQL Server but will timeout if it takes too long. To stop this from
happening, you can set up the CEMain service startup to “Automatic (delayed start)” or you can set the CEMail service to
be dependent upon the SQL Server service starting first. You can make these setting in the service control module in
Windows under Administration.
Running Campaign Enterprise Using a Domain Username and Password
If you are moving your SQL Server onto an external machine and want to use Windows Authentication, you will need to
change the usernames used in the Windows IIS system for the websites and for the Campaign Enterprise programs that
run as services.
.NET Framework not registered with IIS
This usually happens when the install system did not have enough power to register the .NET Framework system with the
IIS system.
Database Connection Issues
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !87
The fix is:
On the windows system running CE:
1. Go go a DOS prompt
2. Type in:
c:\windows\microsoft.net\framework64\v4.0.30319\aspnet_regiis -ga "ceadmin"
3. And then run it again for the cepublic
c:\windows\microsoft.net\framework64\v4.0.30319\aspnet_regiis -ga "cepublic"
The usernames here (ceadmin and cepublic) could be different depending on the installation. If you are using domain
usernames use the backslash method (ie: YourDomain\ceadmin)
Connection String error with CampaignDB1
When a user is trying to create a connection string to the CampaignDB1 database there is an error that is produced
because you are not allowed to use the CampaignDB1 database for any other storage. Additions or modifications to this
CampaignDB1 database could cause the system to fail and it would also be a breach in security because then all the
backend tables would be exposed to normal users. If you do by mistake try to connect to the CamapignDB1 database
then the CampaignDB1 in the connection string will be replaced by this below making the connection string ineffective.
CE_SECURITY_VIOLATION_NO_CAMPAIGNDB1_ACCESS
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !88
End User License Agreement (EULA)
ARIAL SOFTWARE LICENSE AGREEMENT
This document is the license agreement, which governs the use of the Campaign
Enterprise Software package and its documentation. Read the terms and conditions of the
license agreement carefully before continuing with use.
This agreement is a legal document and it constitutes the entire agreement between Arial
Software ("Licensor") and you ("Licensee") concerning Campaign Enterprise Software and
supersedes any prior representation or understanding between Licensee and Licensor.
By continuing with use of this program, Licensee is accepting and agreeing to the terms
and conditions of this license agreement. If Licensee is unwilling to be bound by this
license agreement, Licensee may not use Campaign Enterprise Software in any form
whatsoever. Therefore, Licensee must remove Campaign Enterprise Software from the
computer rendering it inoperable and destroy all copies of Campaign Enterprise Software.
1. DEFINITIONS. The term, "Campaign Enterprise Software" shall mean Campaign
Enterprise Software and its Documentation. "Documentation" shall mean the help files and
sample data supplied with and used in conjunction with Campaign Enterprise Software.
2. LIMITED LICENSE
2.1 Licensor hereby grants Licensee a non-exclusive, non-transferable license subject to
the terms and conditions of this Agreement to use Campaign Enterprise Software and its
documentation.
2.2 In consideration of payment of the license fee paid to Licensor and all sales, use,
transfer, and other taxes imposed in connection with this Agreement (except taxes imposed
on Licensor's income), Licensor hereby grants Licensee a non-exclusive, non-transferable
license subject to the terms and conditions of this Agreement to install Campaign
Enterprise Software and Documentation on a single computer. Licensee may physically
install Campaign Enterprise Software on another computer provided that any previously
installed copies of Campaign Enterprise Software are removed and rendered inoperable.
Notwithstanding the foregoing, Licensee may make a single copy of the Campaign
Enterprise Software for backup purposes only.
2.3 Licensee is licensed to use purchased copies of Campaign Enterprise Software and
Documentation solely for its own internal use and has no right to sublicense, rent, lease,
transfer or distribute part or whole thereof. Licensor reserves all rights not expressly
granted to Licensee.
2.4 Licensee is provided with a unique license key to render Campaign Enterprise
Software fully operable. Licensee agrees to use this license key to enable only one working
copy of Campaign Enterprise Software to work exclusively on only one computer, to keep
this license key private and not divulge, distribute, exchange, publish or furnish it to any
other parties. Licensee is liable for all damages incurred by Licensor including, but not
limited to, loss of sale, loss of revenue, and legal fees resulting from breach of this
provision.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !89
3. LIMITED WARRANTY, DISCLAIMER OF WARRANTIES AND LIMITATION OF
LIABILITY.
3.1 Licensor represents and warrants to Licensee that: (a) Campaign Enterprise Software
will perform substantially in accordance with Campaign Enterprise Software's published
specifications; and (b) Licensor has the necessary rights, title, interest and marketing rights
to provide Campaign Enterprise Software to Licensee. Except for the foregoing, Campaign
Enterprise Software is licensed on an "as is" basis only and Licensor makes no additional
warranties with respect to Campaign Enterprise Software or to the performance or
operation thereof.
3.2 The warranty in Section 3.1 hereof is a limited warranty and is the only warranty made
in this agreement. Licensor expressly disclaims any and all other warranties, express or
implied, including, with limitation, any warranty of
merchantability or fitness for a particular purpose. Some states do not allow the exclusion
of implied warranties, or the foregoing exclusion of implied warranties may not apply to
Licensee. This warranty gives the Licensee specific legal rights and the Licensee may
have other rights, which vary from state to state.
3.3 To the maximum extent permitted by applicable law, in no event will licensor its
suppliers or resellers be liable for any indirect, special, incidental or consequential
damages arising out of the use of or inability to use the product, including, without
limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, or
any and all other commercial damages or losses, even if advised of the possibility thereof,
and regardless of the legal or equitable theory (contract, tort or otherwise) upon which the
claim is based. In any case, Licensor's entire liability under any Copyright (c) 2014 by Arial
Software/San Clemente Technologies, Inc. provision of this agreement shall not exceed in the
aggregate the sum of the fees Licensee paid for this license (if any) and fees for support of
the Campaign Enterprise Software under the Software Maintenance Agreement attached
hereto as Exhibit A), with the exception of death or personal injury caused by the
negligence of Licensor to the extent applicable law prohibits the limitation of damages in
such cases. Some jurisdictions do not allow the exclusion or limitation of incidental or
consequential damages set forth in this Section 3.3, so this exclusion and limitation may
not be applicable in such jurisdiction. Licensor is not responsible for any liability arising out
of content provided by Licensee or a third party that is accessed through the Campaign
Enterprise Software and/or any material linked through such content.
4. EXPORT CONTROLS. None of the Software or underlying information or technology
may be downloaded or otherwise exported or re-exported (i) into (or to a national or
resident of) Cuba, Iraq, Libya, Yugoslavia, North Korea, Iran, Syria or any other country to
which the U.S. has embargoed goods; or (ii) to anyone on the U.S. Treasury Department's
list of Specially Designated Nationals or the U.S. Commerce Department's Table of Deny
Orders. By downloading or using the Software, Licensee is agreeing to the foregoing and
Licensee is representing and warranting that Licensee is not located in, under the control
of, or a national or resident of any such country or on any such list.
5. TERMINATION. This license will terminate automatically if Licensee fails to comply with
the terms and conditions of this agreement. On termination, Licensee must remove
Campaign Enterprise Software from the computer rendering it inoperable and destroy all
copies of Campaign Enterprise Software. The license is also subject to cancellation if the
yearly licensing is not paid in advance of the termination date.
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !90
6. INDEMNIFICATION.
6.1 Except as provided in Section 6.2, Licensee shall indemnify and hold harmless
Licensor, its officers, agents and employees from and against any claims, demands, or
causes of action whatsoever, including without limitation those arising on account of
Licensee's modification or enhancement of the Software or otherwise caused by, or arising
out of, or resulting from, the exercise or practice of the license granted hereunder by
Licensee, its subsidiaries or their officers, employees, agents or representatives.
6.2 Licensor agrees that it will defend or settle, at its option and expense, any claim against
Licensee, its Affiliates, and its and their employees, directors, officers, agents, and
representatives alleging that Campaign Enterprise Software or Documentation furnished
herewith infringes any worldwide patent, copyright, trade secret or other intellectual
property right of any third party. Licensor further agrees that it will hold Licensee, its
Affiliates, and its and their employees, directors, officers, agents, and representatives
harmless from and against all expenses, costs, suits, claims or other proceedings against
Licensee related to such infringement claims. Licensee shall give Licensor prompt written
notice of all claims of any such infringement. Licensor shall be given full authority to
assume the sole defense thereof through its own counsel (which must be reasonably
acceptable to Licensee) and to compromise or settle any suits so far as this may be done
without prejudice to the right of Licensee to continue the use of the alleged infringing
apparatus. In any such suit, if the use of the alleged infringing intellectual property is held
to constitute an infringement and is enjoined, Licensor may: (i) procure the right to continue
the use of the same for Licensee; (ii) replace or modify the same to be free of the
infringement claim; or (iii) require Licensee to return the same to Licensor and, at
Licensee's option, either purchase for Licensee substantially similar replacement software
from a third party that is free of the infringement claim or refund Licensee an amount equal
to the fair market value of such third party software.
7. GENERAL PROVISIONS. The provisions in Sections 2, 3, 6 hereof shall survive the
termination of this Agreement. This Agreement contains the entire understanding of the
parties and supersedes any prior agreements or
understandings whether written or oral. This Agreement may not be amended, or any term
waived, except in writing executed by the parties. The invalidity or un-enforceability of any
provision hereof shall not affect the validity or enforceability of any other provision or part
thereof. This Agreement shall be governed by the laws of the State of California (without
reference to its rules relating to conflicts of law) as applied to Agreements made to be
performed within California. The captions are inserted for reference only and shall not
affect the application or construction of provisions of the agreement. A Software
Maintenance Agreement is attached hereto as Exhibit A and is hereby incorporated by
reference.
8. COMMUNICATIONS WITH ARIAL SOFTWARE SERVERS. While using Campaign
Enterprise Software, communication between Campaign Enterprise Software and Arial
Software's server may occur to check if the licensee’s software is up to date or if an update
is available.
COPYRIGHT
Copyright notice applicable to Arial Software, Campaign Enterprise Software and
Documentation. Copyright (c) 1997 - 2015 by Arial Software. All Rights Reserved. Licensed
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !91
material - property of Arial Software. Licensor retains all copyrights to Campaign Enterprise
Software. Copyright (c) 2015 by Arial Software/San Clemente Technologies, Inc.
MISC
Unlimited email and telephone support will be provided during the licensing term.
----------------------------------------------EXHIBIT A
ARIAL SOFTWARE
SOFTWARE MAINTENANCE AND SUPPORT
The following support and product maintenance services are included in consideration of
payment of the annual license:
1. Technical Support
* Unlimited email and telephone support during the hours of Monday - Friday, 8:00AM 5:00PM MST, excluding all national holidays
2. Product Maintenance
* All product version upgrades, corrections, modifications, fixes and version enhancements
that are released in the
licensed period.
3. Upgrades
* Entitled to all major version upgrades during the licensed period.
4. Version Continuity
* In order to qualify for major version upgrades, it will be required that the Annual Software
License be in-force at the time the major version upgrade is made available. If a license is
discontinued, and a major version change occurs, the licensee must pay the full amount of
the license to start up again
.
---------------------------------------------
Copyright (c) 2014 by Arial Software/San Clemente Technologies, Inc.
Page !92