Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
  1. HL>HL (HL Requesting own item)

Web Sequence Diagram

...

Code Block
title HL -> HL ( HL Requesting its own item). This is not for EDD
#This is not for EDD
Alma->Alma: (Dummy)

HL->Alma: Patron places hold Request
HL->Request Translator: Evaluate the request
HL->SCSB: SCSB: RequestItem
SCSB->SCSB: Validate the request
SCSB->HL: Success(real time)/failure

note left of HL: If failure
HL->Alma: Do nothing
SCSB->HL: Failure Message

note left of HL: If Success

SCSB->SCSB: Make the item in SCSB not available(real time)
SCSB->ActiveMQ: Write the message Q with Request Info
ActiveMQ->SCSB:Read the message

SCSB->RECAP: Check Item Availability in RECAP

note left of RECAP: If item is available?
SCSB->RECAP: Retrieval Item Order
RECAP->RECAP: Execute the order
RECAP->RECAP: Get the item from Shelf
RECAP->HL: Place the item for shipment
HL->HL: Staff discharge the item at destination, place on hold shelf
HL->HL: Patron is notified
HL->HL: Patron collects the item

note left of ReCAP: If item is not available in LAS?
RECAP->SCSB: Get Exception
SCSB->SCSB: Keep the status of the item as unavailable \n (Currently code is rolling back the item status to available, Need a discussion with Mike
#for the above task need wider discussion with Mike
SCSB->Topic: Failure Message
SCSB->HL: Email message (new one)
#No need of any further call after initial success/failure message

2. HL>HL (HL Requesting own item, Check-in Process)

Web Sequence Diagram

...

Code Block
title HL->HL(Checkin Process)

Patron->HL Circ Desk: Returns the Item

note left of Alma: By Circ Desk staff
HL Circ Desk -> Alma: Discharge Item
HL Circ Desk->RECAP: Item shipped back to RECAP for Refiling(on Truck)

RECAP->SCSB: SCSB Refile API Call
SCSB->SCSB: Refile processing
SCSB->SCSB: Change the request status to refiled, item status to available

SCSB->Alma: NCIP: CheckIn Item
# Change for Harvard
# Three character library code with _HD or _RD
# This is for any checkin call for Harvard owned items

3. HL>CUL (HL Requesting CUL Item)

Web Sequence diagram

...

Code Block
title HL -> CUL (HL Requesting CUL Item)

HL(ILLIAD)->SCSB: SCSB Request API for CUL Item
SCSB->SCSB: Check item availability

SCSB->SCSB: Validate the request
note left of SCSB: if not available in SCSB or any issues
SCSB->HL(ILLIAD): Success(real time)/failure

note left of HL(ILLIAD): If failure
SCSB-> HL(ILLIAD): Failure Message

note left of HL(ILLIAD): If Success

note left of SCSB: if available in SCSB
SCSB->SCSB: Make the item in SCSB not available(real time)

SCSB->HL(Alma):NCIP AcceptItem call
HL(Alma)->SCSB: Success Response

SCSB->ActiveMQ: Write the request Message to SCSB ActiveMQ
ActiveMQ->SCSB: SCSB will read the message

SCSB->RECAP LAS: Item available check at RECAP LAS

note left of RECAP LAS: if item is available
SCSB->RECAP LAS: Place Retrieval Item Order into LAS Q
SCSB->CUL: SIP2 Checkout Call

RECAP->RECAP: Execute the order
RECAP->RECAP: Get the item from Shelf
RECAP->HL(Alma): Place the item for shipment
HL->HL(Alma): Staff discharge the item at destination, place on hold shelf
HL->HL: Patron is notified
HL->HL: Patron collects the item

note left of RECAP LAS: if not available
SCSB->HL(Alma): Email Notification (Change from PUL)
# HTC to Findout the frequency

RECAP LAS->SCSB: Get Exception
SCSB->SCSB: Keep the status of the item as unavailable \n (Currently code is rolling back the item status to available, Need a discussion with Mike
#for the above task need wider discussion with Mike
SCSB->Topic: Failure Message
SCSB->HL : Email Notification saying request has been cancelled

#No Discharge call, discharge call only for Harvard owned items?

4. HL>CUL (HL Requesting CUL Item, Check-In Process)

Web Sequence Diagram

...

Code Block
title HL -> CUL (HL Requesting CUL Item, CheckIn Process)

Patron->HL Circ Desk: Returns the Item
note left of Alma: By Circ Desk staff
HL Circ Desk -> Alma: Discharge Item
HL Circ Desk->RECAP: Item shipped back to RECAP for Refiling(on Truck)
RECAP->SCSB: SCSB Refile API Call
SCSB->HL(Alma): NCIP:CheckIn (slightly different from HL-HL items)
# No circ desk mapping is required
SCSB->CUL: SIP2: CheckIn
SCSB->SCSB: Change the item status to "Available"
SCSB->SCSB: re-index the item record

5. CUL>HL (CUL Requesting HL Item)

Web Sequence Diagram

...

Code Block
title CUL -> HL (CUL Requesting HL Item)

CUL->SCSB: SCSB Request for HL Item
SCSB->SCSB: Check item availability
note left of SCSB: if not available or any issues
SCSB->CUL: failure response

note left of SCSB: if available in SCSB
SCSB->CUL: SIP2: CreateItem
SCSB->CUL: SIP2: Hold Request
CUL->SCSB: Success Response

SCSB->ActiveMQ: Write the request Message to SCSB ActiveMQ
ActiveMQ->SCSB: SCSB will read the message

SCSB->RECAP LAS: Item available check at RECAP LAS

note left of RECAP LAS: if item available
SCSB->RECAP LAS: Place Retrieval Item Order into LAS Q
SCSB->HL: NCIP: Checkout Call
RECAP->RECAP: Execute the order
RECAP->RECAP: Get the item from Shelf
RECAP->CUL: Place the item for shipment
CUL->CUL: Staff dischange the item at destination, place on hold shelf
CUL->CUL: Patron is notified
CUL->CUL: Patron collects the item

note left of RECAP LAS: if item not available
SCSB->CUL: SIP2: Cancel Hold

RECAP LAS->SCSB: Get Exception
SCSB->SCSB: Keep the status of the item as unavailable \n (Currently code is rolling back the item status to available, Need a discussion with Mike
#for the above task need wider discussion with Mike
SCSB->Topic: Failure Message

6. CUL>HL (CUL Requesting HL Item, Check-in Process)

Web Sequence Diagram

...

Code Block
title CUL -> HL (CUL Requesting HL Item, CheckIn Process)

Patron->CUL Circ Desk: Returns the Item
note left of CUL: By Circ Desk staff
CUL Circ Desk -> Voyager: Discharge Item
CUL Circ Desk->RECAP: Item shipped back to RECAP for Refiling(on Truck)
RECAP->SCSB: SCSB: Refile API Call
SCSB->CUL: SIP2:CheckIn
SCSB->HL: NCIP: CheckIn
SCSB->HL: NCIP: CheckIn(Remote Storage checkin, same as HL->HL)
#No dischange required for HL, but PUL needs discharge call

SCSB->SCSB: Change the item status to "Available"
SCSB->SCSB: re-index the item record

7. HL>HL (HL Requesting HL Item, EDD Process)

Web Sequence Diagram

...

Code Block
title HL -> HL (HL Requesting HL Item, EDD)

HL(ILLIAD)->SCSB: SCSB Request for HL Item
SCSB->SCSB: Check item availability

note left of SCSB: if not available or any issues
SCSB->HL(ILLIAD): failure response

note left of SCSB: if available in SCSB
SCSB->ActiveMQ: Write the request Message to SCSB ActiveMQ
ActiveMQ->SCSB: SCSB will read the message

SCSB->RECAP LAS: Item available check at RECAP LAS

note left of RECAP LAS: if item available
SCSB->RECAP LAS: Place EDD Order into LAS Q using REST API of LAS
RECAP LAS->SCSB: Success /Failure

note left of RECAP LAS: if item not available
RECAP->SCSB: Get Exception
SCSB->SCSB: Keep the status of the item as unavailable \n (Currently code is rolling back the item status to available, Need a discussion with Mike
#for the above task need wider discussion with Mike
SCSB->Topic: Failure Message & Email Notification

note left of RECAP LAS: if Success in LAS
SCSB->HL(Alma): NCIP: Checkout Call

RECAP->RECAP: Execute the order
RECAP->RECAP: Get the item from Shelf
RECAP->RECAP: Digitize the item
RECAP->HL: Send an Email

# Refile/Check in process
note left of SCSB: Refile/CheckIn Process
RECAP LAS->SCSB: SCSB: Refile API
SCSB->SCSB: Change request status as refiled and item status to available
SCSB->HL: NCIP : CheckIn ( regular)
SCSB->HL: NCIP: CheckIn Call (Remote Storage, send _RD or _HD first 3 chars for 876k)

8. CUL>HL (CUL Requesting HL Item, EDD Process)

Web Sequence Diagram

...

Code Block
title CUL -> HL (CUL Requesting HL Item, EDD)

CUL->SCSB: SCSB Request for HL Item
SCSB->SCSB: Check item availability
note left of SCSB: if not available or any issues
SCSB->CUL: failure response

note left of SCSB: if available in SCSB
SCSB->CUL: Success Response

SCSB->ActiveMQ: Write the request Message to SCSB ActiveMQ
ActiveMQ->SCSB: SCSB will read the message

SCSB->RECAP LAS: Item available check at RECAP LAS

note left of RECAP LAS: if item available
SCSB->RECAP LAS: Place EDD Order into LAS Q
SCSB->HL: NCIP: Checkout Call

RECAP->RECAP: Execute the order
RECAP->RECAP: Get the item from Shelf
RECAP->RECAP: Digitize the item
RECAP->CUL: Send an Email with scanned document

note left of RECAP LAS: if item not available
SCSB->SCSB: Changes item status back to available (discuss about this with Mike)

# Refile/Check in process
note left of SCSB: Refile/CheckIn Process
RECAP LAS->SCSB: SCSB: Refile API
SCSB->SCSB: Change request status as refiled and item status to available
SCSB->HL: NCIP: CheckIn Call (send _RD or _HD first 3 chars for 852b)
#No discharge call for HL, but PUL would need it

9. HL -> PUL (HL Requesting PUL Item)

WebSequence Diagram

...

Code Block
title HL -> PUL (HL Requesting PUL Item)

HL(ILLIAD)->SCSB: SCSB Request API for PUL Item
SCSB->SCSB: Check item availability

SCSB->SCSB: Validate the request
note left of SCSB: if not available in SCSB or any issues
SCSB->HL(ILLIAD): Success(real time)/failure

note left of HL(ILLIAD): If failure
SCSB-> HL(ILLIAD): Failure Message

note left of HL(ILLIAD): If Success

note left of SCSB: if available in SCSB
SCSB->SCSB: Make the item in SCSB not available(real time)

SCSB->HL(Alma):NCIP AcceptItem call
HL(Alma)->SCSB: Success Response

SCSB->ActiveMQ: Write the request Message to SCSB ActiveMQ
ActiveMQ->SCSB: SCSB will read the message

SCSB->RECAP LAS: Item available check at RECAP LAS

note left of RECAP LAS: if item is available
SCSB->RECAP LAS: Place Retrieval Item Order into LAS Q
SCSB->PUL: NCIP Checkout Call

RECAP->RECAP: Execute the order
RECAP->RECAP: Get the item from Shelf
RECAP->HL(Alma): Place the item for shipment
HL->HL(Alma): Staff discharge the item at destination, place on hold shelf
HL->HL: Patron is notified
HL->HL: Patron collects the item

note left of RECAP LAS: if not available
SCSB->HL(Alma): Email Notification (Change from PUL, PUL we are doing NCIP CheckIn)
# HTC to Find Out the frequency

RECAP LAS->SCSB: Get Exception
SCSB->SCSB: Keep the status of the item as unavailable \n (Currently code is rolling back the item status to available, Need a discussion with Mike
#for the above task need wider discussion with Mike
SCSB->Topic: Failure Message
SCSB->HL : Email Notification saying request has been cancelled

10. HL -> PUL (HL Requesting PUL Item, Check-In Process)

WebSequence Diagram

...

Code Block
title HL -> PUL (HL Requesting PUL Item, CheckIn Process)

Patron->HL Circ Desk: Returns the Item
note left of HL: By Circ Desk staff
HL Circ Desk -> Alma: Discharge Item
HL Circ Desk->RECAP: Item shipped back to RECAP for Refiling(on Truck)
RECAP->SCSB: SCSB: Refile API Call
SCSB->HL: NCIP:CheckIn
SCSB->PUL: NCIP: CheckIn
SCSB->PUL: Alma-API: Discharge
SCSB->SCSB: Change the item status to "Available"
SCSB->SCSB: re-index the item record

11. HL -> NYPL (HL Requesting NYPL Item)

WebSequence Diagram

...

Code Block
title HL -> NYPL (HL Requesting NYPL Item)

HL(ILLIAD)->SCSB: SCSB Request API for NYPL Item
SCSB->SCSB: Check item availability

SCSB->SCSB: Validate the request
note left of SCSB: if not available in SCSB or any issues
SCSB->HL(ILLIAD): Success(real time)/failure

note left of HL(ILLIAD): If failure
SCSB-> HL(ILLIAD): Failure Message

note left of HL(ILLIAD): If Success

note left of SCSB: if available in SCSB
SCSB->SCSB: Make the item in SCSB not available(real time)

SCSB->HL(Alma):NCIP AcceptItem call
HL(Alma)->SCSB: Success Response

SCSB->ActiveMQ: Write the request Message to SCSB ActiveMQ
ActiveMQ->SCSB: SCSB will read the message

SCSB->RECAP LAS: Item available check at RECAP LAS

note left of RECAP LAS: if item is available
SCSB->RECAP LAS: Place Retrieval Item Order into LAS Q
SCSB->NYPL: REST Checkout Call

RECAP->RECAP: Execute the order
RECAP->RECAP: Get the item from Shelf
RECAP->HL(Alma): Place the item for shipment
HL->HL(Alma): Staff discharge the item at destination, place on hold shelf
HL->HL: Patron is notified
HL->HL: Patron collects the item

note left of RECAP LAS: if not available
SCSB->HL(Alma): Email Notification (Change from PUL, PUL is doing NCIP CheckIn)
# HTC to Find Out the frequency

RECAP LAS->SCSB: Get Exception
SCSB->SCSB: Keep the status of the item as unavailable \n (Currently code is rolling back the item status to available, Need a discussion with Mike
#for the above task need wider discussion with Mike
SCSB->Topic: Failure Message
SCSB->HL : Email Notification saying request has been cancelled

#No Discharge call, discharge call only for Harvard owned items?

12. HL -> NYPL (HL Requesting NYPL Item, Check-in Process)

WebSequence Diagram

...

Code Block
title HL -> NYPL (HL Requesting NYPL Item, CheckIn Process)

Patron->HL Circ Desk: Returns the Item
note left of Alma: By Circ Desk staff
HL Circ Desk -> Alma: Discharge Item
HL Circ Desk->RECAP: Item shipped back to RECAP for Refiling(on Truck)
RECAP->SCSB: SCSB Refile API Call
SCSB->HL(Alma): NCIP:CheckIn (slightly different from HL-HL items)
# No circ desk mapping is required
SCSB->NYPL: REST: CheckIn
SCSB->SCSB: Change the item status to "Available"
SCSB->SCSB: re-index the item record

13. NYPL -> HL (NYPL Requesting HL Item)

WebSequence Diagram

...

Code Block
title NYPL -> HL (NYPL Requesting HL Item)

NYPL->SCSB: SCSB Request for HL Item
SCSB->SCSB: Check item availability
note left of SCSB: if not available or any issues
SCSB->NYPL: failure response

note left of SCSB: if available in SCSB
SCSB->NYPL: REST: Hold Request
NYPL->SCSB: Success Response

SCSB->ActiveMQ: Write the request Message to SCSB ActiveMQ
ActiveMQ->SCSB: SCSB will read the message

SCSB->RECAP LAS: Item available check at RECAP LAS

note left of RECAP LAS: if item available
SCSB->RECAP LAS: Place Retrieval Item Order into LAS Q
SCSB->HL: NCIP: Checkout Call
RECAP->RECAP: Execute the order
RECAP->RECAP: Get the item from Shelf
RECAP->NYPL: Place the item for shipment
NYPL->NYPL: Staff discharge the item at destination, place on hold shelf
NYPL->NYPL: Patron is notified
NYPL->NYPL: Patron collects the item

note left of RECAP LAS: if item not available
SCSB->NYPL: REST: Cancel Hold

RECAP LAS->SCSB: Get Exception
SCSB->SCSB: Keep the status of the item as unavailable \n (Currently code is rolling back the item status to available, Need a discussion with Mike
#for the above task need wider discussion with Mike
SCSB->Topic: Failure Message

14. NYPL -> HL (NYPL Requesting HL Item, Check-in Process)

WebSequence Diagram

...

Code Block
title NYPL -> HL (NYPL Requesting HL Item, CheckIn Process)

Patron->NYPL Circ Desk: Returns the Item
note left of NYPL: By Circ Desk staff
#NYPL Circ Desk -> Voyager: Discharge Item
NYPL Circ Desk->RECAP: Item shipped back to RECAP for Refiling(on Truck)
RECAP->SCSB: SCSB: Refile API Call
SCSB->NYPL: REST:CheckIn
SCSB->HL: NCIP: CheckIn
SCSB->HL: NCIP: CheckIn(Remote Storage check in, same as HL->HL)
#No discharge required for HL, but PUL needs discharge call

SCSB->SCSB: Change the item status to "Available"
SCSB->SCSB: re-index the item record