ToddGreenfield / homebridge-airnow

Homebridge plugin for AirNow Web-API Air Quality Sensor
36 stars 10 forks source link

airnow/homebridge crash when no internet connection #4

Closed milanBalan closed 6 years ago

milanBalan commented 6 years ago

looks like there is an issue with handling internet connection, once there is no network, airnow module kill homebridge service,

Feb  3 04:09:13 raspberrypi homebridge[502]: /usr/lib/node_modules/homebridge-airnow/index.js:147
Feb  3 04:09:13 raspberrypi homebridge[502]: #011#011#011#011} else if (observations.status == "error") {
Feb  3 04:09:13 raspberrypi homebridge[502]: #011#011#011#011                        ^
Feb  3 04:09:13 raspberrypi homebridge[502]: TypeError: Cannot read property 'status' of undefined
Feb  3 04:09:13 raspberrypi homebridge[502]:     at Request._callback (/usr/lib/node_modules/homebridge-airnow/index.js:147:29)
Feb  3 04:09:13 raspberrypi homebridge[502]:     at self.callback (/usr/lib/node_modules/homebridge-airnow/node_modules/request/request.js:186:22)
Feb  3 04:09:13 raspberrypi homebridge[502]:     at emitOne (events.js:116:13)
Feb  3 04:09:13 raspberrypi homebridge[502]:     at Request.emit (events.js:211:7)
Feb  3 04:09:13 raspberrypi homebridge[502]:     at Request.onRequestError (/usr/lib/node_modules/homebridge-airnow/node_modules/request/request.js:878:8)
Feb  3 04:09:13 raspberrypi homebridge[502]:     at emitOne (events.js:116:13)
Feb  3 04:09:13 raspberrypi homebridge[502]:     at ClientRequest.emit (events.js:211:7)
Feb  3 04:09:13 raspberrypi homebridge[502]:     at Socket.socketErrorListener (_http_client.js:387:9)
Feb  3 04:09:13 raspberrypi homebridge[502]:     at emitOne (events.js:116:13)
Feb  3 04:09:13 raspberrypi homebridge[502]:     at Socket.emit (events.js:211:7)
Feb  3 04:09:13 raspberrypi systemd[1]: homebridge.service: Main process exited, code=exited, status=1/FAILURE
Feb  3 04:09:13 raspberrypi systemd[1]: homebridge.service: Unit entered failed state.
Feb  3 04:09:13 raspberrypi systemd[1]: homebridge.service: Failed with result 'exit-code'.
Feb  3 04:09:23 raspberrypi systemd[1]: homebridge.service: Service hold-off time over, scheduling restart.
Feb  3 04:09:23 raspberrypi systemd[1]: Stopped Node.js HomeKit Server.
Feb  3 04:09:23 raspberrypi systemd[1]: Started Node.js HomeKit Server.
ToddGreenfield commented 6 years ago

Thanks. I’ll take a look and try to replicate. Should be a simple fix.

ToddGreenfield commented 6 years ago

Fixed in 1.0.10.