Author Topic: API Changes - uploads stopped working Jan 30  (Read 1861 times)

0 Members and 1 Guest are viewing this topic.

Offline Scott216

  • Senior Member
  • **
  • Posts: 62
API Changes - uploads stopped working Jan 30
« on: February 03, 2017, 10:32:54 AM »
I saw in another post that Weather Underground has switch to Amazon servers.  My PWS uploads stopped working Jan 30th 3:41 PM.  I upload with an Arduino using WU's API.  Does any know if the API format has changed?

BTW, my weather station is here: https://www.wunderground.com/personal-weather-station/dashboard?ID=KVTWESTD3

--Scott

Offline mmorris

  • Forecaster
  • *****
  • Posts: 766
  • Hope your day is full of sunshine
    • Weather and Racin
Re: API Changes - uploads stopped working Jan 30
« Reply #1 on: February 03, 2017, 11:20:45 AM »
well if I ping WU it come back to a server here: Hong Kong Hong Kong Akamai Technologies Inc. so doesn't look like they are using US servers..
>>Miles<<  By from Portage Lakes, OH.
Been using VWS since 1996 Ver# 14.01P43
Wireless Vantage Pro2Plus Serial Data Logger, Anemo Tran Kit
Win XP, Firefox, WXSIM, Cumulus, NexStorm, Yawcam, VVP, BadBlue Web server, Quake Catcher Net
Follow me on twitter
Vietnam era Veteran USAF bb loader
Quadruple Bypass survivor


Offline jim7fl

  • Member
  • *
  • Posts: 2
Re: API Changes - uploads stopped working Jan 30
« Reply #3 on: February 03, 2017, 12:18:13 PM »
I was just on the phone with support at Ambient because my ws-1200-IP would not report and the server light on the bridge was not on.

Ed told me about the server change from Wunderground switching to Amazon, which could account for some of the problem.  The other thing is that Ambient has a bug that argues if you set a static IP.  I changed back to DHCP (my router still assigns static IP based on the MAC) and all is well now.

Best regards,
 Jim Smith
https://www.wunderground.com/weatherstation/WXDailyHistory.asp?ID=KFLWHITE4&day=03&month=02&year=2017


Offline ValentineWeather

  • Forecaster
  • *****
  • Posts: 6364
    • Valentine Nebraska's Real-Time Weather
Randy

Offline ptr727

  • Member
  • *
  • Posts: 7
Re: API Changes - uploads stopped working Jan 30
« Reply #6 on: February 03, 2017, 03:47:45 PM »
Same problem here, my PWS stopped reporting Jan 30, but the device page for my WS-1400 IP looks fine, and after a reboot, still does not work?
Found this message: http://www.ambientweather.com/wswsfiup.html
Restoring to DHCP and rebooting fixed the issue, waiting for AW to issue a firmware update so I can go back to static IP.
« Last Edit: February 03, 2017, 03:56:28 PM by ptr727 »

Offline heli-freak66

  • Member
  • *
  • Posts: 1
Re: API Changes - uploads stopped working Jan 30
« Reply #7 on: February 28, 2017, 12:53:10 PM »
Hi Scott,
I come from Germany and have the same problem.
Be the Jan 31.01. has also sent the transfer from my weather station to weather underground stopped.
My weather station is an Arduino mega with ethernet shield. Do you already have new information?

Best regards
Manfred

Sorry for my bad english

Offline jgveill

  • Member
  • *
  • Posts: 11
Re: API Changes - uploads stopped working Jan 30
« Reply #8 on: March 21, 2017, 08:41:30 PM »
Hello,

Like many others my arduino station stopped working on Jan 30th.  Finally I got it working (IQUBECVI10). 

I suspect that many users did like me : gathering information on the web for uploading their weather station data to Wunderground. The usual steps to connect to server, send GET parameters and disconnect were :

char SERVER [] = "weatherstation.wunderground.com" ;    // server identification
char WEBPAGE [] = "GET /weatherstation/updateweatherstation.php?" ;  // webpage
 
 1- if (!client.connect(SERVER, 80)) // Connect to server

 2- client.print(WEBPAGE);           // Send data with GET and successive parameters
    client.print(F("ID=XXXX"));   
    client.print(F("&PASSWORD=XXXX"));
    client.print(F("&dateutc=now"));         
    client.print(F("&winddir="));

    // and so on ....

    client.print(F("&action=updateraw"));
    client.println();

 3- while (client.connected() && (millis() - lastRead < IDLE_TIMEOUT_MS))  // read server response
    // other code to read server response

 4- client.stop   // stop client
 
Since Wunderground's server change at the end of Jan 2017, this is not working anymore. 
Wrong / incomplete GET structure is the culprit.

Here are the steps with fixed lines (see the 3 commented lines) :

char SERVER [] = "weatherstation.wunderground.com" ;
char WEBPAGE [] = "GET /weatherstation/updateweatherstation.php?" ;

 1- if (!client.connect(SERVER, 80))

 2- client.print(WEBPAGE);         
    client.print(F("ID=XXXX")); 
    client.print(F("&PASSWORD=XXXX"));
    client.print(F("&dateutc=now"));         
    client.print(F("&winddir="));
   // and so on ....
    client.println(F("&action=updateraw HTTP/1.1"));   // print changed to println and HTTP/1.1               added at the end
    client.println(F("Host: http://weatherstation.wunderground.com")); // new line added
    client.println("Connection: close");   // new line added
    client.println();   

 3- while (client.connected() && (millis() - lastRead < IDLE_TIMEOUT_MS)) 
     .......

 4- client.stop 
       

 I hope this could help !  For me this solved the problem.

 J Guy

 

anything