Tagged

The mood in here

ecobee servers' outage?

Are there any known ecobee servers' issues or upgrades in progress? Recently, I've been having difficulties to renew my refresh token. Today, it was about 2 hours ago, and I had a similar issue about 4 days ago.

It would be useful to have a status page where ecobee components would be posted with a status (such as portal, HomeIQ, servers, network, etc.), so that developers know exactly if everything is working fine on the ecobee side.

Here are the error messages some users who have installed MyEcobeeDevice in SmartThings get from time to time in recent days (although I always make sure to renew the refresh token every 55 minutes or so).

Hi Yves,
Firstly thanks for the suggestion. Because you and others have requested such a status page, I can tell you that it is something which is currently in development and we hope to have available soon.

Now, to answer your question:
No, there was no downtime on our servers recently where the issue you are seeing would have occurred.

I checked our internal logs and it the problem seems to be your application is consistently sending 2 requests to refresh the token (to the /home/token end point). Both requests are sent at the same time. The first one succeeds but the second one fails (as it is no longer valid) and that is the exception you are seeing.

Can you please double check your source code and application logic to ensure this double POST request no longer happens. After you resolve that issue I believe the problem should be resolved.

Which is quite strange, I wonder if the SmartThings platform is not firing my code twice...

I need to investigate with SmarThings, but in my logs, I can see that the same refresh token is returned by ecobee. Is there a problem to call you twice as it looks that you're returing the same token anyway?

We have confirmed there have been no outages on the ecobee side and that this is a bug with the SmartThings integration. What is happening is that for every instance of these errors, SmartThings sends two refresh token requests simultaneously. It is not clear why SmartThings does this, and it does not do this for all token refreshes which explains why you see this intermittently. When it does send the two simultaneous requests, it causes us to generate two different refresh tokens to be used. The second one replaces the first. SmartThings is retaining the first response but not the second. It subsequently uses the refresh tokens from the first response to perform later token refreshes and this fails because that first token set was invalidated by the second set generated.

As Scott indicated earlier, the root of this problem is the duplicate token refresh requests that we are seeing on our end. You may not be seeing this from your client side as the requests are coming directly from SmartThings' cloud services (Hosted on Amazon EC2).

Hello, I must also add that today at exactly 8h30 pm (EST), there were some issues with requests to ecobee servers at my location (Montreal) and also in MA (USA) as reported by some of my Ecobee device users.

Actually, it's the same requests that I send over and over again, so I don't understand why the majority of the time, they just work fine and at some specific day & time (which is at the beginning of the day), they don't work.

If you look at the 2 log instances below (details above in this thread), it's actually the same timeframe within few seconds:

2015-06-07T05:00:02.575Z
2015-06-19T05:00:08.308Z

So, I'm thinking this is more than a coincidence.... There must be some kind of outage either on the SmartThings or on the ecobee side...

The service has been having issues the last few days, so that would be a great use of the API, so it can inform the app (and other users) of certain issues, and thus help reduce support calls/contacts from users.

We have a feature on our roadmap to add this to our API and our website where users can query the status of all ecobee systems and discover any outages or service degradation. We'll update this forum when the feature is close to completion.

We unfortunately don't have an ETA yet for this feature. We've been busy working on a lot of new features in the product that everyone will see soon :)

We have not had any major outages in the time frame you mention above, nor in the past several months. The last exchanges we had on this forum regarding to this issue ended up uncovering an issue on the ST end where there were duplicate token refresh requests coming in simultaneously that were invalidating each other. In reading the thread you posted above, it seems that the issue has been confirmed to be something on the ST end.

For future reference, ecobee's own mobile apps and web portal use the exact same API. So if there is a fundamental issue/outage with things like token refreshing then all our interfaces will suffer the same issue. So if you are seeing our mobile app working fine but not yours then it is highly likely that the issue is from your end.

Scott, thanks for the answer. I know how difficult it is to create an API that works when the rest of the service is down, that has accurate and timely information, that does not trigger automatically when there are minor service disruptions, etc.

One idea is to have a web page hosted in a separate hosting service with the status of the service (either semaphore by service, or plain text that for example shows 'planned maintenance going on'), so in case there are API failures, we can point users to read that web page to confirm if there is any issue in the service.

Ecobee.com is having issues, and also my app can't authenticate or renew the token. Are there issues with the service? Is there any way for us developers to find out when there are outages? (5/10/2016, noon, Seattle time)