X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=sc-emulator.pl;h=d958359b2cb6c536fca8aaa445b0d1bb41287563;hb=b50cd38c66065004260dba91199187345ee641be;hp=df7b12c4679ed9896014c53cf06e226154d4080a;hpb=0705b98e56930ea0e038c1a6f647a476b7eab86d;p=Biblio-SIP2.git diff --git a/sc-emulator.pl b/sc-emulator.pl index df7b12c..d958359 100755 --- a/sc-emulator.pl +++ b/sc-emulator.pl @@ -3,43 +3,37 @@ use warnings; use strict; -use IO::Socket::INET; -use autodie; - our $user = 'sip2-user'; our $password = 'sip2-paasswd'; +our $patron = 200000000042; +our $barcode = 1301132799; +our $loc = 'FFZG'; require 'config.pl' if -e 'config.pl'; -use SIP2; +use lib 'lib'; +use SIP2::SC; -our $sock = IO::Socket::INET->new( '10.60.0.251:6001' ); +my $sc = SIP2::SC->new( $ENV{ACS} || '10.60.0.251:6001' ); +# login +$sc->message("9300CN$user|CO$password|"); -sub sip2 { - my ( $send, $patt ) = @_; - SIP2::dump_message '>>>>', $send; - print $sock "$send\r\n"; - $sock->flush; +# SC Status +$sc->message("9900302.00"); -# local $/ = "\r"; +$sc->message("6300020091214 085452 AO$loc|AA$patron|AC$password|"); - my $in = <$sock>; - SIP2::dump_message '<<<<', $in; - die "expected $patt" unless $in =~ $patt; -} +# Checkout +$sc->message("11YN20091214 124436 AO$loc|AA$patron|AB$barcode|AC$password|BON|BIN|"); -# login -sip2 "9300CN$user|CO$password|" => qr/^941/; +# Checkin +$sc->message("09N20091214 08142820091214 081428AP|AO$loc|AB$barcode|AC|BIN|"); -# SC Status -sip2 "9900302.00" => qr/^98/; -# Checkin -sip2 "09N20091214 08142820091214 081428AP|AOFFZG|AB1301036581|AC|BIN|" => qr/^10/; +# checkout - invalid barcode +$sc->message("09N20091216 15320820091216 153208AP|AOFFZG|AB200903160190|ACviva2koha|BIN|"); -# Patron Information -sip2 "6300020091214 085452 AOFFZG|AA200903260093|AC$password|" => qr/^64/; +# status +$sc->message("9900302.00"); -# Checkout -sip2 "11YN20091214 124436 AOFFZG|AA200905060034|AB1301132799|AC$password|BON|BIN|" => qw/12/;