Git Product home page Git Product logo

Comments (5)

tjmehta avatar tjmehta commented on June 28, 2024

I haven't tested a eightsleep bed with a single side well (and I didn't want to reconfigure my bed to test it). If you can log what the device response looks like to you and then strip out and IDs and auth info, I think we can fix this. If you can add a log line above this line https://github.com/tjmehta/node-eightsleep/blob/master/src/validateUser.ts#L112 logging currentDevice.side inside your node_modules/eightsleep dir that would be a good start

from homebridge-eightsleep-platform.

tjmehta avatar tjmehta commented on June 28, 2024

bump @aschi2

from homebridge-eightsleep-platform.

aschi2 avatar aschi2 commented on June 28, 2024

Sorry about that, I'll test this out this weekend.

(node:8687) UnhandledPromiseRejectionWarning: InvalidUserError: invalid currentDevice.side
at Object.validateUser [as default] (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/eightsleep/src/validateUser.ts:113:11)
at EightSleepClientApi. (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/eightsleep/src/index.ts:188:24)
at Generator.next ()
at fulfilled (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/eightsleep/dist/cjs/index.js:24:58)
at processTicksAndRejections (internal/process/task_queues.js:97:5)
{
"user": {
"userId": "",
"email": "",
"firstName": "",
"lastName": "",
"gender": "",
"tempPreference": "cold",
"tempPreferenceUpdatedAt": "2020-09-04T16:06:28.288Z",
"dob": "",
"zip":,
"devices": [
""
],
"emailVerified": true,
"sharingMetricsTo": [],
"sharingMetricsFrom": [],
"timezone": "",
"notifications": {
"weeklyReportEmail": true,
"sessionProcessed": true,
"temperatureRecommendation": true,
"healthInsight": true,
"sleepInsight": true,
"marketingUpdates": true,
"bedtimeReminder": true
},
"createdAt": "2020-07-23T13:08:55.421Z",
"features": [
"warming",
"cooling"
],
"currentDevice": {
"id": "",
"side": "solo"
}
}
}

(node:8687) 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(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:8687) [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.

from homebridge-eightsleep-platform.

tjmehta avatar tjmehta commented on June 28, 2024

fixed in v2.2.2, lmk if you still have problems.
(correctly validates when currentDevice.side is "solo")

from homebridge-eightsleep-platform.

aschi2 avatar aschi2 commented on June 28, 2024

Not sure if it's part of this same issue or a new issue but I'm still getting error messages. Though the accessory does show up in my homekit, it's not communicating.

[11/15/2020, 00:30:48] [EightSleepPod] Get CurrentTemperature
[11/15/2020, 00:30:48] [EightSleepPod] Get RotationSpeed
[11/15/2020, 00:30:48] [EightSleepPod] Get TargetHeaterCoolerState
[11/15/2020, 00:30:48] [EightSleepPod] Get Active
[11/15/2020, 00:30:48] [EightSleepPod] Get CurrentHeaterCoolerState
[11/15/2020, 00:30:48] [EightSleepPod] Get CurrentTemperature Error -> BaseError: appApiClient is missing (client should be instantiated with oauthClient)
at EightSleepClientApi.getAppApiClient (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/eightsleep/src/index.ts:144:13)
at EightSleepPod.getTemperature.memoize_concurrent_1.default.maxAge (/usr/lib/node_modules/homebridge-eightsleep-pod/src/EightSleepPod.ts:147:10)
at Object. (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/src/index.ts:31:22)
at Generator.next ()
at /usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/dist/cjs/index.js:8:71
at new Promise ()
at __awaiter (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/dist/cjs/index.js:4:12)
at EightSleepPod. (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/src/index.ts:29:66)
at EightSleepPod.getTemperature (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/mem/index.js:24:21)
at CurrentTemperature.EightsleepPodPlatformAccessory.getCurrentTemperature (/usr/lib/node_modules/homebridge-eightsleep-pod/src/platformAccessory.ts:285:53)
at CurrentTemperature.emit (events.js:315:20)
at CurrentTemperature.EventEmitter.emit (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/EventEmitter.ts:42:22)
at CurrentTemperature.Characteristic._this.getValue (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Characteristic.ts:489:12)
at /usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Accessory.ts:1217:22
at Array.forEach ()
at Bridge.Accessory._this._handleGetCharacteristics (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Accessory.ts:1145:10)
[11/15/2020, 00:30:48] [EightSleepPod] Get TargetHeaterCoolerState Error -> BaseError: appApiClient is missing (client should be instantiated with oauthClient)
at EightSleepClientApi.getAppApiClient (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/eightsleep/src/index.ts:144:13)
at /usr/lib/node_modules/homebridge-eightsleep-pod/src/EightSleepPod.ts:44:20
at Object. (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/src/index.ts:31:22)
at Generator.next ()
at /usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/dist/cjs/index.js:8:71
at new Promise ()
at __awaiter (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/dist/cjs/index.js:4:12)
at EightSleepPod. (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/src/index.ts:29:66)
at EightSleepPod.getDeviceStatus (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/mem/index.js:24:21)
at EightSleepPod.getStatus (/usr/lib/node_modules/homebridge-eightsleep-pod/src/EightSleepPod.ts:48:37)
at EightSleepPod.isOn (/usr/lib/node_modules/homebridge-eightsleep-pod/src/EightSleepPod.ts:103:35)
at Active.EightsleepPodPlatformAccessory.getActiveState (/usr/lib/node_modules/homebridge-eightsleep-pod/src/platformAccessory.ts:107:43)
at Active.emit (events.js:315:20)
at Active.EventEmitter.emit (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/EventEmitter.ts:42:22)
at Active.Characteristic._this.getValue (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Characteristic.ts:489:12)
at /usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Accessory.ts:1217:22
[11/15/2020, 00:30:48] [EightSleepPod] Get CurrentHeaterCoolerState Error -> BaseError: appApiClient is missing (client should be instantiated with oauthClient)
at EightSleepClientApi.getAppApiClient (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/eightsleep/src/index.ts:144:13)
at /usr/lib/node_modules/homebridge-eightsleep-pod/src/EightSleepPod.ts:44:20
at Object. (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/src/index.ts:31:22)
at Generator.next ()
at /usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/dist/cjs/index.js:8:71
at new Promise ()
at __awaiter (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/dist/cjs/index.js:4:12)
at EightSleepPod. (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/src/index.ts:29:66)
at EightSleepPod.getDeviceStatus (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/mem/index.js:24:21)
at EightSleepPod.getStatus (/usr/lib/node_modules/homebridge-eightsleep-pod/src/EightSleepPod.ts:48:37)
at EightSleepPod.isOn (/usr/lib/node_modules/homebridge-eightsleep-pod/src/EightSleepPod.ts:103:35)
at Active.EightsleepPodPlatformAccessory.getActiveState (/usr/lib/node_modules/homebridge-eightsleep-pod/src/platformAccessory.ts:107:43)
at Active.emit (events.js:315:20)
at Active.EventEmitter.emit (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/EventEmitter.ts:42:22)
at Active.Characteristic._this.getValue (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Characteristic.ts:489:12)
at /usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Accessory.ts:1217:22
[11/15/2020, 00:30:48] [EightSleepPod] Get RotationSpeed Error -> BaseError: appApiClient is missing (client should be instantiated with oauthClient)
at EightSleepClientApi.getAppApiClient (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/eightsleep/src/index.ts:144:13)
at /usr/lib/node_modules/homebridge-eightsleep-pod/src/EightSleepPod.ts:44:20
at Object. (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/src/index.ts:31:22)
at Generator.next ()
at /usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/dist/cjs/index.js:8:71
at new Promise ()
at __awaiter (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/dist/cjs/index.js:4:12)
at EightSleepPod. (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/src/index.ts:29:66)
at EightSleepPod.getDeviceStatus (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/mem/index.js:24:21)
at EightSleepPod.getStatus (/usr/lib/node_modules/homebridge-eightsleep-pod/src/EightSleepPod.ts:48:37)
at EightSleepPod.isOn (/usr/lib/node_modules/homebridge-eightsleep-pod/src/EightSleepPod.ts:103:35)
at Active.EightsleepPodPlatformAccessory.getActiveState (/usr/lib/node_modules/homebridge-eightsleep-pod/src/platformAccessory.ts:107:43)
at Active.emit (events.js:315:20)
at Active.EventEmitter.emit (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/EventEmitter.ts:42:22)
at Active.Characteristic._this.getValue (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Characteristic.ts:489:12)
at /usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Accessory.ts:1217:22
[11/15/2020, 00:30:48] [EightSleepPod] Get Active Error -> BaseError: appApiClient is missing (client should be instantiated with oauthClient)
at EightSleepClientApi.getAppApiClient (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/eightsleep/src/index.ts:144:13)
at /usr/lib/node_modules/homebridge-eightsleep-pod/src/EightSleepPod.ts:44:20
at Object. (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/src/index.ts:31:22)
at Generator.next ()
at /usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/dist/cjs/index.js:8:71
at new Promise ()
at __awaiter (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/dist/cjs/index.js:4:12)
at EightSleepPod. (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/memoize-concurrent/src/index.ts:29:66)
at EightSleepPod.getDeviceStatus (/usr/lib/node_modules/homebridge-eightsleep-pod/node_modules/mem/index.js:24:21)
at EightSleepPod.getStatus (/usr/lib/node_modules/homebridge-eightsleep-pod/src/EightSleepPod.ts:48:37)
at EightSleepPod.isOn (/usr/lib/node_modules/homebridge-eightsleep-pod/src/EightSleepPod.ts:103:35)
at Active.EightsleepPodPlatformAccessory.getActiveState (/usr/lib/node_modules/homebridge-eightsleep-pod/src/platformAccessory.ts:107:43)
at Active.emit (events.js:315:20)
at Active.EventEmitter.emit (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/EventEmitter.ts:42:22)
at Active.Characteristic._this.getValue (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Characteristic.ts:489:12)
at /usr/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Accessory.ts:1217:22

from homebridge-eightsleep-platform.

Related Issues (9)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.