Man Linux: Main Page and Category List

NAME

       ytalk - A multi-user chat program.

SYNOPSIS

       ytalk [-s] [-Y] [-E] [-i] [-q] [-v] [-h hostname_or_ip] username...

DESCRIPTION

       YTalk 3.3.0

       YTalk is in essence a multi-user chat program.  It works almost exactly
       like the UNIX talk program and even communicates  with  the  same  talk
       daemon(s), but YTalk allows for multiple connections.

       The username field may be formatted in several different ways:
            name          - some user on your machine
            name@host     - some user on a different machine
            name#tty      - some user on a particular terminal
            name#tty@host - some user on a particular tty on a
                            different machine
            name@host#tty - same as "name#tty@host"
            aliasname     - an alias defined in your .ytalkrc

       You can specify multiple user names on the command line, ie:

            ytalk george fred@hissun.edu marc@grumpy.cc

       The -s option starts your YTalk window in a shell.

       The  -Y  option  requires  a  capital Y or N as an answer to any yes/no
       question.

       The -E option requires you to press  escape  once  before  answering  a
       yes/no question (for people who type looking at the keyboard).

       The  -i  option  disables  the  auto-invite port (meaning you won’t see
       "talk to blah@blah.com", but your talk daemon will beep you instead).

       The -q option causes YTalk to prompt you before quitting.

       The -v option prints the program version and exits.

       The -h option specifies the name or address of the local machine;  this
       is  useful  on multi-homed machines, or virtual hosts, to specify which
       network interface to use for communication.

       For each user on the command line, YTalk will attempt to connect to the
       talk daemon on the specified user’s host and determine if that user has
       left an invitation for you to call.  If not, YTalk leaves an invitation
       for  him  and  tells  his  talk  daemon  to send an announcement to his
       screen.  There is no dedicated YTalk daemon.  Right now, YTalk is  able
       to  communicate  with BOTH existing versions of UNIX talk daemons.  For
       any particular host, YTalk will attempt  to  communicate  with  a  talk
       daemon  the  caller’s  host  also  supports.   If the two hosts have no
       daemon in common, then UNIX talk  will  not  function  at  all,  but  a
       connection is possible through (and only through) YTalk.

       Once a connection has been established between two users, they can chat
       back and forth to their hearts’ content.  The connection is  terminated
       when one of them hits control-C or selects quit off the main menu.

       YTalk is perfectly compatible with UNIX talk and they can even converse
       with each other without any problems.  However, many of the features of
       YTalk  can  only  operate  when you are connected to a user who is also
       using YTalk.  For the rest of this document, it will  be  assumed  that
       all connected users are using YTalk, unless otherwise stated.

       If  you  specified  more  than one user on the YTalk command line, then
       YTalk will process and add  each  user  to  the  conversation  as  they
       respond  to your invitation.  As each new user enters the conversation,
       the screen is further subdivided into smaller and smaller windows,  one
       for  each  connected user.  Right now, the number of connected users is
       limited by the number of lines on your terminal (or window),  for  each
       connected user needs at least three lines.

       As  each  new  user  is  added to the conversation, YTalk will transmit
       information about that user to all other connected YTalk users so  that
       their screens will also subdivide and incorporate the new user.  If the
       new user is using UNIX talk, then information about  him  will  NOT  be
       transmitted,  for  his  screen  would  be  unable  to  accept  multiple
       connections.  I have given brief  thought  to  allowing  at  least  the
       output  of  UNIX  talk  users  to be transmitted to all connected YTalk
       users, but I have not written any code to do so.  Note that even though
       UNIX  talk cannot handle multiple connections, it is still possible for
       YTalk to handle multiple UNIX "talk" connections.  For example,  george
       (using  YTalk)  could  communicate  with  fred and joe (both using UNIX
       talk), but fred and joe would be unaware of each other.  The  best  way
       to  understand  the  limitations that UNIX "talk" places on YTalk is to
       test various connections between the two and see how things work.

ESCAPE MENU

       Whenever you are using YTalk, you can hit the ESCAPE key to bring up  a
       menu which at this moment has these options:

               a: add a user
               d: delete a user
               k: kill all unconnected
               o: options
               r: rering all
               s: shell
               u: user list
               w: output user to file
               q: quit

       By  choosing option "a", you are given the opportunity to type the name
       of any user you wish to include into the  conversation.   Again,  YTalk
       will  accept  an  invitation from that user if an invitation exists, or
       will leave an invitation and ring the given user.

       By choosing option "d", you can select the  name  of  a  connection  to
       terminate.

       By choosing option "k", you can make YTalk forget all pending (waiting)
       connections.

       By choosing option "o", you can view and/or modify  any  of  the  YTalk
       options.  See the OPTIONS section below for a list of YTalk options.

       By  choosing  option "r", all users that have not yet responded to your
       talk invitation will be re-rung.

       By choosing option "s", you can invoke a shell in  your  YTalk  window.
       All  other  users  will  see  what  happens  in your shell.  YTalk will
       automatically resize your window down  to  the  size  of  the  smallest
       window  you  are connected to, in order to ensure that all users always
       see the same thing.

       The "u" option displays a list of connected and unconnected  users,  as
       well  as  their window sizes and what version of talk software they are
       running.

       By choosing option "w", you can select any connected user and type  the
       name of a file, and all further output from that user will be dumped to
       the specified file.  The file, if it exists, will be  OVERWRITTEN.   By
       choosing  "w"  and the same user again, further output to the file will
       be terminated.

       Oh, one other thing:  when user A attempts to ytalk to user B, but user
       B  is already ytalking with user C, user A’s YTalk program will realize
       that user B is already using YTalk, and will communicate with user  B’s
       YTalk program directly in order to initialize the conversation.  User B
       will see a nice windowed message like:

            Do you wish to talk with user A?

       and he will be prompted for a yes/no answer.  This, in my  opinion,  is
       much  preferable  to  blitting  the announcement message and messing up
       user B’s screen. The command-line option "-i" turns this off.

RUNTIME OPTIONS

       When you select Options off  of  the  main  menu,  you  are  given  the
       opportunity to edit the YTalk options.  The current options are:

            s: turn scrolling [off/on]
            w: turn word-wrap [off/on]
            i: turn auto-import [off/on]
            v: turn auto-invite [off/on]
            r: turn reringing [off/on]
            p: [don’t] prompt before rerings
            q: [don’t] prompt before quitting

       If  scrolling  is  turned  on, then a user’s window will scroll when he
       reaches the bottom, instead of wrapping back around to the top.

       If word-wrap is turned on, then any word  which  would  overextend  the
       right  margin  will  be  automatically  moved  to the next line on your
       screen.

       If auto-import is turned on, then YTalk will assume that  you  wish  to
       talk  to  any  users  which  connect  to  other  YTalk  users which are
       connected to you.  That last  sentence  does  make  sense;  try  again.
       YTalk  will  add  these  users  to  your session automatically, without
       asking you for verification.

       If auto-invite is turned on, then YTalk will automatically  accept  any
       connection requested by another user and add them to your session.  You
       will not be asked for verification.

       If rering is turned on, then YTalk will re-ring any user who  does  not
       respond to your invitation within 30 seconds.

       If  prompt-rering  is  turned  on,  then  YTalk will ask you before re-
       ringing a user.

       If prompt-quit is turned on, then YTalk will wait  for  keyboard  input
       before quitting.

       Any  of  these  options  can be set to your preference in your .ytalkrc
       file, as described below.

YTALK STARTUP FILE

       If your home directory contains a file named ".ytalkrc" then YTalk will
       read  this  file while starting up.  All YTalk runtime options, as well
       as some startup options, can be set in this file.

       SETTING BOOLEAN OPTIONS

       Boolean options can be pre-set with the following syntax:

            turn option [off | on]

       where option is one of scrolling ,  word-wrap  ,  auto-import  ,  auto-
       invite  ,  rering , prompt-rering , prompt-quit , caps , escape-yesno ,
       noinvite , ignorebreak , or beeps .  Setting these options  works  just
       like described above.  For example, one could enable word-wrap with the
       line:

            turn word-wrap on

       ALIASES

       You can setup aliases so you don’t have to type the full address of the
       user you want to ring.  There are three types of aliases:

       alias aliasname@ username@
                   Replaces  aliasname@host with username@host for every host.
                   The ’@’ at the end of username@ is not required.

       alias @aliashost @realhost
                   Replaces user@aliashost with user@realhost for every  user.
                   The ’@’ at the beginning of @realhost is not required.

       alias aliasname user@host
                   Replaces aliasname with user@host.

       SELECTING INTERFACES AND VIRTUAL HOSTS

       On machines with multiple IP addresses (multiple interfaces, or virtual
       hosts), you can choose the default address  to  use  for  communication
       with  YTalk,  using  the  localhost command in your .ytalkrc file.  The
       syntax is:

       localhost hostname-or-IP-address

       SETTING RE-ADDRESS MODES

       The purpose of readdressing is to allow YTalk connections across point-
       to-point network gateways where the local machines know themselves by a
       different address (and typically hostname) than  the  remote  machines.
       The basic syntax of a readdress command is this:

            readdress from-address to-address domain

       The  readdress  statement  simply  makes a claim that the machine(s) in
       domain communicate with the machine(s) at  from-address  by  sending  a
       packet  to  to-address  .   Since  most  users  have  no  use  for this
       whatsoever, I’ll describe it only briefly.

       THIS IS NOT ROUTING.  For example, my machine at home is connected  via
       PPP  to  the  network  at  my  office.   My  machine at home thinks its
       ethernet address is 192.188.253.1 and its hostname  is  "talisman.com".
       The  network  at  my  office  has  the  address 192.67.141.0.  When I’m
       connected via PPP, my home machine is placed into the office network as
       address 192.67.141.9 with hostname "talisman.austin.eds.com".

       YTalk  needs  to  know that if it is running on domain 192.67.141.0 and
       receives  packets  from  192.188.253.1  that  it  should   respond   to
       192.67.141.9,  not 192.188.253.1.  right?  right.  okay, okay, okay.  I
       put this line into my .ytalkrc on both ends:

            readdress talisman talisman.austin.eds.com 192.67.141.0

       On my home end, this translates to:

            readdress 192.188.253.1 192.67.141.9 192.67.141.0

       which tells my home  machine  to  advertise  itself  as  "192.67.141.9"
       instead  of  "192.188.253.1"  when YTalk-ing to machines on the network
       "192.67.141.0".  On the office end, the  readdress  command  translates
       to:

            readdress 192.67.141.9 192.67.141.9 192.67.141.0

       which the office machines basically ignore.

       Note  that,  in  this  case, the problem could also have been solved by
       telling the home YTalk to use the 192.67.141.0  interface,  when  doing
       YTalk requests across the PPP link.

FILES

       /usr/local/etc/ytalkrc
           System-wide defaults file.

       ~/.ytalkrc
           User’s local configuration file.  This file overrides
           options set in the system ytalkrc file.

CURRENT MAINTAINER

       Andreas Kling
       <keso@impul.se>

ORIGINAL AUTHOR

       Britt Yenne

PAST MAINTAINERS

       Roger Espel Llima
       Jessica Peterson

CONTRIBUTORS

       Special  thanks  to Carl Edman for numerous code patches, beta testing,
       and comments.  I think this guy spends as much time on ytalk as I do.

       Special thanks to Tobias  Hahn  and  Geoff  W.  for  beta  testing  and
       suggestions.

       Thanks to Sitaram Ramaswamy for the original YTalk manpage.

       Thanks to Magnus Hammerin for Solaris 2.* support.

       Thanks to Thilo Wunderlich for Linux support.

       Thanks to Jonas Yngvesson for aside messages in X.

       Thanks to Andreas Stolcke for fixing the X resource database calls.

       Thanks to Pete Wenzel for fixing the #elif directive.

       Thanks  to  John  Vanderpool,  Shih-Chen  Huang,  Andrew  Myers, Duncan
       Sinclair, Evan McLean, Larry Schwimmer, J. Adam Hawkes, and Mark Musone
       for comments and ideas.

       Thanks to Steve McIntyre for patches and ideas.

       Thanks to Katarina Erkkonen for CVS hosting.

       Thanks to Alexander Rigbo for patches, testing and many good ideas.

BUGS

       Please   mail   any   bugs  to  the  maintainer  of  this  version,  at
       <keso@impul.se>

SEE ALSO

       http://www.impul.se/ytalk/

LICENSE

       This program is free software; you can redistribute it and/or modify it
       under  the  terms of the GNU General Public License as published by the
       Free Software Foundation; either version 2 of the License, or (at  your
       option) any later version.

       This  program  is  distributed  in the hope that it will be useful, but
       WITHOUT  ANY  WARRANTY;  without   even   the   implied   warranty   of
       MERCHANTABILITY  or  FITNESS  FOR  A  PARTICULAR  PURPOSE.  See the GNU
       General Public License for more details.