Przykładowy skrypt gniazda
Ten skrypt przykładowy pokazuje sposób napisania klienta gniazda.
Przykładowy skrypt Perl
Przykładowy skrypt Perl łączy się z gniazdem i wysyła
dane. Ten przykładowy skrypt został napisany dla agenta działającego w systemie
UNIX, o kodzie produktu
k00 i grupie atrybutów
SocketData. #!/usr/bin/perl -w
# SocketTest.pl
# Prosty klient gniazda programu Agent Builder wykorzystujący funkcję IO:Socket
#-------------------------------------------------------------------------------
use strict;
use IO::Socket;
# Inicjowanie połączenia gniazda z agentem
#-----------------------
my $host = '127.0.0.1';
my $port = 0;
# Ten przykład jest przeznaczony dla agenta o kodzie produktu k00.
# Kod produktu jest wykorzystywany w poniższym wierszu w celu wyszukania
# pliku zawierającego numer portu.
open PORTFILE, "/tmp/k00_cps.properties" || die "Nie znaleziono pliku z portem $!\n";
while (<PORTFILE>) {
if (/^CP_PORT=([0-9]+)/) {
$port = $1;
}
}
if ($port == 0) {
die "Nie można znaleźć portu do połączenia z agentem.\n";
}
my $sock = new IO::Socket::INET( PeerAddr => $host, PeerPort => $port,
Proto => 'tcp'); $sock or die "no socket :$!";
# Poniższe wywołanie wysyła do agenta dwa wiersze danych.
# Każdy wiersz zawiera jeden atrybut łańcuchowy i trzy atrybuty liczbowe.
syswrite $sock, "<socketData><attrGroup name=\"SocketData\"><in><a v=\"A message
from perl\"/> \<a v=\"1\"/><a v=\"2\"/><a v=\"123\"/></in><in><a v=\"More from
perl\"/><a v=\"456\"/> \<a v=\"123\"/><a v=\"789\"/></in></attrGroup>
</socketData>\n";
close $sock;