Your SlideShare is downloading. ×
0
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Mobile Patrons: Better Services on the Go (For Techie)
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Mobile Patrons: Better Services on the Go (For Techie)

1,306

Published on

Several mobile friendly initiatives which improve mobile user’s experience with library resources will be discussed. These initiatives include creation of a mobile library website, development of …

Several mobile friendly initiatives which improve mobile user’s experience with library resources will be discussed. These initiatives include creation of a mobile library website, development of mobile friendly authentication user interface, implementation of a computer availability mobile page and offering of texting reference service.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,306
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • http://www.pewinternet.org/~/media//Files/Reports/2010/PIP_Mobile_Access_2010.pdf
  • % of overall website usage?
  • http://www.iusb.edu/~libg/mobile/index.html (2008)
  • http://uits.iu.edu/page/ayzz The backend is a J2EE (Java 2 Platform, Enterprise Edition) application. It runs in a clustered Tomcat environment with an Oracle database. It was modeling after the work that MIT had done.
  • 2499 overall hits
  • Ezproxy has a ‘static’ html login page that can be configured to appear how you like. Since Ezproxy uses Apache – First idea is to incorporate a mobile detection library possibly using PHP. Once we found a library that looked promising, we tried to incorporate it. Unfortunately it failed. We contacted OCLC and found we cannot incorporate PHP into the html login page.
  • This was suggest by OCLC. Bypasses the built-in Authentication page. OCLC has sample code in the support section of their website.
  • Ezproxy must be configured to use the same “secret” (shhh) for a ticket to be generated. The ezproxyticket.php library is available for download from the OCLC website This gets us the ability to use Ezproxy; however, we still need to incorporate an authentication mechanism.
  • Public Libraries … it is my understanding that most libraries have access to some ‘flavor’ of the SIP protocol by 3M. For example, one public library uses TLC. They would need to create a mobile login page and communicate to the TLC system using SIP.
  • IU CAS response is easier to code for; however, applications that have built-in support for CAS will not typically work with IU CAS.
  • Explain, again, that these steps are specific to CAS
  • Mention Accuracy – The “Sticky” Problem.
  • Planning for a mobile site article
  • Transcript

    • 1. Mobile Patrons: Better Services on the Go October 3, 2010 Vincci Kwong and Gary Browning Indiana University South Bend 13 th Annual LITA National Forum
    • 2. Mobile Internet Usage
    • 3. Mobile Data Applications Usage
    • 4. Statistics for Library Website
    • 5. First Version of Library Mobile Site
    • 6. Mobile Library Site Homepage
      • Ask a Librarian
      • WorldCat
      • RefWorks
      • Hours
      • Contact
      • Address
      • IU Mobile
      • Schurz Library Homepage
    • 7. IU Mobile Initiative https://m.iu.edu/miu-prd/about/index.shtml
    • 8. Graphic Icon for Mobile
    • 9. Schurz Library Mobile Interface http://m.library.iusb.edu
    • 10. Statistics for Library Mobile Website
    • 11. Mobile Friendly Authentication
      • Remote access to subscription databases is done through OCLC’s EZproxy Authentication and Access software.
      • EZproxy does not have built-in support for mobile devices.
    • 12. How to make EZproxy Mobile Friendly Incorporate a mobile device detection library? http://detectmobilebrowsers.mobi/
    • 13. EZproxy Ticket Authentication
      • http://ezproxy.yourlib.org:2048/login?user=rdoe&ticket=a6911a5d0219f428b33e190a80818625%24c20041222220203&url=http://www.somedb.com/
      • “ Ticket authentication allows remote systems to short-lived URLs that EZproxy will automatically recognize as being authorized to login and permit access to a resource with no need for EZproxy to check back with the program that creates the URL.” – OCLC website
    • 14. Sample PHP code
      • <?php require(&quot;ezproxyticket.php&quot;); $ezproxy = new EZproxyTicket(&quot;http://ezproxy.yourlib.org:2048&quot;, &quot;shhhh&quot;, &quot;someuser&quot;);
      • ?>
      • <a href=&quot;<?php echo($ezproxy->url(&quot;http://www.somedb.com&quot;)) ?>&quot;>Some Database</a><br />
      • EZproxy user.txt
      • ::Ticket
      • TimeValid 90
      • MD5 shhhh
      • Expired; Deny expired.htm
      • /Ticket
    • 15. Central Authentication System (CAS)
      • Central Authentication Service (CAS) is a login service that allows you to access multiple password-protected web systems after logging in once on a central authentication server; this is often referred to as single sign-on.
      • http://www.jasig.org/cas
    • 16. CAS vs IU CAS
      • Standard CAS response – XML
      • <cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'> <cas:authenticationSuccess> <cas:user>username</cas:user> <cas:proxyGrantingTicket>PGTIOU-84678-8a9d... </cas:proxyGrantingTicket> </cas:authenticationSuccess> </cas:serviceResponse>
      • IU CAS response –
      • If validation is successful, CAS sends back a two-line response with 'yes' on the first and 'username' on the second.
    • 17. Connecting Ezproxy with IU CAS
      • Detect mobile or desktop
      • If mobile, set CASSVC to mobile
      • Check with CAS to see if already authenticated
      • If authenticated, display database; otherwise present a login screen
    • 18. Sample Code – login.php
      • <?php
      • include('mobile_device_detect.php');
      • if(mobile_device_detect(true,true,true,true,true,true,false,false)){
      • header(&quot;Location: https://cas.iu.edu/cas/login?cassvc=MOBIU&casurl=https://www.domain.edu/~site/cas/casauth.php&quot;);
      • }else{
      • header(&quot;Location: https://cas.iu.edu/cas/login?cassvc=IU&casurl=https://www.domain.edu/~site/cas/casauth.php&quot;);
      • }
      • ?>
    • 19. Sample Code – casauth.php
      • <?php
      • session_start(); //start session
      • if( isset($_GET['casticket']) ){ //check to see if a ticket has been passed
      • $ticket = $_GET['casticket'];
      • } else {
      • $ticket = &quot;&quot;;
      • }
    • 20. Sample Code – casauth.php cont.
      • /*
      • * check CAS ticket authenticity and get the user's uid back
      • * the variable $contents will have the string
      • * &quot;ticket '<ticket value>' not recognized&quot; if a bad ticket
      • * has been provided.
      • */
      • $casXML = fopen(&quot;https://cas.iu.edu/cas/validate?cassvc=IU&casticket=$ticket&service=https://www.domain.edu/~site/cas/casauth.php&quot;,&quot;r&quot;);
      • $contents = fread($casXML, 1024);
      • fclose($casXML);
    • 21. Sample Code – casauth.php cont.
      • list($yesno, $netid) = split(&quot; &quot;, $contents, 2);
      • $authok = trim($yesno);
      • $iuid = trim($netid);
      • if ($authok == &quot;no&quot;) {
      • header(&quot;Location: https://www.domain.edu/~site/cas/login.php&quot;);
      • }
      • else {
      • $_SESSION['auth'] = $iuid;
      • header(&quot;Location: https://www.domain.edu/~site/cas/success.php&quot;);
      • }
      • ?>
    • 22. A Better Idea – Can IU Mobile do it?
      • IU Mobile is already connected to IU CAS
      • Need ability to
      • Check if authenticated
      • Display alternative information if not
      • Restrict to campus level
    • 23. Yes, IU Mobile Can do it!
      • <authenticated>
      • <list-item>
      • <link type=&quot;xml&quot; xml=&quot;http://it.iusb.edu/demo2.php&quot; title=&quot;Subscription Databases&quot; />
      • </list-item>
      • </authenticated>
      • <not-authenticated>
      • <list-item>
      • <link type=&quot;xml&quot; xml=&quot;http://library.iusb.edu/miuxml/oopsSubscribed.xml&quot; title=&quot;Subscription Databases&quot; />
      • </list-item>
      • </not-authenticated>
    • 24. Authenticated vs. Not-Authenticated
    • 25. Sample restriction to South Bend
      • <list-item>
      • <authenticated>
      • <if permission=&quot;southbend&quot;>
      • <link type=&quot;external&quot; url=&quot;<?php echo($ezproxy->url(&quot;http://vnweb.hwwilsonweb.com/mobile/jumpstart.jhtml&quot;)) ?>&quot; title=&quot;HW Wilson&quot; />
      • </if>
      • </authenticated>
      • </list-item>
    • 26. Computer Availability Mobile Webpage http://m.iusb.edu
    • 27. System Requirements
      • Computer Availability
        • Web Server such as Apache or IIS
        • PHP
        • Database such as MySQL
        • Ability to run login and logout scripts
    • 28. How it works
      • Script run at login updates database
      • Script run at logout updates database
      • Standard html version available at www.iusb.edu/~labseats
    • 29. For mobile, output data as XML
      • <seats> <?php
      • foreach ($regions as $region) {
      • $region_id = $region['region_id'];
      • $region_display_name = $region['display_name'];
      • $region_location = $region['location'];
      • $region_mac_status_counts = get_status_counts_for_region($region_id, 'Mac');
      • $region_pc_status_counts = get_status_counts_for_region($region_id, 'PC');
      • $total_idle_mac_computers = $region_mac_status_counts['idle'];
      • $total_busy_mac_computers = $region_mac_status_counts['busy'];
      • $total_idle_pc_computers = $region_pc_status_counts['idle'];
      • $total_busy_pc_computers = $region_pc_status_counts['busy'];
      • $total_idle_computers = $total_idle_mac_computers + $total_idle_pc_computers;
      • $total_online_computers = $total_idle_computers + $total_busy_computers;
      • print &quot;<seat lab=&quot;$region_building $region_location&quot; building=&quot;$region_display_name&quot; availability=&quot;$total_idle_computers/$total_online_computers&quot; campus=&quot;
      • SB&quot; /> ”; }
      • ?> </seats>
    • 30. Texting Reference Service
    • 31. Planning for Mobile Website
      • Needs assessments
      • Integrate with existing library services
      • Project planning
      • Build the site
      • Testing, marketing, launching
      • Keeping up
    • 32. Library Resources with Mobile Platforms
      • Ebscohost
      • H.W. Wilson
      • PubMed
      • WorldCat
      • Lexis/Nexis Get Cases and Shepardize
      • Fastcase
      • RefWorks
      • Hoovers
      • Encyclopedia Britannica
      • arXiv Browse
      • Factiva
      • IEEE Xplore
      • Westlaw
    • 33. Mobile Services Offered by Other Libraries
      • SMS notification services
        • Kansas State University Libraries
      • Mobile collections
        • Duke University
      • Mobile instruction
        • Open University Library
        • LibGuides
      • Library tour
        • Temple Universities Libraries
        • University of Illinois at Urbana-Champaign
    • 34. Resources
      • Mobile Access 2010 - http://www.pewinternet.org/~/media//Files/Reports/2010/PIP_Mobile_Access_2010.pdf
      • Detect Mobile Browsers - http://detectmobilebrowsers.mobi/
      • OCLC Ezproxy - http://www.oclc.org/support/documentation/ezproxy/usr/default.htm
      • CAS - http://www.jasig.org/cas
      • XML Tutorial - http://www.w3schools.com/xml/default.asp
      • AOL Mobile - http://mobile.aol.com/product/sms-text/aim-txt/
      • M-Libraries Success Wiki - http://www.libsuccess.org/index.php?title=M-Libraries
    • 35. Questions?
      • Feel free to contact us at
        • Vincci Kwong
          • Email: [email_address]
          • Phone: 574-520-4444
        • Gary Browning
          • Email: [email_address]
          • Phone: 574-520-5516

    ×