STARTING UP THE ROBOT FOR THE FIRST TIME

When the robot is started for the first time it will check to make sure that the robot and all support files are keyed with matching codes. If the keys are correct then the Robot will offer to upload the web page and support files to the web server. If you do not wish to upload the files now, they can be uploaded at any time by using the "OPERATIONS MENU - FORCE UPLOAD OF FILES" command (see also installation steps)

Note: If the robot is not running when an order is placed on the web, this order will not be lost. It will be saved in the database and an EMSG file will be saved in the location defined by the keyword Robot input directory

CONTROLS AND DISPLAYS

[START PROCESSING]

Pressing this button will start the robot running. All needed operations will be performed (checking for e-commerce messages, maintaining web site security, etc.).

[STOP]

Pressing this button will suspend all operations. The robot will not stop working on a specific task that is in progress until it is complete. This is insures that nothing is left in an incomplete state. A STOP command may take several inutes to complete.

ENABLE PRINTING CHECKBOX

This checkbox controls printing of customer orders. If this box is checked customer orders will be printed as they are received by the SendSafe Robot. See Printing Orders for more information.

[FORCE A CHECK OF MESSAGES NOW!]

Pressing this button will cause the robot to immediately check for pending commerce messages in it's cache and to then process the messages (if any are found). This button is primarily used during initial check out of SendSafe JSOF system operation or if you manually copied an EMSG file into the cache and you do not want to wait for the normal robot cycles.

STATUS DISPLAY

This display shows status messages from all the threads that are concurrently running inside the robot. Some messages are often interleaved since the robot is performing dozens and dozens of tasks at the same time.

ORDERS (TRANSACTIONS) PROCESSED DISPLAY

This display shows a single entry line for each e-commerce transaction that has been processed in the past audit period or only today's orders (configurable). Older transactions that are not displayed can be found in the output directory. Double-clicking on an entry in this list box will open the raw order in an editor viewer. In this viewer you will be able to view/modify/print the order. This viewer is configurable (the default is the windows notepad). 

Orders are typically viewed by merchants in html format with a web browser (and not the raw order format viewable explained above). The orders in html format are stored in a directory which is made accessible by the web server.

[LOCK/UNLOCK SCROLL]

This button toggles the lock and unlock of automated scrolling of the STATUS DISPLAY. If you wish to examine prior contents of the status while the robot is running, you can use this button to suspend automated scrolling while you examine the records in STATUS DISPLAY.

OPERATIONS MENU – UPLOAD FILES

This menu command will queue up a request to upload to the web server all the Java class and site configuration files. This command must be executed after any manual changes to the systems configuration files. Once this command has been queued by the menu, the actual upload will not occur until you press the "START PROCESSING" button or until the next security cycle begins. This command is useful in case the web server files have been damaged. 

OPERATIONS MENU – REPROCESS ORDER

This menu command will queue the specific order for reprocessing. The command will select the order highlighted in the ORDERS DISPLAY. This command will cause an order to be 100% reprocessed unless the order encountered problems during past processing. If the order encountered problems when only those parts that were not previously completed will now be processed.

Use this command with care. If the order was previously completely processed, then the customer will be double billed for this reprocessed order.

OPERATIONS MENU – IMPORT DEALER DB

This tool allows for importing a flat comma delimited file into the Dealer database. For details see database importing dealers.

OPERATIONS MENU – E-COUPON IMPORT FROM LIST

This tool allows for importing a flat comma delimited file into the Coupons database. For details see database importing dealers.

[EXIT]

This command will perform an shutdown then terminate the SendSafe JSOF Robot program. You must press the stop button and wait for the system to clear all jobs before you may press the exit button. Pressing the exit button (and forcing an abrupt shutodown) before you have pressed the stop button will cause an error message to be displayed and may cause faulty shutdowns.

You can determine that all the jobs have cleared by looking at the status display window for the following text messages (see example above; this illustaration of the SendSafe Robot shows the text message which will be displayed when all jobs have been cleared).

Text Mesaages to look for:

[[[[ JOB PROCESSING HAS STOPPED ]]]]
[[[[ E-COMMERCE MESSAGE PROCESSING HAS STOPPED ]]]]
[[[[ SECURITY PROCESSING HAS STOPPED ]]]]

[EMERGENCY EXIT]

Pressing this button will cause the SendSafe JSOF robot to stop immediately running. Only use this button in cases of extreme emergency when you must quickly stop the robot from running. Using emergency stop may cause the robot to fail to complete some jobs, which can is some cases result in a customer order not being completed or program traps.

SETUP MENU

This menu provides all the tools and configuration dialogs for the system.

Menu Item Description
Select Storefront to Edit This dialog is used to select a storefront for configuration or to create a new storefront
SendSafe Primary Setup This dialog is used to configure the basic operations settings for the system.
Setup CGI Submission Gateway This dialog is used to setup the CGIGateway (legacy and no longer required).
IC Verify Integration This dialog is used to configure IC Verify (automated credit card processing).
CyberCash Integration This dialog is used to configure CyberCash (automated credit card processing).
Setup Printer This dialog is used to select a printer. A different printer can be configured for each storefront. Select the storefront to edit then use this menu item to select the printer. See Printing Orders for more information.
Test for presence of SMTP server This dialog is a tool used to test SMTP servers
Test printer connection This dialog prints a test page.
Validate database schema This dialog validates the schema of the database that will be used (optional)

COMMAND LINE SWITCHES

These are the command line switches (parameters) for the SendSafe robot.

Switch Description
-S Automatically start with the robot processing jobs... same as pressing the [Start Processing] button. 
-Q Quite mode. The "Got an Order" music will not play
-D Simulate Charge Mode - (Used for Development & Coupon Only Operation). All credit card charges will fail with an ADC message. Coupon processing will operate normally. This is a way to run the robot where it will accept and process coupon orders, but reject all credit card orders. 

When in Simulated Charge Mode then Robot's title bar will contain the text <<SIM CHARGE MODE>>

-M Migration mode. Setting this flag on the command line will cause the Robot to check every configuration file (on-the-fly) to make sure that it has been migrated to the latest product release. This switch will marginally slow down the operation of the robot.
-N Force the E-Commerce Order Number entered into the config file to be the starting number over writting existing orders. This switch should not be used unless all existing orders are removed from the output directory.
-O Special Case Paramer that should not be set unless instructed to by C Prompt. This swich enables a mode of operation intended for specific applications.
-B Enable Robot Backup Mode
-19 Run without managing ASA files. Useful for development setups OR other situations were you do not want the integrity of the ASP files continuously checked.

Example: "jsof.exe -S -D"

START UP

The robot should be configured to start automatically when the system is rebooted. To accomplish this the following settings should be configured:

  1. Enable autologon on the server
  2. Disable "Shutdown tracking on Windows 2003
  3. Add a startup shortcut for the robot to the startup folder
The startup shortcut typically looks like this for a robot running as the primary:

The startup shortcut typically looks like this for a robot running as a secondary (or backup):

BACKUP MODE

The robot operates in either backup or primary mode. In backup mode the robot will operate as a backup processor for a primary robot. You should only enable backup mode on a additional robots that are setup as a backup or coprocessors for the primary robot. Enabling backup mode on the only robot will cause unpredictable results.

Backup mode is enabled with a command line switch (-B). When operating in backup mode, the title bar displayed by the robot will indicate that it is in backup mode by displaying the words "<BACKUP MODE>.

Back Mode Operation differs in the following ways from Primary Mode:

  1. Coupon Processing (Issuing) is not performed by a Robot running in Backup mode.
  2. EventLog processing is not performed by a Robot running in Backup mode.
  3. The Robot will not run System Jobs designed for the Primary computer.

MAINTENANCE MODE

Maintenance Mode is used to put the e-commerce web pages into an operating mode that will not allow database updates or access. When in maintenance mode, the e-commerce web page is not displayed, instead a user configurable maintenance message is displayed (see below).

Maintenance Mode is enabled/disabled by placing or removing a semaphore file from a specific location on the server's hard disk. After the state of the semaphore file is changed, this new state will not be in effect on the web pages until one of the following has occured (any of which will cause the web application to be reloaded):

Using a semphore file was the chosen method of control in order to allow for the broadest possible number of options for automating the enable/disable of maintenance mode. By using the presence of a file, almost any program or script can control Maintenance mode. The contents of the semaphore file does not matter (it can be zero length).

Maintenance Mode Configuration

Maintenance Mode is configued in the storefront's SendSafe.global.inc.asa file by these three Application variables.

Application("MaintModeCtrl") = "127.0.0.1"
Application("MaintModeMessage") = "Maint Message...."
Application("MaintModeSemFileName") = "C:\Program files\SendSafe\mmSemaphore.enabled"

MaintModeSemFileName specifies the complete path and name of the semaphore file. If the file is present in this location then Maintenance mode is enabled. If the file is not found in this location then Maintenance mode is disabled. The default file name is "mmSemaphore.enabled" with a path of  "C:\Program files\SendSafe" (the SendSafe install directory). The name was chosen to indicate the purpose of the file... mmSemaphore.enabled will enable Maintenance mode AND renaming the file to mmSemaphore.disable will disable maintenance mode. You can name the file anything you like (i.e. "myfile.txt" or "stop" or anything you like). If you have a server with multiple storefronts: (a) you can have a single semaphore file to set the mode globally OR (b) unique files for each storefront to control mode individually.

MaintModeCtrl sets an remote IP Address that will be allowed access to the web site during maintenance mode. If this variable is set to '0.0.0.0' then all IP addresses will be denied access. If this variable is set to '' (empty) then all IP Addresses will be allowed (i.e. maintenance mode for the specific web application will be disabled).

This variable is used to allow a specific client-browser full access to the site to run tests or do other acitivties, while all other browsers are denied access. For example setting this variable to 127.0.0.1 would only allow the local web browser access.

Setting the variable to '' (empty) can be useful on servers hosting more than one web application. This can be done to limit Maintenance Mode to a subset of the applications running on the server.

MaintModeMessage configures the html string that will be displayed to browsers when in maintenance mode. For example:

MAINTENANCE IS IN PROGRESS.
E-COMMERCE OPERATIONS ON THIS SERVER ARE TEMPORALLY DISABLED.
PLEASE CHECK BACK IN 15 MINUTES… THANK YOU.

CARE AND FEEDING OF AUDIT FILES

Audit files are created in the AUDIT FILE LOC directory and GUI Audit files are created in the auditFileRootLocationAndName directory (controlled by settings in the SendSafe.global.asa file). These audit files are named after the activity they are auditing and the date of the audit file. Each day of the year has its own unique set of audit files. Each audit file rolls over on a 24 hour basis (i.e. a new audit file is created for each day - format <filename>.mm.dd.yy.audit).

Robot generated audit files are automatically purged after a configure number of days (see PURGE AUDIT FILES config entry). The default is ten days. You may want to change this value if you find that too much file spaces is being taken up or conversely if you want to maintain records for a longer period of time.

GUI Audit files are not automatically purged by the robot. These files can grow in number rapidly. Millions of bytes of GUI audit files can be easily created in 24 hours. If audit files are enabled you must periodically clean out old audit files from this directory.

One Robot audit file is of particular importance. This file is the "TRANSACTION.*.audit". This file contains single line entries for each e-commerce transaction that has occurred. Each Line entry is comma delimited for easy importing into spread sheets or other programs. This audit file also controls what is displayed in the Robot's transaction list. You can configure what is displayed in two ways; either only today's transactions are displayed or all transactions found in all audit files are display (see DISPLAY ONLY TODAY'S TRANSX config entry). If you configure your audit files to be automatically purged after ten days then the maximum history of e-commerce transactions displayed in the Robot's list will be ten days.

It is fine to view current audit files with a non-locking editor like notepad but never remove any files that are dated for the current day while the SendSafe JSOF robot is running.

ROBOT AUDIT FILES:

  1. EMSG.mm.dd.yy.audit files contain information about the processing of e-commerce messages.
  2. SECURITY.mm.dd.yy.audit files contain about the security measures taken by the SendSafe JSOF robot.
  3. TRANSACTIONS.mm.dd.yy.audit files contains records of all e-commerce transaction that have been processed by the SendSafe JSOF system.
  4. WATCHDOG.mm.dd.yy.audit files contains records of internal systems operations.
  5. SERVER.mm.dd.yy.audit files contain information about each CGIGateway listener thread. 

GUI AUDIT FILES:

  1. <prefix defined in SendSafe.global.asa file>.sessionid.txt files contain processing information for each GUI session for both customer and admin pages.

The robot's log files should NEVER be installed in a location on a server that is accessible to http, ftp, file sharing, or any other means of remote access from the Internet. Allowing remote access could indirectly aid a hacker in breaking into your security system.


EMERGENCY MESSAGE BOX

The SendSafe JSOF Robot will open and display an emergency error message box when serious conditions occur. Some of the conditions which will cause the display of this box are hacker detection or network connection errors or mis-configuration of the robot. When this box is displayed the SendSafe JSOF system will sound a periodic warning bell.

This message box does not stop the operation of the robot. Many individual and unrelated messages may accumulate in this box. A brief list of these messages are:

"SECURITY FAILURE ALERT: The FTP Server Connection appear to have completely and catastrophically failed."

This message is displayed if the FTP connection to the server has completely failed. The Robot will take recovery and retry actions. If there is a network problem with your server or a telecom connection problem these are problems that the robot cannot recover from.

"<<< HACKER ALERT >>> SECURITY VERIFICATION ERROR: file xyz"

This message is displayed when the hacker detection logic has identified a file on your web server that may have been tampered with. You should check the indicated file on the server against the copies that the SendSafe JSOF Robot is using.

"WARNING!!! SECURITY VERIFICATION FTP: ERROR: unable to locate "xyz" for security verification"

This message is displayed if the Robot cannot locate a file that should be present on the web server. If this is the first time you have run the robot, you may have a configuration error. If this is not the first time you have run the robot then a file on your server may have been deleted. This error may also indicate the activities of a hacker.

"WARNING!!! SECURITY VERIFICATION ERROR: The template directory is empty or missing: xyz"

This message is displayed when the Robot cannot file the template directory. This directory is the local location of the SendSafe JSOF files that the robot has (or will) load onto the server. This is typically a configuration error. Check for accuracy the "APPLET CONFIG FILES LOCAL LOC" and "APPLET CLASS FILES LOCAL LOC" values in the JSOF.config file.

"ERROR UPLOAD FTP: ERROR: unable to upload xyz"

This message is displayed when the Robot is unable to upload a file to the server. This is typically a configuration error. Check for accuracy the values in the JSOF.config file:
APPLET CONFIG FILES LOCAL LOC
APPLET CONFIG FILES SERVER LOC
APPLET CLASS FILES SERVER LOC
APPLET CLASS FILES LOCAL LOC