The following Perl code is an example for an ONLINE client. It can be started after an ONLINE session prepared for a connect with, e.g. server/asynch.
#!/usr/bin/perl # # this script reads (Spectra/online) commands from STDIN and # sends them to a remote server (hasexp). The server has been # started with: # # ONLINE> server/asynchr 7777 # # Usage: # # # tcp_client [host [port]] # # Defaults: # host - hasexp # port - 7777 # use Net::Gen; use Net::Inet; use Net::TCP; $host = shift @ARGV || "hasexp"; $port = shift @ARGV || 7777; print "\n"; tie $x,Net::TCP, $host, $port or die "Failed to tie \$x \n"; while(1) { print "Enter> "; $com = <STDIN>; # read a command from STDIN $com =~ s/^\s*(.*?)\s*$/$1/; # remove leading/trailing white space last if( $com =~ /^(x|X)$/ ); # 'x' terminates the loop next if ! $com; # $com empty? re-read $x = "$com\n"; # send the command $ans = $x; # receive the answer $ans =~ s/^\s*(.*?)\s*$/$1/; # remove leading/trailing white space print "Answer: $ans \n"; # display the answer $com =~ tr/A-Z/a-z/; # answer lo lower case letters last if( $com =~ /^bye$/); # sending 'bye' terminates the server } untie $x;