By John Wohlers, Waubonsee

joeneetscompetitiveΑσφάλεια

3 Νοε 2013 (πριν από 3 χρόνια και 9 μήνες)

88 εμφανίσεις

Mapping your library with

Web Services and Google Maps

By
John
Wohlers, Waubonsee
Community College


Technologies Used

o
SirsiDynix Web Services API

o
SirsiDynix E
-
Library

o
PHP

o
MySQL

o
Google Maps API V3

o
Google Earth

o
QR Codes

o
Adobe Photoshop / Fireworks

Drawing the map

o
Scan floor plan

o
Use layers to trace


Vector drawing


Opacity

o
Permanent fixtures

o
Remove scanned image

o
No text or logos

Adjust the alignment

o
Locate library


http://maps.google.com

o
Screenshot


Highest zoom (Level 20)


Import into layer

o
Orient map to screenshot

o
Adjust scale

o
Remove screenshot

Embellish your map

o
Add persistent text


Room Numbers


Descriptors

o
Add logo

o
Flourishes

Preparing the map

o
Download & Install MapTiler


http://www.maptiler.org

o
Geo locate your map image


http://www.getlatlon.com/


Google Earth


Handheld GPS


Tiling the Map

o
Location Format: North South East West


41.66487457668102 41.66385936458253
-
88.50639149534651
-
88.50750234162167

Testing the tiles

o
Test in browser


googlemaps.html


version 2 API

o
Make adjustments

if needed and

re
-
export

o
Copy tiles to

web server


Getting Fancy

o
Item location using SirsiDynix Web Services

o
QR Codes

o
You are here


SirsiDynix Core Web Services

o
Standard Services


Catalog searches


Basic Item info

o
Security Services


Authentication

o
Patron Services


LICENCE REQUIRED


Patron account info


Renewals, Holds

o
Admin Services


System policies


Add Service Client ID

o
Symphony Web Services Admin

o
Client ID


Google Maps


Web Services


No license



Web Services in PHP

o
PHP Modules & Libraries


PHP SOAP module


WSDLProxyGenerator


Bug fix required

o
Define header

o
Create client

o
“Try / catch”


Title Lookup

o
Create lookup request

o
Perform lookup

Simple Database

o
MySQL

o
Stores location data


Symphony location code


Call number range


Lat / Long data


Marker data

o
Varchar for Lat / Long due to length

o
Example limited to four coordinates

Schema

o
“Locations “ table


Location Data

o
Google Earth


Map overlay

o
Draw regions using “Add Polygon”


Export to KML

o
Locate markers via “Add
Placemark



Export to KML


Physical Location Lookup

o
Convert LC Call to sortable


E185.61 .C6970
=
E

0185.61C.6970 .0000

o
LC Sort library
(‘LC_sortable.php’)

o
MySQL query


JavaScript

o
Define tile boundaries

o
Create new google.maps.ImageMapType

o
Create new map object

o
Overlay ImageMapType

o
Marker JavaScript


Dynamically generated by PHP


Enhancing eLibrary

o
Copy “dispholdings.h” to
Pages_custom/Elib_revD

o
Include custom map.h file


eLibrary
-

Map.h

o
Custom HTML / JavaScript


eLibrary uses Prototype JavaScript framework

The End Result: New Books

The End Result: Stacks

The End Result: Reserves

Additional Resources

o
This presentation


http://bit.ly/h6Wt4b

o
Google Maps API Family


http://code.google.com/apis/maps/index.html

o
Google I/O 2009 Map
HowTo


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


WSDL Proxy PHP library

o
WSDL Proxy


http://www.phpbuilder.com/columns/adam_delve
s20060606.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 */


o
Email:
jwohlers@waubonsee.edu

o
Instant Messenger: cap60552

o
Twitter: cap60552

o
Facebook:
http://www.facebook.com/wohlers

o
In person at the conference



Questions?

Why type it…

Contact Info

Presentation & Files