Kyle M Hall
7e62964107
Many SIP2 services such as those by Comprise Technologies are able to or require that an ILS be able to accept writeoffs via SIP2. The SIP2 protocol specifies that payment type be a two digit number, but does not specify a code for writeoffs. To this end we should allow the write-off code to be specified in the SIP2 config on a per-account basis so that if different vendors use different fixed codes for write-offs we can handle that gracefully. Test Plan: 1) Apply this patch 2) Modify your SIP2 config to include payment_type_writeoff="06" in the login portion of the account you will be using for the test. 3) Restart your SIP2 server 4) Create a fee for a patron 5) Send a SIP2 fee paid message specifying the payment type code we defined earlier, with a payment amount that is *not* equal to the amount outstanding for the fee. 6) Note the fee paid response indicates the payment failed 7) Repeat step 5, but this time send the amount outstanding as the payment amount 8) Note that the fee paid response indicates a successful payment 9) Note in Koha that the fee has been written off! Signed-off-by: Rhonda Kuiper <kuiper@roundrocktexas.gov> Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
97 lines
3.7 KiB
XML
97 lines
3.7 KiB
XML
<acsconfig xmlns="http://openncip.org/acs-config/1.0/">
|
|
<!-- above address gets nothing, it's just a namespace -->
|
|
<error-detect enabled="true" />
|
|
|
|
<!--
|
|
Set Net::Server::PreFork runtime parameters
|
|
syslog_ident will identify SIP2 Koha server entries in syslog
|
|
For OpenSolaris, add: syslog_logsock=stream
|
|
-->
|
|
<server-params
|
|
min_servers='1'
|
|
min_spare_servers='0'
|
|
log_file='Sys::Syslog'
|
|
syslog_ident='koha_sip'
|
|
syslog_facility='local6'
|
|
/>
|
|
|
|
<listeners>
|
|
<!-- vestigial HTTP, never implemented: just use the OPAC!
|
|
<service
|
|
port="0:8080/tcp"
|
|
transport="http"
|
|
protocol="NCIP/1.0" />
|
|
-->
|
|
<service
|
|
port="8023/tcp"
|
|
transport="telnet"
|
|
protocol="SIP/2.00"
|
|
timeout="60" />
|
|
|
|
<service
|
|
port="127.0.0.1:6001/tcp"
|
|
transport="RAW"
|
|
protocol="SIP/2.00"
|
|
client_timeout="600"
|
|
timeout="60" />
|
|
<!--- client_timeout times out active connections which have not received
|
|
input from the client. Many persistent connections will send a status request
|
|
every 5-7 mins so setting this to less than that will add instability to the connection
|
|
if explicitly set to zero, no timeout is applied to the connection.
|
|
NB the parameter timeout applies to the login process only and should be set to a lower value
|
|
to time out failed connections
|
|
-->
|
|
</listeners>
|
|
|
|
<accounts>
|
|
<login id="term1" password="term1" delimiter="|" error-detect="enabled" institution="CPL" encoding="ascii" checked_in_ok="1" payment_type_writeoff="06" />
|
|
<login id="koha" password="koha" delimiter="|" error-detect="enabled" institution="kohalibrary" encoding="utf8" />
|
|
<login id="koha2" password="koha" institution="kohalibrary2" terminator="CR" />
|
|
<login id="lpl-sc" password="1234" institution="LPL" />
|
|
<login id="lpl-sc-beacock" password="xyzzy"
|
|
delimiter="|" error-detect="enabled" institution="LPL"
|
|
send_patron_home_library_in_af="1"
|
|
av_field_template="[% accountline.description %] [% accountline.amountoutstanding | format('%.2f') %]" >
|
|
<screen_msg_regex find="Greetings from Koha." replace="Welcome to your library!" />
|
|
<screen_msg_regex find="Invalid patron barcode." replace="Barcode not found, are you sure this is your library card?" />
|
|
</login>
|
|
</accounts>
|
|
|
|
<!--
|
|
Institution tags are for enabled branches. There needs to be one
|
|
institution stanza for each institution named in the accounts above.
|
|
The implementation attribute is actually used to find the code to run,
|
|
in our case "ILS".
|
|
-->
|
|
|
|
<institutions>
|
|
<institution id="MAIN" implementation="ILS" parms="">
|
|
<policy checkin="true" renewal="true" checkout="true"
|
|
status_update="false" offline="false"
|
|
timeout="100"
|
|
retries="5" />
|
|
</institution>
|
|
<institution id="CPL" implementation="ILS" parms="">
|
|
<policy checkin="true" renewal="true" checkout="true"
|
|
status_update="false" offline="false"
|
|
timeout="25"
|
|
retries="5" />
|
|
</institution>
|
|
<institution id="kohalibrary" implementation="ILS" parms="">
|
|
<policy checkin="true" renewal="false" checkout="true"
|
|
status_update="false" offline="false"
|
|
timeout="100"
|
|
retries="5" />
|
|
</institution>
|
|
<institution id="kohalibrary2" implementation="ILS" parms="">
|
|
<policy checkin="true" renewal="false" checkout="true"
|
|
timeout="100"
|
|
retries="3" />
|
|
</institution>
|
|
<institution id="LPL" implementation="ILS">
|
|
<policy checkin="true" renewal="false" checkout="true"
|
|
timeout="100"
|
|
retries="5" />
|
|
</institution>
|
|
</institutions>
|
|
</acsconfig>
|