Using the Primo webservices in a mobile app Tom Ruthven and Susan Lafferty UNSW Library Mobile Services at UNSW Library • SMS notifications – students NEVER read their emails – this seemed the best alternative. • Mobile Directory – Our web-based ‘tour’ is very clunky and not very attractive. A mobile interface seemed to make more sense. • Mobile App incorporating Primo Web Services – Mobile seems to be the way of the future – All our students are always on their mobile devices – swamping our wi-fi network – Makes sense to get in early and avoid the rush further down the track SMS notices • Requirement: opt-in only SMS notices • To enable Opt-in, we created an iFrame within Primo’s Personal Settings in which we present an Aleph OPAC function (bor-update). • SMS actually an email • long version - sent to the user’s email address (UNSW’s official form of communication) • short version - sent as email (mobilephonenumber@redcoal.com.au) to external SMS service (Optus Redcoal), which converts it and sends SMS message. • Initial script for sending emails from Aleph was based on work by Anthony and Christine Moulen at MIT …and then we removed fines SMS notices • • • • • • • loan due loan overdue recall - an item on loan to you has been reserved by another borrower reserved item is ready for pick up SMS opt interlibrary loan is ready for pick up 900 interlibrary loan is being mailed to you 800 intercampus loan is ready for pick up 700 600 500 400 300 200 100 0 ins Mobile Directory http://m.library.unsw.edu.au/locate Mobile Directory http://m.library.unsw.edu.au/locate Mobile Directory http://m.library.unsw.edu.au/locate Mobile Directory http://m.library.unsw.edu.au/locate 600 500 Feb 400 Mar April May 300 June July 200 100 0 iPhone iPad Android Windows MacOSX iPod Other Unknown Mobile Directory http://m.library.unsw.edu.au/locate Total 2000 1800 1600 1400 1200 1000 800 600 400 200 0 Feb Mar April May June July Library app - Boopsie • Google Docs for the easy stuff. • Using Primo Web Services for Library search • Time trying to match web results pc_availability_ind“ TRUE • Upgrade to Primo 4 –Primo Web Services doesn’t match. • EZproxy and SFX – mobile interfaces.. • LibGuides/Springshare Library app - Boopsie Library app - Boopsie Library app – Primo Web Services Order of records displaying • Aleph rather than blended view with PCI – add local scopes in Locations, but also add PCI adaptor (<uic:Location type= "adaptor" value= 'primo_central_ multiple_fe' />) – • Exclude ‘expand beyond my collections’: – • include the request parameter institution=UNSW (from Primo 3.1.2, institution cannot be null) prim:delivery where prim:delcategory = Remote Search Resource and prim:fulltext = no_fulltext In May- Ex Libris provided advice: how to exclude "Expand beyond library collections" in Primo Web Services: o <RequestParams> <RequestParam key="pc_availability_ind"> true </RequestParam> </RequestParams> Library app – Primo Web Services Relevance • we needed to remove elements to invoke the default of relevance. • Show all locations: use dedupmrgXXXXXXXXXX as the docid Blank detail screen for online resources • iOS does not like Primo URLs: URLs must be RFC2396 compliant. – Problem: :, < and > – Boopsie converted URLs and solved problem SFX query string encoding ‘&’: SFX query strings inconsistently encode & as html (&amp;) http://sfxuat.library.unsw.edu.au:1801/webclient/DeliveryManager?pid=84364&amp;custom_att_2=simple _viewer&amp;search_terms=&amp;pds_handle= to http://sfxuat.library.unsw.edu.au:1801/webclient/DeliveryManager?pid=84364&custom_att_2=simple_vie wer&search_terms=&pds_handle= Library app – Primo Web Services Selecting multiple links in XML • • • For the delivery category of – “Physical Item” and “Online Resources” the URL in GETIT (goes to SFX or vendor as appropriate). – "Remote Search Resource", the XML uses linktorsrc or openurlfulltext if record does not have linktorsrc. Initially, for all records, Boopsie chose linktorsrc or openurl, whichever it found first logic finally implemented was: – if all <sear:GETIT> links are "physical item", then show the detail page else, look for <sear:LINKS> to find the first <sear:linktorsrc>, or first <sear:openurlfulltext>, or first <sear:openurl> else show the detail page Library app – Human error • Dear Boopsie: there’s something wrong with the app! – When I log in to myLibrary, I can see that I have an overdue book – but I can’t see the fine. o Dear Boopsie – please ignore previous email – Aleph doesn’t calculate the fine until I return the book… • Dear Boopsie: there’s something wrong with the app! – I can’t renew my loan o Dear Boopsie – please ignore previous email – my loan is overdue: library rule is that users cannot renew overdue items… Library app – App Stores Boopsie submitted the app to both the • Android Store (by that time, GooglePlay) and • Apple App Store. GooglePlay happily made the App available, but Apple required some more tweaking, and made it available about a week later. Just search for UNSW library. Library app – some statistics Unique Users 600 500 400 iPhone IPad 300 Android other (inc iPod) 200 100 0 May June July Library app – some statistics Total unique users 1200 1000 800 600 Total users 400 200 0 May June July Library app – some statistics Total Queries 6000 5000 4000 iPhone Android 3000 iPad other (inc iPod 2000 1000 0 May June July Library app – some statistics Total queries 12000 10000 8000 6000 Total queries 4000 2000 0 May June July Next Steps • • • Fix the FRBR Reserve an item Primo e-shelf Item Loan Status Refine Search •In the Library •Online •Books •Articles Using the Primo webservices in a mobile app • Susan Lafferty susan.lafferty@unsw.edu.au • Tom Ruthven t.ruthven@unsw.edu.au