SlideShare une entreprise Scribd logo
1  sur  44
Mobile Patrons: Better Services
on the Go
Vincci Kwong and Gary Browning
Indiana University South Bend
10th
Brick & Click Libraries
November 5, 2010
Mobile Internet Usage
Mobile Data Applications Usage
Statistics for Library Website
Mobile Website or Mobile App?
• Target audience
• User experience
• Technical skills
• Costs
First Version of Library Mobile Site
Popular Items on Mobile Website
• Library catalog
• Floor map
• Events
• Hours
• Social media info
IU Mobile Initiative
https://m.iu.edu/miu-prd/about/index.shtml
Graphic Icon for Mobile
Schurz Library Mobile Interface
http://m.library.iusb.edu
Statistics for Library Mobile Website
Mobile Site Generator
• Hidden Peanuts
• Molly
• iPhone Application - DCPL
Mobile Friendly Authentication
Internet
Built-in
Authentication
Remote access to
subscription databases
is done through OCLC’s
EZproxy Authentication
and Access software.
Mobile Friendly Authentication
Internet
Built-in
Authentication
EZproxy does not have
built-in support for
mobile devices.
X
How to make EZproxy Mobile Friendly
Incorporate a mobile
device detection library?
http://detectmobilebrowsers.mobi/
EZproxy Ticket Authentication
http://ezproxy.yourlib.org:2048/login?
user=rdoe&ticket=a6911a5d0219f428b33e190a80818625%24c20
041222220203&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
Sample PHP code
<?php
require("ezproxyticket.php");
$ezproxy = new
EZproxyTicket("http://ezprox
y.yourlib.org:2048", "shhhh",
"someuser");
?>
<a href="<?php
echo($ezproxy-
>url("http://www.somedb.co
m")) ?>">Some
Database</a><br />
EZproxy user.txt
::Ticket
TimeValid 90
MD5 shhhh
Expired; Deny expired.htm
/Ticket
EZproxy Ticket Authentication
Internet
Valid ticket?
Generate Ticket
Web Server with PHP
Server with ezProxy
External Authentication
Internet Valid ticket?
authenticated?
Generate ticket
authentication
validation
service
Server with ezProxyWeb Server with PHP
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
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.
Connecting Ezproxy with IU CAS
1. Detect mobile or desktop
• http://detectmobilebrowsers.mobi/
2. Set CASSVC (service)
• If detect mobile, set service to mobile
3. Check with CAS to see if already
authenticated
4. If authenticated, display database; otherwise
present a login screen
Sample Code – login.php
<?php
include('mobile_device_detect.php');
if(mobile_device_detect(true,true,true,true,true,true,false,false)){
header("Location: https://cas.iu.edu/cas/login?
cassvc=MOBIU&casurl=https://www.domain.edu/~site/cas/casauth.php");
}else{
header("Location: https://cas.iu.edu/cas/login?
cassvc=IU&casurl=https://www.domain.edu/~site/cas/casauth.php");
}
?>
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 = "";
}
Sample Code – casauth.php cont.
/*
* check CAS ticket authenticity and get the user's uid back
* the variable $contents will have the string
* "ticket '<ticket value>' not recognized" if a bad ticket
* has been provided.
*/
$casXML = fopen("https://cas.iu.edu/cas/validate?
cassvc=IU&casticket=$ticket&service=https://www.domain.edu/~site/cas/c
asauth.php","r");
$contents = fread($casXML, 1024);
fclose($casXML);
Sample Code – casauth.php cont.
list($yesno, $netid) = split("n", $contents, 2);
$authok = trim($yesno);
$iuid = trim($netid);
if ($authok == "no") {
header("Location: https://www.domain.edu/~site/cas/login.php");
}
else {
$_SESSION['auth'] = $iuid;
header("Location: https://www.domain.edu/~site/cas/success.php");
}
?>
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
Yes, IU Mobile Can do it!
<authenticated>
<list-item>
<link type="xml" xml="http://it.iusb.edu/demo2.php" title="Subscription
Databases" />
</list-item>
</authenticated>
<not-authenticated>
<list-item>
<link type="xml" xml="http://library.iusb.edu/miuxml/oopsSubscribed.xml"
title="Subscription Databases" />
</list-item>
</not-authenticated>
Authenticated vs. Not-Authenticated
Sample Restriction to South Bend
<list-item>
<authenticated>
<if permission="southbend">
<link type="external" url="<?php echo($ezproxy-
>url("http://vnweb.hwwilsonweb.com/mobile/jumpstart.jhtml")) ?>"
title="HW Wilson" />
</if>
</authenticated>
</list-item>
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
Computer Availability Mobile Webpage
http://m.iusb.edu
System Requirements
Computer Availability
• Web Server such as Apache or IIS
• PHP
• Database such as MySQL
• Ability to run login and logout scripts
How It Works
Internet
Workstations
Web Server with PHP MySQL Server
Active Directory Server
www.iusb.edu/~labseats
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 "<seat lab="$region_building $region_location"
building="$region_display_name" availability="$total_idle_computers/
$total_online_computers" campus="
SB" /> n”; }
?> </seats>
Mobile Output
Internet
Web Server with PHP MySQL Server
IU Mobile Server
Texting Reference Service
Planning for Mobile Website
1. Needs assessments
2. Integrate with existing library services
3. Project planning
4. Build the site
5. Testing, marketing, launching
6. Keeping up
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
QR Code
• Two-dimensional barcode readable by QR
scanners, mobile phones with camera, and
smartphones.
• Stores text, URL or other data.
QR Code Generator
• Kaywa
• ZXing Project
• Mobile-Barcode
• Bit.ly
• goo.gl
• …. and more!
Chrome extension
QR Code Reader
• i-nigma
• ScanLife
• BeeTagg
• Lynkee
http://www.mobile-barcodes.com/qr-code-software/
Resources
• Mobile Access 2010 -
http://www.pewinternet.org/~/media//Files/Reports/2010/PIP_Mobile_Ac
cess_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
• QR Code: Library Success Wiki -
http://www.libsuccess.org/index.php?title=QR_Codes
Questions?
Feel free to contact us at
• Vincci Kwong
• Email: vkwong@iusb.edu
• Phone: 574-520-4444
• Gary Browning
• Email: gary@iusb.edu
• Phone: 574-520-5516

Contenu connexe

En vedette

Google Hummingbird: What do you know?
Google Hummingbird: What do you know?Google Hummingbird: What do you know?
Google Hummingbird: What do you know?Vincci Kwong
 
How to Enhance Findability of Library Web Content via SEO
How to Enhance Findability of Library Web Content via SEOHow to Enhance Findability of Library Web Content via SEO
How to Enhance Findability of Library Web Content via SEOVincci Kwong
 
Don't Take Grants for Granted!
Don't Take Grants for Granted!Don't Take Grants for Granted!
Don't Take Grants for Granted!Vincci Kwong
 
Life After Going Live: Up-to-date or Outdated?
Life After Going Live: Up-to-date or Outdated?Life After Going Live: Up-to-date or Outdated?
Life After Going Live: Up-to-date or Outdated?Vincci Kwong
 
Drones and Libraries: Is the Future Now, or Simply the Future?
Drones and Libraries: Is the Future Now, or Simply the Future?Drones and Libraries: Is the Future Now, or Simply the Future?
Drones and Libraries: Is the Future Now, or Simply the Future?Vincci Kwong
 
Drupal: Library Web Sites Made Easy
Drupal: Library Web Sites Made EasyDrupal: Library Web Sites Made Easy
Drupal: Library Web Sites Made EasyVincci Kwong
 
Decision Making for All: Leaders, Followers, Partners, Loners, and More!
Decision Making for All: Leaders, Followers, Partners, Loners, and More!Decision Making for All: Leaders, Followers, Partners, Loners, and More!
Decision Making for All: Leaders, Followers, Partners, Loners, and More!Vincci Kwong
 

En vedette (9)

Peer Review 101
Peer Review 101Peer Review 101
Peer Review 101
 
Google Hummingbird: What do you know?
Google Hummingbird: What do you know?Google Hummingbird: What do you know?
Google Hummingbird: What do you know?
 
How to Enhance Findability of Library Web Content via SEO
How to Enhance Findability of Library Web Content via SEOHow to Enhance Findability of Library Web Content via SEO
How to Enhance Findability of Library Web Content via SEO
 
Don't Take Grants for Granted!
Don't Take Grants for Granted!Don't Take Grants for Granted!
Don't Take Grants for Granted!
 
Website Usability
Website UsabilityWebsite Usability
Website Usability
 
Life After Going Live: Up-to-date or Outdated?
Life After Going Live: Up-to-date or Outdated?Life After Going Live: Up-to-date or Outdated?
Life After Going Live: Up-to-date or Outdated?
 
Drones and Libraries: Is the Future Now, or Simply the Future?
Drones and Libraries: Is the Future Now, or Simply the Future?Drones and Libraries: Is the Future Now, or Simply the Future?
Drones and Libraries: Is the Future Now, or Simply the Future?
 
Drupal: Library Web Sites Made Easy
Drupal: Library Web Sites Made EasyDrupal: Library Web Sites Made Easy
Drupal: Library Web Sites Made Easy
 
Decision Making for All: Leaders, Followers, Partners, Loners, and More!
Decision Making for All: Leaders, Followers, Partners, Loners, and More!Decision Making for All: Leaders, Followers, Partners, Loners, and More!
Decision Making for All: Leaders, Followers, Partners, Loners, and More!
 

Similaire à Mobile Patrons: Better Services on the Go (For Novice)

Creating an Effective Mobile API
Creating an Effective Mobile API Creating an Effective Mobile API
Creating an Effective Mobile API Nick DeNardis
 
HTML5 on Mobile
HTML5 on MobileHTML5 on Mobile
HTML5 on MobileAdam Lu
 
Reaching out from ADF Mobile (ODTUG KScope 2014)
Reaching out from ADF Mobile (ODTUG KScope 2014)Reaching out from ADF Mobile (ODTUG KScope 2014)
Reaching out from ADF Mobile (ODTUG KScope 2014)Luc Bors
 
How to CASifying PeopleSoft and Integrating CAS and ADFS
How to CASifying PeopleSoft and Integrating CAS and ADFSHow to CASifying PeopleSoft and Integrating CAS and ADFS
How to CASifying PeopleSoft and Integrating CAS and ADFSJohn Gasper
 
WebAPIs & Apps - Mozilla London
WebAPIs & Apps - Mozilla LondonWebAPIs & Apps - Mozilla London
WebAPIs & Apps - Mozilla LondonRobert Nyman
 
PuppetConf 2016: The Long, Twisty Road to Automation: Implementing Puppet at ...
PuppetConf 2016: The Long, Twisty Road to Automation: Implementing Puppet at ...PuppetConf 2016: The Long, Twisty Road to Automation: Implementing Puppet at ...
PuppetConf 2016: The Long, Twisty Road to Automation: Implementing Puppet at ...Puppet
 
uMobile Preconference Seminar
uMobile Preconference SeminaruMobile Preconference Seminar
uMobile Preconference SeminarJennifer Bourey
 
Web APIs & Apps - Mozilla
Web APIs & Apps - MozillaWeb APIs & Apps - Mozilla
Web APIs & Apps - MozillaRobert Nyman
 
Cross-Platform Data Access for Android and iPhone
Cross-Platform Data Access for Android and iPhoneCross-Platform Data Access for Android and iPhone
Cross-Platform Data Access for Android and iPhonePeter Friese
 
Producing a mobile presence. Timeline: Yesterday...
Producing a mobile presence. Timeline: Yesterday...Producing a mobile presence. Timeline: Yesterday...
Producing a mobile presence. Timeline: Yesterday...Nick DeNardis
 
3 Approaches to Mobile - An A to Z Primer.
3 Approaches to Mobile - An A to Z Primer.3 Approaches to Mobile - An A to Z Primer.
3 Approaches to Mobile - An A to Z Primer.agup2009
 
Making your site mobile-friendly - DevCSI Reading 21.07.2010
Making your site mobile-friendly - DevCSI Reading 21.07.2010Making your site mobile-friendly - DevCSI Reading 21.07.2010
Making your site mobile-friendly - DevCSI Reading 21.07.2010Patrick Lauke
 
Обмен учетными данными между iOS 8 приложениями и вебом, Константин Чернухо, ...
Обмен учетными данными между iOS 8 приложениями и вебом, Константин Чернухо, ...Обмен учетными данными между iOS 8 приложениями и вебом, Константин Чернухо, ...
Обмен учетными данными между iOS 8 приложениями и вебом, Константин Чернухо, ...Yandex
 
Building APIs in an easy way using API Platform
Building APIs in an easy way using API PlatformBuilding APIs in an easy way using API Platform
Building APIs in an easy way using API PlatformAntonio Peric-Mazar
 
David Keeney - SQL Database Server Requests from the Browser @ Postgres Open
David Keeney - SQL Database Server Requests from the Browser @ Postgres OpenDavid Keeney - SQL Database Server Requests from the Browser @ Postgres Open
David Keeney - SQL Database Server Requests from the Browser @ Postgres OpenPostgresOpen
 
Persistent mobile JavaScript
Persistent mobile JavaScriptPersistent mobile JavaScript
Persistent mobile JavaScriptYorick Phoenix
 
Cloudbase.io MoSync Reload Course
Cloudbase.io MoSync Reload CourseCloudbase.io MoSync Reload Course
Cloudbase.io MoSync Reload Coursecloudbase.io
 

Similaire à Mobile Patrons: Better Services on the Go (For Novice) (20)

Hacking mobile apps
Hacking mobile appsHacking mobile apps
Hacking mobile apps
 
Creating an Effective Mobile API
Creating an Effective Mobile API Creating an Effective Mobile API
Creating an Effective Mobile API
 
HTML5 on Mobile
HTML5 on MobileHTML5 on Mobile
HTML5 on Mobile
 
Reaching out from ADF Mobile (ODTUG KScope 2014)
Reaching out from ADF Mobile (ODTUG KScope 2014)Reaching out from ADF Mobile (ODTUG KScope 2014)
Reaching out from ADF Mobile (ODTUG KScope 2014)
 
How to CASifying PeopleSoft and Integrating CAS and ADFS
How to CASifying PeopleSoft and Integrating CAS and ADFSHow to CASifying PeopleSoft and Integrating CAS and ADFS
How to CASifying PeopleSoft and Integrating CAS and ADFS
 
WebAPIs & Apps - Mozilla London
WebAPIs & Apps - Mozilla LondonWebAPIs & Apps - Mozilla London
WebAPIs & Apps - Mozilla London
 
PuppetConf 2016: The Long, Twisty Road to Automation: Implementing Puppet at ...
PuppetConf 2016: The Long, Twisty Road to Automation: Implementing Puppet at ...PuppetConf 2016: The Long, Twisty Road to Automation: Implementing Puppet at ...
PuppetConf 2016: The Long, Twisty Road to Automation: Implementing Puppet at ...
 
uMobile Preconference Seminar
uMobile Preconference SeminaruMobile Preconference Seminar
uMobile Preconference Seminar
 
Web APIs & Apps - Mozilla
Web APIs & Apps - MozillaWeb APIs & Apps - Mozilla
Web APIs & Apps - Mozilla
 
Owasp & php
Owasp & phpOwasp & php
Owasp & php
 
Cross-Platform Data Access for Android and iPhone
Cross-Platform Data Access for Android and iPhoneCross-Platform Data Access for Android and iPhone
Cross-Platform Data Access for Android and iPhone
 
Producing a mobile presence. Timeline: Yesterday...
Producing a mobile presence. Timeline: Yesterday...Producing a mobile presence. Timeline: Yesterday...
Producing a mobile presence. Timeline: Yesterday...
 
3 Approaches to Mobile - An A to Z Primer.
3 Approaches to Mobile - An A to Z Primer.3 Approaches to Mobile - An A to Z Primer.
3 Approaches to Mobile - An A to Z Primer.
 
Making your site mobile-friendly - DevCSI Reading 21.07.2010
Making your site mobile-friendly - DevCSI Reading 21.07.2010Making your site mobile-friendly - DevCSI Reading 21.07.2010
Making your site mobile-friendly - DevCSI Reading 21.07.2010
 
Обмен учетными данными между iOS 8 приложениями и вебом, Константин Чернухо, ...
Обмен учетными данными между iOS 8 приложениями и вебом, Константин Чернухо, ...Обмен учетными данными между iOS 8 приложениями и вебом, Константин Чернухо, ...
Обмен учетными данными между iOS 8 приложениями и вебом, Константин Чернухо, ...
 
HTML5 WebWorks
HTML5 WebWorksHTML5 WebWorks
HTML5 WebWorks
 
Building APIs in an easy way using API Platform
Building APIs in an easy way using API PlatformBuilding APIs in an easy way using API Platform
Building APIs in an easy way using API Platform
 
David Keeney - SQL Database Server Requests from the Browser @ Postgres Open
David Keeney - SQL Database Server Requests from the Browser @ Postgres OpenDavid Keeney - SQL Database Server Requests from the Browser @ Postgres Open
David Keeney - SQL Database Server Requests from the Browser @ Postgres Open
 
Persistent mobile JavaScript
Persistent mobile JavaScriptPersistent mobile JavaScript
Persistent mobile JavaScript
 
Cloudbase.io MoSync Reload Course
Cloudbase.io MoSync Reload CourseCloudbase.io MoSync Reload Course
Cloudbase.io MoSync Reload Course
 

Dernier

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 

Dernier (20)

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 

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

  • 1. Mobile Patrons: Better Services on the Go Vincci Kwong and Gary Browning Indiana University South Bend 10th Brick & Click Libraries November 5, 2010
  • 5. Mobile Website or Mobile App? • Target audience • User experience • Technical skills • Costs
  • 6. First Version of Library Mobile Site
  • 7. Popular Items on Mobile Website • Library catalog • Floor map • Events • Hours • Social media info
  • 10. Schurz Library Mobile Interface http://m.library.iusb.edu
  • 11. Statistics for Library Mobile Website
  • 12. Mobile Site Generator • Hidden Peanuts • Molly • iPhone Application - DCPL
  • 13. Mobile Friendly Authentication Internet Built-in Authentication Remote access to subscription databases is done through OCLC’s EZproxy Authentication and Access software.
  • 14. Mobile Friendly Authentication Internet Built-in Authentication EZproxy does not have built-in support for mobile devices. X
  • 15. How to make EZproxy Mobile Friendly Incorporate a mobile device detection library? http://detectmobilebrowsers.mobi/
  • 16. EZproxy Ticket Authentication http://ezproxy.yourlib.org:2048/login? user=rdoe&ticket=a6911a5d0219f428b33e190a80818625%24c20 041222220203&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
  • 17. Sample PHP code <?php require("ezproxyticket.php"); $ezproxy = new EZproxyTicket("http://ezprox y.yourlib.org:2048", "shhhh", "someuser"); ?> <a href="<?php echo($ezproxy- >url("http://www.somedb.co m")) ?>">Some Database</a><br /> EZproxy user.txt ::Ticket TimeValid 90 MD5 shhhh Expired; Deny expired.htm /Ticket
  • 18. EZproxy Ticket Authentication Internet Valid ticket? Generate Ticket Web Server with PHP Server with ezProxy
  • 19. External Authentication Internet Valid ticket? authenticated? Generate ticket authentication validation service Server with ezProxyWeb Server with PHP
  • 20. 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
  • 21. 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.
  • 22. Connecting Ezproxy with IU CAS 1. Detect mobile or desktop • http://detectmobilebrowsers.mobi/ 2. Set CASSVC (service) • If detect mobile, set service to mobile 3. Check with CAS to see if already authenticated 4. If authenticated, display database; otherwise present a login screen
  • 23. Sample Code – login.php <?php include('mobile_device_detect.php'); if(mobile_device_detect(true,true,true,true,true,true,false,false)){ header("Location: https://cas.iu.edu/cas/login? cassvc=MOBIU&casurl=https://www.domain.edu/~site/cas/casauth.php"); }else{ header("Location: https://cas.iu.edu/cas/login? cassvc=IU&casurl=https://www.domain.edu/~site/cas/casauth.php"); } ?>
  • 24. 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 = ""; }
  • 25. Sample Code – casauth.php cont. /* * check CAS ticket authenticity and get the user's uid back * the variable $contents will have the string * "ticket '<ticket value>' not recognized" if a bad ticket * has been provided. */ $casXML = fopen("https://cas.iu.edu/cas/validate? cassvc=IU&casticket=$ticket&service=https://www.domain.edu/~site/cas/c asauth.php","r"); $contents = fread($casXML, 1024); fclose($casXML);
  • 26. Sample Code – casauth.php cont. list($yesno, $netid) = split("n", $contents, 2); $authok = trim($yesno); $iuid = trim($netid); if ($authok == "no") { header("Location: https://www.domain.edu/~site/cas/login.php"); } else { $_SESSION['auth'] = $iuid; header("Location: https://www.domain.edu/~site/cas/success.php"); } ?>
  • 27. 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
  • 28. Yes, IU Mobile Can do it! <authenticated> <list-item> <link type="xml" xml="http://it.iusb.edu/demo2.php" title="Subscription Databases" /> </list-item> </authenticated> <not-authenticated> <list-item> <link type="xml" xml="http://library.iusb.edu/miuxml/oopsSubscribed.xml" title="Subscription Databases" /> </list-item> </not-authenticated>
  • 30. Sample Restriction to South Bend <list-item> <authenticated> <if permission="southbend"> <link type="external" url="<?php echo($ezproxy- >url("http://vnweb.hwwilsonweb.com/mobile/jumpstart.jhtml")) ?>" title="HW Wilson" /> </if> </authenticated> </list-item>
  • 31. 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
  • 32. Computer Availability Mobile Webpage http://m.iusb.edu
  • 33. System Requirements Computer Availability • Web Server such as Apache or IIS • PHP • Database such as MySQL • Ability to run login and logout scripts
  • 34. How It Works Internet Workstations Web Server with PHP MySQL Server Active Directory Server www.iusb.edu/~labseats
  • 35. 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 "<seat lab="$region_building $region_location" building="$region_display_name" availability="$total_idle_computers/ $total_online_computers" campus=" SB" /> n”; } ?> </seats>
  • 36. Mobile Output Internet Web Server with PHP MySQL Server IU Mobile Server
  • 38. Planning for Mobile Website 1. Needs assessments 2. Integrate with existing library services 3. Project planning 4. Build the site 5. Testing, marketing, launching 6. Keeping up
  • 39. 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
  • 40. QR Code • Two-dimensional barcode readable by QR scanners, mobile phones with camera, and smartphones. • Stores text, URL or other data.
  • 41. QR Code Generator • Kaywa • ZXing Project • Mobile-Barcode • Bit.ly • goo.gl • …. and more! Chrome extension
  • 42. QR Code Reader • i-nigma • ScanLife • BeeTagg • Lynkee http://www.mobile-barcodes.com/qr-code-software/
  • 43. Resources • Mobile Access 2010 - http://www.pewinternet.org/~/media//Files/Reports/2010/PIP_Mobile_Ac cess_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 • QR Code: Library Success Wiki - http://www.libsuccess.org/index.php?title=QR_Codes
  • 44. Questions? Feel free to contact us at • Vincci Kwong • Email: vkwong@iusb.edu • Phone: 574-520-4444 • Gary Browning • Email: gary@iusb.edu • Phone: 574-520-5516