|
Lines 258-263
my $handlers = {
Link Here
|
| 258 |
'transaction_id', |
258 |
'transaction_id', |
| 259 |
], |
259 |
], |
| 260 |
}, |
260 |
}, |
|
|
261 |
hold => { |
| 262 |
name => 'Hold', |
| 263 |
subroutine => \&build_hold_command_message, |
| 264 |
parameters => { |
| 265 |
hold_mode => '+', |
| 266 |
transaction_date => $transaction_date, |
| 267 |
expiration_date => undef, |
| 268 |
pickup_location => undef, |
| 269 |
hold_type => undef, |
| 270 |
institution_id => $location_code, |
| 271 |
patron_identifier => $patron_identifier, |
| 272 |
patron_password => $patron_password, |
| 273 |
item_identifier => $item_identifier, |
| 274 |
title_identifier => undef, |
| 275 |
terminal_password => $terminal_password, |
| 276 |
fee_acknowledged => $fee_acknowledged, |
| 277 |
}, |
| 278 |
optional => [ |
| 279 |
'expiration_date', |
| 280 |
'pickup_location', |
| 281 |
'hold_type', |
| 282 |
'patron_password', |
| 283 |
'item_identifier', |
| 284 |
'title_identifier', |
| 285 |
'terminal_password', |
| 286 |
'fee_acknowledged', |
| 287 |
], |
| 288 |
}, |
| 261 |
}; |
289 |
}; |
| 262 |
|
290 |
|
| 263 |
my $data = run_command_message('login'); |
291 |
my $data = run_command_message('login'); |
|
Lines 459-464
sub build_checkin_command_message {
Link Here
|
| 459 |
. build_field( FID_CANCEL, $cancel, { optional => 1 } ); |
487 |
. build_field( FID_CANCEL, $cancel, { optional => 1 } ); |
| 460 |
} |
488 |
} |
| 461 |
|
489 |
|
|
|
490 |
sub build_hold_command_message { |
| 491 |
my ($params) = @_; |
| 492 |
|
| 493 |
my $hold_mode = $params->{hold_mode} || '+'; |
| 494 |
my $transaction_date = $params->{transaction_date}; |
| 495 |
my $expiration_date = $params->{expiration_date}; |
| 496 |
my $pickup_location = $params->{pickup_location}; |
| 497 |
my $hold_type = $params->{hold_type}; |
| 498 |
my $institution_id = $params->{institution_id}; |
| 499 |
my $patron_identifier = $params->{patron_identifier}; |
| 500 |
my $patron_password = $params->{patron_password}; |
| 501 |
my $item_identifier = $params->{item_identifier}; |
| 502 |
my $title_identifier = $params->{title_identifier}; |
| 503 |
my $terminal_password = $params->{terminal_password}; |
| 504 |
my $fee_acknowledged = $params->{fee_acknowledged} || 'N'; |
| 505 |
|
| 506 |
return |
| 507 |
HOLD |
| 508 |
. $hold_mode |
| 509 |
. $transaction_date |
| 510 |
. build_field( FID_EXPIRATION, $expiration_date, { optional => 1 } ) |
| 511 |
. build_field( FID_PICKUP_LOCN, $pickup_location, { optional => 1 } ) |
| 512 |
. build_field( FID_HOLD_TYPE, $hold_type, { optional => 1 } ) |
| 513 |
. build_field( FID_INST_ID, $institution_id ) |
| 514 |
. build_field( FID_PATRON_ID, $patron_identifier ) |
| 515 |
. build_field( FID_PATRON_PWD, $patron_password, { optional => 1 } ) |
| 516 |
. build_field( FID_ITEM_ID, $item_identifier, { optional => 1 } ) |
| 517 |
. build_field( FID_TITLE_ID, $title_identifier, { optional => 1 } ) |
| 518 |
. build_field( FID_TERMINAL_PWD, $terminal_password, { optional => 1 } ) |
| 519 |
. build_field( FID_FEE_ACK, $fee_acknowledged, { optional => 1 } ); |
| 520 |
} |
| 521 |
|
| 462 |
sub build_renew_command_message { |
522 |
sub build_renew_command_message { |
| 463 |
my ($params) = @_; |
523 |
my ($params) = @_; |
| 464 |
|
524 |
|
|
Lines 580-591
Options:
Link Here
|
| 580 |
-m --message SIP2 message to execute |
640 |
-m --message SIP2 message to execute |
| 581 |
|
641 |
|
| 582 |
Implemented Messages: |
642 |
Implemented Messages: |
| 583 |
patron_status_request |
|
|
| 584 |
patron_information |
| 585 |
item_information |
| 586 |
checkout |
| 587 |
checkin |
643 |
checkin |
| 588 |
renew |
644 |
checkout |
| 589 |
fee_paid |
645 |
fee_paid |
|
|
646 |
hold |
| 647 |
item_information |
| 648 |
patron_information |
| 649 |
patron_status_request |
| 650 |
renew |
| 590 |
/ |
651 |
/ |
| 591 |
} |
652 |
} |
| 592 |
- |
|
|