1YTalk(1)                    General Commands Manual                   YTalk(1)
2
3
4

NAME

6       ytalk - A multi-user chat program.
7

SYNOPSIS

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

DESCRIPTION

12       YTalk 3.3.0
13
14       YTalk is in essence a multi-user chat program.  It works almost exactly
15       like the UNIX talk program and even communicates  with  the  same  talk
16       daemon(s), but YTalk allows for multiple connections.
17
18       The username field may be formatted in several different ways:
19            name          - some user on your machine
20            name@host     - some user on a different machine
21            name#tty      - some user on a particular terminal
22            name#tty@host - some user on a particular tty on a
23                            different machine
24            name@host#tty - same as "name#tty@host"
25            aliasname     - an alias defined in your .ytalkrc
26
27       You can specify multiple user names on the command line, ie:
28
29            ytalk george fred@hissun.edu marc@grumpy.cc
30
31       The -s option starts your YTalk window in a shell.
32
33       The  -Y  option  requires  a  capital Y or N as an answer to any yes/no
34       question.
35
36       The -E option requires you to press  escape  once  before  answering  a
37       yes/no question (for people who type looking at the keyboard).
38
39       The  -i  option  disables  the  auto-invite port (meaning you won't see
40       "talk to blah@blah.com", but your talk daemon will beep you instead).
41
42       The -q option causes YTalk to prompt you before quitting.
43
44       The -v option prints the program version and exits.
45
46       The -h option specifies the name or address of the local machine;  this
47       is  useful  on multi-homed machines, or virtual hosts, to specify which
48       network interface to use for communication.
49
50       For each user on the command line, YTalk will attempt to connect to the
51       talk daemon on the specified user's host and determine if that user has
52       left an invitation for you to call.  If not, YTalk leaves an invitation
53       for  him  and  tells  his  talk  daemon  to send an announcement to his
54       screen.  There is no dedicated YTalk daemon.  Right now, YTalk is  able
55       to  communicate  with BOTH existing versions of UNIX talk daemons.  For
56       any particular host, YTalk will attempt to communicate with a talk dae‐
57       mon  the  caller's host also supports.  If the two hosts have no daemon
58       in common, then UNIX talk will not function at all, but a connection is
59       possible through (and only through) YTalk.
60
61       Once a connection has been established between two users, they can chat
62       back and forth to their hearts' content.  The connection is  terminated
63       when one of them hits control-C or selects quit off the main menu.
64
65       YTalk is perfectly compatible with UNIX talk and they can even converse
66       with each other without any problems.  However, many of the features of
67       YTalk  can  only  operate  when you are connected to a user who is also
68       using YTalk.  For the rest of this document, it will  be  assumed  that
69       all connected users are using YTalk, unless otherwise stated.
70
71       If  you  specified  more  than one user on the YTalk command line, then
72       YTalk will process and add  each  user  to  the  conversation  as  they
73       respond  to your invitation.  As each new user enters the conversation,
74       the screen is further subdivided into smaller and smaller windows,  one
75       for  each  connected user.  Right now, the number of connected users is
76       limited by the number of lines on your terminal (or window),  for  each
77       connected user needs at least three lines.
78
79       As  each  new  user  is  added to the conversation, YTalk will transmit
80       information about that user to all other connected YTalk users so  that
81       their screens will also subdivide and incorporate the new user.  If the
82       new user is using UNIX talk, then information about  him  will  NOT  be
83       transmitted,  for his screen would be unable to accept multiple connec‐
84       tions.  I have given brief thought to allowing at least the  output  of
85       UNIX  talk  users to be transmitted to all connected YTalk users, but I
86       have not written any code to do so.  Note that even  though  UNIX  talk
87       cannot  handle  multiple connections, it is still possible for YTalk to
88       handle multiple UNIX "talk" connections.  For  example,  george  (using
89       YTalk)  could communicate with fred and joe (both using UNIX talk), but
90       fred and joe would be unaware of each other.  The best  way  to  under‐
91       stand the limitations that UNIX "talk" places on YTalk is to test vari‐
92       ous connections between the two and see how things work.
93

ESCAPE MENU

95       Whenever you are using YTalk, you can hit the ESCAPE key to bring up  a
96       menu which at this moment has these options:
97
98               a: add a user
99               d: delete a user
100               k: kill all unconnected
101               o: options
102               r: rering all
103               s: shell
104               u: user list
105               w: output user to file
106               q: quit
107
108       By  choosing option "a", you are given the opportunity to type the name
109       of any user you wish to include into the  conversation.   Again,  YTalk
110       will  accept  an  invitation from that user if an invitation exists, or
111       will leave an invitation and ring the given user.
112
113       By choosing option "d", you can select the name of a connection to ter‐
114       minate.
115
116       By choosing option "k", you can make YTalk forget all pending (waiting)
117       connections.
118
119       By choosing option "o", you can view and/or modify  any  of  the  YTalk
120       options.  See the OPTIONS section below for a list of YTalk options.
121
122       By  choosing  option "r", all users that have not yet responded to your
123       talk invitation will be re-rung.
124
125       By choosing option "s", you can invoke a shell in  your  YTalk  window.
126       All  other users will see what happens in your shell.  YTalk will auto‐
127       matically resize your window down to the size of  the  smallest  window
128       you  are connected to, in order to ensure that all users always see the
129       same thing.
130
131       The "u" option displays a list of connected and unconnected  users,  as
132       well  as  their window sizes and what version of talk software they are
133       running.
134
135       By choosing option "w", you can select any connected user and type  the
136       name of a file, and all further output from that user will be dumped to
137       the specified file.  The file, if it exists, will be  OVERWRITTEN.   By
138       choosing  "w"  and the same user again, further output to the file will
139       be terminated.
140
141       Oh, one other thing:  when user A attempts to ytalk to user B, but user
142       B  is already ytalking with user C, user A's YTalk program will realize
143       that user B is already using YTalk, and will communicate with user  B's
144       YTalk program directly in order to initialize the conversation.  User B
145       will see a nice windowed message like:
146
147            Do you wish to talk with user A?
148
149       and he will be prompted for a yes/no answer.  This, in my  opinion,  is
150       much  preferable  to  blitting  the announcement message and messing up
151       user B's screen. The command-line option "-i" turns this off.
152
153

RUNTIME OPTIONS

155       When you select Options off of the main menu, you are given the  oppor‐
156       tunity to edit the YTalk options.  The current options are:
157
158            s: turn scrolling [off/on]
159            w: turn word-wrap [off/on]
160            i: turn auto-import [off/on]
161            v: turn auto-invite [off/on]
162            r: turn reringing [off/on]
163            p: [don't] prompt before rerings
164            q: [don't] prompt before quitting
165
166       If  scrolling  is  turned  on, then a user's window will scroll when he
167       reaches the bottom, instead of wrapping back around to the top.
168
169       If word-wrap is turned on, then any word  which  would  overextend  the
170       right  margin  will  be  automatically  moved  to the next line on your
171       screen.
172
173       If auto-import is turned on, then YTalk will assume that  you  wish  to
174       talk  to  any  users  which connect to other YTalk users which are con‐
175       nected to you.  That last sentence does make sense; try  again.   YTalk
176       will  add these users to your session automatically, without asking you
177       for verification.
178
179       If auto-invite is turned on, then YTalk will automatically  accept  any
180       connection requested by another user and add them to your session.  You
181       will not be asked for verification.
182
183       If rering is turned on, then YTalk will re-ring any user who  does  not
184       respond to your invitation within 30 seconds.
185
186       If  prompt-rering is turned on, then YTalk will ask you before re-ring‐
187       ing a user.
188
189       If prompt-quit is turned on, then YTalk will wait  for  keyboard  input
190       before quitting.
191
192       Any  of  these  options  can be set to your preference in your .ytalkrc
193       file, as described below.
194

YTALK STARTUP FILE

196       If your home directory contains a file named ".ytalkrc" then YTalk will
197       read  this  file while starting up.  All YTalk runtime options, as well
198       as some startup options, can be set in this file.
199
200       SETTING BOOLEAN OPTIONS
201
202       Boolean options can be pre-set with the following syntax:
203
204            turn option [off | on]
205
206       where option is one of scrolling ,  word-wrap  ,  auto-import  ,  auto-
207       invite  ,  rering , prompt-rering , prompt-quit , caps , escape-yesno ,
208       noinvite , ignorebreak , or beeps .  Setting these options  works  just
209       like described above.  For example, one could enable word-wrap with the
210       line:
211
212            turn word-wrap on
213
214       ALIASES
215
216       You can setup aliases so you don't have to type the full address of the
217       user you want to ring.  There are three types of aliases:
218
219       alias aliasname@ username@
220                   Replaces  aliasname@host with username@host for every host.
221                   The '@' at the end of username@ is not required.
222
223       alias @aliashost @realhost
224                   Replaces user@aliashost with user@realhost for every  user.
225                   The '@' at the beginning of @realhost is not required.
226
227       alias aliasname user@host
228                   Replaces aliasname with user@host.
229
230
231       SELECTING INTERFACES AND VIRTUAL HOSTS
232
233       On machines with multiple IP addresses (multiple interfaces, or virtual
234       hosts), you can choose the default address  to  use  for  communication
235       with  YTalk,  using  the  localhost command in your .ytalkrc file.  The
236       syntax is:
237
238       localhost hostname-or-IP-address
239
240
241       SETTING RE-ADDRESS MODES
242
243       The purpose of readdressing is to allow YTalk connections across point-
244       to-point network gateways where the local machines know themselves by a
245       different address (and typically hostname) than  the  remote  machines.
246       The basic syntax of a readdress command is this:
247
248            readdress from-address to-address domain
249
250       The  readdress  statement  simply  makes a claim that the machine(s) in
251       domain communicate with the machine(s) at  from-address  by  sending  a
252       packet  to  to-address .  Since most users have no use for this whatso‐
253       ever, I'll describe it only briefly.
254
255       THIS IS NOT ROUTING.  For example, my machine at home is connected  via
256       PPP  to the network at my office.  My machine at home thinks its ether‐
257       net address is 192.188.253.1 and its hostname is  "talisman.com".   The
258       network  at my office has the address 192.67.141.0.  When I'm connected
259       via PPP, my home machine is placed into the office network  as  address
260       192.67.141.9 with hostname "talisman.austin.eds.com".
261
262       YTalk  needs  to  know that if it is running on domain 192.67.141.0 and
263       receives  packets  from  192.188.253.1  that  it  should   respond   to
264       192.67.141.9,  not 192.188.253.1.  right?  right.  okay, okay, okay.  I
265       put this line into my .ytalkrc on both ends:
266
267            readdress talisman talisman.austin.eds.com 192.67.141.0
268
269       On my home end, this translates to:
270
271            readdress 192.188.253.1 192.67.141.9 192.67.141.0
272
273       which tells my home  machine  to  advertise  itself  as  "192.67.141.9"
274       instead  of  "192.188.253.1"  when YTalk-ing to machines on the network
275       "192.67.141.0".  On the office end, the  readdress  command  translates
276       to:
277
278            readdress 192.67.141.9 192.67.141.9 192.67.141.0
279
280       which the office machines basically ignore.
281
282       Note  that,  in  this  case, the problem could also have been solved by
283       telling the home YTalk to use the 192.67.141.0  interface,  when  doing
284       YTalk requests across the PPP link.
285
286

FILES

288       /usr/local/etc/ytalkrc
289           System-wide defaults file.
290
291       ~/.ytalkrc
292           User's local configuration file.  This file overrides
293           options set in the system ytalkrc file.
294
295

CURRENT MAINTAINER

297       Andreas Kling
298       <keso@impul.se>
299
300

ORIGINAL AUTHOR

302       Britt Yenne
303
304

PAST MAINTAINERS

306       Roger Espel Llima
307       Jessica Peterson
308
309

CONTRIBUTORS

311       Special  thanks  to Carl Edman for numerous code patches, beta testing,
312       and comments.  I think this guy spends as much time on ytalk as I do.
313
314       Special thanks to Tobias Hahn and Geoff W. for beta testing and sugges‐
315       tions.
316
317       Thanks to Sitaram Ramaswamy for the original YTalk manpage.
318
319       Thanks to Magnus Hammerin for Solaris 2.* support.
320
321       Thanks to Thilo Wunderlich for Linux support.
322
323       Thanks to Jonas Yngvesson for aside messages in X.
324
325       Thanks to Andreas Stolcke for fixing the X resource database calls.
326
327       Thanks to Pete Wenzel for fixing the #elif directive.
328
329       Thanks  to  John Vanderpool, Shih-Chen Huang, Andrew Myers, Duncan Sin‐
330       clair, Evan McLean, Larry Schwimmer, J. Adam Hawkes,  and  Mark  Musone
331       for comments and ideas.
332
333       Thanks to Steve McIntyre for patches and ideas.
334
335       Thanks to Katarina Erkkonen for CVS hosting.
336
337       Thanks to Alexander Rigbo for patches, testing and many good ideas.
338
339

BUGS

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

SEE ALSO

346       http://www.impul.se/ytalk/
347
348

LICENSE

350       This program is free software; you can redistribute it and/or modify it
351       under  the  terms of the GNU General Public License as published by the
352       Free Software Foundation; either version 2 of the License, or (at  your
353       option) any later version.
354
355       This  program  is  distributed  in the hope that it will be useful, but
356       WITHOUT ANY  WARRANTY;  without  even  the  implied  warranty  of  MER‐
357       CHANTABILITY  or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General
358       Public License for more details.
359
360
361
362YTalk 3.3.0                       2 Jan 2005                          YTalk(1)
Impressum