Subjects
- History
- Concepts
- Applications
- Demos
- Technical
- Development
- Questions
GeoTracing in a Nutshell
Software platform for creating tracking & tracing applications
- remote (mobile) track recording
- live tracking
- geotagged media (locative media)
- user-centric/multi-user interaction
- Location Based Services
- application-driven development
- tech: C/S, GPS, Java, AJAX, Google Maps, PostGIS
- OSS: LGPL, geotracing.codehaus.org
GPS - Global Positioning System
Source: GPS Primer
Application Domains
- "Classic" tracking & tracing
- Community mapping
- Sports
- Field observation (e.g. biology)
- Gaming
- Tourism
- Education
- Arts
Thoughts
- "Classic GIS": WHAT + WHERE
- GeoTracing: WHO + WHEN + WHAT + WHERE
- user-centric
- time-based layers
- Allow "Digital geo-story telling"
- mapping personal experiences
- navigating others' experiences
Try it out
- Sign up and login
- download/install MobiTracer on your phone
- need phone with J2ME (MIDP2.0) and Bluetooth Java (JSR-82)
- Start tracing!
MobiTracer - Features
- track recording
- create tracks
- suspend/resume track
- road rating
- simply type number on keypad
- rating tied to all subsequent track-points
- add media
- send text/photo/video/audio
- view your location/trace on Google Map
- GeoRadar
- track nearby users and media
Base Components - Server
- Container model
- Spring-like
- declarative components (XML)
- .war file deployment (J2EE)
- Protocol support
- all-XML
- core session protocol
- extensible service protocols
- Data
- storage layer (Oase)
- multi-database support
- PostGIS (spatial extension to PostgreSQL)
Base Components - Clients
- MobiTracer
- mobile phone client (Java/J2ME)
- WebTracer (prototype)
- browser/AJAX client (possibly PDA as well)
- connects locally to GPS through GPSDoor
- WebEditor (/my)
- manage tracks/media
- uploads: media, GPX
- WebViewer
- public viewing
- AJAX+Google Maps
Externals
- KeyWorx
- supports GT main architecture
- versatile portal/CMS framework
- multi-user/multimedia/multi-channel
- extensible XML protocol
- Spring-like container model
- Pushlets
- HTTP/AJAX-based notification framework
- Google Maps
- PostGIS spatial RDBMS
- Research: AJAX lib (Dojo?, MapBuilder?)
XML Protocols
- session protocol
- extends KeyWorx core protocol
- register/login/logout/authorization
- extensible services: media management, tracking, etc
- notification service
- Pushlets-based
- notification of actions in sessions (user-move, media-create, etc)
- will be integrated in session protocol
- REST services
- all queries, exports (GPX, WFS?)
Example - Session Protocol
Example - REST Service
http://www..../get.jsp?cmd=q-active-tracks
<query-store-rsp>
<record>
<id>23045</id>
<name>M13</name>
<lon>4.9005367</lon>
<lat>52.3689717</lat>
<time>1131225381296</time>
<loginname>green</loginname>
</record>
<record>
<id>177563</id>
<name>KillerClub</name>
<lon>4.8997617</lon>
.
.
</query-store-rsp>
GeoTagging Media
Steps
- Submit media file: HTTP upload, XML CDATA or email
- Server: date/time extraction
- from metadata (e.g. JPEG EXIF)
- if not available take time-of-arrival
- Server: find nearest track/point in time
- Server: Relate medium to Location, Track and Person
Core Data Model
Users, Tracks, Media as first class objects
Detailed Database Model (v1)
Deployment
- GeoTracing app is deployed as a J2EE .war file
- .war file contains
- server app
- all client apps
- Some setup required: Tomcat + MySQL
Development - Extensibility
GeoTracing offers the following extension possibilities
- extend client (AJAX) JS classes (Factory pattern)
- add new REST services (myget.jsp)
- add/modify new server-side session protocol handlers
- add new daemons
- add database tables
- create new clients based on session protocol
Development - How to create Apps
The Basics
- Ant as swiss-army knife
- create application dir
- create configuration files
- create files extending/replacing base files (e.g. JS)
- refer default app (Traceland) as a base
- unpacked gt.war is overwritten with your replacements
- generate your .war
- see examples in Subversion apps tree
Development - OSS
- OSS (LGPL) since aug 2006
- hosting: geotracing.codehaus.org
- source code in Subversion
- base framework
- applications
- many TODOs: documentation, project organization, attract developers,..
Development - Roadmap
- current version (v1)
- organize OSS project
- documentation
- client: PDA
- server: spatial DB (PostGIS, done)
- planned features (v2)
- navigation/LBS
- standards: openGIS, ...
- client: AJAX framework (DOJO?/MapBuilder?)
Development - Subversion Layout

Apps - Sense of the City
A locative media tool for urban investigators
to unveil individual mental maps of city dwellers
Apps - bliin.com
- Location user- and media search
- Track, trace and interact with other logged on users & share personal locative media in real-time on a map
- Multi-User2User localisation, publication and communication
- Desktop Client - Pocket Client
Apps - What's a Bliin ?
- Bliin is about Navigating Experiences ... experiences are contained within locations ...
locations are constantly traversed by users ... who continuously add experience ...
- A bliin is a personalised, dynamic perspective - a kind of radar - on a location and the users & media within it
- 1. Make new bliin >> 2. select location & radius >> 3. select tags of interest >> 4. view & save bliin
- Saved bliin's carry from desktop to pocket client
- work-in-progress
A Bliin
bliin.com