User Tools

Site Tools


evergreen-admin:sip_support

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
evergreen-admin:sip_support [2010/06/08 10:08] jatzbergerevergreen-admin:sip_support [2022/02/10 13:34] (current) – external edit 127.0.0.1
Line 4: Line 4:
 Installation instructions for SIP on Evergreen can be found [[sip|here]]. Installation instructions for SIP on Evergreen can be found [[sip|here]].
  
-A test SIP server can be accessed using information [[demo:sip_credentials|here]].+FIXME We need a new demonstration server for SIP.
  
 Where page numbers are cited, we are referring to the "3M(tm) Standard Interchange Protocol: Describes 3M Standard Interchange Protocol Version 2.0" document, revision 2.10 updated 9/17/1998. Where page numbers are cited, we are referring to the "3M(tm) Standard Interchange Protocol: Describes 3M Standard Interchange Protocol Version 2.0" document, revision 2.10 updated 9/17/1998.
- 
 ===== Background ===== ===== Background =====
 SIP, standing for Standard Interchange Protocol, was developed by the 3M corporation to be a common protocol for data transfer between ILS' (referred to in SIP as an "ACS", or "Automated Circulation System") and a third party device.  Originally, the protocol was developed for use with 3M SelfCheck (often abbreviated SC, not to be confused with Staff Client) systems, but has since expanded to other companies and devices.  It is now common to find SIP in use in several other vendors' SelfCheck systems, as well as other non-SelfCheck devices.  Some examples include: SIP, standing for Standard Interchange Protocol, was developed by the 3M corporation to be a common protocol for data transfer between ILS' (referred to in SIP as an "ACS", or "Automated Circulation System") and a third party device.  Originally, the protocol was developed for use with 3M SelfCheck (often abbreviated SC, not to be confused with Staff Client) systems, but has since expanded to other companies and devices.  It is now common to find SIP in use in several other vendors' SelfCheck systems, as well as other non-SelfCheck devices.  Some examples include:
Line 37: Line 36:
 | 29/30 | Renew | NO (maybe?) | [[#29/30_Renew]] | | 29/30 | Renew | NO (maybe?) | [[#29/30_Renew]] |
 | 35/36 | End Session | Yes | [[#35/36_End_Session]] | | 35/36 | End Session | Yes | [[#35/36_End_Session]] |
-| 37/38 | Fee Paid | NO | [[#37/38_Fee_Paid]] |+| 37/38 | Fee Paid | Yes | [[#37/38_Fee_Paid]] |
 | 63/64 | Patron Information | Yes (no extensions) | [[#63/64_Patron_Information]] | | 63/64 | Patron Information | Yes (no extensions) | [[#63/64_Patron_Information]] |
 | 65/66 | Renew All | NO | [[#65/66_Renew_All]] | | 65/66 | Renew All | NO | [[#65/66_Renew_All]] |
-| 93/94 | Login | Yes | [[#93/94_Login]] - Must be first command to Evergreen ACS or SIP will terminate |+| 93/94 | Login | Yes | [[#93/94_Login]] - Must be first command to Evergreen ACS (via socket) or SIP will terminate |
 | 97/96 | Resend last message | Yes | [[#97/96_Resend]] | | 97/96 | Resend last message | Yes | [[#97/96_Resend]] |
 | 99/98 | SC/ACS Status | Yes | [[#99/98_SC_and_ACS_Status]] | | 99/98 | SC/ACS Status | Yes | [[#99/98_SC_and_ACS_Status]] |
Line 73: Line 72:
 09<No block (Offline)><xact date><return date>[Fields AP,AO,AB,AC,CH,BI]  09<No block (Offline)><xact date><return date>[Fields AP,AO,AB,AC,CH,BI] 
 </code> </code>
-|  No Block (Offline)  | A single character field of 'Y' or 'N' |+|  No Block (Offline)  | A single character field of 'Y' or 'N'Offline transactions are not currently supported so send 'N' |
 |  xact date | an 18 character field for the date/time when the checkin occurred.  Format: YYYYMMDDZZZZHHMMSS (ZZZZ being zone - 4 blanks when 'local time', '   Z' (3 blanks and a Z) represents UTC(GMT/Zulu) | |  xact date | an 18 character field for the date/time when the checkin occurred.  Format: YYYYMMDDZZZZHHMMSS (ZZZZ being zone - 4 blanks when 'local time', '   Z' (3 blanks and a Z) represents UTC(GMT/Zulu) |
 |  Fields  | see [[#Fields]] for more details | |  Fields  | see [[#Fields]] for more details |
Line 79: Line 78:
  
 The response is a 10 "Checkin Response" with the following: The response is a 10 "Checkin Response" with the following:
-  * +<code> 
 +10<resensitize><magnetic media><alert><xact date>[Fields AO,AB,AQ,AJ,CL,AA,CK,CH,CR,CS,CT,CV,CY,DA,AF,AG]  
 +</code>
  
-Example:+Example (with a remote hold):
 <code> <code>
-09N20100507    16593720100507    165937APCheckin Bin 5|AOBR1|AB478073853483|ACsip_01|+09N20100507    16593720100507    165937APCheckin Bin 5|AOBR1|AB1565921879|ACsip_01
 +101YNY20100623    165731AOBR1|AB1565921879|AQBR1|AJPerl 5 desktop reference|CK001|CSQA76.73.P33V76 1996|CTBR3|CY373827|DANicholas Richard Woodard|CV02|
 </code> </code>
 +
 +Here you can see a hold alert for patron (CY) 373827, named (DA) Nicholas Richard Woodard, to be picked up at (CT) BR3.  Since the transaction is happening at (AO) BR1, the alert type (CV) is 02 for "hold at remote library" The possible values for CV are:
 +
 +  * 00: unknown
 +  * 01: local hold
 +  * 02: remote hold
 +  * 03: ILL transfer (not used by EG)
 +  * 04: transfer
 +  * 99: other
 +
 +Notes: the logic for EG to determine the content is magnetic_media comes from either legacy circ scripts or search_config_circ_modifier.  The default is non-magnetic.  The same is true for media_type (default 001).  EG does not populate the collection_code because it does not really have any, but it will provide the call_number where available.
 +
 +Unlike the item_id (barcode), the title_id is actually a title string, unless the configuration forces the return of the bib ID.  
 +
 +Don't be confused by the different branches that can show up in the same response line.  
 +  * AO is where the transaction took place, 
 +  * AQ is the "permanent location", and 
 +  * CT is the "destination location" (i.e., pickup lib for a hold or target lib for a transfer).
  
 ==== 11/12 Checkout ==== ==== 11/12 Checkout ====
 ==== 15/16 Hold ==== ==== 15/16 Hold ====
 Not yet supported. Not yet supported.
- 
 ==== 17/18 Item Information ==== ==== 17/18 Item Information ====
 +
 +<code>
 +17<xact_date>[fields: AO,AB,AC]
 +</code>
 +
 +The request is very terse.  AC is optional.
 +
 +The following response structure is for SIP2.  (Version 1 of the protocol had only 6 total fields.)
 +<code>
 +18<circulation_status><security_marker><fee_type><xact_date>[fields: CF,AH,CJ,CM,AB,AJ,BG,BH,BV,CK,AQ,AP,CH,AF,AG,+CT,+CS]
 +</code>
 +
 +Example:
 +
 +<code>
 +1720060110    215612AOBR1|ABno_such_barcode|
 +1801010120100609    162510ABno_such_barcode|AJ|
 +1720060110    215612AOBR1|AB1565921879|
 +1810020120100623    171415AB1565921879|AJPerl 5 desktop reference|CK001|AQBR1|APBR1|BGBR1|CTBR3|CSQA76.73.P33V76 1996|
 +</code>
 +
 +The first case is with a bogus barcode.  The latter shows an item with a circulation_status of "10" for "in transit between libraries" The known values of circulation_status are enumerated in the spec.  
 +
 +EXTENSIONS: The CT field for "destination location" and CS "call number" are used by Automated Material Handling systems.  
  
 ==== 19/20 Item Status Update ==== ==== 19/20 Item Status Update ====
Line 113: Line 156:
 ==== 29/30 Renew ==== ==== 29/30 Renew ====
 EG ACS status message indicates Renew is supported. EG ACS status message indicates Renew is supported.
- 
 ==== 35/36 End Session ==== ==== 35/36 End Session ====
 <code> <code>
 3520100505    115901AOBR1|AA999999| 3520100505    115901AOBR1|AA999999|
-36Y20100507    161213AOCONS|AA999999|AFThank you for using OpenILS!|+36Y20100507    161213AOCONS|AA999999|AFThank you!|
 </code> </code>
  
 The Y/N code immediately after the 36 indicates success/failure.  Failure is not particularly meaningful or important in this context, and for evergreen it is hardcoded Y.   The Y/N code immediately after the 36 indicates success/failure.  Failure is not particularly meaningful or important in this context, and for evergreen it is hardcoded Y.  
 +
 ==== 37/38 Fee Paid ==== ==== 37/38 Fee Paid ====
 Not implemented. Not implemented.
- 
 ==== 63/64 Patron Information ==== ==== 63/64 Patron Information ====
 +Attempting to retrieve patron info with a bad barcode:
 +<code>
 +6300020060329    201700          AOBR1|AAbad_barcode|
 +64YYYY          00020100623    141130000000000000000000000000AE|AAbad_barcode|BLN|AOBR1|
 +</code>
 +
 +Attempting to retrieve patron info with a good barcode (but bad patron password):
 +<code>
 +6300020060329    201700          AOBR1|AA999999|ADbadpwd|
 +64  Y           00020100623    141130000000000000000000000000AA999999|AEDavid J. Fiander|BHUSD|BV0.00|BD2 Meadowvale Dr. St Thomas, ON Canada 90210|BEdjfiander@somemail.com|BF(519) 555 1234|AQBR1|BLY|CQN|PB19640925|PCPatrons|PIUnfiltered|AFOK|AOBR1|
 +</code>
 +
 +See 23/24 Patron Status for info on BL and CQ fields.  
 +
 ==== 65/66 Renew All ==== ==== 65/66 Renew All ====
 Not yet supported.   Not yet supported.  
evergreen-admin/sip_support.1276006096.txt.gz · Last modified: 2022/02/10 13:33 (external edit)

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki

© 2008-2022 GPLS and others. Evergreen is open source software, freely licensed under GNU GPLv2 or later.
The Evergreen Project is a U.S. 501(c)3 non-profit organization.