Archive for November, 2009|Monthly archive page

BCaching Release 0.6.5

Another minor update tonight. Full details here.

Most interesting (in my opinion) is MUCH better support for touch screen devices. I’ve been able to test it on a Motorola Droid and Blackberry Storm, but I’d love to hear some feedback on how it looks on some other mobile browsers… like iPhone, Palm Pre, Windows Mobile and what about  Nokia, and LG touch screen browsers?

BCaching Field Notes API

The bcaching API is intended for use by mobile geocaching apps to retrieve geocache data and have access to a large repository of geocache data without needing to store it all on the device itself.

The Query API can be found here.

The Notes API is new and has had limited testing. The URL is http://(www|test).bcaching.com/…). It allows a mobile app to upload field notes (finds, dnfs, and notes). When used in combination with the BCaching Query API it can be used to prevent found caches from being re-downloaded in subsequent BCaching queries. Field notes uploaded to BCaching can also be downloaded from BCaching for use in uploading to geocaching.com.

Request format is an HTTP POST or PUT to the following URL (format is nearly identical to the query api):
http://(www|test).bcaching.com/api/notes.ashx?u=<username>&a=add&time=<current-time>&sig=<signature>
where:

  • username is a valid bcaching.com username (UrlEncoded)
  • current-time is the current mobile device time in “java” milliseconds (i.e. java.util.Date.getTime)
  • signature is an md5 hash of the querystring plus an md5 hash of the bcaching user’s password.

The posted request content format is identical to the geocaching fieldnotes text file format. A utf-8 text file, with comma-separated values including waypoint, time, log-type, and text. Multiple notes can be posted when separated by newlines.

<waypoint>,<time>,<log-type>,”<text>”

where:

  • <waypoint> is the geocaching GC#
  • <time> is the complete log date and time in UTC format. For example, 2009-11-25T22:37:55Z. The time may also be expressed in local time with a time zone offset instead of the letter Z.
  • <log-type> is a valid field note log type:
    • Found it
    • Didn’t find it
    • Write note
    • Attended
    • Webcam Photo Taken
    • Private note (bcaching note only, won’t be exported)
  • <text> is the log text. Note that it is surrounded by double-quotes. It can also contain newlines inside the double-quotes and those newlines will not be treated as an end-of-record character but part of the note text.