Skip to content

Instantly share code, notes, and snippets.

@christonog
Created November 12, 2010 15:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save christonog/674193 to your computer and use it in GitHub Desktop.
Save christonog/674193 to your computer and use it in GitHub Desktop.
script to collate the tracking of various shipping services
require 'rubygems'
require 'sinatra'
get '/' do
"enter the tracking number in the url:
ltracker.heroku.com/tracking/(your tracking number)"
end
get '/tracking/:number' do
# UPS code
if params[:number] =~ /\A1ZW/
redirect "http://wwwapps.ups.com/WebTracking/processInputRequest?sort_by=status&tracknums_displayed=1&TypeOfInquiryNumber=T&loc=en_US&InquiryNumber1=#{params[:number]}&track.x=0&track.y=0"
# Australian Air code
elsif params[:number] =~ /\AUJZ/
redirect "https://trackandtrace.aae.com.au/#{params[:number]}"
elsif params[:number] =~ /\d{12}/
#US Fedex
redirect "http://www.fedex.com/Tracking?language=english&cntry_code=us&tracknumbers=#{params[:number]}"
elsif params[:number] =~ /\A00/
#Fedex UK
redirect "http://www.fedexuk.net/accounts/QuickTrack.aspx?consignment=#{params[:number]}"
elsif params[:number] =~ /\d{10}/
#DPD
redirect "http://www.dpd.co.uk/tracking/trackingSearch.do?search.searchType=0&search.parcelNumber=#{params[:number]}&search.searchScope="
elsif params[:number] =~ /\A11/
#DHL
redirect "http://track.dhl-usa.com/TrackByNbr.asp?ShipmentNumber=#{params[:number]}"
else
"not a valid tracking number. Try again."
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment