Table of Contents
SIP
generally communicates over a TCP
connection (either raw sockets or over telnet
), but can also
communicate via serial connections and other methods. In Evergreen, the most common deployment is a RAW
socket
connection on port 6001.
SIP
communication consists of strings of messages, each message request and response begin with a 2-digit
“command” - Requests usually being an odd number and responses usually increased by 1 to be an even number. The
combination numbers for the request command and response is often referred to as a Message Pair (for example,
a 23 command is a request for patron status, a 24 response is a patron status, and the message pair 23/24 is patron
status message pair). The table in the next section shows the message pairs and a description of them.
For clarification, the “Request” is from the device (selfcheck or otherwise) to the ILS/ACS. The response is… the response to the request ;).
Within each request and response, a number of fields (either a fixed width or separated with a | [pipe symbol] and preceded with a 2-character field identifier) are used. The fields vary between message pairs.
Pair | Name | Supported? | Details |
01 | Block Patron | Yes | 01/Block_Patron - ACS responds with 24 Patron Status Response |
09-10 | Checkin | Yes (with extensions) | |
11-12 | Checkout | Yes (no renewals) | |
15-16 | Hold | Partially supported | |
17-18 | Item Information | Yes (no extensions) | |
19-20 | Item Status Update | No | 19/20_Item_Status_Update - Returns Patron Enable response, but doesn’t make any changes in EG |
23-24 | Patron Status | Yes | 23/24_Patron_Status - 63/64 “Patron Information” preferred |
25-26 | Patron Enable | No | 25/26_Patron_Enable - Used during system testing and validation |
29-30 | Renew | Yes | |
35-36 | End Session | Yes | |
37-38 | Fee Paid | Yes | |
63-64 | Patron Information | Yes (no extensions) | |
65-66 | Renew All | Yes | |
93-94 | Login | Yes | 93/94_Login - Must be first command to Evergreen ACS (via socket) or |
97-96 | Resend last message | Yes | |
99-98 | SC-ACS Status | Yes |
A selfcheck will issue a Block Patron command if a patron leaves their card in a selfcheck machine or if the selfcheck detects tampering (such as attempts to disable multiple items during a single item checkout, multiple failed pin entries, etc).
In Evergreen, this command does the following:
The request looks like:
01<card retained><date>[fields AO, AL, AA, AC]
Card Retained: A single character field of Y or N - tells the ACS whether the SC has retained the card (ex: left in the machine) or not.
Date: An 18 character field for the date/time when the block 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.
The response is a 24 “Patron Status Response” with the following: