View | Details | Raw Unified | Return to bug 9288
Collapse All | Expand All

(-)a/misc/sip_test.pl (-1 / +85 lines)
Line 0 Link Here
0
- 
1
#!/usr/bin/perl
2
3
use IO::Socket::INET;
4
use Getopt::Long;
5
6
my $host;
7
my $port = '6001';
8
9
my $login_user_id;
10
my $login_password;
11
my $location_code;
12
13
my $patron_identifier;
14
my $patron_password;
15
16
GetOptions(
17
    "h|host=s"                   => \$host,              # sip server ip
18
    "p|port=s"                   => \$port,              # sip server port
19
    "su|sip_user=s"              => \$login_user_id,     # sip user
20
    "sp|sip_pass=s"              => \$login_password,    # sip password
21
    "l|location|location_code=s" => \$location_code,     # sip location code
22
23
    "patron=s"   => \$patron_identifier,    # patron cardnumber or login
24
    "password=s" => \$patron_password,      # patron's password
25
);
26
27
my ( $sec, $min, $hour, $day, $month, $year ) = localtime(time);
28
$year += 1900;
29
my $transaction_date = "$year$month$day    $hour$min$sec";
30
31
my $institution_id    = $location_code;
32
my $terminal_password = $login_password;
33
34
$socket = IO::Socket::INET->new("$host:$port")
35
  or die "ERROR in Socket Creation host=$host port=$port : $!\n";
36
37
my $login_command = "9300CN$login_user_id|CO$login_password|CP$location_code|";
38
39
print "\nOUTBOUND: $login_command\n";
40
print $socket $login_command . "\r";
41
42
$data = <$socket>;
43
44
print "\nINBOUND: $data\n";
45
46
if ( $data =~ '^941' ) { ## we are logged in
47
48
    ## Patron Status Request
49
    print "\nTrying 'Patron Status Request'\n";
50
    my $patron_status_request = "23001"
51
      . $transaction_date 
52
      . "AO"  . $institution_id 
53
      . "|AA" . $patron_identifier 
54
      . "|AC" . $terminal_password 
55
      . "|AD" . $patron_password;
56
57
    print "\nOUTBOUND: $patron_status_request\n";
58
    print $socket $patron_status_request . "\r";
59
60
    $data = <$socket>;
61
62
    print "\nINBOUND: $data\n";
63
64
    ## Patron Information
65
    print "\nTrying 'Patron Information'\n";
66
    my $summary = "          ";
67
    my $patron_status_request = "63001"
68
      . $transaction_date 
69
      . $summary
70
      . "AO"  . $institution_id 
71
      . "|AA" . $patron_identifier 
72
      . "|AC" . $terminal_password 
73
      . "|AD" . $patron_password;
74
75
    print "\nOUTBOUND: $patron_status_request\n";
76
    print $socket $patron_status_request . "\r";
77
78
    $data = <$socket>;
79
80
    print "\nINBOUND: $data\n";
81
82
}
83
else {
84
    print "\nLogin Failed!\n";
85
}

Return to bug 9288