-
Notifications
You must be signed in to change notification settings - Fork 0
/
seyon.help
1772 lines (1373 loc) · 67.8 KB
/
seyon.help
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
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
1
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
2
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:
3
autoZmodem (boolean)
Specifies whether Seyon is to look for Zmodem auto-
download signature. If enabled, Seyon will detect
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:
4
~/.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
5
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
6
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
7
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,
8
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();
9
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
10
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.
11
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
12
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();
13
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
14
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.
15
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 <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 <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 <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
16
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 <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).
17
redial Redials the last number dialed using the dial com-
mand.
send_break
Sends a BREAK signal to te remote host.
set <parameter> <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 <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 <text>
Transmits the specified text to the remote host.
The text argument should be quoted (using single or
18
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 <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 [<string-to-expect> <string-to-send>]