Provided by: orville-write_2.55-3build1_amd64 bug

NAME

       write - write to another user

SYNOPSIS

       write [-ctynsprfSv] [ user [ tty ] ]
       ojot [-ltynsprfSv] [ user [ tty ] ]
       tel [-clynsprfSv] user [ tty ] [message...]

DESCRIPTION

       Note: This is "Orville write", an enhanced version of the standard Unix write program.

       Write copies lines from your terminal to that of another user.  When first called, it sends the message:

            Message from your-logname your-tty ...

       The  recipient  of  the message should write back at this point.  Communication continues until an end of
       file is read from the terminal or an interrupt is sent.  At that point, write writes "EOF (your-logname)"
       on the other terminal and exits.

       The  following protocol is strongly suggested for using write: when you first write to another user, wait
       for him or her to write back before starting to type your message.  Each party should  end  each  message
       with  a  distinctive signal (o for ``over'' is conventional), indicating that the other may reply; oo for
       ``over and out'' is suggested when conversation is to be terminated.  Avoid typing when it is  the  other
       person's turn, as your text will get all garbled with theirs.  Anyway, it's rude.

       The  ojot  command  is  a variation of write which normally sends each character to the other user as you
       type it instead of waiting for you to finish a line before sending anything as write does.

       The tel command sends one line ``telegrams'' and then immediately disconnects.  The message may be  given
       on  the  command lines (in which case it is usually best to quote it).  If you don't put a message on the
       command line, you will be prompted for it.  This is usually the preferable way to invoke tel.

       All three commands are actually the same program, and share much of the same behavior.

       Permission to write may be denied or granted by use of the mesg(1) command.  Your write permissions  upon
       login are installation dependent.  If you write a person who has permissions on, but is currently writing
       someone else, you will be warned of the fact and be given a chance to cancel your  write  request  before
       interupting  the  other  conversation.   If you write a person who is running a command under amin(1) you
       will be warned similarly.

       You can always send messages to  people  who  are  currently  writing  to  you,  even  if  there  message
       permissions  are off.  If you have sent a person a tel message, then that person can write or telegram to
       you for the next 4 minutes, even if your message permissions are off.   This  means  that  you  won't  be
       sitting  around wondering why someone won't reply, just because you've forgotten to turn your permissions
       on.  It also means that if you don't want someone to be able to talk to you, then you shouldn't  talk  to
       them.  Root may write anyone.

       If  you invoke the write or ojot command with no user name, they will write to whatever user is currently
       writing you.  If no one is writing you, an error message is printed.

       If you invoke the write, ojot, or tel command with the user name '.', they will write  again  to  whoever
       you  wrote to last.  If you haven't written to anyone in this login session, an error message is printed.
       This is especially useful when you are exchanging a series of messages back and forth with tel.

       If you want to write to a user who is logged in more than once, the tty argument may be used to  indicate
       the  appropriate  terminal.   If  the  tty  argument  is not given, the terminal from which you are being
       written will be written to, if there is one.  If not, one of the lines you have write permission to  will
       be  chosen.  If the tty argument is given, the user name can be given as "-", in which case it will write
       to whomever is on that tty, if anyone is.

       On some systems there may be users designated as ``helpers''.  If your system  has  helpers,  then  doing
       ``write  help''  will write to some helper who is not busy.  If more than one helper is available, one is
       selected at random to distribute the workload.  Helpers designate themselves with  the  mesg(1)  command.
       They  are  considered  busy  if they are writing someone else, or if they are running a command under the
       amin(1) program.

       If the character ! , | , or & is found at the beginning of a line, write calls the shell to  execute  the
       rest of the line as a unix command.  If the command began with a ! the output of the command will be sent
       only to your terminal.  If it began with a |, output will be sent only to the  other  person's  terminal.
       If  it began with a & each of you will recieve a copy of the output.  Note that write expands all strange
       control characters before sending them to the other person's terminal, but does not do so for  characters
       echoed back to your terminal.

       Write  provides several command line options.  Actually, the only difference between write, ojot, and tel
       is what default values they have for these options:

       -c     Send each character as it is typed.  Actually, it will not begin doing so until  after  the  other
              party has replied.  Also, if you type a line starting with a ")" then the rest of the current line
              will be held until you hit return and the sent (minus the ")").  When this option used,  typing  a
              control-R will reprint the text of the line you are currently typing, and control-W will erase the
              last word you typed, even if your unix system doesn't usually support these.  In the ojot  command
              this is the default.

       -l     Send no characters until a full line has been entered.  In the write command this is the default.

       -n     During the duration of this conversation, temporarily turn off your message permissions, so as not
              to allow people other than the person being writen to write you.

       -y     During the duration of this conversation, temporarily turn on your message  permissions,  allowing
              other people to write you after warning them that you are writing someone else.

       -p     Postpone  the receipt of telegrams during the duration of the conversation.  All telegram received
              during the conversation will be saved in your .lastmesg file, and will be displayed when  you  are
              finished.   The  huh(1)  command  can  be  used  in a shell escape to check saved messages without
              leaving write.

       -s     During the duration of this conversation, leave your write permissions unchanged.   This  normally
              the default.

       -r     This  causes  write  to prompt for the root passwd.  If it is given correctly, you will be able to
              write anyone, no matter how his message permissions are set, amd you can override  his  preference
              for write or tel.

       -f     Disallow  piping  input  through  write and disable the '&' and '|' shell escapes.  This is mostly
              meant to be used on 'options' commands in the orville.conf file.  It has been mostly obsoleted  by
              the 'pipes' configuration command.

       -t     Sends  a  one  line message (called a telegram) and then disconnects immediately.  The text of the
              message may be given on the command line, or, if it isn't, you will be prompted  for  it.   Though
              write will attempt to blank out messages given on the command line so they cannot be seen by users
              running w(1) or ps(1), this will not always work, so secret messages should not be placed  on  the
              command line.  This is the default in the tel command.

       -S     Normally  if  you  send  a  telegram to someone who has indicated a preference for writes, you get
              asked if you want to switch to writing, and vice versa.  The -S flag suppresses this question, and
              just makes it quietly fail (unless you are root, in which case it quietly succeeds).

       -v     print the version number.

       The  options  selected  by the writer may in some cases be overridden by the recipient.  You can set your
       preferences for writes versus telegrams, and for  line  mode  versus  character  mode  with  the  mesg(1)
       command.   If  the recipient has set write/telegram preferences, you will be asked if you want to use the
       other if you write him the wrong way.  If you invoke Write with a -S flag, then you will not be asked  if
       you  want to switch.  Only root can actually override the recipient's preferences.  For regular users, if
       you decline to switch, the command fails.

       If the recipient has set character/line mode preferences, a message will  be  printed  and  you  will  be
       forced into his or her prefered mode.

CONFIGURATION

       The  orville.conf file contains configuration information for Orville write and the associated utilities.
       Lines starting with '#' and blank lines are ignored.  Other lines contain the commands listed below:

       answertel <seconds>
                 Normally you can send telegrams to a person for four minutes (240 seconds) after they sent  you
                 a telegram, even if their message permissions are off.  This command can be used to set size of
                 that window to other values.

       disconnect [y|n]
                 If disconnect is enabled the 'mesg d' and 'mesg N' commands  can  be  used  by  the  writee  to
                 disconnect everyone currently writing them.  (See mesg(1)).  It is enabled by default.

       exceptions [y|n]
                 If  exceptions  are  enabled  the  'mesg ye' and 'mesg ne' commandsa can be used to limit which
                 particular users can and cannot write you (See mesg(1)).  It is enabled by default.

       fromhost [y|n]
                 If this flag is set, then message  announcement  banners  will  include  the  hostname  of  the
                 sender's  machine (and the reciever's since write does not allow interhost communications).  It
                 is disabled by default.

       helperlist <path>
                 If this flag is set, then only people whose logins appear in the given  file  may  be  helpers.
                 Otherwise, anyone may be.  It is disabled by default.

       helpername <name>
                 By  default  you  get  help  by doing 'write help'.  If you want to use some keyword other than
                 'help', use this command to define it.

       helpers [y|n]
                 Can people designate themselves to be helpers, and should 'write help' work?  By default, no.

       log <path>
                 What file should logging be done in?  If not defined, or if it is defined and the file does not
                 exist, then no logging will be done.

       loglevel <num>
                 How  much  logging  should  be done?  Level 0 means none.  Level 1 means only log help requests
                 (with information about whether they succeeded or not).   Level  2  means  logging  a  one-line
                 description  of  each  write  connection  made.   Of course, no logging is done if 'log' is not
                 defined or does not exist.  No content of any write conversation is ever logged.   The  default
                 is 1.

       nohelp <path>
                 If  someone  does  'write help', but no helpers are found, this file is displayed.  Normally it
                 has information on other places to get help.  If not defined, nothing is printed.

       pipes [y|n]
                 If turned off, this disallows piping data through write, so you can't do escapes.  This may  be
                 necessary  if  many users are using write to annoy other users by sending large chunks of data.
                 It defaults on.

       novicehelp <path>
                 If the environment variable NOVICE is defined, then print the  contents  of  this  file  before
                 running write.  If not defined, nothing is printed.

       options <command-name> -<flags>...
                 Set  default  options  for  different links to the write program.  For example, if you have the
                 line 'options jot -c' and you make a link to the write  program  named  'jot',  then  jot  will
                 default  to  character mode instead of line mode.  If command-name is '*', then all links (even
                 ones created by users) get that option.

       wrthist <path>
                 This is the full pathname of the 'wrthist' file which maintains information about user's recent
                 messages.  It is used to limit telegram flooding attacks, and allow replies to telegrams during
                 the four minute window.  By default it is in the same directory as the

       wrttmp <path>
                 This is the full pathname of the 'wrttmp' file which maintains information about user's current
                 state.  By default it is in the same directory as the

AUTHOR

       Jan Wolter

SEE ALSO

       mail(1), mesg(1), who(1), huh(1), finger(1), amin(1), helpers(1).