dave-atx / homebridge-platform-smartac

A homebridge plug-in for ThinkEco SmartAC thermostats.
MIT License
14 stars 10 forks source link

Modlet/SmartAC went down this morning and now AC is stuck updating #10

Open jsaltzman opened 5 years ago

jsaltzman commented 5 years ago

This morning the Modlet service went down. I contacted tech support to confirm it was down. The app did not work nor the website. Now it is back online but my Modlet is stuck "updating" in the Home app. Any idea what the issue is? Please let me know if you need additional info to troubleshoot.

dave-atx commented 5 years ago

If you restart the homebridge service, that should kick things back into gear. If your phone still doesn’t pick that up, you can restart that as well.

jsaltzman commented 5 years ago

Fixed. Does homebridge and or the smartAC often need a reboot? It’s a bit of a process to do when not on my network (no vpn currently setup).

On July 25, 2019 at 2:18:35 PM, Dave Marquard (notifications@github.com) wrote:

If you restart the homebridge service, that should kick things back into gear. If your phone still doesn’t pick that up, you can restart that as well.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/dave-atx/homebridge-platform-smartac/issues/10?email_source=notifications&email_token=AAPIQVSLKUTNEVVC6JKVBJDQBHU7XA5CNFSM4IG5F2K2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD22K66I#issuecomment-515157881, or mute the thread https://github.com/notifications/unsubscribe-auth/AAPIQVS3U5DV4DOCRGEUCGDQBHU7XANCNFSM4IG5F2KQ .

elesueur commented 5 years ago

Seems like the plugin doesn't handle well when the ThinkEco API returns a gateway timeout (which is usually an HTML response). I noticed that my entire homebridge system seems to become unresponsive periodically, and when I look back through the logs, I see

` [2019-9-1 00:18:12] [ThinkEco SmartAC Platform] api updating thermostat status... (node:454) UnhandledPromiseRejectionWarning: SyntaxError: Unexpected token < in JSON at position 0 at JSON.parse (:null:null) at ThinkEcoAPI.getThermostats (/usr/local/lib/node_modules/homebridge-platform-smartac/index.js:121:36) at :null:null at process._tickCallback (internal/process/next_tick.js:118:7)

(node:454) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1) (node:454) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code. `

The unexpected < is the opening bracket of the <html> tag that is returned.

The smart AC plugin code needs to be improved to handle the case when the API does not return JSON.