The notification feature of the ISPWizard Dialer can be used to keep your users informed of many things:
Basic Mode:
In basic mode, the software does a HTTP HEAD request for the specified URL. Generally, this would be used with a static html page - if the software detects that the page has been updated - via the Last-Modified HTTP header line, it will automatically launch the URL in the default browser. It is possible to use variables and a CGI script so that the user is shown a different page depending on their username.
Examples:
http://www.example.com/updates.html | Static HTML page common to all users. |
http://www.example.com/updates/%u.html | Static HTML page based on username - %u is automatically replaced by the username. |
http://www.example.com/cgi-bin/updates.cgi?u=%u | CGI script which redirects to a static HTML page based on the username. |
Please keep in mind the lack of security involved with the above examples - ideally, the CGI script should check that the request is coming from the correct IP address for the logged in user.
Advanced Mode:
In advanced mode, the software does a HTTP
POST request to the specified URL - the same as if it was sent by a normal
HTML form. The data sent in the request is as follows:
USERNAME | The full username used to connect to the Internet, including any prefix and/or suffix. |
BASEUSERNAME | The base username - without any prefix or suffix. |
PASSWORD | If selected, the password will be sent, either in plain text or as an MD5 hash. |
SOFTWAREVERSION | Version number of the ISPWizard Dialer software. |
CONFIGURATIONVERSION | Configuration version number - as set under Advanced->Help->Config Version |
BUILDTIMESTAMP | Unix timestamp representing the time that the build was created. |
NUMBERDIALED | The actual number dialed to connect to the Internet. |
ACCESSNO | The access number entry currently selected. |
WINDOWSVERSION | The Windows version as a string - e.g. Windows XP |
WINDOWSVERSIONNUMBER | The Windows version as a number - e.g. 5.1.2600 |
WINDOWSSERVICEPACK | String representing the currently installed service pack, if any - e.g. Service Pack 1 |
MODEMNAME | The name of the modem used to connect to the Internet |
CONNECTIONSPEED | The connection speed reported by Windows. |
In return, the software expects a list
of commands (one per line) which it will then execute:
LAUNCHURL | The specified URL will be launched in the default browser. |
MESSAGETITLE | Specify a title for one of the following commands: |
MESSAGE | Show a normal MessageBox to the user - the MessageBox will appear above all windows and will remain until the user clicks the OK button. |
MESSAGEOKCANCEL | Similar to the above, except the user can click Cancel instead. If the user clicks the Cancel button, the next command will be skipped. |
MESSAGEYESNO | Similar to the above, except the choices are either Yes, or No. If the user clicks No, the next command will be skipped. |
:LABEL | Labels are created by inserting a colon ":" in front of a label name - e.g. :end |
GOTO | Causes execution to jump to the specified label and continue from there - e.g. goto end |
HANGUP | Causes the Dialer to hangup, as if the user had clicked the Hangup button. |
TIMELEFT | Used to display a countdown timer on the Dialer status window to show how much time the user has left online - specify the time in seconds - e.g. timeleft 3600 - shows a countdown timer starting at 60 minutes. |
HANGUPONTIMEOUT | If this command is given, the dialer will automatically disconnect when the above timer reaches no time left. It can be disabled again later with HANGUPONTIMEOUT OFF |
TIMEBETWEENCHECKS | Allows you to override the amount of time (in seconds) between notification checks. If you specify 0, no further checks will be made, otherwise, there is a minimum of 60 seconds between checks. |
NEWUSERNAME | Changes the current username to that specified. Do not include any username prefix or suffix. |
NEWPASSWORD | Changes the current password to that specified. |
NEWACCESSNO | Changes the default access number to that specified - needs to be in the same format as used for the access number list. |
Examples:
Simple MessageBox shown to the user:
MessageTitle Account OverdueA MessageBox asks the user if they would like to go directly to your web site to make a payment?
Message Your Account is now overdue - please make your payment as soon as possible!
MessageTitle Account OverdueA MessageBox asks the user if they would like to go directly to your web site to make a payment? If the user clicks No, they are disconnected:
MessageYesNo Your Account is now overdue - Would you like to make a payment now?
LaunchURL http://www.example.com/payments.html
MessageTitle Account OverdueUpdate the users details and then inform them:
MessageYesNo Your Account is now overdue - Would you like to make a payment now?
goto launchurl
hangup
goto end
:Launchurl
LaunchURL http://www.example.com/payments.html
:end
NewUsername jbloggs
NewPassword newpass
NewAccessNo "Description",1,"234","567 8901"
MessageTitle Details Changed
Message Your settings have been updated!