NWS forecast.weather.gov changing 24-Apr-2017. New advforecast2.php V5.00

FROM - NCO / NIDS TO - ALL SUBJECT - NIDS MAINTENANCE - 04/24/17 . A reminder - There will be an upgrade to forecast.weather.gov on 4/24/2017 - the work is scheduled to run during the following maintenance window . Start - 1400 UTC Stop - 2100 UTC . The entire maintenance window is reserved for this upgrade. We expect there will be minor interruptions in service during this event. . If you have any questions or issues, please notify our Tier I group at 301.713.0902 or send an email to the following address - toc.nwstg -at- noaa.gov. . If Critical Weather is declared for this maintenance window, the upgrade work will be rescheduled. . Your patience as we work to improve our support and service is truly appreciated. . NIDS/KM

I’ve pushed the release version of advforecast2.php V5.00 (JSON) to the Saratoga template update tool.

Saratoga template: update tool with a query for Base-USA, *-plugin, 22-Apr-2017

Standalone: script page
Note: you’ll also need the V1.01 of DualImage.php and a few new icons – there’s a update .zip for that on the script page.

Updated to the 4/22 version now, works well! Thank you :smiley:

Ditto. Working fine here. Thanks, Ken.

Methinks the NWS has rolled back the change due to issues, so the old forecast.weather.gov is working again.

While it is, you may want to check your Settings.php for $SITE[‘NWSforecasts’] = array( … ); or if standalone, the $NWSforecasts = array( … ); entries.

If they look like

  "VTZ007|Coles Pond Area|http://forecast.weather.gov/MapClick.php?site=btv&FcstType=text&site=BTV&map.x=290&map.y=88&TextType=2",
  "VTZ004|Island Pond VT|http://forecast.weather.gov/MapClick.php?lat=44.817889670988784&lon=-71.87667846679688&site=btv&unit=0&lg=en&FcstType=text&TextType=2",
  "NHZ001|Pittsburg NH|http://forecast.weather.gov/MapClick.php?lat=45.05606124274415&lon=-71.38778686523438&site=gyx&unit=0&lg=en&FcstType=text&TextType=2",
  "VTZ007|St Johnsbury VT|http://forecast.weather.gov/MapClick.php?map.x=307&map.y=100&site=BTV&FcstType=text&zmx=1&zmy=1&TextType=2",
  "VTZ017|Burlington VT|http://forecast.weather.gov/MapClick.php?map.x=208&map.y=93&site=BTV&FcstType=text&zmx=1&zmy=1&TextType=2",
  "VTZ008|Montpelier VT|http://forecast.weather.gov/MapClick.php?map.x=261&map.y=118&site=BTV&FcstType=text&zmx=1&zmy=1&TextType=2",
  "VTZ003|Newport VT|http://forecast.weather.gov/MapClick.php?map.x=289&map.y=43&site=BTV&FcstType=text&zmx=1&zmy=1&TextType=2",

you should (while you can) convert them to MapClick.php URLS that have lat= and long= in them like

  "VTZ007|Coles Pond Area|http://forecast.weather.gov/MapClick.php?lat=44.5421&lon=-72.215&unit=0&lg=english&FcstType=text&TextType=2",
  "VTZ004|Island Pond VT|http://forecast.weather.gov/MapClick.php?lat=44.81788&lon=-71.87667&unit=0&lg=english&FcstType=text&TextType=2",
  "NHZ001|Pittsburg NH|http://forecast.weather.gov/MapClick.php?lat=45.05606&lon=-71.38778&unit=0&lg=english&FcstType=text&TextType=2",
  "VTZ007|St Johnsbury VT|http://forecast.weather.gov/MapClick.php?lat=44.4156&lon=-71.975&unit=0&lg=english&FcstType=text&TextType=2",
  "VTZ017|Burlington VT|http://forecast.weather.gov/MapClick.php?lat=44.4881&lon=-73.2262&unit=0&lg=english&FcstType=text&TextType=2",
  "VTZ008|Montpelier VT|http://forecast.weather.gov/MapClick.php?lat=44.2665&lon=-72.5719&unit=0&lg=english&FcstType=text&TextType=2",
  "VTZ003|Newport VT|http://forecast.weather.gov/MapClick.php?lat=44.937&lon=-72.2089&unit=0&lg=english&FcstType=text&TextType=2",

The easy way to do this (while the current forecast.weather.gov is up) is to:

  1. copy the URL into the browser and remove the &TextType=2 from the end of the URL and press enter.
  2. near the bottom of the page, right click on the “Printable Forecast” link and copy THAT URL to replace your URL in the list. It will have lat=…&lon=… in it.
  3. repeat for your entire list. then save the update to Settings.php (or the advforecast2.php script if standalone).

Then you’ll be fully ready for the conversion of the forecast.weather.gov site when it finishes.

Also, there is a small setting in advforecast2.php (JSON) V5.00 that controls what URLs are used for the clickable Alert and detail links. It is currently set as

$useProdNWS = true; // =false, use preview V3 sites, =true, use production sites (after 24-Apr-2017)

which causes the detail alerts from alerts.weather.gov and detail page links to forecast.weather.gov.
You might want to change it to

$useProdNWS = false; // =false, use preview V3 sites, =true, use production sites (after 24-Apr-2017)

to have the (working) alert details from alerts-v2.weather.gov and the (working) forecast-v3.weather.gov sites until the real conversion is finished.

Fortunately, the api.weather.gov site (used for all the JSON retrieval) has been stable during their fiddling with forecast.weather.gov.

Best regards,
Ken

Public domain image from Wikimedia

Good representative image choice, Niko :slight_smile:

We’re still on the ‘it could change at any time’ watch since the announcement had said “on or about April 24” for implementation.

I was pleased that the api.weather.gov was stable during their cutover, so folks who used the new advforecast2.php V5.00 (JSON) script continued to have forecasts during the instability of forecast.weather.gov (and zone forecasts when their point-forecast info was being reloaded at the usual daily times).

No longer changing ‘at any time’ … the new date is 19-Jun-2017 for cutover. 4th time the charm, I guess.

Meanwhile you can prepare for the change (and use the new advforecast2.php V5.01 script) by checking your Settings.php for $SITE[‘NWSforecasts’] = array( … ); or if standalone, the $NWSforecasts = array( … ); entries.

If they look like

  "VTZ007|Coles Pond Area|http://forecast.weather.gov/MapClick.php?site=btv&FcstType=text&site=BTV&map.x=290&map.y=88&TextType=2",
  "VTZ004|Island Pond VT|http://forecast.weather.gov/MapClick.php?lat=44.817889670988784&lon=-71.87667846679688&site=btv&unit=0&lg=en&FcstType=text&TextType=2",
  "NHZ001|Pittsburg NH|http://forecast.weather.gov/MapClick.php?lat=45.05606124274415&lon=-71.38778686523438&site=gyx&unit=0&lg=en&FcstType=text&TextType=2",
  "VTZ007|St Johnsbury VT|http://forecast.weather.gov/MapClick.php?map.x=307&map.y=100&site=BTV&FcstType=text&zmx=1&zmy=1&TextType=2",
  "VTZ017|Burlington VT|http://forecast.weather.gov/MapClick.php?map.x=208&map.y=93&site=BTV&FcstType=text&zmx=1&zmy=1&TextType=2",
  "VTZ008|Montpelier VT|http://forecast.weather.gov/MapClick.php?map.x=261&map.y=118&site=BTV&FcstType=text&zmx=1&zmy=1&TextType=2",
  "VTZ003|Newport VT|http://forecast.weather.gov/MapClick.php?map.x=289&map.y=43&site=BTV&FcstType=text&zmx=1&zmy=1&TextType=2",

you should (while you can) convert them to MapClick.php URLS that have lat= and long= in them like

  "VTZ007|Coles Pond Area|http://forecast.weather.gov/MapClick.php?lat=44.5421&lon=-72.215&unit=0&lg=english&FcstType=text&TextType=2",
  "VTZ004|Island Pond VT|http://forecast.weather.gov/MapClick.php?lat=44.81788&lon=-71.87667&unit=0&lg=english&FcstType=text&TextType=2",
  "NHZ001|Pittsburg NH|http://forecast.weather.gov/MapClick.php?lat=45.05606&lon=-71.38778&unit=0&lg=english&FcstType=text&TextType=2",
  "VTZ007|St Johnsbury VT|http://forecast.weather.gov/MapClick.php?lat=44.4156&lon=-71.975&unit=0&lg=english&FcstType=text&TextType=2",
  "VTZ017|Burlington VT|http://forecast.weather.gov/MapClick.php?lat=44.4881&lon=-73.2262&unit=0&lg=english&FcstType=text&TextType=2",
  "VTZ008|Montpelier VT|http://forecast.weather.gov/MapClick.php?lat=44.2665&lon=-72.5719&unit=0&lg=english&FcstType=text&TextType=2",
  "VTZ003|Newport VT|http://forecast.weather.gov/MapClick.php?lat=44.937&lon=-72.2089&unit=0&lg=english&FcstType=text&TextType=2",

The easy way to do this (while the current forecast.weather.gov is up) is to:

  1. copy the URL into the browser and remove the &TextType=2 from the end of the URL and press enter.
  2. near the bottom of the page, right click on the “Printable Forecast” link and copy THAT URL to replace your URL in the list. It will have lat=…&lon=… in it.
  3. repeat for your entire list. then save the update to Settings.php (or the advforecast2.php script if standalone).

Then you’ll be fully ready for the conversion of the forecast.weather.gov site when it finishes.

Also, there is a small setting in advforecast2.php (JSON) V5.00 that controls what URLs are used for the clickable Alert and detail links. It is currently set as

$useProdNWS = true; // =false, use preview V3 sites, =true, use production sites (after 24-Apr-2017)

which causes the detail alerts from alerts.weather.gov and detail page links to forecast.weather.gov.
You might want to change it to

$useProdNWS = false; // =false, use preview V3 sites, =true, use production sites (after 24-Apr-2017)

to have the (working) alert details from alerts-v2.weather.gov and the (working) forecast-v3.weather.gov sites until the real conversion is finished.
V5.01 changed the setting to $useProdNWS = false; (only change, except versioning) from 5.00.

I do notice that the forecast-v3.weather.gov site shows some alerts that are missing from the api.weather.gov queries … they appear to be using some internal scripting from a different source to extract the alerts (which appear the same on the current forecast.weather.gov and forecast-v3.weather.gov for a particular point-forecast).

I hope they’ll iron out the differences before the next cutover… the api is to be the ‘official’ method of getting that data.

Impact to users of the advforecast2.php V5.X: some alerts may not be displayed on the page, but Curly’s nws-alerts script (which uses alerts.weather.gov) should continue to display them in the sidebar of Saratoga USA sites.

Fortunately, the api.weather.gov site (used for all the JSON retrieval) has been stable during their fiddling with forecast.weather.gov.

Phoenix forecasts are completely down today with ‘Sorry… the forecast for Phoenix is not available at this time.’ and other AZ cities show ‘The detailed point forecast weather data is not currently available.’ Looks like they’re messing around again.

Ken, a few days ago I made all the changes in your post so was not expecting the blank Phx forecast.

You shouldn’t get a blank forecast unless the api.weather.gov server is having an issue (possible). In that case, neither the zone nor the point forecast is available until the server is fixed. Normally, if the point forecast isn’t available, they respond with a 400 error, and the zone forecast is fetched instead.

Up to now that’s the way it has been operating (zone forecast shown in place of point with an explanation in the red border box). Today it got sick but only for PSR - other AZ cities had the red box. It came back up a short while ago all in the proper format.

Thanks.

I have updated to the latest advforecast2.php (v5.03) and now the forecast will no longer update. Can anyone give me an idea as to what or why this is happening?

Is this still an issue? I see that http://www.k3jae.com/wxforecast.php is showing a forecast via the 5.03 version.

I re-ran your forecast page with ?force=1 and found in the view-source of the page

so there appears to be an issue with your webserver trying to access api.weather.gov via IPV6 address, but the IPV4 address seemed to work.

It does seem to be working now, although it appears not to update regularly as it has in the past. It is a “sporadic” update at best.