mapping your library with web services and google maps n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Mapping your library with Web Services and Google Maps PowerPoint Presentation
Download Presentation
Mapping your library with Web Services and Google Maps

play fullscreen
1 / 28

Mapping your library with Web Services and Google Maps

132 Views Download Presentation
Download Presentation

Mapping your library with Web Services and Google Maps

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Mapping your library with Web Services and Google Maps John Wohlers Waubonsee Community College

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

  3. Drawing the map • Scan floor plan • Use layers to trace • Vector drawing • Opacity • Permanent fixtures • Remove scanned image • No text or logos

  4. 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

  5. Embellish your map • Add persistent text • Room Numbers • Descriptors • Add logo • Flourishes

  6. Preparing the map • Download & Install MapTiler • http://www.maptiler.org • Geo locate your map image • http://www.getlatlon.com/ • Google Earth • Handheld GPS

  7. Tiling the Map • Location Format: North South East West • 41.66487457668102 41.66385936458253 -88.50639149534651 -88.50750234162167

  8. Testing the tiles • Test in browser • googlemaps.html • version 2 API • Make adjustmentsif needed and re-export • Copy tiles to web server

  9. Getting Fancy • Item location using SirsiDynix Web Services • QR Codes • You are here

  10. 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

  11. 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

  12. Web Services in PHP • PHP Modules & Libraries • PHP SOAP module • WSDLProxyGenerator • Bug fix required • Define header • Create client • “Try / catch”

  13. Title Lookup • Create lookup request • Perform lookup

  14. 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

  15. Schema • “Locations “ table

  16. Location Data • Google Earth • Map overlay • Draw regions using “Add Polygon” • Export to KML • Locate markers via “Add Placemark” • Export to KML

  17. Physical Location Lookup • Convert LC Call to sortable • E185.61 .C6970 = E  0185.61C.6970 .0000 • LC Sort library (‘LC_sortable.php’) • MySQL query

  18. JavaScript • Define tile boundaries • Create new google.maps.ImageMapType • Create new map object • Overlay ImageMapType • Marker JavaScript • Dynamically generated by PHP

  19. Enhancing eLibrary • Copy “dispholdings.h” to Pages_custom/Elib_revD • Include custom map.h file

  20. eLibrary - Map.h • Custom HTML / JavaScript • eLibrary uses Prototype JavaScript framework

  21. The End Result: New Books

  22. The End Result: Stacks

  23. The End Result: Reserves

  24. 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

  25. WSDL Proxy PHP library • WSDL Proxy • http://www.phpbuilder.com/columns/adam_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 */

  26. Questions? • Email: jwohlers@waubonsee.edu • Instant Messenger: cap60552 • Twitter: cap60552 • Facebook: http://www.facebook.com/wohlers • In person at the conference

  27. Why type it…