DEFINE_VARIABLE; PERSISTENT ISSUE dvWEATHER!
jimmyw
Posts: 112
I wanted to post this to ask what people are using currently, I have written ~12 different full fledged weather modules now, each with the advantages and caveats. I am also looking for a system that wont change for a while and require a rewrite.
ones I know about
NOAA: http://www.nws.noaa.gov/
TWC: http://portal.theweatherchannel.com/myaccount.aspx
Weatherbug: http://weather.weatherbug.com/desktop-weather/api-documents.html
google: http://google.com/ig/api?weather=89123 (no documentation, unsupported officially)
AMX: duet module with paid service, yuck
yahoo weather: http://developer.yahoo.com/weather/
world weather: http://www.worldweatheronline.com/free-weather-feed.aspx
foreca: http://corporate.foreca.com/en/products/forecaweatherapi/ (not sure if they are still around, great for dumping all data to central server, then serving it to clients from there)
Finding that a few of these modules dont work anymore I am using the google api now, its tags changed a little, but it was a quick fix.
So, whats everyone else using?
ones I know about
NOAA: http://www.nws.noaa.gov/
TWC: http://portal.theweatherchannel.com/myaccount.aspx
Weatherbug: http://weather.weatherbug.com/desktop-weather/api-documents.html
google: http://google.com/ig/api?weather=89123 (no documentation, unsupported officially)
AMX: duet module with paid service, yuck
yahoo weather: http://developer.yahoo.com/weather/
world weather: http://www.worldweatheronline.com/free-weather-feed.aspx
foreca: http://corporate.foreca.com/en/products/forecaweatherapi/ (not sure if they are still around, great for dumping all data to central server, then serving it to clients from there)
Finding that a few of these modules dont work anymore I am using the google api now, its tags changed a little, but it was a quick fix.
So, whats everyone else using?
0
Comments
The down side is they request that you not update more than once an hours which is fine when tracking only one city. I'm sure you can probably get away with once every 30 minutes and poll data for 2 city but I've never tried. If you poll too fast they return a "slow down" message with no weather data. I figure one city is good enough and now a days who really cares if it's on the TPs. They got iPad, Smart Phones, etc that can let them surf and find anything they want. Also a lot slicker than we can provide on a TP so it's only a matter of time before I don't even bother putting it on TPs anymore.
We just completed a house where I had to find traffic cam urls for over 90 cams and display them on 9000 laid out in a traffic route pattern! Most of our client want something super slick and super easy, they hate multiple devices.
I guess I am lucky my clients are still lazy Americans
There's also absolutely no parsing on the AMX side whatsoever with the format I've chosen to serve it in. Pick your poison from any of those above (except Weather.com now charges an amazing amount) and serve it out in a single format that never changes.
I think I may end up doing just that, do you store your weather image files on the server too?
Something you could do for dynamic requests is vining-s-kick-butt-av-site.com/weather.php?zipcode=12345
Use PHP, ASP, JSP, or whatever.
I found a different URL than the one listed in the developer documentation that returns a 5-day forecast by using a zipcode instead of the USID the documentation uses.
http://xml.weather.yahoo.com/forecastrss/<zipcode>.xml
Very easy to parse the XML response too.
So I shamelessly chopped up Vining's program, and turned it into a module that accesses Weatherbug. Much of the same data is available, though I had to completely re-do the parsing sections, add a few fields, kill a few others, etc., to make it work right. You can tell by looking at it that it was based on Vining's, but there are a lot of substantive changes as well.
But, I've been using Weatherbug's RSS feed ever since. One really nice feature of it is they have a lot of local stations, and you can grab the nearest one by zip code. Their international support is pretty weak; but I can live with that.
Nice find! 5 day forecast, and I dont have to go through the additional step of Zip to WOEID!
I punched out a module for this in an hour or so, and it works great, I did a stress test at home and was able to request a new zip every 3 seconds for 10 minutes with no ill effects.
api.wunderground.com
The 'get' commands are:
Current Observations: /auto/wui/geo/WXCurrentObXML/index.xml?query=',cZipcode,'
Forecast: /auto/wui/geo/ForecastXML/index.xml?query=',cZipcode,'
(where cZipcode is CHAR cZipcode [5])