SEYON(1)

SEYON(1)

setxkbmap Home Page User Commands Index sgi2fax


NAME
       Seyon - X11 Telecommunications Package.

SYNOPSIS
       seyon  [-option  ...]  [-toolkit_option  ...]  [-- -emula-
       tor_option ...]

DESCRIPTION
       Seyon is a complete full-featured telecommunications pack-
       age for the X Window System. Some of its features are:
              * Dialing directory that supports an unlimited num-
              ber of entries. The directory is fully mouse-driven
              and  features  call progress monitoring, dial time-
              out, automatic redial,  multi-number  dialing,  and
              circular  redial  queue.  Each  item in the dialing
              directory can be configured with its own baud rate,
              bit  mask,  and script file.  The dialing directory
              uses a plain-text phone book  that  can  be  edited
              from withen Seyon. Seyon also supports manual dial-
              ing.
              * Terminal emulation window  supporting  DEC  VT02,
              Tektronix  4014, and ANSI. Seyon delegates its ter-
              minal emulation to xterm, so all the familiar xterm
              functions  such as the scroll-back buffer, cut-and-
              paste utility, and visual bell are availabe through
              Seyon's terminal emulation window. Using xterm also
              means that Seyon has a more complete  emulation  of
              VT102 than other any Unix or DOS telecommunications
              program. Other terminal emulation programs can also
              be  used  with  Seyon  to suit the user's need; for
              example, color xterm can be used to provide  emula-
              tion  for color ANSI (popular on many BBS systems),
              and xvt can be used if memory is a bit tight.
              * Script language to automate tedious tasks such as
              logging  into  remote  hosts. Seyon's script inter-
              preter uses plain-text files and has a syntax simi-
              lar  to  that  of sh, with a few extra addtions. It
              supports many familiar statements  such  as  condi-
              tional  branching  by  if-else and looping by goto.
              Scripts may be assigned to  items  in  the  dialing
              directory  for  automatic execution after a connec-
              tion is made.
              * Unlimited  number  of  slots  for  external  file
              transfer protocols.  Protocols are activated from a
              mouse-driven transfer console that  uses  a  plain-
              text file, editable from withen Seyon, for protocol
              configuration. Seyon prompts the user for filenames
              only  if  the chosen protocol requires filenames or
              if the transfer operation is an upload,  for  which
              Seyon  also  accepts  wildcards.  Multiple download
              directories can  be  specified  for  the  different
              transfer slots.
              *  Support  for Zmodem auto-download. Seyon detects
              incoming Zmodem signature and  automatically  acti-
              vates  a  user-specified zmodem protocol to receive
              incoming files. Zmodem transfers can thus  be  com-
              pletely automatic and require no user intervention.
              *  Translation  modes.  Seyon  can  perfrom  useful
              trasnlations  on  the  user's  input. From example,
              Seyon can translate backspace to delete (useful  on
              may Unix systems), newline to carriage return (use-
              ful on many BBS hosts), and my favorite,  meta  key
              tranlation:  to  send  keys  pressed while the meta
              (ALT) key is held down as an escape (ESC)  followed
              by  the  key  press.  The latter mode simulates the
              meta key on hosts that do not  support  8-bit-clean
              connections  and makes possible the use of the meta
              key in programs like Emacs on such hosts.
              * Other features: interactive  setting  of  program
              parameters,  on-line help, software (XONN/XOFF) and
              hardware (RTS/CTS) flow control, session capture to
              a  file,  and temporary running of a local shell in
              the terminal emulation window.

       Seyon is intended to be both simple and  extensively  con-
       figurable.  Almost every aspect of Seyon can be configured
       via the resources to suit the user's taste.

OPTIONS
       Besides the toolkit options, Seyon recognizes the  follow-
       ing command-line switches:

       -modems <device-list>
              Overrides   the   resource  modems.  Refer  to  the
              description of that  resource  below.   Unlike  the
              resource,  however,  the list here has to be quoted
              if it consists of more than one entry.

       -emulator <terminal-emulation-program>
              Instructs Seyon to use the specified program as the
              terminal  emulator.  If Seyon fails to execute that
              program, it will fall back to xterm. If this option
              is  not  given,  Seyon  will  try to use seyon-emu,
              which should be a link to  your  favorite  terminal
              emulation program. Seyon will fall back to xterm in
              this case as well if it fails to execute seyon-emu.

       --     This switch instructs Seyon to pass the rest of the
              command-line to the terminal emulation program. All
              options   following  this  switch  will  be  passed
              blindly to the emulator. This switch cannot be com-
              bined with -noemulator.

       -nodefargs
              Seyon  usually  invokes the terminal emulation pro-
              gram with some options to set the application  name
              and  window  and icon titles (those are -name Seyon
              -T "Seyon Terminal Emulator" -n Terminal). If  this
              switch  is given, Seyon will not pass those options
              to the emulator.  This is to  accommodate  terminal
              emulation  programs  that  use a different command-
              line syntax than xterm -- like xvt, cmdtool, shell-
              tool,  ..etc.  You  can use the '--' switch to pass
              your own options to the emulator.

       -noemulator
              This option is valid only if Seyon is invoked  from
              withen  a  terminal  emulation program in the fore-
              ground of an interactive shell session.  If  given,
              Seyon  will not launch a new terminal emulator, but
              will use the existing one instead. You  cannot  use
              the '--' switch if this option is given.

       -script <script-file>
              Causes  Seyon  to automatically executes the speci-
              fied script after the startup script  is  run.  The
              specified  script file will be looked for according
              to the rule mentioned under the description of  the
              resource scriptDirectory below.

       -entries <entries-list>
              Overrides  the  resource defaultPhoneEntries. Refer
              to the description of that resource  below.  Unlike
              the  resource,  however,  the  list  here has to be
              quoted if it consists of more than one entry.

       -dial, -nodial
              Overrides the resource dialAutoStart and sets it to
              'on' and If both -dial and -nodial are specified on
              the command-line, the override value  will  be  set
              according  to  the  last of the two on the command-
              line.

RESOURCES
       Besides the toolkit resources, Seyon defines the following
       proprietry resources:

       autoZmodem (boolean)
              Specifies whether Seyon is to look for Zmodem auto-
              download signature.  If enabled, Seyon will  detect
              incoming  Zmodem  signature  and execute the action
              given by the resource  autoZmodemAction  (typically
              to  start  a local rz). Otherwise, Zmodem signature
              will be ignored.  Default value: on

       autoZmodemAction (string)
              Specifies a simple or compound action that will  be
              executed  when  Zmodem  auto-download  signature is
              detected. This action will be executed only if  the
              resource  autoZmodem  is enabled (see above). Refer
              to the section entitled SeQuickKeys for a  descrip-
              tion  of  available actions.  Default value: Shell-
              Command($rz);

       backspaceTranslation (boolean)
              Whether to translate user's  backspace  to  delete.
              When  the remote host is a Unix system, it's better
              to set this to on, since many Unix systems are  not
              happy with backspace.  Default value: off

       captureFile (string)
              The  name of capture file. Seyon will write session
              captures to this file when capture is enabled. This
              file  will  be placed in Seyon's default directory.
              The capture file will not be overwritten by succes-
              sive  capture sessions. Seyon will merely apped new
              capture to its end.  Default value: capture

       connectString (string)
              The modem connect string. This the string  response
              the  modem  gives  when  a connection is made after
              dialing.  Default value: CONNECT

       defaultBits (int)
              The default number of bits (character size).  Seyon
              will  set  the  number  of  bits  to  this value on
              startup and will use it for items  in  the  dialing
              directory  for  which  no  such parameter is given.
              Valid values are 5, 6, 7, and 8.  Default value: 8

       defaultBPS (string)
              The default baud rate. Seyon will set the baud rate
              to  this value on startup and will use it for items
              in the dialing directory for which no baud rate  is
              given.  Default value: 9600

       defaultDirectory (string)
              Seyon's  default  directory.  When  looking for its
              files, Seyon will first try this default directory,
              then the current directory. Seyon will also put the
              capture file in  this  directory.   Default  value:
              ~/.seyon

       defaultParity (int)
              The  default  parity.  Seyon will set the parity to
              this value on startup and will use it for items  in
              the  dialing  directory for which no such parameter
              is given. Valid values are 0 (no  parity),  1  (odd
              parity), and 2 (even parity).  Default value: 0

       defaultPhoneEntries (int array)
              This  resource  specifies  a list of numbers corre-
              sponding to the order the entries  in  the  dialing
              directory  appear at. Seyon will highlight (select)
              those entries on startup  and  whenever  you  click
              ``Default''  from  the  dialing  directory. This is
              useful if there is a set of entries that  you  most
              frequesntly  dial  that want to be highlghted auto-
              matically instead of doing that every time by hand.
              You can override this resource by the -entries com-
              mand-line switch.  Unlike the command-line  switch,
              however, the list here should not be quoted. Phone-
              book entries numbering starts at one.   No  default
              value.

       defaultStopBits (int)
              The default number of stop bits. Seyon will set the
              number of stop bits to this value  on  startup  and
              will  use it for items in the dialing directory for
              which no such parameter is given. Valid values  are
              1 and 2.  Default value: 1

       dialAutoStart (boolean)
              This  resource  specifies  that  Seyon should start
              dialing  the  entries  specified  by  the  resource
              defaultPhoneEntries  (or  its override command-line
              switch) on startup.  Seyon  will  commence  dialing
              those  entries  after  executing the startup script
              and any script specified at  the  command  line.  A
              more convenient way of automatic dialing on startup
              is to use the override command-line  switch  -dial,
              which  overrides  this resource and enables. If the
              resource is enabled, it can be disabled at the com-
              mand  line by the override switch -nodial. Refer to
              the description of these switches  above.   Default
              value: off

       dialCancelString (string)
              The string Seyon sends to the modem to cancel dial-
              ing while in progress.  Default value: ^M

       dialDelay (int)
              How long in seconds Seyon should wait after no con-
              nection  is made withen dialTimeOut before ciculat-
              ing to the next number.  Default value: 10

       dialDirFormat (string)
              This is a format string that specifies  the  layout
              of  the  dialing  direcotry.  The default is '%-15s
              %-15s  %6s  %1c%1c%1c  %1c%1c  %s'   (no   quotes).
              Briefly:  the  fields represent the host name, num-
              ber,  the  baud  rate,  bits,  parity,  stop  bits,
              whether  there  is a custom prefix, suffix, and the
              script name. You  can  understand  more  what  each
              field  refers  to  by comparing with dialing direc-
              tory, fields that use the current setting (via  the
              keyword CURRENT) are designated by a question mark.
              Notice that you cannot change the order  the  items
              in  the  dialing directory appear at, only the for-
              mat. For example, if the numbers you call  are  all
              7-digits,  your host names are short, you never use
              baud rates above 9600, and you like dashes  between
              the  baud rate, bits, parity, and stop bits fields,
              then you may prefer to use the format string '%-10s
              %-8s  %5s-%1c-%1c-%1c  %1c%1c  %s',  which would be
              narrower than the default format.   Default  value:
              %-15s %-15s %6s %1c%1c%1c %1c%1c %s

       dialPrefix (string)
              The  string  Seyon  sends  to  the modem before the
              phone  number.  To  use  pulse  dialing,  set  this
              resource to .IR ATDP .  Default value: ATDT

       dialRepeat (int)
              How  many  times Seyon should try dialing a number.
              Seyon will give up on dialing a number if  no  con-
              nection  is  made  after  this many tries.  Default
              value: 5

       dialSuffix (string)
              The string Seyon sends to the modem after the phone
              number.  This  string  has  to  contain  a carraige
              return or the number will never  get  sent  to  the
              mode.  Default value: ^M

       dialTimeOut (int)
              How long in seconds Seyon should wait for a connec-
              tion to made after dialing is complete. Seyon  will
              cancel  the dialing if no connection is made withen
              this period.  Default value: 45

       exitConfirm (boolean)
              Whether Seyon should prompt for hanguping up before
              exiting.  If  off-line  and  the  resource  ignore-
              ModemDCD is set to 'off', Seyon will not prompt for
              hanging  up  upon  exiting even if this resource is
              set to Default value: on

       funMessages (string array)
              The fun messages to be displayed when Seyon has  no
              other important information to show. This should be
              a list of double-quoted [funny] sentences.  Default
              value: varies, version-dependent

       funMessagesInterval (int)
              The temporal interval in seconds between successive
              fun messages.  Default value: 15

       idleGuard (boolean)
              If set to on, Seyon  will  send  a  string  to  the
              remote  host  whenever the terminal session is idle
              (no keyboard input) for a given amount of time. The
              resources   idleGuardInterval  and  idleGuardString
              specify the above time interval and the  string  to
              be  sent to the remote host when idle. It is useful
              to enable this features to keep the  session  alive
              when  one  is  away  from  the computer for a while
              (e.g.  to prevent auto-logout).  Default value: off

       idleGuardInterval (int)
              The  amount of time in seconds Seyon is to consider
              the session idle when there is no keyboard activity
              at  the  terminal for that long.  Seyon will send a
              string to the remote host every  such  interval  as
              long as the session is idle.  Default value: 300

       idleGuardString (string)
              The  string  to be sent to the remote host when the
              session is idle.  This string will  be  sent  at  a
              regular  interval  as  long  as the sesiion remains
              idle. Note that the current  translations  will  be
              used  in  sending  this  string;  for  example,  if
              backspaceTranslation is enabled, then  the  default
              string  <Space><BS>  will  be sent as <Space><DEL>.
              Default value: \s^H (space then backspace)

       ignoreModemDCD (boolean)
              If this resource is set  to  'on',  the  modem  DCD
              (Data  Carrier Detect) status will be ignored. Some
              of the consequences of setting this to 'on' is that
              Seyon   will  always  prompt  for  hangup  (if  the
              resource exitConfirm is set to 'on')  even  if  the
              modem DCD status indicates that it is off-line, and
              dialing will be attempted even  if  the  modem  DCD
              status  indicates  that it is on-line. It is highly
              recommended that you keep this set to 'off'  unless
              your  modem  does  not  honor the DCD line. Consult
              your modem's  manual  for  more  details.   Default
              value: off

       hangupBeforeDial (boolean)
              When set to on, Seyon will hangup the line (if con-
              nected) before dialing the phone number. Otherwise,
              the  number  will be dialed without hanging up, and
              it is the user's responsibility to ensure that  the
              line   is   clear  (no  connection)  when  dialing.
              Default value: on

       hangupConfirm (boolean)
              Whether Seyon should ask  for  confirmation  before
              hanging up the phone Default value: on

       hangupViaDTR (boolean)
              When  enabled,  Seyon  will  hangup up the modem by
              dropping DTR. This is much quicker than hanging  up
              by  sending a Hayes-like hangup string to the modem
              and waiting to allow for escape  guard  time.  How-
              ever, some modems and serial drivers choke on drop-
              ping DTR and others just don't hangup when  DTR  is
              dropped,  so  in these cases it should be disabled.
              If disabled, Seyon will hangup the modem by sending
              the  string  specified  by the resource modemAtten-
              tionString,  followed  by  that  specified  by  the
              resource modemHangupString.  Default value: off

       metaKeyTranslation (boolean)
              Whether  to  transmit  keys  pressed while the meta
              (ALT) key is held down as an escape (ESC)  followed
              by  the  key press. Most hosts do not support 8-bit
              sessions, and hence do not recognize the meta  key.
              Therefore,  this translation mode has to be enabled
              when connected to such hosts to take  advantage  of
              the  meta  key in programs that make use of it like
              Emacs.  Default value: on

       modemAttentionString (string)
              The string to send to the modem to get  its  atten-
              tion  (switch to command mode). This string will be
              sent to the modem before  the  hangup  string  when
              hangupViaDTR is disabled.  Default value: +++

       modemHangupString (string)
              The  hangup  string  to  send  to  the  modem  when
              hangupViaDTR is disabled.  Default value: ATH^M

       modems (string)
              A list of modem  devies  to  use.  Seyon  will  try
              modems  in  this  list one after the other until it
              finds an available modem or the list is  exhausted.
              No default value.

       modemStatusInterval (int)
              This  resource controls the amount of time (in sec-
              onds) between updates to the modem  status  toggles
              (including the clock). The default is five seconds,
              but you can set it to one second (or any other num-
              ber)  if  you  want  the toggles to be updated more
              frequently. Even if you set this to a large number,
              Seyon  is  intellegent enough to update the toggles
              after each connect or hangup.  Default value: 5

       modemVMin (int)
              This resource specifies the minimum number of char-
              acters that should be in the buffer before the read
              process is satified. The  read  process  will  wait
              until  that number of incoming characters is in the
              buffer  or  0.1  second  has  elapsed  between  the
              receiption  of two characters before displaying the
              data in the buffer. This results in the data  being
              displayed in chunks and speeds up the terminal dis-
              play. The speedup would be most noticeable on  slow
              machnes with fast modems.
              Leave this resource at its default (1) or set it at
              a low value (6) if you  have  a  slow  modem  (e.g.
              2400bps). Otherwise you might set it to the maximum
              value, which is  platform-dependent  but  generally
              255.  If  you set it to any number greater than the
              maximum value, it will be truncated to the  maximum
              value.  Default value: 1

       newlineTranslation (string)
              When  the  Enter  key is pressed, newline character
              (\n) is generated.  This resource  determines  what
              to  translate  this  character  to. Three modes are
              possible: no translation (newline), carriage return
              (\r), and carriage return / line feed. Unix systems
              usually expect newline or carrage return, DOS  sys-
              tems  expect  carraige  return or carriage return /
              line feed. The three keywords corresponding to  the
              above  modes are nl, cr, and cr/lf.  Default value:
              cr

       noConnectStringX [X = 1-4] (string)
              The response strings given by the modem  when  con-
              nection  fails.   Default  values:  NO  CARRIER, NO
              DIALTONE, BUSY, VOICE (respectively)

       phonelistFile (string)
              The name of  the  phone  list  (dialing  directory)
              file.  See  the  included example to learn how this
              file should be formatted.  Default value: phonelist

       postConnectAction (string)
              Specifies  a simple or compound action that will be
              executed after a connection to  a  remote  host  is
              made.  This  action will be executed before running
              any script attached to that  host  in  the  dialing
              directory. All actions here have to be synchronous.
              Refer to the section entitled SeQuickKeys below for
              a description of available actions.  Default value:
              Beep();

       protocolsFile (string)
              The name of the protocols  file.  This  file  tells
              Seyon  what  file transfer protocols are available.
              The user will be promted with a list based on  this
              file   when  file  transfer  is  to  be  initiated.
              Default value: protocols

       quickKeyX
              Refer to the section entitled SeQuickKeys below.

       rtsctsFlowControl (boolean)
              Whether Seyon should turn on RTS/CTS hardware  flow
              control.  Make sure the modem is set to use this as
              well.  Default value: off

       scriptDirectory (string)
              Seyon's script directory. When looking for scripts,
              Seyon  will  first  try this script directory, then
              the current directory.  Default  value:  defaultDi-
              rectory

       showFunMessages (boolean)
              Whether to display funny messages when Seyon has no
              other important information  to  show.  Seyon  will
              display  those messages at an interval specified by
              the funMessagesInterval resource when there  is  no
              other  important information to convey to the user.
              To  disable  the  display  of  fun  messages,  this
              resource has be set to off.  Default value: on

       startupAction (string)
              Specifies  a simple or compound action that will be
              executed on startup. This action is executed  prior
              to  running  any script (in case the -script switch
              is given) or  dialing  any  entry  of  the  dialing
              directory (in case the -dial switch is given or the
              resource dialAutoStart is enabled).  You  can  make
              Seyon  open  the dialing directory automatically on
              startup  by  using  the  simple  action  ``OpenWid-
              now(Dial);''  as  a  constituent  of  this  complex
              action stack.  Note that running the startup script
              is  just  a special case of this resource. Refer to
              the section entitled SeQuickKeys for a  description
              of   available   actions.    Default   value:  Run-
              Script(startup);

       startupFile (string)
              Seyon's startup file. Seyon will execute  all  com-
              mands in this file upon startup. This file can have
              any commands acceptable  as  script  commands.  The
              most useful command to put here is the set command,
              to  set  the  various  communications   parameters.
              Default value: startup

       stripHighBit (boolean)
              Whether  to strip the high (eights) bit from incom-
              ing characters. If set to on, the high bit  of  all
              incoming  characters  will  be stripped, which will
              make an  8-N-1  setting  behave  like  7-N-1,  even
              though  eight  bits  are  used  for each character.
              Default value: off

       xonxoffFlowControl (boolean)
              Whether Seyon should turn on XON/XOFF software flow
              control.  Default value: off

SEQUCKKEYS
       Seyon  allows  the  user  to  have  custom buttons, called
       SeQuickKeys  (z  quickies),  to  which  actions   can   be
       attached.  SeQuickKeys  provide a convenient way via which
       the user can invoke frequently-used operations by a  singe
       mouse   click.   SeQuickKeys  are  specified  through  the
       resources quickKeyX, where X is an  integer  corresponding
       to  the order at which that SeQuickKey is to appear on the
       command center.  Relevant subparts of  that  resource  are
       visible, action, and label. Here is an example:
              Seyon*quickKey3.visible: on
              Seyon*quickKey3.action: FileTransfer(1,file); Beep();
              Seyon*quickKey3.label: Upload

       The  first line specifies that SeQuickKey3 should be visi-
       ble. The second line specifies the  action  bound  to  the
       SeQuickKey  (in  this  case,  a  compound action), and the
       third line specifies the label for that SeQuickKey's  but-
       ton.  Other  subparts  can  also be specified in a similar
       fashion (e.g.  background, foreground, ..etc.)

       Actions can be  either  simple  or  compound.  A  compound
       action  consists  of  a stack of simple actions and can be
       used as simple mini-script.  Examples:

       +o Set(idleGuard,on); DialEntries(Default);
       +o Echo("Uploading files..."); Transmit(rz); \
             FieTransfer(1,"*.ico $HOME/acct.wks"); Echo(Done);
       +o OpenWindow(Dial); DialEntries("2 5 6");
       +o Echo("Goodbye.."); Hangup(); Quit();
       +o Set(baud,9600); ManualDial("555-5555");
       +o Echo("Will upload..."); ShellCommand("$sz *.wks");
       +o Set(parity,0); RunScript(login.scr); Echo(Finished);

       The following is a list of actions  Seyon  currently  sup-
       ports. Asterisks designate asynchronoous actions. Brackets
       designate optional arguments.

       Beep();
              Rings the bell making a short beep.

       CloseWindow(window [,...]);
              Closes (dismisses) the given windows. Currenly  the
              only  valid  argument to this action is Dial, which
              corresponds to the dialing idrectory window.  Exam-
              ple: CloseWindow(Dial);

       DialEntries(entries-list);*
              Dials  entries in the dialing directory correspond-
              ing by order to the given  list.  Entries  will  be
              dialed  as  if  the  user  had selected them on the
              dialing directory. Entries will be  dialed  without
              opening  the  dialing  directory.  You  can use the
              action  ``OpenWindow(Dial);''  and  stack  the  two
              actions  in a compound action if you want the dial-
              ing directory to be opened.
              The list must be quoted if it consists of more than
              one entry, and entries should be separated by white
              space, not commas.  If the list  consists  of  just
              the word ``Default'', then the entries given by the
              resource defaultPhoneEntries will be dialed,  refer
              to  the  description  of  that  resource  for  more
              details.
              The most common use of this action is  attach  fre-
              quesntly-dialed  hosts to SeQuickKeys, making dial-
              ing those hosts  a  one-click  operation.  If  this
              action  is not the last in a compound action stack,
              actions specified by the resource postConnectAction
              may  not  work properly.  Examples: DialEntries(2);
              DialEntries("2 4 5"); DialEntries(Default);

       DivertFile([file]);*
              Sends the given file to the remote host as  a  text
              upload.  If  the  optional argument ``file'' is not
              specified, Seyon will pop up a  dialog  box  asking
              for  the  file name. In the latter case this action
              is similar to clicking Divert from the Misc window.
              Examples:    DivertFile("/tmp/acct.wks");   Divert-
              File();

       Echo([string]);
              Echos the given string to the  terminal.  Does  not
              send  it  to  the modem (use Transmit for that). If
              the string consists of more than one word, it  must
              be  quoted.  Note  that unlike the shell command of
              the same name, this command does  not  accepts  the
              switch -n but always appends newline to the string.
              If the argument is omitted, an empty line  will  be
              echoed. Examples: Echo(Hello); Echo("Hello there");
              Echo();

       FileTransfer(entry, [file-list]);*
              Executes the  transfer  protocol  corresponding  by
              order  in  the  trasfer console (protocols file) to
              ``entry''. If that protocol requires  a  file  name
              and  file-list is omitted, Seyon will pop up a dia-
              log box asking for the  file.  Otherwise  file-list
              will  be  passed to that protocol. The list must be
              quotes if it consists of more  than  one  word  and
              items  in it should be separated by white space. It
              can contain wild cards and shell  variables.  Exam-
              ples:   FileTransfer(1);  FileTransfer(2,acct.wks);
              FileTransfer(2,"*.wks $HOME/acct.wks");

       Hangup();
              Disconnects the line. Does not pop up  a  confirma-
              tion box.

       IconifyWindow(window [,...]);
              Iconifies  the  given  windows.  Valid arguments to
              this action are Main, Dial, and Term, corresponding
              respectively  to the command center, dialing direc-
              tory, and terminal emulator windows. When the argu-
              ment  is  Term,  this  action will work only if the
              terminal emulator  sets  the  envirenment  variable
              WINDOWID,  like  xterm  does. Examples: IconifyWin-
              dow(Main,Dial,Term); IconifyWindow(Dial);

       ManualDial([number]);*
              Dials a number as if the  Manual  button  had  been
              clicked  from  the dialing directory. If ``number''
              is specified, it will be  dialed  directly  and  no
              dialog box will be popped up asking for the number.
              Examples: ManualDial(555-5555); ManualDial();

       Message([string]);
              Echos the  given  string  to  the  message  box  of
              Seyon's command center (main window). If the string
              consists of more than one word, it must be  quoted.
              If  the  argument is omitted, an empty line will be
              echoed.  Examples:  Message(Hello);  Message("Hello
              there"); Message();

       OpenWindow(window [,...]);
              Opens  each  of  the given windows by popping it if
              closed or de-iconifying it if in an  iconic  state.
              Valid  arguments to this action are Main, Dial, and
              Term, corresponding  respectively  to  the  command
              center,  dialing  directory,  and terminal emulator
              windows. When the argument  is  Term,  this  action
              will  work  only  if the terminal emulator sets the
              envirenment variable  WINDOWID,  like  xterm  does.
              Examples:    OpenWindow(Main,Dial,Term);   OpenWin-
              dow(Dial);

       Quit();
              Exits Seyon completely and returns  to  the  shell.
              Does not pop up a confirmation box.

       RunScript([script-name]);*
              Executes  the script given by the file script-name.
              The script will be executed  as  if  the  user  had
              selected  it  via the Script button. If script-name
              is omitted, a dialog box will be popped  up  asking
              for  the  script  name.  This  is  a very versatile
              action, as many remote and local commands or series
              of commands can be performed by attaching appropri-
              ate  scripts   to   SeQuickKeys.   Examples:   Run-
              Script(login.scr); RunScript();

       Set(parameter, value);
              Sets  the  specified  parameter to the given value.
              Can be  used  to  set  the  various  communications
              parameters.  Available  parameters are listed under
              the    script    command    ``set''.      Examples:
              Set(baud,9600);  Set(parity,0); Set(idleGuard,off).

       ShellCommand(shell-command);*
              Executes the given shell  command  via  the  user's
              shell pointed to by the SHELL environment variable,
              or /bin/sh if that environment variable is not set.
              Note that the command must be quoted if it consists
              of more than one word. If the first non-space  let-
              ter  of  the  command  is the character ``$'', then
              standard input and standard output  will  be  redi-
              rected  to to the modem. This action can be used to
              execute any external  program  from  withen  Seyon.
              Example: ShellCommand(ls); ShellCommand("$cd $HOME;
              sz -vv *.wks");

       Transmit(string);
              Transmits the given string to the remote host.  The
              string  must  be quoted if it consists of more than
              one word. The string is transmitted as is (no  case
              conversions are performed). No newline character or
              carriage return is appended to the string, use  the
              prefix  characters  for that (e.g. ^M, ^J). See the
              discripttion of the script command ``transmit'' for
              more details. Example: Transmit(ls^M); Transmit("ls
              -CF^M");

SCRIPT LANGUAGE
       Script files can automate some tedious tasks such as  log-
       ging  into  a system.  A script file is an ascii text file
       and may be entered or edited using any standard text  edi-
       tor.

       The  script  file is read line by line.  Empty lines (con-
       sisting of white space only) are  ignored.   Comments  are
       lines whose first non-space character is a pound sign (#).

       The script processor  reads  each  script  line,  ignoring
       leading  white  space,  into  words.  A word is defined as
       either:
              +o a  sequence  of  characters  delimited  by  white
              space, or
              +o  a  sequence  of characters enclosed in single or
              double quotes.

       The first word of a script file is considered the  command
       word.   If  the  last  character  of the command word is a
       colon (:), the line is  considered  to  be  a  label  (the
       object  of a goto statement).  Otherwise, it is assumed to
       be a script command and is interpreted  as  such.  Command
       words are case insensative.

       Some commands take one or more arguments. Each argument is
       parsed as a single word as defined above.  If  blanks  are
       required in an argument, the argument must be quoted using
       single or double quotes.

   Script Command List
       Below is the description of all commands that may be  used
       in the Seyon script language:

       capture on|off (currently may not work)
              The  command  capture  on  will enable capture. All
              characters received during waitfor processing  will
              be  appended  to the capture file. The command cap-
              ture off will close the capture file.  This setting
              does  not  currently  extend to terminal mode. This
              may be offered in a later release.

       debug on|off
              If the argument is on, all subsequent command lines
              processed  will  be  displayed on the local screen.
              The exception to this is lines containing a  trans-
              mit  command.  These  lines  will just print TRANS-
              MIT..., so that passwords, etc. can  be  protected.
              If  the  argument is off, scripts will execute qui-
              etly (this is the default setting).

       dial &lt;number>
              Dial the specified number.  Seyon supports  generic
              "Hayes"  compatible  modems for dialing.  Note that
              this command requires an actual phone  number.  The
              phonebook is not used for this function.

       echo &lt;string>
              Echos  the  given  string to the terminal. Does not
              send it to the modem (use transmit  for  that).  If
              the string contains spaces, it must be quoted. Note
              that unlike the shell command  of  the  same  name,
              this  command  does  not  accepts the switch -n but
              always appends newline to the string.

       exit   Terminates the script file  prior  to  the  end  of
              file. Returns to terminal mode.

       flush  Flushes  the  modem,  i.e. discards data written to
              the modem but not transmitted and data received but
              not read.

       goto &lt;label>
              Goes  to the specified label in the script file and
              continues execution from that point. The label  may
              either precede or follow the actual goto statement.
              A label is any command word whose last character is
              a colon (:).

       hanup  Hangups up the line and disconnects from the remote
              host.

       if, else, endif
              Syntax:
              if <condition>
                      <statements>
              [else
                      <statements>]
              endif
              Conditionally executes statements based  on  speci-
              fied condition. Seyon supports the following condi-
              tions:
              waitfor: true if the last waitfor command was  suc-
              cessful.
              linked:  true  if this script was executed from the
              dialing directory.
              Conditions may be negated using the prefix  not  or
              the character !:
              !waitfor:  true  If  the last waitfor command timed
              out.
              not waitfor: same as !waitfor above
              The else and endif keywords must  appear  on  their
              own lines. If statements may not be nested.

       pause &lt;time>
              Suspends  execution of the script for the specified
              number of seconds.  This is usually used for timing
              considerations;  for  example,  waiting a couple of
              seconds after receiving  the  connect  message  and
              typing ^C to CompuServe.

       purge  Reads  and  discards all data coming from the modem
              for the duration of one second.

       quit   Terminates the script and exits the  whole  program
              (returns to the shell).

       redial Redials  the last number dialed using the dial com-
              mand.

       send_break
              Sends a BREAK signal to te remote host.

       set &lt;parameter> &lt;value>
              Sets the specified parameter to  the  given  value.
              Can  be  used  to  set  the  various communications
              parameters for each host. The follwoing is  a  list
              of the set keywords that Seyon recognizes. Keywords
              marked with an asterisk set the  current  parameter
              only, not the default one. Refer to the corresponig
              resource (in parentheses below) for details of  the
              function of each keyword.
              baud* (defaultBPS)
              bits* (defaultBits)
              parity* (defaultParity)
              stopBits* (defaultStopBits)
              stripHighBit (stripHighBit)
              newlineTranslation (newlineTranslation)
              del (backspaceTranslation)
              meta_tr (metaKeyTranslation)
              xoff (xonxoffFlowControl)
              rtscts (rtsctsFlowControl)
              autozm (zmodemAutoDownload)
              idleGuard (idleGuard)
              Boolean  keywords  accept  on or off as their argu-
              ment, other keywords accept the same  arguments  as
              the corresponding resources.

       shell &lt;shell-command>
              Executes  the  given  shell  command via the user's
              shell pointed to by the SHELL environment variable,
              or /bin/sh if the environment variable SHELL is not
              set. Note that the command must  be  quoted  if  it
              consists  of  more than one word. If the first non-
              space letter of the command is the  character  '$',
              then  standard  input  and  standard output will be
              redirected to to the modem.  This  command  can  be
              used  to  execute  any external program from withen
              Seyon. Example: shell "cd /usr/dl; rz -vv".

       transmit &lt;text>
              Transmits the specified text to  the  remote  host.
              The text argument should be quoted (using single or
              double quotes) if there are spaces to be  transmit-
              ted. The text is transmitted as is (no case conver-
              sions are performed).
              Prefix characters:
              ^ is the Control character prefix: the next charac-
              ter  is made into a control character. For example,
              ^M is carriage return  (0x0D)  and  ^J  is  newline
              (0x0A).
              \  is quote prefix: the next character is transmit-
              ted verbatim. For example, \^ would transmit a lit-
              eral ^.

       tty on|off
              This  command  specifies  whether or not characters
              received from the modem will be  displayed  on  the
              local  terminal.   Since  the  only  time  that the
              script processor looks at the receive queue is dur-
              ing waitfor processing, the displays may look a bit
              erratic.  Use the tty off command to disable  local
              display  of  received characters during script pro-
              cessing.

       waitfor &lt;text> [timeout]
              Waits for the specified text  to  appear  from  the
              modem.  The  text  argument should be quoted (using
              single or double quotes) if there are spaces to  be
              transmitted.
              Special  characters are interpreted the same as for
              transmit.  If the timeout  argument  is  specified,
              Seyon  will  wait  that  number  of seconds for the
              string to appear.  If no timeout  is  given,  Seyon
              defaults to 30 seconds.
              During  waitfor processing, characters received (up
              to and including the last character  found  in  the
              text  or  in the timeout) can be captured to a disk
              file (if capture on is specified), and/or displayed
              to the screen (if tty on is specified).

       when [&lt;string-to-expect> &lt;string-to-send>]
              Sends string-to-send whenever it encounters string-
              to-expect while waiting in a waitfor command, what-
              ever   the  number  if  times  string-to-expect  is
              encountered.
              This is is useful if the order of prompts  expected
              is  not  known  before  hand. For example, some BBS
              systems  (notably  PCBoard)  change   the   prompts
              depeding on the time of call, and a complete script
              for such boards cannot  be  written  using  waitfor
              only.
              As  many  number of when commands as desired can be
              specified. A when command with no arguments  clears
              all  outstanding  when  commands.  waitfor commands
              take precedence over when commands if  they  expect
              the same string.
              A typical use of this command would be:
                      when "Continue?"       "y^M"
                      when "More?"           "n^M"
                      waitfor "BBS Command?"
                      when
              The  above script keeps sending "y^M" to every Con-
              tinue?" prompt and "n^M" to  every  "More?"  prompt
              until the the string "BBS Command?" is encountered.
              The lasy when clears all outstanding when commands.

FILES
       The default Seyon files are startup, phonelist, and proto-
       cols.  These have to be in the current directory,  Seyon's
       default  directory  (~/.seyon),  or the user's home direc-
       tory. The default  script  directory  is  Seyon's  default
       directory. All of these files and directories can be over-
       ridden by  setting  the  appropriate  resources.  See  the
       description  of those resources as well as the description
       of the files above.

SEE ALSO
       xterm(1) resize(1) 

COPYRIGHT
       Seyon is Copyright (c) 1992-1993 of  Muhammad  M.  Saggaf.
       Seyon  is  not public domain. Permission is granted to use
       and distribute Seyon freely for any use and to sell it  at
       any  price  without  reference to the copyright owner pro-
       vided that in all above cases Seyon is intact and  is  not
       made  part  of  any program either in whole or in part and
       that this copyright notice is included with Seyon. Permis-
       sion  is  also granted to modify the source as long as the
       modified source is not distributed.

BUGS
       The script command 'set port' is  not  supported  in  this
       release.  If  the  action DialEntries is not the last in a
       compound action stack, actions specified by  the  resource

       postConnectAction may not work properly.

       If  Seyon  is  hung,  it  can  be  made to exit cleanly by
       killing its main  process  by  signal  15  (SIGTERM)  from
       another  shell.  Seyon's  main process is the one that has
       the lowest PID (Process ID) number.  For  example,  if  ps
       shows:
                1100 p0 S     0:04 seyon -noemulator
                1101 p0 S     0:00 seyon -noemulator
                1102 p0 S     0:38 seyon -noemulator

       Then  ``kill -15 1100'' or ``kill 1100'' would cause Seyon
       clean up and exit gracefully.

AUTHOR
       Muhammad M. Saggaf, alsaggaf@mit.edu. Snail Mail: Muhammad
       Saggaf, Box 9863, Dhahran 31311, SAUDI ARABIA. I apologize
       that I may not be able to respond to all correspondence  I
       receive.

       xcomm 2.2 was written by Eric Coe and Larry Gensch.

ACKNOWLEDGEMENT
       David  Boyce for helpuful suggestions, the Imake file, and
       patches for clean build under gcc -Wall; Joaquim Jorge for
       the  lex/yacc parsing routines contributed by him; and the
       many people who sent me  patches  for  various  platforms:
       Fred  Appleman  (SVR4),  atae@spva.dnet.nasa.gov (Ultrix),
       Alain Hebert (SVR3.2),  Peter  Davies  (Sun  Sparc),  Eric
       Schmidt  (Apollo),  David  Sanderson (AIX), Jonathan Bayer
       (Sun), Jeff Johnson (SVR4), Glenn Geers (SVR4-Esix),  Tony
       Vincent-Sun-Vienna  (Solaris),  Bob  Smith  (SunOS 3.x and
       sgtty interface). (pardon me if I forgot to mention  you).
       I'm  also thankful to all the nice people who sent me sug-
       gestions or bug reports.

       The MultiList widget used  in  the  dialing  directory  is
       written  by the Free Widget Foundation. You can get it and
       other FWF widgets by ftp from a.cs.uiuc.edu.

setxkbmap Home Page User Commands Index sgi2fax