In addition to using the Web Update Wizard to deliver software updates to your users over the web, you can also use it to launch news or promotional web pages from within your application at pre-specified intervals and viewing frequencies. This functionality is referred to as the Web Update Wizard "Campaign Manager" within this documentation.
Typical uses of Campaign Manager are:
This functionality is handled completely outside of the usual Web Update Wizard software update process, and gives a fine degree of control and flexibility over how your campaign is deployed.
You can use the Web Update Wizard to deploy software updates or to run campaigns,
or both.
In every case, the Web Update Wizard works in the following way:
Please note that the Campaign Manager sends no information whatever back to your organisation about which campaigns the user sees, refuses etc.. You may wish to reassure your users that this is the case in order to avoid inappropriate 'spyware' associations. Campaign Manager is not spyware because it transmits no information on usage. (The only information you do have of users' usage is your own web server webstats.)
Of course, if you would like to track usage or generate custom campaigns based on the specific user, you can dynamically generate the campaigns using PHP /ASP etc..
Please note that the same firewall considerations apply to this functionality as for the Web Update Wizard software update behaviour - that is, the Web Update Wizard will be using port 80 to access the server script file and will be launching URLs through the user's default web browser.
This is an example Campaign Manager script, to give you some idea of what is involved in writing these scripts:
A 'Campaign' is a single block of commands which relate to the launching of a single web page. Each campaign is separated from the previous campaign by an empty line. You can have as many campaigns in your server script file as you like.
The first 2 lines of the script file must be conform to the example above - i.e. the text " *CampaignOriginator=<name> " must be on line 1, followed by a completely blank line immediately below, followed by the first line of the first campaign block. The Campaign Originator value should be a word or words which uniquely identifies the campaigns in this script file. It is used for 'keeping score' on which campaign blocks are shown each time the Campaign Manager is launched from your application.
" <name> " should be some text which uniquely identifies your company and the overall campaign. It is used internally by the Web Update Wizard to remember users' preferences for your campaign - the user will never see it.
The order of commands within each campaign block is insignificant - the Web Update Wizard reads the whole block and then actions the campaign,
The following commands are available:
| Command | Description | Default if not included in a campaign block | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| *CampaignOriginator=<name> |
Must be the first line of the script file - tells the Web Update Wizard that the script file is a Campaign Manager script rather than a software update script. The <name> must be a word or words which uniquely identifies the campaign blocks in this script file and is used to 'keep score' on the user's machine of which pages have been shown etc. The *CampaignOriginator= line must be followed by a single completely empty line. |
This line is compulsory. If not used as specified, the Web Update Wizard will interpret the script file as a software update script, rather than a Campaign Manager script. | ||||||||
| Log=Yes/No |
Maintains a log file which Campaign Manager updates as it processes the script. Use it to test and debug your campaigns. Remove it when you 'go live'. The filename is 'WebUpdateSvc_Campaign.log', and it will be located in the same folder as WebUpdateSvc4.exe. The format of the log file is a tab delimited text file, containing the following fields:
|
No log is maintained | ||||||||
| URL |
The URL of the news page for this campaign. Example: URL=http://www.PowerProgrammer.co.uk/news.html |
This command is not optional - each campaign must have one, and only one URL line. | ||||||||
| ShowFrom=yyyy/mm/dd |
The start date of the campaign, specified as a yyyy/mm/dd date. Example: ShowFrom=2005/09/01 The example shows the campaign from 1st September 2005 onwards. |
The campaign will be shown, unless the current date is later than the ShowTo date. | ||||||||
| ShowTo=yyyy/mm/dd |
The end date of the campaign, specified as a yyyy/mm/dd date. Example: ShowTo=2005/12/01 The example shows the campaign will end on 1st December 2005. |
The campaign will run for ever! | ||||||||
| MaxShows | The maximum number of time the user will be shown the page specified
in the URL line for this campaign. Example: MaxShows=5 |
The campaign will run for ever, providing none of the other script file lines mean it is not shown. | ||||||||
| MaxPerDay | The maximum number of times per 24 hours that the page specified in the
URL line for this campaign will be shown. Example: MaxPerDay=3 |
The page specified in the URL line will be shown every time the script file is parsed by the Web Update Wizard providing none of the other script file lines mean it is not shown. | ||||||||
| DayInterval | Number of days between shows of the campaign. Allows you to space out
shows of the campaign over an interval of days. Example: DayInterval=3 |
The page specified in the URL line will be shown every time the script file is parsed by the Web Update Wizard, providing none of the other script file lines mean it is not shown. | ||||||||
| AskBefore =Now|URL|All | In conjunction with the AskBeforePrompt option, posts a message box before
the campaign URL is launched, giving the user the option
to decline seeing the campaign, either just this time, just this campaign
or globally. Example:
|
If there is no AskBefore + AskBeforePrompt in the campaign the URL page will be launched automatically. | ||||||||
| AskBeforePrompt | Displays a message box giving the user the opportunity to decline a
campaign or all campaigns, depending on the AskBefore setting. The " <USERNAME> " constant can be used to personalise the message shown - the Web Update Wizard will pick up the name of the current logged on user and substitute it into the message. |
If there is no AskBefore + AskBeforePrompt in the campaign the URL page will be launched automatically. | ||||||||
| ResetAsks=URL|All | If the user has previously declined a campaign URL
or all campaign URLs from the same CampaignOriginator
in the script file this keyword will reverse it. Please bear in mind that
if you use this functionality you may displease your users!
|
Previous choices apply. | ||||||||
| AskAfter=Now|URL|All | As AskBefore, except the prompt box appears after the campaign URL is launched. | If there is no AskAfter + AskAfterPrompt in the campaign the URL page will be launched automatically. | ||||||||
| AskAfterPrompt | As AskBeforePrompt | If there is no AskBefore + AskBeforePrompt in the campaign the URL page will be launched automatically. |
In addition, the following commands are available, which let you (optionally) change the appearance of the dialog box prompts used by AskBeforePrompt and AskAfterPrompt. The syntax is the same as for WebUpdate Wizard dialog boxes :
DialogBk=
TitleBk=
TitleTxt=
Title=
Subtitle=
Bitmap=
Icon=
ScrollingLink=