Comments (5)
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.
bump @aschi2
from homebridge-eightsleep-platform.
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.
fixed in v2.2.2, lmk if you still have problems.
(correctly validates when currentDevice.side is "solo")
from homebridge-eightsleep-platform.
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)
- If the App has one side set to -0+ then when you turn on from homekit it throws an invalid current temp error HOT 1
- No longer able to login (using Client_Id & Client secret) 400 error HOT 2
- Unexpected failure occured during plugin load
- Pod control as thermostat? HOT 2
- Config info is not working HOT 17
- Presence Detection (Request) HOT 2
- ERROR LOADING PLUGIN homebridge-eightsleep-pod: HOT 10
- v 2.4.3 validation error and Hombridge slow warning
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from homebridge-eightsleep-platform.