1YTalk(1) General Commands Manual YTalk(1)
2
3
4
6 ytalk - A multi-user chat program.
7
9 ytalk [-s] [-Y] [-E] [-i] [-q] [-v] [-h hostname_or_ip] username...
10
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
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
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
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
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
297 Andreas Kling
298 <keso@impul.se>
299
300
302 Britt Yenne
303
304
306 Roger Espel Llima
307 Jessica Peterson
308
309
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
341 Please mail any bugs to the maintainer of this version, at
342 <keso@impul.se>
343
344
346 http://www.impul.se/ytalk/
347
348
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)