====== Evergreen SIP Server with SIP2Mediator (Testing Edition) ======
===== Quick Setup =====
==== Evergreen Configuration ====
* Install the latest working branch from [[https://bugs.launchpad.net/evergreen/+bug/1901930|bug #1901930]]
* If necessary...
* Apply SQL changes
* Apply opensrf.xml additions to support the new open-ils.sip2 service and restart Evergreen.
* Apply Apache eg_vhost.conf and eg_startup changes required to load the new Apache module and reload Apache.
* Create an Evergreen user account with adequate permissions to perform as a SIP user ([[evergreen-admin:sip#adding_sip_users|See Adding SIP Users]]).
* The password for this Evergreen account can be anything (the stronger the better). It will never be used directly.
* For testing, the stock 'admin' account works fine.
* In the staff client, navigate to Administration => Server Administration => SIP Accounts and click 'New Account' to create a new SIP account.
* Set the "ILS Username" to match the Evergreen user account created above.
* Click the "Set Password" button to apply a SIP account password.
* "Workstation", "Transient", "Activity Who" are optional.
* Check the 'Enabled' checkbox.
* Save changes.
==== SIP2Mediator Setup ====
These instructions assume the SIP2Mediator is running on an Ubuntu server. It also assumes the SIP2Mediator is running on the same host as Evergreen. See the --help options to specify non-default listen address for SIP and the target HTTP address.
More information about the mediator may be found at [[https://github.com/berick/SIP2Mediator]]
sudo apt install build-essential libjson-xs-perl libnet-https-nb-perl libdatetime-perl
sudo cpan URL::Encode::XS
git clone https://github.com/berick/SIP2Mediator.git
cd SIP2Mediator
# run the mediator on localhost
PERL5LIB=lib ./bin/sip2-mediator # see --help for full options
===== Testing =====
* Assumes SIP2Mediator is running on localhost
* Assumes Concerto data
* See --help for more options
From within the SIP2Mediator directory:
PERL5LIB=lib ./bin/sip2-client --pretty --institution example \
--sip-username sip-username-you-just-created \
--sip-password sip-password-you-just-created \
--item-barcode CONC4000080 -message item-information
* The response should look like this
[SENDING]
[93] Login Request
uid algorithm 0
pwd algorithm 0
[CN] login user id sip-username-you-just-created
[CO] login password sip-password-you-just-created
----------------
[RECEIVED, duration: 0.158]:
[94] Login Response
ok 1
----------------
[SENDING]
[17] Item Information Request
transaction date 20201130 162815
[AO] institution id example
[AB] item identifier CONC4000080
----------------
[RECEIVED, duration: 0.062]:
[18] Item Information Response
circulation status 04
security marker 02
fee type 01
transaction date 20201130 162815
[AB] item identifier CONC4000080
[AH] due date 2020-11-24 13:55:34
[AJ] title identifier The piano concertos
[AP] current location BR1
[AQ] permanent location BR1
[BG] owner BR1
[BH] currency type USD
[BV] fee amount 0.00
[CF] hold queue length 0
[CK] media type 001
[CM] hold pickup date
[CT] destination location BR1
[CY] hold patron id
----------------