[OPEN-ILS-DEV] ***SPAM*** Re: Public API to Lookup Items By Barcode
Matt Lewin
dropbox at mlewin.org
Fri Nov 21 10:05:47 EST 2014
Gentlemen-
Thanks very much for your quick responses and encouragement. Until a moment ago, I had the listserv set to digest mode, which, it turns out, makes interaction with the list on a per-thread basis somewhat more challenging. I’ve pruned the digest message below and will attempt to respond to each of you in this message.
Mike Rylander, it appears that your “U2” implementation does exactly what I am looking for. Though I would love to hand the working app to my daughter immediately, I am also very happy that you pointed me at code that is yet to be rolled out. In case you couldn’t figure it out from my initial email, I was at my wit’s end. If you had responded with something akin to, “Matt, you can simply include, ‘tag:open-ils:acp_by_barcode/<barcode #>/‘ in your GET query, and it will do what you want *and* cure Cancer,” I think I would have engaged in self-flagellation. I will admit, though, I pushed so hard on this one because I couldn’t imagine *not* being able to easily retrieve information by barcode, and I didn’t want to waste anybody’s time by asking a question I should have been able to find on my own.
Also, you may want to consider renaming your new method, because you know that some smarty-pants is going to sneak in a “Bono” mode that formats all responses in “sunglasses” mode.
Michael Peters, the app I’m writing is an iOS app, though I may implement it on Android, as well. The app allows its user(s) to track items they’ve borrowed from and returned to the library. It is 100% separate from anything the library itself does to track such things. In essence, it’s meant to allow somebody to provide a “check” against the library’s borrowing records.
The idea arose from my daughter’s repeatedly returning items to the Westford library, only to be told that the items were never returned. Or at least, that’s her story. ;) The folks at the library are very forgiving, but my daughter *has* had to spend some of her allowance reimbursing the library for lost books.
The works as follows: when borrowing an item, the user scans the Codabar barcode of the item. The barcode is used to retrieve the information about the item. (This is obviously the part I wrote to you guys about; I’ve been using canned data up to this point.) The user then sets the due date for the item, and the app stores the information in a device-local list. The user then scans the item again to tell the app she is returning it. The app provides a simple interface to everything currently borrowed and everything previously returned. It also provides visual indication when an item is overdue or due within the next week. I’ve got nearly everything working using canned data, and so it was time to put on the big-boy pants and talk to the Evergreen server.
I’m having a blast writing it, and my daughter is eager to see me do something — anything, really — she can use herself.
It also turns out there’s a real need for an app such as this, as a friend of mine I described it to said his wife has resorted to taking pictures of herself returning books, just to avoid paying replacement fees for “lost” books.
On a related topic, as I take the app to completion, I’m considering wrapping whatever Evergreen interaction code I write up into a Cocoapod for all to use. With that in mind, is there a straightforward means for 3rd-party software to perform authentication on Evergreen? Put another way, if I wanted to write a mobile app that would allow a user to retrieve and manage his own library record, would I end up coming back to you guys? For example, I might want to extend the functionality of the app to reconcile the library’s idea of what a user has borrowed with the app’s idea.
From my perspective, it seems reasonable to expose sufficient APIs to parallel the functionality a library patron can perform through the website. In fact, I had assumed these APIs already existed and that the website was using them to do what it does. Obviously, I’m relatively new to Evergreen and OpenSRF. Is there some risk — security or otherwise — to what I suggest? Or is it simply that people have only so many cycles in the day, and Model-View-Controller is all nice in theory, but is a right PiTA to make happen in the real world?
Thank you both again for your interest in what I’m doing and your help in my achieving it.
-Matt
> On Nov 20, 2014, at 11:33 PM, open-ils-dev-request at list.georgialibraries.org wrote:
>
> Today's Topics:
>
> 2. Re: Public API to Lookup Items By Barcode (Michael Peters)
> 3. Re: Public API to Lookup Items By Barcode (Mike Rylander)
>
>
> ----------------------------------------------------------------------
>
> Message: 2
> Date: Thu, 20 Nov 2014 22:49:27 -0500 (EST)
> From: Michael Peters <mpeters at emeralddata.net>
> Subject: Re: [OPEN-ILS-DEV] Public API to Lookup Items By Barcode
> To: "Evergreen Development Discussion List"
> <open-ils-dev at list.georgialibraries.org>
> Message-ID: <76298868.00000590.00000009 at MichaelPetersPC>
> Content-Type: text/plain; charset="utf-8"
>
> Matt,
>
>
>
> First of all, I think it is AWESOME you are attempting to do this just for
> your daughter. That makes you an awesome dad, for sure!
>
>
>
> Would you mind sharing a few more details about how you intend to use the
> app? What platform will it be used on? Is it just a webpage she can go to
> that makes some calls to your local library public API?s? Is it a mobile
> app for Android or iOS?
>
>
>
> Do you intend for this to be a ?reading list? of sorts, where she can keep
> track of the barcodes (or maybe better yet, bib id?s) for materials she has
> already enjoyed? Do you intend for this to be a way to keep her responsible
> with her borrowing (alert her if she has a book coming due or already
> overdue)? Or maybe some combination of both.
>
>
>
> While I may not be able to help write the app, I do know that these were the
> first questions that came to mind for me when considering how to respond to
> your message.
>
>
>
> Congrats on your drive to develop something like this, and for going above
> and beyond what the average library patron would even attempt. You are way
> cool for checking out Evergreen on a deeper level, rather than just using it
> as a patron. Major high five for that!
>
>
>
> Look forward to hearing more about what you are hoping your app to look like
> and what it will do for you and your daughter (and hey, maybe even other
> people around the world if you were to share it) and seeing how this
> progresses!
>
>
>
> Best of luck,
>
> Michael Peters
> Senior Systems Analyst
> Emerald Data Networks, Inc.
> Phone: 678.302.3000 x1013
> Help Desk: 678.302.3000 x1500
> www.emeralddata.net
>
> ------------------------------
>
> Message: 3
> Date: Thu, 20 Nov 2014 23:33:17 -0500
> From: Mike Rylander <mrylander at gmail.com>
> Subject: Re: [OPEN-ILS-DEV] Public API to Lookup Items By Barcode
> To: Evergreen Development Discussion List
> <open-ils-dev at list.georgialibraries.org>
> Message-ID:
> <CAO8ar=nfUNiknX4CUhpueKx+J-YDKh=y1VN8e8TeaLT8TASNKg at mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> Matt,
>
> As it happens, I wrote the code needed to do exactly what you're attempting
> just two months ago. It's linked from here:
> https://bugs.launchpad.net/evergreen/+bug/1367926 ... the commit message in
> the git branch attached to that launchpad bug gives an example of
> retrieving the details of a title by an attached barcode. Now, there are
> ways to gather that data programmatically without that code, but it
> requires several hoops and is far from trivial for anyone not familiar with
> the internals of Evergreen.
>
> I'm pretty sure that MVLC does not have that branch in production, but it
> will almost certainly be included in the next major release, due out in the
> spring, and I bet that MVLC will be one of the first to deploy it. They
> often run pretty close to the leading edge.
>
> Hope that helps, and good luck!
>
> --
> Mike Rylander
> | President
> | Equinox Software, Inc. / Your Library's Guide to Open Source
> | phone: 1-877-OPEN-ILS (673-6457)
> | email: miker at esilibrary.com
> | web: http://www.esilibrary.com
> End of Open-ils-dev Digest, Vol 104, Issue 9
> ********************************************
More information about the Open-ils-dev
mailing list