Return to Project-GC

Welcome to Project-GC Q&A. Ask questions and get answers from other Project-GC users.

If you get a good answer, click the checkbox on the left to select it as the best answer.

Upvote answers or questions that have helped you.

If you don't get clear answers, edit your question to make it clearer.

0 votes
519 views

We have a project that tracks the spread of the zombie plague as if the vector were geocaching http://www.finditlogitspreadit.info.  This is accomplished by tracking the geolocations visited by zombie travel bugs (ZTB) that we release.  Currently, the update process is manual:

1 - Log onto Groundspeak and look at our trackables

2- Sort the resulting list by "last log"

3 - Move "backward in time" page by page to the date of the last update we did

4 - Starting there, visit every ZTBs page and hand count the places it has been since the last time we updated

5 - Work this process forward until we have counted every ZTB that has moved since the last update

6 - Manually add up all the counts.

As you might imagine, this is a time consuming and laborious process, as we currently have 280 ZTBs released.  We would like to be able to automate the process with a tool that queries Groundspeak's site for the applicable ZTBs, and returns a list/count/report that shows all locations visited (ideally down to the state, or first governmental division level), and the number of visits in each of those locations, since a specifically determined date.  Also, the number of total locations visited, and total number of ZTBs that moved.  We do not have access to Groundspeak's API, so we are hoping that a tool implemented through Project-GC, which does have access to the API might be possible.  It seems like Project-GC already has the ability to sort caches by location/country/governmewt administrative divisions, so if one has the data for a trackable, the same process should be possible. 

We would welcome  any thoughts that anyone has that would help to automate our process.

in Feature requests by Zekester & Simon (120 points)
I learned that the API does not provide (enough?) informations about trackables. So this would not be possible, i'm afraid.
I taught the same but ganja1447 said as a comment on another question that is was possible but to track all tb:s will take equal or more api call to gc.com then track all finds

If pgc dount do it you can do it in a roundabout way automatic with GSAK
 look at gcapi in the help
The minimal macro to fetch a TB travels is below just write to a file and use
The result is visible in the sqlite database and the variable
a copy from the built in SQL manager gives the following result in a strange parsed XML
https://staging.api.groundspeak.com/Live/v6beta/geocaching.svc/help/operations/GetTrackableTravelList
The api is badly described at https://api.groundspeak.com/LiveV6/geocaching.svc/help and i tested the GetTrackableTravelList metod.

I think that you can use the scheduling in windows to run it with a script automaticly.
Fetch all TB data and save to a file and upload to the server.
To get the location you could use https://developers.google.com/maps/documentation/geocoding/intro#Geocoding




#GSAK macro
$data = gcapi("GetTrackableTravelList?tbCode=TB4XTDP","")
if $_GcApiError
# error running api so show error message
msgok msg=$data
else
# api OK now do what you want with the return data
endif
#end of macro

"XML"

/GetTrackableTravelResponse/Status/StatusCode    0
/GetTrackableTravelResponse/Status/StatusMessage    OK
/GetTrackableTravelResponse/Status/ExceptionDetails   
/GetTrackableTravelResponse/Status/Warnings   
/GetTrackableTravelResponse/Status   
/GetTrackableTravelResponse/TrackableTravels/xmlns:a    http://schemas.datacontract.org/2004/07/Tucson.Geocaching.WCF.API.Geocaching.Types
/GetTrackableTravelResponse/TrackableTravels/a:TrackableTravel/a:CacheID    3361435
/GetTrackableTravelResponse/TrackableTravels/a:TrackableTravel/a:DateLogged    2013-01-10T16:32:33
/GetTrackableTravelResponse/TrackableTravels/a:TrackableTravel/a:Latitude    39.366933
/GetTrackableTravelResponse/TrackableTravels/a:TrackableTravel/a:Longitude    -77.4283
/GetTrackableTravelResponse/TrackableTravels/a:TrackableTravel   
/GetTrackableTravelResponse/TrackableTravels/a:TrackableTravel/a:CacheID    3377092
/GetTrackableTravelResponse/TrackableTravels/a:TrackableTravel/a:DateLogged    2013-02-02T12:00:00
/GetTrackableTravelResponse/TrackableTravels/a:TrackableTravel/a:Latitude    39.3147
/GetTrackableTravelResponse/TrackableTravels/a:TrackableTravel/a:Longitude    -77.769283
/GetTrackableTravelResponse/TrackableTravels/a:TrackableTravel

Please log in or register to answer this question.

...