c o s u g i 2 0 1 1 p h o e n i x, a r i z o n a mapping your library with web services and google...

28
C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

Upload: sharlene-jordan

Post on 17-Dec-2015

216 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Mapping your library with Web Services and Google

MapsJohn Wohlers

Waubonsee Community College

Page 2: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Page 3: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Technologies Used SirsiDynix Web Services API SirsiDynix E-Library PHP MySQL Google Maps API V3 Google Earth QR Codes Adobe Photoshop / Fireworks

Page 4: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Drawing the map

Scan floor plan Use layers to trace

– Vector drawing– Opacity

Permanent fixtures Remove scanned image No text or logos

Page 5: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Adjust the alignment

Locate library– http://maps.google.com

Screenshot – Highest zoom (Level 20)– Import into layer

Orient map to screenshot Adjust scale Remove screenshot

Page 6: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Embellish your map

Add persistent text– Room Numbers– Descriptors

Add logo Flourishes

Page 7: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Preparing the map

Download & Install MapTiler– http://www.maptiler.org

Geo locate your map image– http://www.getlatlon.com/– Google Earth– Handheld GPS

Page 8: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Tiling the Map

Location Format: North South East West

– 41.66487457668102 41.66385936458253 -88.50639149534651 -88.50750234162167

Page 9: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Testing the tiles

Test in browser– googlemaps.html– version 2 API

Make adjustmentsif needed and re-export

Copy tiles to web server

Page 10: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Getting Fancy

Item location using SirsiDynix Web Services

QR Codes You are here

Page 11: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

SirsiDynix Core Web Services

Standard Services Catalog searches Basic Item info

Security Services Authentication

Patron Services LICENCE REQUIRED Patron account info Renewals, Holds

Admin Services System policies

Page 12: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Add Service Client ID

Symphony Web Services Admin Client ID

– Google Maps– Web Services– No license

Custom Client ID’s not retained during upgrades as of 3.0

Page 13: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Web Services in PHP

PHP Modules & Libraries – PHP SOAP module– WSDLProxyGenerator

Bug fix required

Define header Create client “Try / catch”

Page 14: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Title Lookup

Create lookup request Perform lookup

Page 15: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Simple Database

MySQL Stores location data

– Symphony location code– Call number range– Lat / Long data– Marker data

Varchar for Lat / Long due to length Example limited to four coordinates

Page 16: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Schema

“Locations “ table

Page 17: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Location Data

Google Earth– Map overlay

Draw regions using “Add Polygon”– Export to KML

Locate markers via “Add Placemark”– Export to KML

Page 18: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Physical Location Lookup

Convert LC Call to sortable– E185.61 .C6970 = E  0185.61C.6970 .0000

LC Sort library (‘LC_sortable.php’) MySQL query

Page 19: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

JavaScript

Define tile boundaries Create new

google.maps.ImageMapType Create new map object Overlay ImageMapType Marker JavaScript

– Dynamically generated by PHP

Page 20: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Enhancing eLibrary

Copy “dispholdings.h” to Pages_custom/Elib_revD

Include custom map.h file

Page 21: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

eLibrary - Map.h

Custom HTML / JavaScript– eLibrary uses Prototype JavaScript

framework

Page 22: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

The End Result: New Books

Page 23: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

The End Result: Stacks

Page 24: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

The End Result: Reserves

Page 25: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Additional Resources

This presentation– http://bit.ly/h6Wt4b

Google Maps API Family– http://code.google.com/apis/maps/index.

html Google I/O 2009 Map HowTo

– http://code.google.com/p/googleio2009-map/wiki/HowTo

Page 26: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

WSDL Proxy PHP library

WSDL Proxy– http://www.phpbuilder.com/columns/ada

m_delves20060606.php3– Patch:@@ -20,6 +20,7 @@ preg_match("/([a-z0-9_]+)\s+([a-z0-9_]+(\[\])?)(.*)?/si", $type, $matches); $type = $matches[1];+ $name = $matches[2]; switch($type) { /* if the data type is struct, we create a class with this name */

Page 27: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Email: [email protected] Instant Messenger: cap60552 Twitter: cap60552 Facebook: http://www.facebook.com/wohlers

In person at the conference

Questions?

Page 28: C O S U G I 2 0 1 1  P H O E N I X, A R I Z O N A Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

C O S U G I 2 0 1 1 P H O E N I X, A R I Z O N A

Why type it…