Jeeves - Installation and Management Guide

This guide is for system administrators who are installing customizing or managing Jeeves systems. Jeeves is an active anti-spam system which enable email users to control filter and respond to unsolicited email. Jeeves works in conjunction with normal POP and SMTP servers. The email users control Jeeves functions through a web page. Jeeves works by maintaining a list of known correspondents for each user. Email from people not on the list is held pending a successfull introduction. Jeeves automatically arranges for an introduction. The Jeeves user setup page allows users to set how Jeeves will handle introductions, how to handle unsolicited email etc. The Jeeves user setup web page is provided as a template file  and a cgi which works with any standard web server. This allows easy customization of the Jeeves interface. If you are also using Netwin's CWMail or DMailWeb products then some additional functionality will be available to those users. For example CWMail users will be able to view unsolicited emails which are currently being held by Jeeves awaiting completion of an introduction.

The basic operation of Jeeves is as follows:

For each Jeeves user at some appropriate time Jeeves:

The details of this procedure will vary considerably depending on what features each user has selected but the basic operation is that Jeeves sits between the user and the world and only allows correspondence from acceptable people to be passed through to the user. Jeeves will respond to unsolicited emails and will provide reports to the user on the work it has been doing.

The introduction requests which Jeeves sends out may be very simple or quite complex to ensure email spam robots can't respond appropriately.

The interface between the user and Jeeves is provided by a series of template files. These can be used as is or modified to provide a particular look and feel which matches your other web pages.

Many aspect of Jeeves operation can also be tailored for use on a particular system these settings are all contained within the jeeves.ini file. This is a simple text file which can be edited with any standard text editor. The initial config setting are normally setup by the WMSetup wizard at installation time.

The following sections describe:


NT Installation

STEP 0: Download distribution set and unpack files:


jeeves13a.exe # Unzip the self extracting archive to jtemp
cd \jtemp # Change to temporary unpack directory


STEP 1: jcgi Installation:

Jeeves is often used with CWMail and/or DMailWeb. If you have already installed CWMail or DMailWeb omit step 1 as you dont need jcgi

You must install jcgi on your WEB server, in a
    directory that you have already setup on your server
    as containing CGI programs, you should read your
    server documentation if you don't currently know
    how to setup a cgi program, typically you would
    copy the files to a directory like:

    "\FrontPage Webs\Content\cgi-bin"
    or c:\inetpub\scripts
or \SERVER_ROOT\cgi-bin

    If you plan to customize the template files (most people do :-) then you should probably keep a copy of the original set so that you can later compare them with future releases.
This may save you much effort when adding new features into your customized set.

   
mkdir \jcgi    # Create templates directory.
copy * \jcgi # Copy all jeeves files to this directory.
copy jcgi.* \inetpub\scripts # Copy cgi and ini to cgi's directory.
notepad \inetpub\scripts\jcgi.ini # Edit ini file and define:

    pophost pop.your.domain
    smtphost mail.your.domain
    templates c:\jtpl
    domain acme.com


    NOTE: By default the user files are stored below the templates directory. Therefore the templates directory should not be in the web-pages tree as direct access to user files could be a security risk

STEP 2: Jeeves File Installation

cd     \jtemp                                                  # Change to temporary unpack directory
mkdir \jeeves                                                 # Create a directory for jeeves
mkdir \inetpub\wwwroot\nwimg                         # Create a dircectory for img files
copy j*.gif     \inetpub\wwwroot\nwimg              # Copy jeeves image files
copy j*.jpg     \inetpub\wwwroot\nwimg             # Copy jeeves image files

copy *                  \jeeves                               # copy everything to a jeeves directory
copy jeeves.exe     \winnt\system32
copy jeeves.ini       \winnt\system32
copy j*.tpl            \jcgi or \cwmail                     #copy template files
copy jdefault.dat    \jcgi or \cwmail                     #copy default settings

Note: If you are using both CWMail and DMailWeb the last two copies need to be to both template directories.

cd ..
del .\jtemp         # Clean out temporary directory

STEP 3: Now edit jeeves.ini with a command like

  notepad \winnt\system32\jeeves.ini

  Make sure you define the following things for your site
        pophost              pop.your.domain     
        smtphost            mail.your.domain
        mins_to_check    60
        workarea             \cwmail
        or
        workarea             \dmailweb
        or
        workarea             \jcgi

STEP 4: If you are using CWmail/DMailWeb

You need to tell CWmail/DMailWeb how to find the jeeves settings page so users can become Jeeves users. The best place to add links for jeeves settings are the config.tpl, configf.tpl and menubar.tpl pages. You will need to edit these files by adding a line like this to one of the forms:

    <input type=image border="0" src="||nwimg||/jeeves.gif" name="jconf" alt="Jeeves Configuration">

    NOTE: you will need to do this for both CWMail templates and DMailWeb templates, if you want user access to jeeves settings from both locations.
    We have supplied three different image files jeeves.gif, jeeves.jpg and j.jpg, you could use any of these for links to jeeves settings.

STEP 5: Next start the background jeeves processor as a service:

cd \jeeves
addsvc -del Jeeves
addsvc -add Jeeves jeeves.exe "Jeeves active anti-spam system"

STEP 6: Testing:

Now try referencing Jeeves settings from CWmail/DMailWeb (or jcgi) from any web browser using the url
http://your.web.server/scripts/cwmail.exe or
http://your.web.server/scripts/jcgi.exe

You can also check the Jeeves log file for any startup errors thus:

notepad \jeeves\jeeves.log

Please dont hesitate to contact support-cwmail@netwinsite.com if you have problems installing or configuring Jeeves.

If you need to remove jeeves for some reason go to the \jeeves directory and type the following:

cd \jeeves
addsvc -del Jeeves


Unix Installation

STEP 0: Download distribution set and unpack files to a temp directory.

Example:
cd \tmp
download the distribution set from netwinsite
uncompress jeeves13.tar # Uncompress tar file
tar -xvf jeeves13.tar # Extracts to jeeves sub-directory
cd jeeves # Change to temporary sub-directory

STEP 1: JCGI Installation:

Jeeves is often used with CWMail and/or DMailWeb. If you have already installed CWMail or DMailWeb omit step 1 as you dont need jcgi

You must install jcgi on your WEB server, in a
    directory that you have already setup on your server
    as containing CGI programs, you should read your
    server documentation if you don't currently know
    how to setup a cgi program, typically you would
    copy the files to a directory like:

    /home/httpd/cgi-bin

    If you plan to customize the template files (most people do :-) then you should probably keep a copy of the original set so that you can later compare them with future releases.
This may save you much effort when adding new features into your customized set.
   
mkdir     /var/spool/jcgi                                   # Create templates directory.
cp         *                    /var/spool/jcgi              # Copy all files to it
cp         jcgi.cgi            /home/httpd/cgi-bin      # Copy cgi to cgi's directory.
cp     -i  jcgi.ini              /home/httpd/cgi-bin      # Copy ini to cgi's directory.
chown    nobody           /var/spool/jcgi*             # Give cgi access to files
vi /home/httpd/cgi-bin/jcgi.ini                          # Edit ini file and define:

    pophost pop.your.domain
    smtphost mail.your.domain
    templates /usr/local/jtpl
    domain acme.com


    NOTE: By default the user files are stored below the templates directory. Therefore the templates directory should not be in the web-pages tree as direct access to user files could be a security risk

STEP 2: Jeeves File Installation

mkdir /usr/local/jeeves # Create a directory for jeeves
mkdir /home/httpd/html/nwimg # Create a dircectory for img files
cp j*.gif /home/httpd/html/nwimg # Copy jeeves image files
cp j*.jpg /home/httpd/html/nwimg # Copy jeeves image files
cp * /usr/local/jeeves # copy everything to a jeeves directory
cp j*.tpl /var/spool/cwmail # if using CWMail
cp jdefault.dat /var/spool/cwmail # if using CWMail

Note: If you are using both CWMail and DMailWeb the last two copies need to be to both template directories.

cd ..
del -r -f jeeves # Clean out temporary directory

STEP 3: Now edit jeeves.ini with a command like

    vi /usr/local/jeeves/jeeves.ini

    Make sure you define the following things for your site
    For example :
        pophost pop.your.domain     
        smtphost mail.your.domain
        mins_to_check 60
        workarea /var/spool/cwmail
        or
        workarea /var/spool/dmailweb
        or
        workarea /var/spool/jcgi

STEP 4: If you are using CWmail/DMailWeb

You need to tell CWmail/DMailWeb how to find the jeeves settings page so users can become Jeeves users. The best place to add links for jeeves settings are the config.tpl, configf.tpl and menubar.tpl pages. You will need to edit these files by adding a line like this to one of the forms:

    <input type=image border="0" src="||nwimg||/jeeves.gif" name="jconf" alt="Jeeves Configuration">

    NOTE: you will need to do this for both CWMail templates and DMailWeb templates, if you want user access to jeeves settings from both locations.
    We have supplied three different image files jeeves.gif, jeeves.jpg and j.jpg, you could use any of these for links to jeeves settings.

STEP 5: Next start the background processor

cd /usr/local/jeeves
./jeeves
You will then need to add a line to the startup file to make sure jeeves is always run at system startup.

STEP 6: Testing

Now try referencing Jeeves settings from CWmail/DMailWeb (or jcgi) from any web browser using the url
http://your.web.server/cgi-bin/cwmail.exe or
http://your.web.server/cgi-bin/jcgi.exe

You can check the Jeeves log file for startup problems thus:

more /usr/local/jeeves/jeeves.log

Please dont hesitate to contact support-cwmail@netwinsite.com if you have problems installing or configuring jeeves.


Distribution Set Contents

The Jeeves distribution set contains the following files:

File Function Normally coppied to
addsvc.exe Executable used during installation to add jeeves.exe as an NT service \jeeves
download.htm Documentation Jeeves download sets \jeeves
error.tpl Template for jcgi errors \jcgi
faqs.htm Documentation: Answers to frequently asked questions \jeeves
index.htm Documentation: Main Jeeves page \jeeves
install.txt Installation instructions \jeeves
item.tpl Template for jcgi used to display a held message \jcgi
j.jpg Image for use in templates: J \inetpub\wwwroot\nwimg
jadmin.htm Doucumentation for Jeeves system administrators \jeeves
jback.jpg Image for use in templates: background Jeeves watermark \inetpub\wwwroot\nwimg
jcgi.exe CGI Jeeves cgi used to serve web pages for Jeeves settings etc. \inetpub\scripts
jcgi.ini Configuration file for jcgi \inetpub\scripts
jconfig.tpl Template for jcgi used to display Jeeves user configuration settings \jcgi
jconfigf.tpl Frames version of above \cwmail or \dmailweb
jdefault.dat Default user setting for jeeves users \jcgi or \cwmail or \dmailweb
jeeves.exe Executable. Jeeves background process for checking email, offering introductions etc. \winnt\system32
jeeves.gif Image for use in template files: Jeeves reading a paper \inetpub\wwwroot\nwimg
jeeves.htm Documentation brief description of the Jeeves system \jeeves
jeeves.ini Configuration file for Jeeves system \winnt\system32
jeeves.jpg Image for use in template files:
Image of the word Jeeves
\inetpub\wwwroot\nwimg
jhelp.tpl Template file containing user documentation on Jeeves \jcgi or \cwmail or \dmailweb
jlogin.jpg Image of login button for use in login.tpl \inetpub\wwwroot\nwimg
jmenubar.tpl Template file for use with CWMail. Example menubar for use with frames version of CWMail containing link to Jeeves settings page \cwmail
jnfmenu.tpl Template file for use with jcgi. Used in list.tpl to provide links to other jeeves settings \jcgi
juser.htm Documentation: Jeeves user manual. Explains all Jeeves settings. \jeeves
license.htm License agreement in html \jeeves
license.txt License agreement in text \jeeves
list.tpl Template file for use with jcgi to display list of held messages or contents of trash folder \jcgi
login.tpl Login template file for use with jcgi \jcgi
logout.tpl Logout template file for use with jcgi \jcgi
ok.tpl Template file for use with jcgi to display user messages. \jcgi
updates.htm Documentation giving list of Jeeves release version and new features and bug fixes etc.  

Installing Jeeves will vary slightly depending wither or not you allready have a copy of CWMail or DMailWeb installed.  If you already have CWMail or DMailWeb they will serve the jeeves template files  instead of  jcgi. The "templates directory" will already be defined if you have CWMail or DMailWeb installed otherwise it should be something like  \jcgi


Jeeves Command Line Options

Normally Jeeves is run as a service on NT  or detached on Unix. This is setup as part of the Jeeves installation.

It can be run as a command line program with the following options for testing:

Command Line option Function
-version Just return version number
-run Dont detach or run as a service and print logging msgs to screen
-h or -? List valid options

Jeeves User Settings

The settings for each user are stored in juser.dat files one for each user. Each user has a directory which is a subdirectory of the template or work directory. So for example if the templates are stored in \cwmail a user ralph@myfirm.co would have a directory \cwmail\u_ra\ralph@myfirm.co which would contain a juser.dat file containing the jeeves settings for the user ralph. This is a text file which can be edited by the system administrator. The default settings come either from global ini file settings or from the default juser.dat file which is called jdefault.dat and is stored in the main template directory. The Jeeves default jdefault.dat file comes with the distribution set.

Symbol Example Explanation
smtp_address mail.your.domain The name or IP number of your SMTP server that Jeeves uses to send mail through.
check_mins 30 The time between each Jeeves filtering.
report_days 7 The number of days between each Jeeves report.
hold_days 5 The number of days Introduction Offers are stored before removed, including held messages.
offer see juser.dat file This is the layout of the Introduction Offer messages when send out to a possible new friend.
mpoh see juser.dat file This is the layout of the message send to the possible new friend when extra messages that are received are placed on hold. (Messages Placed on Hold)
report see juser.dat file This is the layout of the report that Jeeves generates to send to the Jeeves user.
nir see juser.dat file The layout of the message when Jeeves informs the Jeeves user that a Introduction Offer has been rely back to. (Notification of Introduction Received)
ifoa see juser.dat file This is the layout of the message to the new friend informing him/her that s/he has been added to the list of friends.
friend lynden@netwinsite.com This is the email address that is a friend and will allow the messages to pass through.
gen_friends *@netwinsite.com This is the generic friends of the Jeeves user. Any wild card position is allowed.
hostile this@hotmail.com This is the email address that Jeeves will automatically remove for the pop server for you.
gen_hostile *@hotmail.com This is the generic hostile's of the Jeeves user. Any wild card position is allowed.

Jeeves.INI settings

General configuration settings are stored in jeeves.ini which must be in the same directory and have the same root name as the Jeeves executable. So if Jeeves is   renamed xmail.exe then the configuration file will be xmail.ini

Symbol Example Explanation
pophost pop.your.domain The name or IP number of your POP server
smtphost mail.your.domain The name or IP number of your SMTP server
list_header X-Listserver Headers which should be taken to indicate message is from a list server. Jeeves will not send introduction offers to list server messages. If message does not match a friend or hostile setting then Jeeves will either pass on or hold and delete the messages depending pass_list setting.
pass_list 1 Default 0 if set to 1 then messages from list servers which dont match a friend or hostile will be passed on. If setting is 0 they will be placed on hold and later deleted.
mins_to_check 30 The time between each Jeeves filtering
mins_to_rebuild 45 The time between each Jeeves rebuilding the Jeeves Users database.
report_subject see ini file The Subject header of any reports sent out by Jeeves to the user.
nir_subject see ini file The subject header of the message that is Notifying the Jeeves user that an Introduction has been Received.
nirm_subject see ini file The subject header of the message that is Notifying the Jeeves user that an Introduction has been Received, but there were no messages currently on hold.
intro_rec_subject see ini file The subject header that Jeeves is expecting when a reply to a Introduction Offer is sent
intro_offer_subject see ini file The subject header of the message that is sent out to a possible new friend giving and Introduction Offer.
msg_held_subject see ini file The subject header of the message that Jeeves sends out to a person when a message is placed on hold.
add_friend_subject see ini file The subject header of the message that Jeeves sends out informing the person that he has been placed on his friends list.
workarea /var/spool/cwmail The work area where cwmail/dmailweb or jcgi stores its user.dat settings for each user. This is usually the same as the templates directory as the work area defaults to the template directory. Note a single Jeeves can handle multiple workareas, so if you have several copies of CWMail (or DMailWeb) running on the same machine, all you have to do is add one line for each in the ini file. e.g.
workarea c:\cwmail
workarea c:\cwmail2
workarea c:\dmailweb 
workarea c:\dmweb

The workarea is the base directory where the user profiles are created and stored for CWMail and DMailWeb. In most cases this will be the same as the templates setting, as this is the default workarea for CWMail and DMailWeb.

key 2222-333-44-222 Registration key

 


Table of variables

These variables can be used in both jdefault.dat and juser.dat and can also be used when entering information into many of the fields in the config page.

Variable Name. What it stands for. Where it can be used.
num_friends The number of friends you have. Report
name_friends A list of your friends. Report
num_genfriends The number of (generic) friends you have. Report
name_genfriends A list of your (generic) friends. Report
num_message_removed The number of hostile messages removed since last report. Report
num_hostiles The number of hostiles you have. Report
name_hostiles A list of the hostiles you have. Report
num_genhostiles The number of (generic) hostiles you have. Report
name_genhostiles A list of the (generic) hostiles you have. Report
num_intro_sent The number of introduction messages sent since last report. Report
num_intro The total number of introduction messages sent. Report
intro_headers A list of addresses to where introductions have been sent. Report
num_held_messages The number of messages currently on hold. Report
held_messages A list of from addresses for all the held messages. Report
friend_address The Email address of the person who was added to your friends. Intro recieved
my_address Your Email address. Anywhere
held_subject The subject field of the held message. On Hold, Intro Offer
intro_req The intro offer that is expected. On Hold, Intro Offer
intro_id The intro ID that is expected Intro Offer

Note : The variables when used must be preceeded and followed by a double bar eg. ||my_address||.

The "Where it can be used." column describes where you can include these variable(s), "Report" is the report whick Jeeves sends to you outlining the work he has been doing, "Intro recieved" is the notification you recieve from Jeeves telling you of a friend who has joined your list of friends, "On Hold" is the notification you recieve from Jeeves telling you of messages placed on hold, and "Intro Offer" is the notification you recieve from Jeeves about any introductions he has sent to potential friends.

Products Downloads Prices Support Company