#!/usr/bin/perl use strict; use warnings; use IO::Socket::INET; use MIME::Base64; my ($size); my $host = shift || "19.25.15.22"; my $port = shift || 1998; my $dir = "/acecdev/nv2am/bh"; my $data = `cat $dir/cdr-data.dat |sed 's/ //g'`; my $binary = pack ("H*", $data); print "DATA : $data\n"; print "ASCII: $binary\n"; # auto-flush on socket $| = 1; # create a connecting socket my $socket = new IO::Socket::INET ( PeerHost => $host, PeerPort => $port, Proto => 'tcp', ); die "cannot connect to the server $!\n" unless $socket; print "Connected to server [$host] with port $port\n"; # data to send to a server if ($socket->send($binary)) { $size = $socket->send($binary); print "Sent binary data as request to $host [length $size]\n"; } else { print "message not sent\n"; } # notify server that request has been sent shutdown($socket, 1); # read the message sent by server. #my $serverdata = <$socket>; #print "Message from Server : $serverdata \n"; # Send some message to server. #my $clientdata = "This is the Client speaking :)"; #print $socket "$clientdata \n"; # receive a response of up to 1024 characters from server my $response = ""; $ socket->recv($response, 1024); print "received response: $response\n"; $socket->close();