  
  
                       C O M C A L L   V E R  3 . 1 . 1
  
  
                                 USING COMCALL
  
   
                                    CONTENTS
  
                                STARTING COMCALL
                                USING COMCALL
  
  
  
  
  
  
  
  
  
  
  
  
  ****************************************************************************
  
  
  1.                            STARTING COMCALL
  
  
  
  To start  a  COMCALL  session,   change  your  directory  to  the Comcall
  directory e.g.  cd c:\comcall and enter the command  COMCALL followed  by
  the pressing of the ENTER key.
  
  
  COMCALL      COMMAND - EXECUTE COMCALL
  
  
  By entering <Comcall>  alone at the DOS prompt, you will be automatically
  taken into the main Comcall process.
  
  Initially  you will   see a time delayed introductory screen. Thereafter,
  you will be presented with   the session configuration  screen. Each time
  that you modify and save any of the session options then  these  will  be
  applied to all future    usages of Comcall until   such   times that they
  may  be    modified  again.    This  entry  configuration  screen  has  a
  auto-entry   delay  count    of 10  seconds.  Pressing the <esc> key will
  by-pass this  delay.   If no other  keys are pressed   within  this  time
  then the main Comcall terminal screen will be entered.  This delayed auto
  entry enables Comcall to    be used in batch  file processing (e.g.  .BAT
  files)    where  it    is  known that  the default session   options have
  already    been  set    to  a  suitable   value.     For   each   Comcall
  session,   two trigger  options  are available.  You may therefore define
  separate  actions to  be   taken  for each   of  two   separate   trigger
  conditions  (ring ranges).  
  
  The options that may be modified are :-
  
  
                           COMCALL ENTRY OPTIONS
  
  
  LOWER AND UPPER RING COUNTS
  
  The ring counts (lower/upper)  should be set to the range of  FULL  RINGS
  that you wish COMCALL to   trigger an   action upon receipt of (see E/T/X
  option below).   These   values may be identical so  as  to  stipulate an
  exact number  of  RINGS   to   trigger  the  action  upon.    The minimum
  number  of  rings that    may be  specified   is  1.   The  maximum upper
  level is   999. For ranges of RING COUNTS the values are considered to be
  inclusive.   There   should   be   no   over lap  between the ranges  for
  OPTION 1  trigger action and OPTION 2.    
  
  Note that FULL RINGS varies from  country to country.  For example in the
  UK with the   Brrr-brrrr ring,  Comcall   will  take all   or any part of
  this to be   a full ring.  It is worth noting that in some countries that
  the ring heard by the caller and   the ring heard by   the called  person
  may  not be  in  phase.  Comcall responds  to  the actual  rings received
  locally.  Comcalls  ring  counter will  only  increment  when  your modem
  detects such  a ring.  This can lead  to  cases   of  where say  a caller
  hears  only one ring cycle,  whereas at  the receiving end a  two    ring
  cycle  could have  occurred.  For  critical  operations  it  is therefore
  recommended that   you  select     a   ring    trigger    range   over  a
  number    of ring cycles.  Then, when you wish to make the remote trigger
  call,  select a mid ring count between these two values.
  
  Example:  Setting the lower and upper ring  values  to a  RANGE of values
  e.g.  2  &  4,  would result in the required action (as specified  in the
  command/telephone option (see later)) only being performed if either 2, 3
  or 4 RINGS were detected.
  
  Always check your set ups before  relying upon them.   For instance, when
  using some  faster  speed modems  (9600  or above),  in the UK,  a single
  brrr...brrrr ring cycle may be  detected  locally as TWO  rings.  If this
  applies to  your  set up,  you may have to  make allowances for  this and
  double the figures for  both the lower  and upper ring  trigger values in
  order to achieve the desired action(s).   Get a friend to call  you back,
  or try it  yourself  from  a local phone booth.   Remember  the  time and
  number of  rings are logged  in the  file 'CALLRING.DTL',  so you can use
  this as  a reference.   Once you are aware of  how your  particular modem
  reacts with Comcall,  you can then confidently go about setting  it up in
  the correct fashion in order to perform the function(s) you require.
  
  
  EXECUTE/TELEPHONE/EXIT E/T/X OPTIONS
  
  These parameter should  be  set according to  what  the  required trigger
  action should   be upon the receipt of the  ring trigger range as defined
  in the upper/lower ring  count options (see  previous).
  
  The 'T'  option enables    a telephone advisory  call to be  made  to the
  telephone  number defined  in the command/telephone  option (see  later).
  
  The 'E'  option enables the command as defined in  the  command/telephone
  option   to   be performed.  Any  DOS  command or program filename may be
  called   (even a call   to  a .BAT file if  required), together  with any
  parameters required by    that called program  (there  is a upper   limit
  of 4 parameters that may be passed).   
  
  The X option is used where it   is desired to execute Comcall from within
  a  .BAT  file.  In some  cases using  the  E  option   will   prevent the
  successful   automatic reload   of Comcall (e.g.   if a trigger condition
  is   met  and    another  program is   executed   that takes  all of  the
  memory   available for   its own use).   In using the X option,  you  can
  define a DOS errorlevel at  which   Comcall should  halt  with  following
  the   receipt  of the  desired trigger condition (consult your DOS manual
  for further description of  errorlevels).    The actual errorlevel number
  to  use should  be   defined in the command/telephone option (see later).
  A bat file   can  then  pick  up   on   this  errorlevel    in   order to
  perform the desired operation.
  
  
  DO    NOT  USE  AN    E  ACTION   COMMAND   REQUEST   TO  INVOKE  ANOTHER
  COMMUNICATIONS  PROGRAM -  OTHERWISE  THE CONFLICT  IN  USING THE SAME PC
  INTERRUPTS CAN  RESULT IN COMCALL NOT CORRECTLY RESUMING  UPON  EXIT FROM
  THE OTHER COMMUNICATIONS PACKAGE/PROGRAM.   
  
  If you intend  to use Comcall  to trigger a  communications package, then
  do  so  by   using the X (Exit   with errorlevel)  option and control the
  Comcall   and communications package  invocation using a suitable control
  batch file. 
  
  
  COMMAND/TELEPHONE
  
  This is  the action/command,  exit errorlevel  or  telephone  number that
  should be  used according to the option  specified in  the EXECUTE/ACTION
  (E/T/X) option (see previous).  
  
  If a T options is  selected  for  the  execute/action  option,  then this
  should contain the target  phone number  (no  spaces  or  dash characters
  should be included).  
  
  If a E option is selected for the command action  then this should  be  a
  DOS command or  program   filename (filenames   should be full  filenames
  e.g.  comcall.exe and not just comcall (without the exe suffix)).   Up to
  four parameters may be included with the command e.g. 'echo hello there'.
  
  If an  X command action  is  selected  for the command  action  then this
  should   be a numeric value (greater than one,   less than 100)  to which
  the  desired exit errorlevel is  to be set.  For more  information on BAT
  file processing  and errorlevel  values -  consult your operating systems
  manual.   Selected exit errorlevels are reserved (the ones outside of the
  2-99 range) for internal use by Comcall.
  
  
  For  T options (telephone)  you  may be  able to define  delay periods by
  including  an  additional   character  in   the telephone number   string
  (consult your modem  manual).   For example,  when  an  advisory  call is
  to   be  made out    through   an  automatic switchboard that requires  a
  prefix digit(s)   to be dialled,  followed by a short delay, then you can
  use the delay   character to cater   for this.    Lets say that the delay
  character for    your modem is   a  comma character,  and your number for
  gaining  an  external line   is   9.    If you wish  to  call  the number
  123-4567   then your telephone command line    value would be 9,12345678.
  (Do  not include any dashes   in   telephone  number  command   actions.)
  On   receiving    a trigger  condition,  Comcall will then instruct  your
  modem to   dial   the digit 9, followed by a short delay, followed by the
  number  1234567.    This delay character can vary  from  modem to  modem,
  so consult your modems   manual for further guidance (usually  can be set
  via  one  of  the  S  registers).    In  some  cases  you  may  wish   to
  concatenate a  number  of delays, this  could be  achieved  by  using two
  or  more  of  the delay characters consecutively e.g. 9,,,1234567.
  
  
  
  *******************************************************************************
  
  
  2.                             USING COMCALL   
   
  
  
      
  For COMCALL to work your PC and Modem must be left on. Any power loss  to
  your   system   will   result   in the loss  of   the COMCALL monitoring.
  To  ensure  against power glitches,  you  could use  the  COMCALL command
  within your autoexec.bat    file so that should the power fail  and  then
  be restored   then  the  PC  would  reboot  and  re-execute  the  COMCALL
  command automatically.  
  
  COMCALL liaises with your  modem.   You  should  use  a  HAYES compatible
  modem.  COMCALL  requires that verbose   commands are  returned from your
  modem  (not  digit values)   and that the  modem is set  to never answer.
  These  can be  set in  the modem initialisation  option  of  the Comcalls
  configuration using the  'Comcall C'  command (see installation section).
  This    is   automatically     sent    within  the initialisation process
  when COMCALL is started.  Once  you have invoked   COMCALL you will    be
  (following the session  configuration  screen)  in   a  terminal  session
  with your  modem.     Type  AT  (attention)  followed  by  the  ENTER key
  directly at    the   terminal   screen.    You   should  then   see   the
  modems response of   OK.     If this  does  not   occur  then you  should
  check  your  modem and COM port.   The Modem -  Comcall  configuration is
  covered more fully in the  installation section of this     manual should
  you require further assistance.
  
  Comcall now incorporates dual trigger definition.  That is you can define
  two separate  actions to   be taken upon  the   receipt of  two different
  ring ranges.  If   you do   not  want   any actions to   be taken,   e.g.
  using Comcall purely    as  a logging  device,  then we suggest that  you
  use trigger actions of    998/998 Rings,   E(xecute),  REM for option   1
  and 999/999,   E(xecute),   REM for option  2.    Comcall will thereafter
  only   log any details of  incoming calls to the log file  (CALLRING.DTL)
  which  may be   browsed   later   using  the Comcall B  command  from the
  DOS prompt.   Note that in  this case, if  a ring   count  in   the range
  998-999    rings   is detected (extremely unlikely)  then the only action
  performed would be that Comcall would execute a  remark (REM) statement.
  The reason for choosing the 998  and 999 ranges for trigger options 1 and
  2  (respectively)  is to ensure that no over-lap between  the ring ranges
  for trigger option 1 and trigger option 2 occurs (not allowed).
  
  Once  you enter Comcall then  try  using  the  <ALT-R>  (RING simulation)
  keys at the  terminal screen.     You should see the    response   of the
  time of the ring  receipt   and the ring     count.  If further rings are
  entered  in  quick  succession    you     should  see  the  ring    count
  incremented.   (Beware not     to  enter the    same number  of  rings as
  defined for your    trigger,   otherwise  the  trigger will occur at this
  test stage -  unless you wish to test your set up that is.)   If  a delay
  of     over 10  seconds occurs between when the   last ring and next ring
  occurs,  then  the   ring   count  will be seen   to revert  back  to one
  (assumes a new call).
  
  As of release 3.1.1,  Comcall now incorporates a Screen Saver  feature to
  prevent possible  'Burn In'.   This means that  if  no  keyboard input or
  incoming signal is detected after 1  minute, then the monitor screen will
  be blanked.   Comcall will still be running though,  so if  a signal does
  come in,  or a key is pressed,  then the display will pop back into life.
  The screen saver timer is only active  whilst at the terminal  screen, so
  the screen wont blank  if your at  any other option  (manual, set options
  etc).   NOTE:  Under some circumstances, the saver may not perform in the
  correct manner depending upon  the actual monitor  you have (Mono/Colour)
  and  the mode  that your PC  has been set  to use for  its display.  Even
  though yoy may have  a Mono  monitor,  the chances are your  display card
  will be of a general type that can be used for either mono or colour.  If
  this has been  set to  colour mode for a mono  monitor,  the screen saver
  will more than likely only blank out the cursor and not  the full screen.
  If so, you might like to set the Comcalls configuration display option to
  Colour.  Alternatively, you might have to consult your video cards manual
  in order to determine how you can set the correct video mode.
  
  If you  utilise  Comcalls  program  Execution  command  option  upon ring
  triggers,  then  COMCALL  may  or  may  not  be  correctly  resumed  upon
  completion of  the command,  depending upon   the command/utility  called
  (memory    space   etc).    Test  your  set  ups  prior to depending upon
  them.  If COMCALL does  not correctly resume  then try setting  up a  BAT
  control  file   and use the Execute/Action 'X'  command  option  together
  with a suitable errorlevel (see below) from within Comcall.  
  
  
  We will now discuss a single example of using Comcall in order to share a
  single telephone line between voice and data  calls.   Remember that this
  is  only  one possible  use for  Comcall.   In  practice  your  skill and
  imagination  are  the  only  boundaries  to  the   many  other  potential
  applications of the Comcall package.
  
  
  EXAMPLE OF USING COMCALL WITH A COMMUNICATIONS PACKAGE IN ORDER  TO SHARE
  A SINGLE TELEPHONE LINE BETWEEN VOICE AND DATA CALLS.
  
  Lets say that you have a communications package (program)  that you  wish
  to   invoke  upon a selected ring   count    condition being met.   We'll
  call   your   comms package  'compac'  for  this   example.  Your  compac
  program allows  for the creation  of  script files (a common  option with
  most communications programs).  We will also assume that you have created
  such a script file that will result   in a 'host' mode of operation being
  automatically set up when the script   is   invoked.   The compac package
  is   assumed to allow you   to    invoke  compac and  the script directly
  from the DOS command line  e.g. if the   script  is  called ringoff.scr -
  compac allows you to invoke it and the ringoff.scr by using the command
  
                           compac ringoff.scr
  
  You  want this comms package to  be  run every time  that Comcall detects
  only one ring (one and only  one ring).  We will also  assume  that  your
  modem is  connected  to  your  COM  port  2.  Lets also assume that  your
  comms  package   (compac)  is in   a directory called  c:\comms  and that
  your COMCALL    package  is in a directory called  c:\comcall.   Lets say
  that you want  to  make  Comcall exit with an  errorlevel of 2   when the
  trigger is met and invoke your comms package (await  your  return call in
  data  mode).   Finally lets also  assume that if  you do  not call   back
  within   5    minutes with a data call,  then you wish Comcall to restart
  again (back to normal voice call operation).  
  
  (Note that most of the above assumptions can be directly related  to many
  of  the  popular  communications  programs/packages  that  are  currently
  available.)
  
  
  Enter    Comcall   and  select  the  required  options  at   the  session
  configuration screen according to the following.   
  
  Your Upper and lower ring counts for trigger option 1 should be  set to 1
  and 1    (e.g.  one and only  one ring).  Additionally your E/T/X  option
  should   be set to X   and the Command/Telephone  Option set to 2  (2  is
  the minimum and 99   is the maximum errorlevel that may be set for this X
  option.     Any other  value outside of this  2-99 range will result in a
  default of value of 2  being applied). As you only want one ring range to
  be    the trigger condition,  then  set the  Trigger Option 2 values   to
  say 999/999   rings,   E(xecute),  REM command.  Now save these using the
  Save/Exit option.     Once at the  terminal screen -   exit Comcall using
  the ALT X option.  Now each time that Comcall starts    in   future  then
  the options as  defined above will  be automatically  applied (unless you
  choose to modify them).  Thus you can  now include the command Comcall in
  a bat file (such as your autoexec.bat).  Once such a bat  file is run and
  the  Comcall    command issued,  then following a  short  delay,  Comcall
  will be automatically initialised and the terminal  session  entered with
  your required parameters.
  
  You bat file   (consult your dos manual  for help regarding  batch files)
  - may contain something like the following :-
  
                             EXAMPLE BAT FILE
  
            cd c:\comcall              - your comcall directory
            comcall                    - start comcall
            if errorlevel 2 goto trig  - if comcall exits with
                                       - errorlevel of 2 then goto
                                       - the trig label 
            goto reboot                - otherwise goto the reboot label
            :trig                      - the trig label
            c:\comcall\comboot 5       - reboot system in 5 minutes
            cd c:\comms                - your comms directory
            compac ringoff.scr         - start your comms package
            :reboot                    - the reboot label 
            c:\comcall\comboot 0       - reboot immediately 
  
  
  
  {-----------------------------------------------------------------------------}
  
                                 NOTE
  
  The above description on the right hand side is  for descriptive purposes
  - do NOT include this in your bat file.
  
  A quirk (or feature)  with the DOS errorlevel that you should be familiar
  with   is   that  an errorlevel reference refers to values both EQUAL AND
  GREATER than the stated value. For example, if you included the command
  
                   if errorlevel 4 goto doit
  
  in a batch file,  then if the exit errorlevel code at the time of meeting
  the command is  4  OR GREATER (e.g.  5,  99 etc) then the action (doit in
  this example) will be taken.
  
  Consequently,  multiple  references  to  errorlevels within  a batch file
  should be written in a form so as to be decremental e.g.
  
                  if errorlevel 4 goto dofour
                  if errorlevel 2 goto dotwo
  
  and NOT
  
                  if errorlevel 2 goto dotwo
                  if errorlevel 4 goto dofour
  
  as in the bad example  above,  should the errorlevel be 4  then the dotwo
  action would be (incorrectly) taken.
  
  Another point regarding batch files is  that  the  syntax  does  vary for
  different  versions   and suppliers of   the operating  systems.   If  in
  doubt, consult your operating systems manual.
                                 
                                  END OF NOTE
                                  
  {----------------------------------------------------------------------------}
  
  
  Saving such a command bat file as the above example to  your Autoexec.bat
  file,  followed  by  a  reboot  (CNTL-ALT-DEL)  would  result   in    the
  continuous sequence  of  Comcall being invoked   and waiting for  one and
  only one rings.  Then once this trigger was met Comcall would stop   with
  an errorlevel of 2  which would start a reboot request after  5   minutes
  (COMBOOT TSR is  described in  the additionals/utilities section  of this
  manual))  followed by  the Compac  comms package being started  using the
  ringoff.scr     script file  in order to wait  for your  return data call
  (host mode).  Normal exiting   from  compac will  result in your   system
  rebooting as a result of the cold   reboot (Comboot 0) command (last line
  in the above example bat file).  Once  the system  starts  up  again  the
  whole  process could be  repeated.  If you call  into  your  base systems
  Communications package from  a  remote   site  your  should   immediately
  (after a successful connect)  execute a DOS shell from the communications
  program/package and  then execute the  STOPBOOT command in order  to stop
  the re-boot  TSR's  countdown  (c:\comcall\stopboot.exe).  Otherwise your
  system  will  reboot  after the 5  minute reboot  time  expires, possibly
  resulting in  your being logged off (disconnected).   If  you didn't  log
  into   your   computer with  a return  data  call  within  the 5   minute
  period as defined with the COMBOOT 5  statement, your system would reboot
  and start the  .bat file all over   again.     With suitable additions to
  your autoexec.bat file (e.g. echo ats0=0 >com2  so as to place your modem
  into a never autoanswer  mode),  you could therefore prevent  your system
  from being left in data mode for the rest of the day.   In some cases, if
  you are using a BBS system, you could incorporate the STOPBOOT command as
  part of  the  logon  menus  execution,  so  that  the  reboot  request is
  automatically stopped when a call comes into the BBS.
  
  The benefit of such a set up is that should your mains power  supply fail
  for a brief period, then the set up would be re-entered once again  after
  the power had   been  re-established. It also  ensures that  your  system
  should   not hang   as a   result of memory contention preventing Comcall
  from correctly working upon re-entry.
  
  (Note that  Compac  is  a name  chosen  purely in an  arbitrary manner in
  order to assist with the above example.)
  
  The above example  may appear a  little daunting upon  first reading, but
  with familiarisation of  batch files  and  your  preferred communications
  program it should not be too difficult for you to implement.  The example
  does demonstrate some indication of just how useful and  flexible Comcall
  can be.   One word  of  caution though.   When  making  autoexec.bat file
  dependant set ups,  always attempt  to perform as much  of the  set up as
  possible from within a test bat file first.   Only once your certain that
  all appears well should you move  the commands to your  autoexec.bat file
  as any errors within the autoexec.bat file can present problems.  Ideally
  it is well worth having an alternative  bootable disk handy (e.g  a blank
  floppy disk that has been formatted with the 'format a:  /s' command) for
  such cases.   As is having a back  up copy of  your original autoexec.bat
  file.
  
  
                             END  OF  EXAMPLE
       
                               -----------
  
  
  Occasionally you should browse  the CALLRING.DTL    file  that is created
  automatically by  COMCALL.  This file contains  all of the  rings and the
  times that they were  logged whilst COMCALL was active.  This   file will
  continue to    grow until   such times that you delete it.   Once deleted
  a new copy will automatically created and used the next time you re-enter
  COMCALL.
  
  COMCALL has primarily  be developed and  tested   in  the UK.  In  theory
  the  package  should    work    as  equally  well  on    a  multitude  of
  telecommunications  networks.     We   have (as   of  the  current  date)
  not received any reports of COMCALL failing to work on any given network.
  
  NOTE:  When using Comcall with some modems under a  double ring telephone
  system (e.g.  the UK has a single ring cycle sent as  brr..brrrr)  then a
  double count may occur against that ring cycle.     Generally,  this will
  only be evident in  high  speed modems (9600  or above).   If this is the
  case for your set up,  then you may have to make allowances for this when
  defining your  trigger ranges  (e.g.  say set lower count to 1  and upper
  count to 4 for a desired trigger  condition of between 1 and 2 rings). 
  
  Some difficulty in the anticipated functioning of    COMCALL may occur if
  another incoming ring is  made at the same  instant in  time when COMCALL
  issues   an   advisory call command.    However,  the instances when this
  occurs  should  be   extremely  few in   view   of   the  small  timeslot
  window  when such conditions may occur. 
  
  If COMCALL is used to initiate an advisory call upon the detection of the
  trigger condition,  then the response messages from the advisory call are
  monitored.  If a BUSY   message is detected then  the advisory call  will
  be retried after a short delay (providing  the busy   re-tries  or modems
  Blacklist limit has not been reached - see configuration section).   
  
  In all of the EXECUTE (E),  EXIT   with ERRORLEVEL (X)  and ADVISORY CALL
  (T)  modes,  a delay from   the time  when    the trigger    ring receipt
  was received   and   the trigger function operates exists.  This is via a
  counter level   being decremented and displayed upon the terminal screen.
  If you wish  to  locally cancel  the  trigger  function  and  resume RING
  monitoring,  then  the   ENTER key  may  be   pressed  during  this delay
  countdown period (e.g. you may have answered your phone locally  and  you
  do not wish for the advisory call to progress to completion). 
  
  To    quit out of COMCALL  use the combined   keystrokes   of ALT X. Some
  limited help  may   be   obtained  by  using  the  combined keystrokes of
  <ALT  H>.    You may reference the  Comcall manual   using  the  <ALT  L>
  keystroke sequence.  At the COMCALL terminal screen,  you can jump to the
  session  configuration screen by using the <ALT  J>  keystroke.  Finally,
  you can use the <ALT-R> combination in order to simulate an incoming ring
  (useful for testing your set ups).
  
  
  That's the basics behind using and running COMCALL.   Maybe once you have
  grasped these you would like to add in additional  functionallity such as
  being able to switch your PC/Modem or home lights  both on and   off from
  anywhere   in the world.   Or what about programming  your Video recorder
  -   again from  anywhere in the world.    For further information  of how
  such set ups could be possible,  consult the additionals section of  this
  manual.    We  do  remind   you  however,   that  patience  is  a virtue.
  Don't   be   too   bold  and ambitious in  trying to set up  the ultimate
  configuration within a few minutes.  Master one step  at a  time (COMCALL
  first)   and get your   system working well before attempting  to add  in
  additional   options.    That  way,  you'll  end  up  with  a  robust and
  purposeful  set up.    If you try to  do  too much  at   once then you'll
  probably end up spending hours of your time going around in circles.
  
  Remember  that  we  have  only  demonstrated  just  one example  of using
  Comcall.   There  are numerous other  possibilities for its use.   Try to
  plan out any of your intended applications using pencil  and paper first.
  Careful and thoughtful planning at the initial stage can prevent hours of
  frustration later.
  
  TAKE IT ONE STEP AT A TIME.  ENJOY!
