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 |
- |
|
|