mezz64 / pyEight

Python library to interface with the Eight Sleep API
MIT License
59 stars 15 forks source link

Pod Support #10

Closed BigCountry001 closed 4 years ago

BigCountry001 commented 4 years ago

I found a thread on the home assistant community page where someone was instructed to open a new issue for the Eight Pod.[https://community.home-assistant.io/t/eight-sleep-component/10472/138] When looking at the data in home assistant, none of it seems to match the data in the Eight app. I'm not the person from that thread, but I've had the Eight Pod for several months and would be willing to help however I can.

mezz64 commented 4 years ago

Thanks for offering to help. I should have some free time over the holidays to write up some testing instructions for you to probe the api and post here the return responses you get so I can make the necessary changes.

mezz64 commented 4 years ago

This are instructions to interact with the API through Postman. Please download and install it as it makes setting up the queries much easier.

Step 1:

Setup a new POST request to this URL: https://client-api.8slp.net/v1/login Define these header keys. If you click "bulk-edit" under the header section you should be able to copy/paste these directly.

Content-Type:application/x-www-form-urlencoded
Connection:keep-alive
User-Agent:okhttp/3.6.0
authority:app-api.8slp.net

Click the body section and choose x-www-form-urlencoded. Again switch to bulk-edit and copy the below, replacing your info where specified.

email:INSERT_EIGHT_ACCOUNT_EMAIL
password:EIGHT_ACCOUNT_PASSWORD

With the headers and body defined go ahead and click the send button. You should get a response body with a userID and a token value. Save both of these as we will need them in the next steps.

Step 2:

Start a new request, this time it will be a GET request to this URL: https://client-api.8slp.net/v1/users/me

Define these header values (again bulk-edit should make it easy) and copy your saved token value into the appropriate spot.

Content-Type:application/x-www-form-urlencoded
Connection:keep-alive
User-Agent:okhttp/3.6.0
authority:client-api.8slp.net
session-token:INSERT_TOKEN_HERE

From this response take note of your device id token.

Step 3:

Open another GET request, this time to this URL: https://client-api.8slp.net/v1/devices/INSERT_DEVICE_ID_HERE make sure to use the device id you got in the last step.

Use the same header values as you used in Step 2.

This is the first response set that i'd like you to post here. Please replace any of the id's with "REMOVED" so your info stays private, but keep all the key fields so I can compare the whole response.

Step 4:

Last one, open another GET request, this time to this URL: https://client-api.8slp.net/v1/users/INSERT_USER_ID_HERE/intervals

Again, use the same header values as defined in Step 2.

Post these results here as well, again making sure to redact any id's.

If you can supply this info it will be a good starting point to making the adjustments need to properly support the pod.

BigCountry001 commented 4 years ago

Step 3 Results: { "result": { "deviceId": REMOVED "ownerId": REMOVED "leftUserId": REMOVED "leftHeatingLevel": -51, "leftTargetHeatingLevel": -40, "leftNowHeating": false, "leftHeatingDuration": 0, "leftSchedule": { "enabled": false, "daysUTC": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": false, "saturday": false }, "startUTCHour": 0, "startUTCMinute": 0, "durationSeconds": 0 }, "rightUserId": REMOVED "rightHeatingLevel": -50, "rightTargetHeatingLevel": 20, "rightNowHeating": false, "rightHeatingDuration": 0, "rightSchedule": { "enabled": false, "daysUTC": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": false, "saturday": false }, "startUTCHour": 0, "startUTCMinute": 0, "durationSeconds": 0 }, "priming": false, "needsPriming": false, "hasWater": true, "ledBrightnessLevel": 45, "sensorInfo": { "label": "REMOVED", "partNumber": "20600", "sku": "0002", "hwRevision": "C01", "serialNumber": "REMOVED", "lastConnected": "2019-12-30T18:18:18.777Z", "skuName": "king", "connected": true }, "hubInfo": "REMOVED", "timezone": "America/Chicago", "location": [ -REMOVED, REMOVED ], "mattressInfo": { "firstUsedDate": null, "eightMattress": null, "brand": null }, "firmwareVersion": "2.2.29.0", "firmwareUpdated": true, "firmwareUpdating": false, "lastHeard": "2019-12-30T18:18:33.779Z", "online": true, "leftKelvin": { "targetLevels": [ -30, 10, 0 ], "alarms": [ { "repeat": true, "startLocalTime": "05:00:00", "enabled": true, "thermalMode": "hot", "weekDays": { "monday": true, "tuesday": true, "wednesday": true, "thursday": true, "friday": true, "saturday": false, "sunday": false } } ], "scheduleProfiles": [ { "startLocalTime": "21:00:00", "enabled": true, "weekDays": { "monday": true, "tuesday": true, "wednesday": true, "thursday": true, "friday": false, "saturday": false, "sunday": true } }, { "startLocalTime": "21:30:00", "enabled": true, "weekDays": { "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": true, "saturday": true, "sunday": false } } ], "currentActivity": "off", "currentTargetLevel": -40, "level": -40, "active": false }, "rightKelvin": { "targetLevels": [ 40, 10, 20 ], "alarms": [], "scheduleProfiles": [ { "startLocalTime": "21:30:00", "enabled": true, "weekDays": { "monday": true, "tuesday": true, "wednesday": true, "thursday": true, "friday": true, "saturday": true, "sunday": true } } ], "currentActivity": "off", "currentTargetLevel": 20, "level": 20, "active": false } } }

Step 4 Results:

{ "next": "REMOVED", "intervals": [ { "id": "REMOVED", "ts": "2019-12-30T03:27:00.000Z", "stages": [ { "stage": "awake", "duration": 780 }, { "stage": "light", "duration": 720 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 360 }, { "stage": "out", "duration": 120 }, { "stage": "light", "duration": 960 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 180 }, { "stage": "deep", "duration": 360 }, { "stage": "light", "duration": 780 }, { "stage": "deep", "duration": 840 }, { "stage": "rem", "duration": 600 }, { "stage": "light", "duration": 120 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 2400 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 780 }, { "stage": "deep", "duration": 900 }, { "stage": "rem", "duration": 300 }, { "stage": "awake", "duration": 300 }, { "stage": "rem", "duration": 600 }, { "stage": "light", "duration": 1380 }, { "stage": "rem", "duration": 840 }, { "stage": "light", "duration": 2220 }, { "stage": "deep", "duration": 900 }, { "stage": "rem", "duration": 360 }, { "stage": "light", "duration": 2280 }, { "stage": "rem", "duration": 1140 }, { "stage": "light", "duration": 1620 }, { "stage": "deep", "duration": 600 }, { "stage": "rem", "duration": 360 }, { "stage": "light", "duration": 1380 }, { "stage": "out", "duration": 240 }, { "stage": "light", "duration": 180 }, { "stage": "out", "duration": 420 }, { "stage": "light", "duration": 2640 }, { "stage": "deep", "duration": 300 }, { "stage": "rem", "duration": 1800 }, { "stage": "light", "duration": 3420 } ], "score": 87, "timeseries": { "tnt": [ [ "2019-12-30T03:59:00.000Z", 1 ], [ "2019-12-30T05:30:00.000Z", 1 ], [ "2019-12-30T06:05:00.000Z", 1 ], [ "2019-12-30T08:36:00.000Z", 1 ], [ "2019-12-30T09:17:00.000Z", 1 ], [ "2019-12-30T10:00:00.000Z", 1 ], [ "2019-12-30T10:08:00.000Z", 1 ], [ "2019-12-30T10:35:00.000Z", 1 ], [ "2019-12-30T10:44:00.000Z", 1 ], [ "2019-12-30T10:48:00.000Z", 1 ], [ "2019-12-30T10:53:00.000Z", 1 ], [ "2019-12-30T10:58:00.000Z", 1 ], [ "2019-12-30T11:13:00.000Z", 1 ], [ "2019-12-30T12:58:00.000Z", 1 ] ], "tempRoomC": [ [ "2019-12-30T03:00:00.000Z", 22.28575757575758 ], [ "2019-12-30T04:00:00.000Z", 22.318499999999993 ], [ "2019-12-30T05:00:00.000Z", 22.18866666666667 ], [ "2019-12-30T06:00:00.000Z", 22.143000000000004 ], [ "2019-12-30T07:00:00.000Z", 22.007666666666662 ], [ "2019-12-30T08:00:00.000Z", 21.840166666666665 ], [ "2019-12-30T09:00:00.000Z", 21.652499999999993 ], [ "2019-12-30T10:00:00.000Z", 21.308999999999994 ], [ "2019-12-30T11:00:00.000Z", 21.191166666666657 ], [ "2019-12-30T12:00:00.000Z", 21.578333333333344 ], [ "2019-12-30T13:00:00.000Z", 23.154324324324325 ] ], "tempBedC": [ [ "2019-12-30T03:00:00.000Z", 26.619696969696967 ], [ "2019-12-30T04:00:00.000Z", 26.977166666666673 ], [ "2019-12-30T05:00:00.000Z", 30.77833333333333 ], [ "2019-12-30T06:00:00.000Z", 31.0085 ], [ "2019-12-30T07:00:00.000Z", 30.73183333333333 ], [ "2019-12-30T08:00:00.000Z", 30.131833333333343 ], [ "2019-12-30T09:00:00.000Z", 29.426666666666662 ], [ "2019-12-30T10:00:00.000Z", 31.622166666666665 ], [ "2019-12-30T11:00:00.000Z", 32.50283333333333 ], [ "2019-12-30T12:00:00.000Z", 34.623500000000014 ], [ "2019-12-30T13:00:00.000Z", 33.776486486486476 ] ], "respiratoryRate": [ [ "2019-12-30T03:00:00.000Z", 15.6 ], [ "2019-12-30T04:00:00.000Z", 19.274509803921568 ], [ "2019-12-30T05:00:00.000Z", 19.764705882352942 ], [ "2019-12-30T06:00:00.000Z", 19.36 ], [ "2019-12-30T07:00:00.000Z", 18.65 ], [ "2019-12-30T08:00:00.000Z", 20.479166666666668 ], [ "2019-12-30T09:00:00.000Z", 20.34 ], [ "2019-12-30T10:00:00.000Z", 19.357142857142858 ], [ "2019-12-30T11:00:00.000Z", 19.41509433962264 ], [ "2019-12-30T12:00:00.000Z", 19.224489795918366 ] ], "heartRate": [ [ "2019-12-30T03:00:00.000Z", 63.18181818181818 ], [ "2019-12-30T04:00:00.000Z", 63.08 ], [ "2019-12-30T05:00:00.000Z", 65.47058823529412 ], [ "2019-12-30T06:00:00.000Z", 64.42 ], [ "2019-12-30T07:00:00.000Z", 61.35 ], [ "2019-12-30T08:00:00.000Z", 59.0625 ], [ "2019-12-30T09:00:00.000Z", 58.82 ], [ "2019-12-30T10:00:00.000Z", 59.214285714285715 ], [ "2019-12-30T11:00:00.000Z", 61.35849056603774 ], [ "2019-12-30T12:00:00.000Z", 60.89795918367347 ] ], "heating": [] }, "timezone": "America/Chicago", "device": { "id": "REMOVED", "side": "left" }, "sensorStatus": "good" }, { "id": "REMOVED", "ts": "2019-12-29T04:32:00.000Z", "stages": [ { "stage": "awake", "duration": 660 }, { "stage": "light", "duration": 180 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 2820 }, { "stage": "deep", "duration": 1500 }, { "stage": "rem", "duration": 600 }, { "stage": "light", "duration": 3240 }, { "stage": "awake", "duration": 420 }, { "stage": "out", "duration": 540 }, { "stage": "awake", "duration": 300 }, { "stage": "light", "duration": 60 }, { "stage": "deep", "duration": 1500 }, { "stage": "awake", "duration": 300 }, { "stage": "rem", "duration": 900 }, { "stage": "light", "duration": 1620 }, { "stage": "rem", "duration": 540 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 420 }, { "stage": "rem", "duration": 300 }, { "stage": "light", "duration": 1560 }, { "stage": "deep", "duration": 600 }, { "stage": "rem", "duration": 360 }, { "stage": "light", "duration": 3900 }, { "stage": "deep", "duration": 600 }, { "stage": "rem", "duration": 900 }, { "stage": "awake", "duration": 60 }, { "stage": "out", "duration": 240 }, { "stage": "awake", "duration": 480 }, { "stage": "rem", "duration": 600 }, { "stage": "light", "duration": 3180 }, { "stage": "rem", "duration": 780 }, { "stage": "light", "duration": 1020 }, { "stage": "deep", "duration": 300 }, { "stage": "rem", "duration": 1020 }, { "stage": "light", "duration": 1680 }, { "stage": "rem", "duration": 420 }, { "stage": "light", "duration": 300 }, { "stage": "rem", "duration": 1260 }, { "stage": "awake", "duration": 180 }, { "stage": "out", "duration": 120 }, { "stage": "awake", "duration": 840 }, { "stage": "light", "duration": 540 }, { "stage": "awake", "duration": 60 } ], "score": 91, "timeseries": { "tnt": [ [ "2019-12-29T05:38:00.000Z", 1 ], [ "2019-12-29T12:31:00.000Z", 1 ], [ "2019-12-29T12:36:00.000Z", 1 ] ], "tempRoomC": [ [ "2019-12-29T04:00:00.000Z", 21.52285714285714 ], [ "2019-12-29T05:00:00.000Z", 21.10433333333333 ], [ "2019-12-29T06:00:00.000Z", 21.12666666666667 ], [ "2019-12-29T07:00:00.000Z", 21.198166666666662 ], [ "2019-12-29T08:00:00.000Z", 21.19133333333333 ], [ "2019-12-29T09:00:00.000Z", 21.10250000000001 ], [ "2019-12-29T10:00:00.000Z", 20.990666666666673 ], [ "2019-12-29T11:00:00.000Z", 22.042833333333324 ], [ "2019-12-29T12:00:00.000Z", 24.218500000000006 ], [ "2019-12-29T13:00:00.000Z", 25.030500000000004 ], [ "2019-12-29T14:00:00.000Z", 24.83877192982456 ] ], "tempBedC": [ [ "2019-12-29T04:00:00.000Z", 26.353928571428572 ], [ "2019-12-29T05:00:00.000Z", 28.197 ], [ "2019-12-29T06:00:00.000Z", 31.435999999999993 ], [ "2019-12-29T07:00:00.000Z", 31.5895 ], [ "2019-12-29T08:00:00.000Z", 31.74316666666667 ], [ "2019-12-29T09:00:00.000Z", 31.165000000000006 ], [ "2019-12-29T10:00:00.000Z", 30.67983333333335 ], [ "2019-12-29T11:00:00.000Z", 29.783666666666658 ], [ "2019-12-29T12:00:00.000Z", 30.215333333333334 ], [ "2019-12-29T13:00:00.000Z", 33.898333333333326 ], [ "2019-12-29T14:00:00.000Z", 34.02807017543859 ] ], "respiratoryRate": [ [ "2019-12-29T04:00:00.000Z", 18.46153846153846 ], [ "2019-12-29T05:00:00.000Z", 19.867924528301888 ], [ "2019-12-29T06:00:00.000Z", 18.842105263157894 ], [ "2019-12-29T07:00:00.000Z", 18.1 ], [ "2019-12-29T08:00:00.000Z", 18.75925925925926 ], [ "2019-12-29T09:00:00.000Z", 17.76923076923077 ], [ "2019-12-29T10:00:00.000Z", 19.107142857142858 ], [ "2019-12-29T11:00:00.000Z", 19.40909090909091 ], [ "2019-12-29T12:00:00.000Z", 19.34090909090909 ], [ "2019-12-29T13:00:00.000Z", 20.01851851851852 ], [ "2019-12-29T14:00:00.000Z", 18.7 ] ], "heartRate": [ [ "2019-12-29T04:00:00.000Z", 60.46153846153846 ], [ "2019-12-29T05:00:00.000Z", 55.61538461538461 ], [ "2019-12-29T06:00:00.000Z", 61.29824561403509 ], [ "2019-12-29T07:00:00.000Z", 60.1 ], [ "2019-12-29T08:00:00.000Z", 58.81481481481482 ], [ "2019-12-29T09:00:00.000Z", 61.69230769230769 ], [ "2019-12-29T10:00:00.000Z", 61.017857142857146 ], [ "2019-12-29T11:00:00.000Z", 61 ], [ "2019-12-29T12:00:00.000Z", 57.22727272727273 ], [ "2019-12-29T13:00:00.000Z", 60.925925925925924 ], [ "2019-12-29T14:00:00.000Z", 61.85 ] ], "heating": [] }, "timezone": "America/Chicago", "device": { "id": "REMOVED", "side": "left" }, "sensorStatus": "good" }, { "id": "REMOVED", "ts": "2019-12-28T04:21:00.000Z", "stages": [ { "stage": "awake", "duration": 600 }, { "stage": "light", "duration": 1980 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 1020 }, { "stage": "deep", "duration": 1500 }, { "stage": "rem", "duration": 600 }, { "stage": "light", "duration": 1560 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 1740 }, { "stage": "deep", "duration": 1200 }, { "stage": "rem", "duration": 900 }, { "stage": "light", "duration": 3600 }, { "stage": "deep", "duration": 900 }, { "stage": "rem", "duration": 1200 }, { "stage": "light", "duration": 1860 }, { "stage": "deep", "duration": 600 }, { "stage": "rem", "duration": 60 }, { "stage": "light", "duration": 360 }, { "stage": "rem", "duration": 300 }, { "stage": "light", "duration": 1680 }, { "stage": "rem", "duration": 1140 }, { "stage": "light", "duration": 60 } ], "score": 82, "timeseries": { "tnt": [ [ "2019-12-28T04:36:00.000Z", 1 ], [ "2019-12-28T06:26:00.000Z", 1 ], [ "2019-12-28T09:34:00.000Z", 1 ], [ "2019-12-28T10:50:00.000Z", 1 ] ], "tempRoomC": [ [ "2019-12-28T04:00:00.000Z", 22.023076923076925 ], [ "2019-12-28T05:00:00.000Z", 22.127166666666675 ], [ "2019-12-28T06:00:00.000Z", 22.190333333333342 ], [ "2019-12-28T07:00:00.000Z", 22.072333333333333 ], [ "2019-12-28T08:00:00.000Z", 22.049666666666667 ], [ "2019-12-28T09:00:00.000Z", 22.18233333333333 ], [ "2019-12-28T10:00:00.000Z", 22.161666666666665 ], [ "2019-12-28T11:00:00.000Z", 22.229999999999997 ] ], "tempBedC": [ [ "2019-12-28T04:00:00.000Z", 26.874871794871797 ], [ "2019-12-28T05:00:00.000Z", 27.744333333333334 ], [ "2019-12-28T06:00:00.000Z", 31.037833333333325 ], [ "2019-12-28T07:00:00.000Z", 31.37333333333334 ], [ "2019-12-28T08:00:00.000Z", 31.509 ], [ "2019-12-28T09:00:00.000Z", 30.685166666666678 ], [ "2019-12-28T10:00:00.000Z", 29.864833333333333 ], [ "2019-12-28T11:00:00.000Z", 29.377 ] ], "respiratoryRate": [ [ "2019-12-28T04:00:00.000Z", 18 ], [ "2019-12-28T05:00:00.000Z", 17.942307692307693 ], [ "2019-12-28T06:00:00.000Z", 18.150943396226417 ], [ "2019-12-28T07:00:00.000Z", 18.35185185185185 ], [ "2019-12-28T08:00:00.000Z", 19.770833333333332 ], [ "2019-12-28T09:00:00.000Z", 19.607142857142858 ], [ "2019-12-28T10:00:00.000Z", 19.232558139534884 ] ], "heartRate": [ [ "2019-12-28T04:00:00.000Z", 65.1923076923077 ], [ "2019-12-28T05:00:00.000Z", 61.26923076923077 ], [ "2019-12-28T06:00:00.000Z", 60.509433962264154 ], [ "2019-12-28T07:00:00.000Z", 56.18518518518518 ], [ "2019-12-28T08:00:00.000Z", 60.291666666666664 ], [ "2019-12-28T09:00:00.000Z", 60.767857142857146 ], [ "2019-12-28T10:00:00.000Z", 60.2093023255814 ] ], "heating": [] }, "timezone": "America/Chicago", "device": { "id": "REMOVED", "side": "left" }, "sensorStatus": "good" }, { "id": "REMOVED", "ts": "2019-12-27T03:58:00.000Z", "stages": [ { "stage": "awake", "duration": 720 }, { "stage": "deep", "duration": 120 }, { "stage": "rem", "duration": 600 }, { "stage": "light", "duration": 1920 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 60 }, { "stage": "deep", "duration": 480 }, { "stage": "light", "duration": 1020 }, { "stage": "deep", "duration": 900 }, { "stage": "rem", "duration": 900 }, { "stage": "light", "duration": 3300 }, { "stage": "deep", "duration": 1800 }, { "stage": "light", "duration": 420 }, { "stage": "deep", "duration": 600 }, { "stage": "rem", "duration": 120 }, { "stage": "light", "duration": 3180 }, { "stage": "rem", "duration": 1080 }, { "stage": "light", "duration": 120 }, { "stage": "deep", "duration": 600 }, { "stage": "light", "duration": 3780 }, { "stage": "rem", "duration": 1500 }, { "stage": "light", "duration": 1680 } ], "score": 82, "timeseries": { "tnt": [ [ "2019-12-27T05:17:00.000Z", 1 ], [ "2019-12-27T05:58:00.000Z", 1 ], [ "2019-12-27T09:57:00.000Z", 1 ], [ "2019-12-27T10:30:00.000Z", 1 ], [ "2019-12-27T10:42:00.000Z", 1 ] ], "tempRoomC": [ [ "2019-12-27T03:00:00.000Z", 23.384999999999998 ], [ "2019-12-27T04:00:00.000Z", 23.061 ], [ "2019-12-27T05:00:00.000Z", 22.833166666666664 ], [ "2019-12-27T06:00:00.000Z", 22.79233333333333 ], [ "2019-12-27T07:00:00.000Z", 22.824499999999986 ], [ "2019-12-27T08:00:00.000Z", 22.789666666666673 ], [ "2019-12-27T09:00:00.000Z", 22.730666666666668 ], [ "2019-12-27T10:00:00.000Z", 22.671034482758618 ] ], "tempBedC": [ [ "2019-12-27T03:00:00.000Z", 23.14 ], [ "2019-12-27T04:00:00.000Z", 27.338833333333337 ], [ "2019-12-27T05:00:00.000Z", 31.127333333333322 ], [ "2019-12-27T06:00:00.000Z", 31.397000000000002 ], [ "2019-12-27T07:00:00.000Z", 31.02266666666667 ], [ "2019-12-27T08:00:00.000Z", 29.873000000000005 ], [ "2019-12-27T09:00:00.000Z", 30.00833333333335 ], [ "2019-12-27T10:00:00.000Z", 32.21310344827586 ] ], "respiratoryRate": [ [ "2019-12-27T04:00:00.000Z", 18.205882352941178 ], [ "2019-12-27T05:00:00.000Z", 17.327272727272728 ], [ "2019-12-27T06:00:00.000Z", 18.448979591836736 ], [ "2019-12-27T07:00:00.000Z", 18.54 ], [ "2019-12-27T08:00:00.000Z", 18.72222222222222 ], [ "2019-12-27T09:00:00.000Z", 18.686274509803923 ], [ "2019-12-27T10:00:00.000Z", 19 ] ], "heartRate": [ [ "2019-12-27T04:00:00.000Z", 61.44117647058823 ], [ "2019-12-27T05:00:00.000Z", 63.945454545454545 ], [ "2019-12-27T06:00:00.000Z", 58.16326530612245 ], [ "2019-12-27T07:00:00.000Z", 57.673469387755105 ], [ "2019-12-27T08:00:00.000Z", 60.05555555555556 ], [ "2019-12-27T09:00:00.000Z", 59.21568627450981 ], [ "2019-12-27T10:00:00.000Z", 58.395833333333336 ] ], "heating": [] }, "timezone": "America/Chicago", "device": { "id": "REMOVED", "side": "left" }, "sensorStatus": "good" }, { "id": "REMOVED", "ts": "2019-12-26T04:35:00.000Z", "stages": [ { "stage": "awake", "duration": 2820 }, { "stage": "light", "duration": 3000 }, { "stage": "deep", "duration": 1800 }, { "stage": "rem", "duration": 600 }, { "stage": "light", "duration": 3300 }, { "stage": "deep", "duration": 1500 }, { "stage": "rem", "duration": 900 }, { "stage": "light", "duration": 3000 }, { "stage": "rem", "duration": 1080 }, { "stage": "light", "duration": 600 }, { "stage": "deep", "duration": 900 }, { "stage": "rem", "duration": 120 }, { "stage": "light", "duration": 3660 } ], "score": 76, "timeseries": { "tnt": [ [ "2019-12-26T10:54:00.000Z", 1 ], [ "2019-12-26T11:02:00.000Z", 1 ] ], "tempRoomC": [ [ "2019-12-26T04:00:00.000Z", 22.5152 ], [ "2019-12-26T05:00:00.000Z", 22.522333333333336 ], [ "2019-12-26T06:00:00.000Z", 22.503666666666664 ], [ "2019-12-26T07:00:00.000Z", 22.435166666666664 ], [ "2019-12-26T08:00:00.000Z", 22.333333333333332 ], [ "2019-12-26T09:00:00.000Z", 22.282666666666668 ], [ "2019-12-26T10:00:00.000Z", 22.280333333333335 ], [ "2019-12-26T11:00:00.000Z", 22.290000000000003 ] ], "tempBedC": [ [ "2019-12-26T04:00:00.000Z", 26.5576 ], [ "2019-12-26T05:00:00.000Z", 29.689500000000006 ], [ "2019-12-26T06:00:00.000Z", 31.190833333333323 ], [ "2019-12-26T07:00:00.000Z", 31.147833333333327 ], [ "2019-12-26T08:00:00.000Z", 30.86 ], [ "2019-12-26T09:00:00.000Z", 29.724833333333333 ], [ "2019-12-26T10:00:00.000Z", 29.731166666666677 ], [ "2019-12-26T11:00:00.000Z", 29.77 ] ], "respiratoryRate": [ [ "2019-12-26T05:00:00.000Z", 18.22222222222222 ], [ "2019-12-26T06:00:00.000Z", 18.22 ], [ "2019-12-26T07:00:00.000Z", 18.28846153846154 ], [ "2019-12-26T08:00:00.000Z", 19.264150943396228 ], [ "2019-12-26T09:00:00.000Z", 17.4375 ], [ "2019-12-26T10:00:00.000Z", 19.29787234042553 ], [ "2019-12-26T11:00:00.000Z", 17.666666666666668 ] ], "heartRate": [ [ "2019-12-26T05:00:00.000Z", 60.083333333333336 ], [ "2019-12-26T06:00:00.000Z", 64 ], [ "2019-12-26T07:00:00.000Z", 62.92307692307692 ], [ "2019-12-26T08:00:00.000Z", 60.24528301886792 ], [ "2019-12-26T09:00:00.000Z", 58.666666666666664 ], [ "2019-12-26T10:00:00.000Z", 57.59574468085106 ], [ "2019-12-26T11:00:00.000Z", 60 ] ], "heating": [] }, "timezone": "America/Chicago", "device": { "id": "REMOVED", "side": "left" }, "sensorStatus": "good" }, { "id": "REMOVED", "ts": "2019-12-25T04:15:00.000Z", "stages": [ { "stage": "awake", "duration": 1140 }, { "stage": "light", "duration": 1080 }, { "stage": "deep", "duration": 360 }, { "stage": "light", "duration": 720 }, { "stage": "deep", "duration": 540 }, { "stage": "light", "duration": 1140 }, { "stage": "deep", "duration": 360 }, { "stage": "light", "duration": 60 }, { "stage": "deep", "duration": 540 }, { "stage": "rem", "duration": 600 }, { "stage": "light", "duration": 3300 }, { "stage": "deep", "duration": 1500 }, { "stage": "rem", "duration": 900 }, { "stage": "light", "duration": 60 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 3540 }, { "stage": "deep", "duration": 600 }, { "stage": "rem", "duration": 1200 }, { "stage": "light", "duration": 1920 }, { "stage": "deep", "duration": 480 }, { "stage": "light", "duration": 1980 }, { "stage": "deep", "duration": 120 }, { "stage": "rem", "duration": 1500 }, { "stage": "light", "duration": 4080 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 120 }, { "stage": "rem", "duration": 1800 }, { "stage": "light", "duration": 1380 } ], "score": 91, "timeseries": { "tnt": [ [ "2019-12-25T04:44:00.000Z", 1 ], [ "2019-12-25T05:21:00.000Z", 1 ], [ "2019-12-25T08:23:00.000Z", 1 ], [ "2019-12-25T08:44:00.000Z", 1 ], [ "2019-12-25T11:09:00.000Z", 1 ], [ "2019-12-25T12:29:00.000Z", 1 ], [ "2019-12-25T13:01:00.000Z", 1 ] ], "tempRoomC": [ [ "2019-12-25T04:00:00.000Z", 22.45755555555555 ], [ "2019-12-25T05:00:00.000Z", 22.329500000000007 ], [ "2019-12-25T06:00:00.000Z", 22.42166666666666 ], [ "2019-12-25T07:00:00.000Z", 22.6035 ], [ "2019-12-25T08:00:00.000Z", 22.687166666666673 ], [ "2019-12-25T09:00:00.000Z", 22.702500000000008 ], [ "2019-12-25T10:00:00.000Z", 22.63083333333334 ], [ "2019-12-25T11:00:00.000Z", 22.419166666666662 ], [ "2019-12-25T12:00:00.000Z", 22.49766666666666 ], [ "2019-12-25T13:00:00.000Z", 23.09 ] ], "tempBedC": [ [ "2019-12-25T04:00:00.000Z", 26.711555555555545 ], [ "2019-12-25T05:00:00.000Z", 29.513166666666674 ], [ "2019-12-25T06:00:00.000Z", 31.263166666666663 ], [ "2019-12-25T07:00:00.000Z", 31.296333333333333 ], [ "2019-12-25T08:00:00.000Z", 30.805833333333332 ], [ "2019-12-25T09:00:00.000Z", 29.985333333333323 ], [ "2019-12-25T10:00:00.000Z", 29.769833333333338 ], [ "2019-12-25T11:00:00.000Z", 29.81316666666667 ], [ "2019-12-25T12:00:00.000Z", 32.7975 ], [ "2019-12-25T13:00:00.000Z", 34.18 ] ], "respiratoryRate": [ [ "2019-12-25T04:00:00.000Z", 18.73913043478261 ], [ "2019-12-25T05:00:00.000Z", 19.245283018867923 ], [ "2019-12-25T06:00:00.000Z", 18.925925925925927 ], [ "2019-12-25T07:00:00.000Z", 19.568627450980394 ], [ "2019-12-25T08:00:00.000Z", 18.68888888888889 ], [ "2019-12-25T09:00:00.000Z", 17.735849056603772 ], [ "2019-12-25T10:00:00.000Z", 19.807692307692307 ], [ "2019-12-25T11:00:00.000Z", 18.94 ], [ "2019-12-25T12:00:00.000Z", 20.127659574468087 ], [ "2019-12-25T13:00:00.000Z", 19 ] ], "heartRate": [ [ "2019-12-25T04:00:00.000Z", 67.6086956521739 ], [ "2019-12-25T05:00:00.000Z", 68.43396226415095 ], [ "2019-12-25T06:00:00.000Z", 56.96296296296296 ], [ "2019-12-25T07:00:00.000Z", 56.11764705882353 ], [ "2019-12-25T08:00:00.000Z", 57.333333333333336 ], [ "2019-12-25T09:00:00.000Z", 57.29545454545455 ], [ "2019-12-25T10:00:00.000Z", 59.51923076923077 ], [ "2019-12-25T11:00:00.000Z", 60.32 ], [ "2019-12-25T12:00:00.000Z", 59.38297872340426 ], [ "2019-12-25T13:00:00.000Z", 57 ] ], "heating": [] }, "timezone": "America/Chicago", "device": { "id": "REMOVED", "side": "left" }, "sensorStatus": "good" }, { "id": "REMOVED", "ts": "2019-12-24T04:30:00.000Z", "stages": [ { "stage": "awake", "duration": 720 }, { "stage": "light", "duration": 360 }, { "stage": "awake", "duration": 60 }, { "stage": "out", "duration": 960 }, { "stage": "awake", "duration": 240 }, { "stage": "deep", "duration": 420 }, { "stage": "light", "duration": 240 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 2400 }, { "stage": "deep", "duration": 1080 }, { "stage": "rem", "duration": 600 }, { "stage": "light", "duration": 780 }, { "stage": "rem", "duration": 660 }, { "stage": "light", "duration": 2220 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 300 }, { "stage": "deep", "duration": 1200 }, { "stage": "rem", "duration": 240 }, { "stage": "light", "duration": 3600 }, { "stage": "deep", "duration": 900 }, { "stage": "rem", "duration": 1200 }, { "stage": "light", "duration": 1980 }, { "stage": "deep", "duration": 600 }, { "stage": "light", "duration": 1920 }, { "stage": "rem", "duration": 420 } ], "score": 80, "timeseries": { "tnt": [ [ "2019-12-24T06:32:00.000Z", 1 ], [ "2019-12-24T09:57:00.000Z", 1 ], [ "2019-12-24T10:30:00.000Z", 1 ], [ "2019-12-24T10:33:00.000Z", 1 ], [ "2019-12-24T11:04:00.000Z", 1 ] ], "tempRoomC": [ [ "2019-12-24T04:00:00.000Z", 22.28933333333333 ], [ "2019-12-24T05:00:00.000Z", 22.246166666666667 ], [ "2019-12-24T06:00:00.000Z", 22.215999999999998 ], [ "2019-12-24T07:00:00.000Z", 22.191000000000006 ], [ "2019-12-24T08:00:00.000Z", 22.18116666666667 ], [ "2019-12-24T09:00:00.000Z", 22.178333333333335 ], [ "2019-12-24T10:00:00.000Z", 21.972833333333334 ], [ "2019-12-24T11:00:00.000Z", 21.994 ] ], "tempBedC": [ [ "2019-12-24T04:00:00.000Z", 26.646000000000004 ], [ "2019-12-24T05:00:00.000Z", 30.574499999999997 ], [ "2019-12-24T06:00:00.000Z", 31.245333333333342 ], [ "2019-12-24T07:00:00.000Z", 31.083166666666667 ], [ "2019-12-24T08:00:00.000Z", 30.180333333333333 ], [ "2019-12-24T09:00:00.000Z", 30.096499999999995 ], [ "2019-12-24T10:00:00.000Z", 32.813833333333335 ], [ "2019-12-24T11:00:00.000Z", 38.972 ] ], "respiratoryRate": [ [ "2019-12-24T04:00:00.000Z", 17.833333333333332 ], [ "2019-12-24T05:00:00.000Z", 20.604166666666668 ], [ "2019-12-24T06:00:00.000Z", 19.384615384615383 ], [ "2019-12-24T07:00:00.000Z", 21.178571428571427 ], [ "2019-12-24T08:00:00.000Z", 19.074074074074073 ], [ "2019-12-24T09:00:00.000Z", 18.78 ], [ "2019-12-24T10:00:00.000Z", 19.823529411764707 ], [ "2019-12-24T11:00:00.000Z", 19.333333333333332 ] ], "heartRate": [ [ "2019-12-24T04:00:00.000Z", 65.5 ], [ "2019-12-24T05:00:00.000Z", 71.625 ], [ "2019-12-24T06:00:00.000Z", 71.6923076923077 ], [ "2019-12-24T07:00:00.000Z", 69.71428571428571 ], [ "2019-12-24T08:00:00.000Z", 65.70370370370371 ], [ "2019-12-24T09:00:00.000Z", 67.04 ], [ "2019-12-24T10:00:00.000Z", 62.01960784313726 ], [ "2019-12-24T11:00:00.000Z", 68 ] ], "heating": [] }, "timezone": "America/Chicago", "device": { "id": "REMOVED", "side": "left" }, "sensorStatus": "good" }, { "id": "REMOVED", "ts": "2019-12-23T02:28:00.000Z", "stages": [ { "stage": "awake", "duration": 780 }, { "stage": "deep", "duration": 120 }, { "stage": "light", "duration": 360 }, { "stage": "awake", "duration": 1860 }, { "stage": "light", "duration": 2640 }, { "stage": "deep", "duration": 1680 }, { "stage": "rem", "duration": 600 }, { "stage": "light", "duration": 2640 }, { "stage": "deep", "duration": 1200 }, { "stage": "light", "duration": 660 }, { "stage": "deep", "duration": 300 }, { "stage": "rem", "duration": 900 }, { "stage": "light", "duration": 1020 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 840 }, { "stage": "deep", "duration": 600 }, { "stage": "light", "duration": 480 }, { "stage": "rem", "duration": 300 }, { "stage": "light", "duration": 120 }, { "stage": "rem", "duration": 360 }, { "stage": "light", "duration": 1140 }, { "stage": "rem", "duration": 540 }, { "stage": "light", "duration": 3900 }, { "stage": "deep", "duration": 600 }, { "stage": "rem", "duration": 1500 }, { "stage": "light", "duration": 1200 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 360 }, { "stage": "rem", "duration": 300 }, { "stage": "light", "duration": 60 }, { "stage": "rem", "duration": 300 }, { "stage": "light", "duration": 1920 }, { "stage": "rem", "duration": 300 }, { "stage": "light", "duration": 60 }, { "stage": "rem", "duration": 300 }, { "stage": "light", "duration": 240 } ], "score": 89, "timeseries": { "tnt": [ [ "2019-12-23T04:48:00.000Z", 1 ], [ "2019-12-23T04:58:00.000Z", 1 ], [ "2019-12-23T05:43:00.000Z", 1 ], [ "2019-12-23T06:31:00.000Z", 1 ], [ "2019-12-23T07:24:00.000Z", 1 ], [ "2019-12-23T08:01:00.000Z", 1 ], [ "2019-12-23T08:07:00.000Z", 1 ], [ "2019-12-23T09:11:00.000Z", 1 ], [ "2019-12-23T09:32:00.000Z", 1 ], [ "2019-12-23T10:33:00.000Z", 1 ], [ "2019-12-23T10:37:00.000Z", 1 ], [ "2019-12-23T11:00:00.000Z", 1 ] ], "tempRoomC": [ [ "2019-12-23T02:00:00.000Z", 22.294999999999995 ], [ "2019-12-23T03:00:00.000Z", 22.05483333333333 ], [ "2019-12-23T04:00:00.000Z", 22.051333333333332 ], [ "2019-12-23T05:00:00.000Z", 22.10099999999999 ], [ "2019-12-23T06:00:00.000Z", 22.2 ], [ "2019-12-23T07:00:00.000Z", 22.11316666666666 ], [ "2019-12-23T08:00:00.000Z", 22.226166666666668 ], [ "2019-12-23T09:00:00.000Z", 22.139000000000003 ], [ "2019-12-23T10:00:00.000Z", 22.143500000000003 ], [ "2019-12-23T11:00:00.000Z", 22.015454545454546 ] ], "tempBedC": [ [ "2019-12-23T02:00:00.000Z", 26.436874999999997 ], [ "2019-12-23T03:00:00.000Z", 27.670666666666662 ], [ "2019-12-23T04:00:00.000Z", 28.049166666666668 ], [ "2019-12-23T05:00:00.000Z", 30.480166666666662 ], [ "2019-12-23T06:00:00.000Z", 30.70383333333333 ], [ "2019-12-23T07:00:00.000Z", 30.542500000000004 ], [ "2019-12-23T08:00:00.000Z", 29.30666666666667 ], [ "2019-12-23T09:00:00.000Z", 29.275 ], [ "2019-12-23T10:00:00.000Z", 32.29366666666666 ], [ "2019-12-23T11:00:00.000Z", 35.60363636363637 ] ], "respiratoryRate": [ [ "2019-12-23T02:00:00.000Z", 18.5 ], [ "2019-12-23T03:00:00.000Z", 18.7027027027027 ], [ "2019-12-23T04:00:00.000Z", 18.64814814814815 ], [ "2019-12-23T05:00:00.000Z", 20.163636363636364 ], [ "2019-12-23T06:00:00.000Z", 19.37037037037037 ], [ "2019-12-23T07:00:00.000Z", 20.232142857142858 ], [ "2019-12-23T08:00:00.000Z", 19.20408163265306 ], [ "2019-12-23T09:00:00.000Z", 19.67391304347826 ], [ "2019-12-23T10:00:00.000Z", 19.134615384615383 ] ], "heartRate": [ [ "2019-12-23T02:00:00.000Z", 72.66666666666667 ], [ "2019-12-23T03:00:00.000Z", 64.48648648648648 ], [ "2019-12-23T04:00:00.000Z", 63.888888888888886 ], [ "2019-12-23T05:00:00.000Z", 62.345454545454544 ], [ "2019-12-23T06:00:00.000Z", 63.2962962962963 ], [ "2019-12-23T07:00:00.000Z", 63.089285714285715 ], [ "2019-12-23T08:00:00.000Z", 61 ], [ "2019-12-23T09:00:00.000Z", 60.95652173913044 ], [ "2019-12-23T10:00:00.000Z", 62.88461538461539 ] ], "heating": [] }, "timezone": "America/Chicago", "device": { "id": "REMOVED", "side": "left" }, "sensorStatus": "good" }, { "id": "REMOVED", "ts": "2019-12-22T03:13:00.000Z", "stages": [ { "stage": "awake", "duration": 900 }, { "stage": "light", "duration": 1140 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 60 }, { "stage": "deep", "duration": 360 }, { "stage": "light", "duration": 1800 }, { "stage": "deep", "duration": 1140 }, { "stage": "rem", "duration": 600 }, { "stage": "light", "duration": 2640 }, { "stage": "deep", "duration": 1500 }, { "stage": "light", "duration": 240 }, { "stage": "rem", "duration": 300 }, { "stage": "light", "duration": 60 }, { "stage": "rem", "duration": 360 }, { "stage": "light", "duration": 360 }, { "stage": "rem", "duration": 240 }, { "stage": "light", "duration": 3600 }, { "stage": "deep", "duration": 900 }, { "stage": "rem", "duration": 1200 }, { "stage": "light", "duration": 2460 }, { "stage": "rem", "duration": 600 }, { "stage": "light", "duration": 1440 }, { "stage": "deep", "duration": 600 }, { "stage": "rem", "duration": 900 }, { "stage": "light", "duration": 4140 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 60 }, { "stage": "rem", "duration": 1800 }, { "stage": "light", "duration": 1860 }, { "stage": "deep", "duration": 300 }, { "stage": "rem", "duration": 60 }, { "stage": "light", "duration": 1260 }, { "stage": "out", "duration": 60 }, { "stage": "light", "duration": 180 }, { "stage": "awake", "duration": 1140 } ], "score": 93, "timeseries": { "tnt": [ [ "2019-12-22T05:14:00.000Z", 1 ], [ "2019-12-22T06:23:00.000Z", 1 ], [ "2019-12-22T11:22:00.000Z", 1 ], [ "2019-12-22T11:46:00.000Z", 1 ], [ "2019-12-22T12:17:00.000Z", 1 ], [ "2019-12-22T12:30:00.000Z", 1 ] ], "tempRoomC": [ [ "2019-12-22T03:00:00.000Z", 21.763829787234034 ], [ "2019-12-22T04:00:00.000Z", 22.14249999999999 ], [ "2019-12-22T05:00:00.000Z", 22.252666666666656 ], [ "2019-12-22T06:00:00.000Z", 22.093000000000004 ], [ "2019-12-22T07:00:00.000Z", 22.08783333333334 ], [ "2019-12-22T08:00:00.000Z", 22.087 ], [ "2019-12-22T09:00:00.000Z", 22.0045 ], [ "2019-12-22T10:00:00.000Z", 21.913833333333336 ], [ "2019-12-22T11:00:00.000Z", 21.8045 ], [ "2019-12-22T12:00:00.000Z", 21.67796296296296 ] ], "tempBedC": [ [ "2019-12-22T03:00:00.000Z", 27.183191489361697 ], [ "2019-12-22T04:00:00.000Z", 27.369833333333318 ], [ "2019-12-22T05:00:00.000Z", 27.252499999999998 ], [ "2019-12-22T06:00:00.000Z", 30.70783333333333 ], [ "2019-12-22T07:00:00.000Z", 31.055499999999988 ], [ "2019-12-22T08:00:00.000Z", 30.939166666666658 ], [ "2019-12-22T09:00:00.000Z", 30.107333333333333 ], [ "2019-12-22T10:00:00.000Z", 30.162333333333333 ], [ "2019-12-22T11:00:00.000Z", 29.780333333333335 ], [ "2019-12-22T12:00:00.000Z", 30.08407407407408 ] ], "respiratoryRate": [ [ "2019-12-22T03:00:00.000Z", 20 ], [ "2019-12-22T04:00:00.000Z", 19.785714285714285 ], [ "2019-12-22T05:00:00.000Z", 20.24074074074074 ], [ "2019-12-22T06:00:00.000Z", 19.229166666666668 ], [ "2019-12-22T07:00:00.000Z", 18.963636363636365 ], [ "2019-12-22T08:00:00.000Z", 19.5 ], [ "2019-12-22T09:00:00.000Z", 19.452830188679247 ], [ "2019-12-22T10:00:00.000Z", 19.145454545454545 ], [ "2019-12-22T11:00:00.000Z", 19.15686274509804 ], [ "2019-12-22T12:00:00.000Z", 19.964285714285715 ] ], "heartRate": [ [ "2019-12-22T03:00:00.000Z", 52.111111111111114 ], [ "2019-12-22T04:00:00.000Z", 60.857142857142854 ], [ "2019-12-22T05:00:00.000Z", 60.094339622641506 ], [ "2019-12-22T06:00:00.000Z", 60.916666666666664 ], [ "2019-12-22T07:00:00.000Z", 56.78181818181818 ], [ "2019-12-22T08:00:00.000Z", 59.208333333333336 ], [ "2019-12-22T09:00:00.000Z", 60.320754716981135 ], [ "2019-12-22T10:00:00.000Z", 56.69090909090909 ], [ "2019-12-22T11:00:00.000Z", 58.01960784313726 ], [ "2019-12-22T12:00:00.000Z", 59.357142857142854 ] ], "heating": [] }, "timezone": "America/Chicago", "device": { "id": "REMOVED", "side": "left" }, "sensorStatus": "good" }, { "id": "REMOVED", "ts": "2019-12-21T04:00:00.000Z", "stages": [ { "stage": "awake", "duration": 10020 }, { "stage": "light", "duration": 3000 }, { "stage": "deep", "duration": 1800 }, { "stage": "rem", "duration": 600 }, { "stage": "light", "duration": 3300 }, { "stage": "deep", "duration": 1500 }, { "stage": "rem", "duration": 900 }, { "stage": "light", "duration": 960 }, { "stage": "deep", "duration": 300 }, { "stage": "light", "duration": 2640 }, { "stage": "deep", "duration": 600 }, { "stage": "rem", "duration": 1200 }, { "stage": "light", "duration": 3240 }, { "stage": "deep", "duration": 600 }, { "stage": "light", "duration": 660 }, { "stage": "rem", "duration": 1500 }, { "stage": "light", "duration": 180 }, { "stage": "awake", "duration": 120 } ], "score": 81, "timeseries": { "tnt": [ [ "2019-12-21T09:40:00.000Z", 1 ], [ "2019-12-21T09:42:00.000Z", 1 ], [ "2019-12-21T11:27:00.000Z", 1 ], [ "2019-12-21T11:44:00.000Z", 1 ], [ "2019-12-21T11:51:00.000Z", 1 ] ], "tempRoomC": [ [ "2019-12-21T04:00:00.000Z", 21.366499999999995 ], [ "2019-12-21T05:00:00.000Z", 21.533500000000004 ], [ "2019-12-21T06:00:00.000Z", 21.60666666666666 ], [ "2019-12-21T07:00:00.000Z", 21.64016666666667 ], [ "2019-12-21T08:00:00.000Z", 21.604499999999987 ], [ "2019-12-21T09:00:00.000Z", 21.524999999999995 ], [ "2019-12-21T10:00:00.000Z", 21.30366666666667 ], [ "2019-12-21T11:00:00.000Z", 21.060500000000005 ], [ "2019-12-21T12:00:00.000Z", 21.69966666666668 ], [ "2019-12-21T13:00:00.000Z", 22.5825 ] ], "tempBedC": [ [ "2019-12-21T04:00:00.000Z", 24.574999999999992 ], [ "2019-12-21T05:00:00.000Z", 27.21099999999999 ], [ "2019-12-21T06:00:00.000Z", 30.901 ], [ "2019-12-21T07:00:00.000Z", 30.928000000000004 ], [ "2019-12-21T08:00:00.000Z", 31.06599999999999 ], [ "2019-12-21T09:00:00.000Z", 30.20716666666667 ], [ "2019-12-21T10:00:00.000Z", 30.08533333333332 ], [ "2019-12-21T11:00:00.000Z", 28.604500000000005 ], [ "2019-12-21T12:00:00.000Z", 30.81233333333335 ], [ "2019-12-21T13:00:00.000Z", 33.13333333333333 ] ], "respiratoryRate": [ [ "2019-12-21T06:00:00.000Z", 19.272727272727273 ], [ "2019-12-21T07:00:00.000Z", 20.5 ], [ "2019-12-21T08:00:00.000Z", 18.944444444444443 ], [ "2019-12-21T09:00:00.000Z", 19.48936170212766 ], [ "2019-12-21T10:00:00.000Z", 18.90909090909091 ], [ "2019-12-21T11:00:00.000Z", 18.23404255319149 ], [ "2019-12-21T12:00:00.000Z", 19.125 ], [ "2019-12-21T13:00:00.000Z", 17.75 ] ], "heartRate": [ [ "2019-12-21T06:00:00.000Z", 58 ], [ "2019-12-21T07:00:00.000Z", 55.80357142857143 ], [ "2019-12-21T08:00:00.000Z", 60.574074074074076 ], [ "2019-12-21T09:00:00.000Z", 60.255319148936174 ], [ "2019-12-21T10:00:00.000Z", 59.018181818181816 ], [ "2019-12-21T11:00:00.000Z", 58.97872340425532 ], [ "2019-12-21T12:00:00.000Z", 56.541666666666664 ], [ "2019-12-21T13:00:00.000Z", 55.125 ] ], "heating": [] }, "timezone": "America/Chicago", "device": { "id": "REMOVED", "side": "left" }, "sensorStatus": "good" } ] }

Attached are text files with easier to read formatting. Step4clean.txt Step3Clean.txt

Thanks!

BigCountry001 commented 4 years ago

Here is a screenshot from the app. I'm not sure if the data lines up though...

Screenshot_20191230-151532

mezz64 commented 4 years ago

Thanks for this, all very useful. Can you confirm for me how the cooling level is set? Do you just have a 1 to 10 option available to you for cooling level or does it actually let you set a temperature?

Can you post another dump of Step 3 with the cooling active on the bed?

BigCountry001 commented 4 years ago

Correct, it is a -1 to -10 setup to set the cooling level.

Here is a dump of the new step 3 output with cooling active. I've also attached a screen shot taken about the same time that the data pull was taken.

Screenshot_20200104-075121 Step3WhileCoolingCLEAN.txt

{ "result": { "deviceId": "REMOVED", "ownerId": "REMOVED", "leftUserId": "REMOVED", "leftHeatingLevel": -6, "leftTargetHeatingLevel": -50, "leftNowHeating": true, "leftHeatingDuration": 3418, "leftSchedule": { "enabled": false, "daysUTC": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": false, "saturday": false }, "startUTCHour": 0, "startUTCMinute": 0, "durationSeconds": 0 }, "rightUserId": "REMOVED", "rightHeatingLevel": -14, "rightTargetHeatingLevel": 20, "rightNowHeating": false, "rightHeatingDuration": 0, "rightSchedule": { "enabled": false, "daysUTC": { "sunday": false, "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": false, "saturday": false }, "startUTCHour": 0, "startUTCMinute": 0, "durationSeconds": 0 }, "priming": false, "needsPriming": false, "hasWater": true, "ledBrightnessLevel": 45, "sensorInfo": { "label": "REMOVED", "partNumber": "20600", "sku": "0002", "hwRevision": "C01", "serialNumber": "REMOVED", "lastConnected": "2020-01-04T13:49:13.955Z", "skuName": "king", "connected": true }, "hubInfo": "20500-0001-A04-00000706", "timezone": "America/Chicago", "location": [ -REMOVED, REMOVED ], "mattressInfo": { "firstUsedDate": null, "eightMattress": null, "brand": null }, "firmwareVersion": "2.2.29.0", "firmwareUpdated": true, "firmwareUpdating": false, "lastHeard": "2020-01-04T13:49:28.959Z", "online": true, "leftKelvin": { "targetLevels": [ -30, 10, 0 ], "alarms": [ { "repeat": false, "startLocalTime": "05:00:00", "startLocalTimestamp": "2020-01-02T05:00:00-06:00", "enabled": true, "thermalMode": "hot", "weekDays": { "monday": true, "tuesday": true, "wednesday": true, "thursday": true, "friday": true, "saturday": true, "sunday": true } } ], "scheduleProfiles": [ { "startLocalTime": "21:00:00", "enabled": true, "weekDays": { "monday": true, "tuesday": true, "wednesday": true, "thursday": true, "friday": false, "saturday": false, "sunday": true } }, { "startLocalTime": "21:30:00", "enabled": true, "weekDays": { "monday": false, "tuesday": false, "wednesday": false, "thursday": false, "friday": true, "saturday": true, "sunday": false } } ], "currentActivity": "temperatureControl", "currentTargetLevel": -50, "level": -50, "active": true }, "rightKelvin": { "targetLevels": [ 40, 10, 20 ], "alarms": [], "scheduleProfiles": [ { "startLocalTime": "21:30:00", "enabled": true, "weekDays": { "monday": true, "tuesday": true, "wednesday": true, "thursday": true, "friday": true, "saturday": true, "sunday": true } } ], "currentActivity": "off", "currentTargetLevel": 20, "level": 20, "active": false } } }

mezz64 commented 4 years ago

Thanks. Haven't forgotten about this, just haven't had much free time lately. I'll try to make the edits soon as I don't think that much modification is required.

mezz64 commented 4 years ago

Finally finding some time to work on this, @BigCountry001 can you post the sanitized results from Step 2, especially the values in the features array? I'm fairly certain your pod should have two values there, heating and cooling, but I want to double check before I use that as the source for the flag in the code.

mezz64 commented 4 years ago

Support for setting cooling values on the POD is now available in 0.1.3. Closing this.