@mp-consulting/homebridge-daikin-cloud 1.2.0 → 1.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +2 -1
- package/CHANGELOG.md +17 -1
- package/dist/src/api/daikin-api.d.ts +9 -0
- package/dist/src/api/daikin-api.d.ts.map +1 -1
- package/dist/src/api/daikin-api.js +34 -2
- package/dist/src/api/daikin-api.js.map +1 -1
- package/dist/src/api/daikin-types.d.ts +1 -0
- package/dist/src/api/daikin-types.d.ts.map +1 -1
- package/dist/src/constants.d.ts +6 -0
- package/dist/src/constants.d.ts.map +1 -1
- package/dist/src/constants.js +10 -1
- package/dist/src/constants.js.map +1 -1
- package/homebridge-ui/public/index.html +10 -1
- package/homebridge-ui/public/script.js +18 -5
- package/package.json +1 -1
- package/test/fixtures/altherma-fraction.ts +1 -2
- package/test/fixtures/altherma-heat-pump.ts +1 -2
- package/test/fixtures/altherma-v1ckoeln.ts +1 -2
- package/test/fixtures/dx23-airco.ts +1 -2
- package/test/fixtures/dx4-airco.ts +1 -2
- package/test/fixtures/unknown-jan.ts +1 -2
- package/test/fixtures/unknown-kitchen-guests.ts +1 -2
- package/test/hbConfig/.daikin-mobile-tokenset +4 -4
- package/test/hbConfig/accessories/.cachedAccessories.bak +1 -1
- package/test/hbConfig/accessories/cachedAccessories +1 -1
- package/test/integration/air-conditioning.test.ts +13 -9
- package/test/integration/altherma.test.ts +9 -8
- package/test/integration/platform.test.ts +25 -26
- package/test/unit/api/__snapshots__/daikinCloud.test.ts.snap +0 -3
- package/test/unit/api/daikin-api.test.ts +197 -0
- package/test/unit/api/daikin-oauth.test.ts +214 -0
- package/test/unit/device/daikin-device.test.ts +58 -8
- package/test/unit/services/hot-water-tank.service.test.ts +16 -10
package/CHANGELOG.md
CHANGED
|
@@ -4,13 +4,29 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/) and this project adheres to [Semantic Versioning](https://semver.org/).
|
|
6
6
|
|
|
7
|
+
## [1.2.2] - 2026-01-09
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
- Automatic token refresh with exponential backoff on 401 Unauthorized responses
|
|
11
|
+
- Retry constants for configurable backoff behavior (MAX_RETRY_ATTEMPTS, RETRY_BASE_DELAY_MS, RETRY_MAX_DELAY_MS)
|
|
12
|
+
- New API unit tests for DaikinApi and OAuth
|
|
13
|
+
|
|
14
|
+
### Changed
|
|
15
|
+
- OAuthProvider interface now includes `refreshToken()` method
|
|
16
|
+
- Auth status checks in UI are debounced to prevent excessive API calls
|
|
17
|
+
|
|
18
|
+
## [1.2.1] - 2026-01-09
|
|
19
|
+
|
|
20
|
+
### Fixed
|
|
21
|
+
- Dark mode auto-detection using Bootstrap 5 `data-bs-theme` attribute
|
|
22
|
+
- UI now properly responds to system dark/light mode preference changes
|
|
23
|
+
|
|
7
24
|
## [1.2.0] - 2026-01-09
|
|
8
25
|
|
|
9
26
|
### Changed
|
|
10
27
|
- **UI Redesign**: Migrated to Bootstrap 5 components for cleaner, more consistent design
|
|
11
28
|
- Added Bootstrap 5 CDN for proper styling
|
|
12
29
|
- Reduced custom CSS from ~1130 lines to ~200 lines
|
|
13
|
-
- Improved dark mode support using Bootstrap's color system
|
|
14
30
|
- Form controls use native Bootstrap form styling
|
|
15
31
|
- Toggle switches use Bootstrap form-switch with `role="switch"`
|
|
16
32
|
- Devices displayed as list instead of card grid
|
|
@@ -12,6 +12,7 @@ export declare class DaikinApi {
|
|
|
12
12
|
private readonly oauth;
|
|
13
13
|
private readonly onRateLimitStatus?;
|
|
14
14
|
private blockedUntil;
|
|
15
|
+
private isRefreshing;
|
|
15
16
|
constructor(oauth: OAuthProvider, onRateLimitStatus?: ((status: RateLimitStatus) => void) | undefined);
|
|
16
17
|
/**
|
|
17
18
|
* Make a static GET request with access token (for UI)
|
|
@@ -39,6 +40,14 @@ export declare class DaikinApi {
|
|
|
39
40
|
* Get time until rate limit is lifted
|
|
40
41
|
*/
|
|
41
42
|
getRateLimitRetryAfter(): number;
|
|
43
|
+
/**
|
|
44
|
+
* Calculate delay for exponential backoff with jitter
|
|
45
|
+
*/
|
|
46
|
+
private getRetryDelay;
|
|
47
|
+
/**
|
|
48
|
+
* Sleep for a specified duration
|
|
49
|
+
*/
|
|
50
|
+
private sleep;
|
|
42
51
|
/**
|
|
43
52
|
* Make an authenticated API request
|
|
44
53
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daikin-api.d.ts","sourceRoot":"","sources":["../../../src/api/daikin-api.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAqB,eAAe,EAAE,aAAa,EAAE,aAAa,EAAC,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"daikin-api.d.ts","sourceRoot":"","sources":["../../../src/api/daikin-api.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAqB,eAAe,EAAE,aAAa,EAAE,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAWjG,qBAAa,gBAAiB,SAAQ,KAAK;aAGnB,UAAU,EAAE,MAAM;gBADlC,OAAO,EAAE,MAAM,EACC,UAAU,EAAE,MAAM;CAKzC;AAED,qBAAa,SAAS;IAKd,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IALvC,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,YAAY,CAAS;gBAGR,KAAK,EAAE,aAAa,EACpB,iBAAiB,CAAC,YAAW,eAAe,KAAK,IAAI,aAAA;IAO1E;;OAEG;WACU,aAAa,CACtB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;QAAC,SAAS,EAAE,eAAe,CAAA;KAAE,CAAC;IA6BjH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAOhC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAqChC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAI5C;;OAEG;IACG,YAAY,CACd,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC;IAKhB;;OAEG;IACH,aAAa,IAAI,OAAO;IAIxB;;OAEG;IACH,sBAAsB,IAAI,MAAM;IAIhC;;OAEG;IACH,OAAO,CAAC,aAAa;IAMrB;;OAEG;IACH,OAAO,CAAC,KAAK;IAIb;;OAEG;YACW,OAAO;IAoFrB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,WAAW;CA4CtB"}
|
|
@@ -45,6 +45,7 @@ class DaikinApi {
|
|
|
45
45
|
oauth;
|
|
46
46
|
onRateLimitStatus;
|
|
47
47
|
blockedUntil = 0;
|
|
48
|
+
isRefreshing = false;
|
|
48
49
|
constructor(oauth, onRateLimitStatus) {
|
|
49
50
|
this.oauth = oauth;
|
|
50
51
|
this.onRateLimitStatus = onRateLimitStatus;
|
|
@@ -140,10 +141,24 @@ class DaikinApi {
|
|
|
140
141
|
getRateLimitRetryAfter() {
|
|
141
142
|
return Math.max(0, Math.ceil((this.blockedUntil - Date.now()) / constants_1.MS_PER_SECOND));
|
|
142
143
|
}
|
|
144
|
+
/**
|
|
145
|
+
* Calculate delay for exponential backoff with jitter
|
|
146
|
+
*/
|
|
147
|
+
getRetryDelay(attempt) {
|
|
148
|
+
const exponentialDelay = constants_1.RETRY_BASE_DELAY_MS * Math.pow(2, attempt);
|
|
149
|
+
const jitter = Math.random() * constants_1.RETRY_BASE_DELAY_MS;
|
|
150
|
+
return Math.min(exponentialDelay + jitter, constants_1.RETRY_MAX_DELAY_MS);
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Sleep for a specified duration
|
|
154
|
+
*/
|
|
155
|
+
sleep(ms) {
|
|
156
|
+
return new Promise(resolve => setTimeout(resolve, ms));
|
|
157
|
+
}
|
|
143
158
|
/**
|
|
144
159
|
* Make an authenticated API request
|
|
145
160
|
*/
|
|
146
|
-
async request(path, method = 'GET', body) {
|
|
161
|
+
async request(path, method = 'GET', body, retryCount = 0) {
|
|
147
162
|
// Check rate limit
|
|
148
163
|
if (this.isRateLimited()) {
|
|
149
164
|
const retryAfter = this.getRateLimitRetryAfter();
|
|
@@ -170,7 +185,24 @@ class DaikinApi {
|
|
|
170
185
|
case constants_1.HTTP_STATUS.BAD_REQUEST:
|
|
171
186
|
throw new Error(`Bad Request (${constants_1.HTTP_STATUS.BAD_REQUEST}): ${response.body || 'No response body'}`);
|
|
172
187
|
case constants_1.HTTP_STATUS.UNAUTHORIZED:
|
|
173
|
-
|
|
188
|
+
// If we've exhausted retries or already refreshing, give up
|
|
189
|
+
if (retryCount >= constants_1.MAX_RETRY_ATTEMPTS || this.isRefreshing) {
|
|
190
|
+
throw new Error(`Unauthorized (${constants_1.HTTP_STATUS.UNAUTHORIZED}): Token expired or invalid`);
|
|
191
|
+
}
|
|
192
|
+
// Try to refresh the token and retry the request with exponential backoff
|
|
193
|
+
try {
|
|
194
|
+
this.isRefreshing = true;
|
|
195
|
+
await this.oauth.refreshToken();
|
|
196
|
+
this.isRefreshing = false;
|
|
197
|
+
// Apply exponential backoff delay before retry
|
|
198
|
+
const delay = this.getRetryDelay(retryCount);
|
|
199
|
+
await this.sleep(delay);
|
|
200
|
+
return this.request(path, method, body, retryCount + 1);
|
|
201
|
+
}
|
|
202
|
+
catch {
|
|
203
|
+
this.isRefreshing = false;
|
|
204
|
+
throw new Error(`Unauthorized (${constants_1.HTTP_STATUS.UNAUTHORIZED}): Token refresh failed. Please re-authenticate.`);
|
|
205
|
+
}
|
|
174
206
|
case constants_1.HTTP_STATUS.NOT_FOUND:
|
|
175
207
|
throw new Error(`Not Found (${constants_1.HTTP_STATUS.NOT_FOUND}): ${response.body || 'Resource not found'}`);
|
|
176
208
|
case constants_1.HTTP_STATUS.CONFLICT:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daikin-api.js","sourceRoot":"","sources":["../../../src/api/daikin-api.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,kDAAoC;AACpC,iDAAiG;AACjG,
|
|
1
|
+
{"version":3,"file":"daikin-api.js","sourceRoot":"","sources":["../../../src/api/daikin-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -167,6 +167,7 @@ export interface DaikinControllerConfig {
|
|
|
167
167
|
export interface OAuthProvider {
|
|
168
168
|
getAccessToken(): Promise<string>;
|
|
169
169
|
isAuthenticated(): boolean;
|
|
170
|
+
refreshToken(): Promise<TokenSet>;
|
|
170
171
|
}
|
|
171
172
|
export type DaikinEventType = 'token_update' | 'rate_limit_status' | 'error' | 'websocket_connected' | 'websocket_disconnected' | 'websocket_device_update';
|
|
172
173
|
export interface WebSocketDeviceUpdate {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daikin-types.d.ts","sourceRoot":"","sources":["../../../src/api/daikin-types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"daikin-types.d.ts","sourceRoot":"","sources":["../../../src/api/daikin-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,eAAO,MAAM,kBAAkB;;;;;;CAM9B,CAAC;AAGF,eAAO,MAAM,oBAAoB;;;;;;;;;;CAUhC,CAAC;AAGF,MAAM,WAAW,QAAQ;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAGD,MAAM,WAAW,eAAe;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAGD,MAAM,WAAW,WAAW,CAAC,CAAC;IAC1B,IAAI,EAAE,CAAC,CAAC;IACR,SAAS,EAAE,eAAe,CAAC;CAC9B;AAGD,MAAM,WAAW,eAAe;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,IAAI,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACzB,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,aAAa,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IACrD,kBAAkB,CAAC,EAAE;QACjB,KAAK,EAAE;YACH,cAAc,EAAE;gBACZ,CAAC,IAAI,EAAE,MAAM,GAAG;oBACZ,SAAS,EAAE;wBACP,CAAC,QAAQ,EAAE,MAAM,GAAG;4BAChB,KAAK,EAAE,MAAM,CAAC;4BACd,QAAQ,CAAC,EAAE,MAAM,CAAC;4BAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;4BAClB,SAAS,CAAC,EAAE,MAAM,CAAC;yBACtB,CAAC;qBACL,CAAC;iBACL,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,WAAW,CAAC,EAAE;QACV,KAAK,EAAE;YACH,eAAe,CAAC,EAAE;gBAAE,KAAK,EAAE,MAAM,CAAC;gBAAC,IAAI,CAAC,EAAE,MAAM,CAAA;aAAE,CAAC;YACnD,kBAAkB,CAAC,EAAE;gBAAE,KAAK,EAAE,MAAM,CAAC;gBAAC,IAAI,CAAC,EAAE,MAAM,CAAA;aAAE,CAAC;YACtD,uBAAuB,CAAC,EAAE;gBAAE,KAAK,EAAE,MAAM,CAAC;gBAAC,IAAI,CAAC,EAAE,MAAM,CAAA;aAAE,CAAC;SAC9D,CAAC;KACL,CAAC;IACF,UAAU,CAAC,EAAE;QACT,KAAK,EAAE;YACH,cAAc,EAAE;gBACZ,CAAC,IAAI,EAAE,MAAM,GAAG;oBACZ,QAAQ,CAAC,EAAE;wBAAE,WAAW,CAAC,EAAE;4BAAE,KAAK,EAAE,MAAM,CAAA;yBAAE,CAAC;wBAAC,KAAK,CAAC,EAAE;4BAAE,CAAC,IAAI,EAAE,MAAM,GAAG;gCAAE,KAAK,CAAC,EAAE,MAAM,CAAA;6BAAE,CAAA;yBAAE,CAAA;qBAAE,CAAC;oBAC/F,YAAY,CAAC,EAAE;wBAAE,UAAU,CAAC,EAAE;4BAAE,WAAW,CAAC,EAAE;gCAAE,KAAK,EAAE,MAAM,CAAA;6BAAE,CAAA;yBAAE,CAAC;wBAAC,QAAQ,CAAC,EAAE;4BAAE,WAAW,CAAC,EAAE;gCAAE,KAAK,EAAE,MAAM,CAAA;6BAAE,CAAA;yBAAE,CAAA;qBAAE,CAAC;iBACvH,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,YAAY,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACjC,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,YAAY,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACjC,WAAW,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAGD,MAAM,WAAW,aAAa;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC;IACzC,gBAAgB,EAAE,eAAe,EAAE,CAAC;IACpC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAGD,MAAM,MAAM,QAAQ,GAAG,kBAAkB,GAAG,YAAY,CAAC;AAGzD,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,6BAA6B,EAAE,MAAM,CAAC;IACtC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,aAAa,EAAE,MAAM,CAAC;CACzB;AAGD,MAAM,WAAW,kBAAkB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;CACzB;AAGD,MAAM,WAAW,sBAAsB;IACnC,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAEpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAGD,MAAM,WAAW,aAAa;IAC1B,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,eAAe,IAAI,OAAO,CAAC;IAC3B,YAAY,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;CACrC;AAGD,MAAM,MAAM,eAAe,GACrB,cAAc,GACd,mBAAmB,GACnB,OAAO,GACP,qBAAqB,GACrB,wBAAwB,GACxB,yBAAyB,CAAC;AAGhC,MAAM,WAAW,qBAAqB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,IAAI,EAAE;QACF,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,KAAK,EAAE,OAAO,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACL"}
|
package/dist/src/constants.d.ts
CHANGED
|
@@ -49,4 +49,10 @@ export declare const HTTP_STATUS: {
|
|
|
49
49
|
};
|
|
50
50
|
/** Maximum rate limit block duration (24 hours in seconds) */
|
|
51
51
|
export declare const MAX_RATE_LIMIT_BLOCK_SECONDS = 86400;
|
|
52
|
+
/** Maximum number of retry attempts for API requests */
|
|
53
|
+
export declare const MAX_RETRY_ATTEMPTS = 3;
|
|
54
|
+
/** Base delay for exponential backoff (milliseconds) */
|
|
55
|
+
export declare const RETRY_BASE_DELAY_MS = 1000;
|
|
56
|
+
/** Maximum delay for exponential backoff (milliseconds) */
|
|
57
|
+
export declare const RETRY_MAX_DELAY_MS = 10000;
|
|
52
58
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,eAAO,MAAM,aAAa,OAAO,CAAC;AAClC,eAAO,MAAM,aAAa,QAAqB,CAAC;AAChD,eAAO,MAAM,WAAW,QAAqB,CAAC;AAM9C,0CAA0C;AAC1C,eAAO,MAAM,+BAA+B,KAAK,CAAC;AAElD,wDAAwD;AACxD,eAAO,MAAM,6BAA6B,QAAqB,CAAC;AAEhE,kFAAkF;AAClF,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAM/C,oEAAoE;AACpE,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,yEAAyE;AACzE,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAEhD,iEAAiE;AACjE,eAAO,MAAM,oCAAoC,KAAK,CAAC;AAEvD,sDAAsD;AACtD,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC,sDAAsD;AACtD,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC,6CAA6C;AAC7C,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAMzC,8DAA8D;AAC9D,eAAO,MAAM,kCAAkC,KAAK,CAAC;AAErD,8BAA8B;AAC9B,eAAO,MAAM,aAAa,IAAI,CAAC;AAE/B,8BAA8B;AAC9B,eAAO,MAAM,aAAa,IAAI,CAAC;AAM/B,mEAAmE;AACnE,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAE9C,wDAAwD;AACxD,eAAO,MAAM,aAAa,OAAO,CAAC;AAMlC,4DAA4D;AAC5D,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAE9C,wBAAwB;AACxB,eAAO,MAAM,WAAW;;;;;;;;;CASd,CAAC;AAEX,8DAA8D;AAC9D,eAAO,MAAM,4BAA4B,QAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,eAAO,MAAM,aAAa,OAAO,CAAC;AAClC,eAAO,MAAM,aAAa,QAAqB,CAAC;AAChD,eAAO,MAAM,WAAW,QAAqB,CAAC;AAM9C,0CAA0C;AAC1C,eAAO,MAAM,+BAA+B,KAAK,CAAC;AAElD,wDAAwD;AACxD,eAAO,MAAM,6BAA6B,QAAqB,CAAC;AAEhE,kFAAkF;AAClF,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAM/C,oEAAoE;AACpE,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,yEAAyE;AACzE,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAEhD,iEAAiE;AACjE,eAAO,MAAM,oCAAoC,KAAK,CAAC;AAEvD,sDAAsD;AACtD,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC,sDAAsD;AACtD,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC,6CAA6C;AAC7C,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAMzC,8DAA8D;AAC9D,eAAO,MAAM,kCAAkC,KAAK,CAAC;AAErD,8BAA8B;AAC9B,eAAO,MAAM,aAAa,IAAI,CAAC;AAE/B,8BAA8B;AAC9B,eAAO,MAAM,aAAa,IAAI,CAAC;AAM/B,mEAAmE;AACnE,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAE9C,wDAAwD;AACxD,eAAO,MAAM,aAAa,OAAO,CAAC;AAMlC,4DAA4D;AAC5D,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAE9C,wBAAwB;AACxB,eAAO,MAAM,WAAW;;;;;;;;;CASd,CAAC;AAEX,8DAA8D;AAC9D,eAAO,MAAM,4BAA4B,QAAQ,CAAC;AAMlD,wDAAwD;AACxD,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC,wDAAwD;AACxD,eAAO,MAAM,mBAAmB,OAAO,CAAC;AAExC,2DAA2D;AAC3D,eAAO,MAAM,kBAAkB,QAAQ,CAAC"}
|
package/dist/src/constants.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Centralized constants to avoid magic numbers throughout the codebase.
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.MAX_RATE_LIMIT_BLOCK_SECONDS = exports.HTTP_STATUS = exports.DEFAULT_RETRY_AFTER_SECONDS = exports.MS_PER_SECOND = exports.TOKEN_EXPIRY_BUFFER_SECONDS = exports.FAN_SPEED_MAX = exports.FAN_SPEED_MIN = exports.FAN_SPEED_TO_PERCENTAGE_MULTIPLIER = exports.COOLING_TEMP_CLAMP_MAX = exports.HOMEKIT_TEMP_MAX = exports.HOMEKIT_TEMP_MIN = exports.DEFAULT_HOT_WATER_TARGET_TEMPERATURE = exports.DEFAULT_HOT_WATER_TEMPERATURE = exports.DEFAULT_ROOM_TEMPERATURE = exports.RATE_LIMIT_WARNING_THRESHOLD = exports.DEFAULT_FORCE_UPDATE_DELAY_MS = exports.DEFAULT_UPDATE_INTERVAL_MINUTES = exports.ONE_HOUR_MS = exports.ONE_MINUTE_MS = exports.ONE_SECOND_MS = void 0;
|
|
8
|
+
exports.RETRY_MAX_DELAY_MS = exports.RETRY_BASE_DELAY_MS = exports.MAX_RETRY_ATTEMPTS = exports.MAX_RATE_LIMIT_BLOCK_SECONDS = exports.HTTP_STATUS = exports.DEFAULT_RETRY_AFTER_SECONDS = exports.MS_PER_SECOND = exports.TOKEN_EXPIRY_BUFFER_SECONDS = exports.FAN_SPEED_MAX = exports.FAN_SPEED_MIN = exports.FAN_SPEED_TO_PERCENTAGE_MULTIPLIER = exports.COOLING_TEMP_CLAMP_MAX = exports.HOMEKIT_TEMP_MAX = exports.HOMEKIT_TEMP_MIN = exports.DEFAULT_HOT_WATER_TARGET_TEMPERATURE = exports.DEFAULT_HOT_WATER_TEMPERATURE = exports.DEFAULT_ROOM_TEMPERATURE = exports.RATE_LIMIT_WARNING_THRESHOLD = exports.DEFAULT_FORCE_UPDATE_DELAY_MS = exports.DEFAULT_UPDATE_INTERVAL_MINUTES = exports.ONE_HOUR_MS = exports.ONE_MINUTE_MS = exports.ONE_SECOND_MS = void 0;
|
|
9
9
|
// =============================================================================
|
|
10
10
|
// Time Constants
|
|
11
11
|
// =============================================================================
|
|
@@ -70,4 +70,13 @@ exports.HTTP_STATUS = {
|
|
|
70
70
|
};
|
|
71
71
|
/** Maximum rate limit block duration (24 hours in seconds) */
|
|
72
72
|
exports.MAX_RATE_LIMIT_BLOCK_SECONDS = 86400;
|
|
73
|
+
// =============================================================================
|
|
74
|
+
// Retry Constants (Exponential Backoff)
|
|
75
|
+
// =============================================================================
|
|
76
|
+
/** Maximum number of retry attempts for API requests */
|
|
77
|
+
exports.MAX_RETRY_ATTEMPTS = 3;
|
|
78
|
+
/** Base delay for exponential backoff (milliseconds) */
|
|
79
|
+
exports.RETRY_BASE_DELAY_MS = 1000;
|
|
80
|
+
/** Maximum delay for exponential backoff (milliseconds) */
|
|
81
|
+
exports.RETRY_MAX_DELAY_MS = 10000;
|
|
73
82
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,gFAAgF;AAChF,iBAAiB;AACjB,gFAAgF;AAEnE,QAAA,aAAa,GAAG,IAAI,CAAC;AACrB,QAAA,aAAa,GAAG,qBAAa,GAAG,EAAE,CAAC;AACnC,QAAA,WAAW,GAAG,qBAAa,GAAG,EAAE,CAAC;AAE9C,gFAAgF;AAChF,+BAA+B;AAC/B,gFAAgF;AAEhF,0CAA0C;AAC7B,QAAA,+BAA+B,GAAG,EAAE,CAAC;AAElD,wDAAwD;AAC3C,QAAA,6BAA6B,GAAG,qBAAa,GAAG,EAAE,CAAC;AAEhE,kFAAkF;AACrE,QAAA,4BAA4B,GAAG,EAAE,CAAC;AAE/C,gFAAgF;AAChF,wBAAwB;AACxB,gFAAgF;AAEhF,oEAAoE;AACvD,QAAA,wBAAwB,GAAG,EAAE,CAAC;AAE3C,yEAAyE;AAC5D,QAAA,6BAA6B,GAAG,EAAE,CAAC;AAEhD,iEAAiE;AACpD,QAAA,oCAAoC,GAAG,EAAE,CAAC;AAEvD,sDAAsD;AACzC,QAAA,gBAAgB,GAAG,EAAE,CAAC;AAEnC,sDAAsD;AACzC,QAAA,gBAAgB,GAAG,EAAE,CAAC;AAEnC,6CAA6C;AAChC,QAAA,sBAAsB,GAAG,EAAE,CAAC;AAEzC,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF,8DAA8D;AACjD,QAAA,kCAAkC,GAAG,EAAE,CAAC;AAErD,8BAA8B;AACjB,QAAA,aAAa,GAAG,CAAC,CAAC;AAE/B,8BAA8B;AACjB,QAAA,aAAa,GAAG,CAAC,CAAC;AAE/B,gFAAgF;AAChF,kBAAkB;AAClB,gFAAgF;AAEhF,mEAAmE;AACtD,QAAA,2BAA2B,GAAG,EAAE,CAAC;AAE9C,wDAAwD;AAC3C,QAAA,aAAa,GAAG,IAAI,CAAC;AAElC,gFAAgF;AAChF,gBAAgB;AAChB,gFAAgF;AAEhF,4DAA4D;AAC/C,QAAA,2BAA2B,GAAG,EAAE,CAAC;AAE9C,wBAAwB;AACX,QAAA,WAAW,GAAG;IACvB,EAAE,EAAE,GAAG;IACP,UAAU,EAAE,GAAG;IACf,WAAW,EAAE,GAAG;IAChB,YAAY,EAAE,GAAG;IACjB,SAAS,EAAE,GAAG;IACd,QAAQ,EAAE,GAAG;IACb,oBAAoB,EAAE,GAAG;IACzB,iBAAiB,EAAE,GAAG;CAChB,CAAC;AAEX,8DAA8D;AACjD,QAAA,4BAA4B,GAAG,KAAK,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,gFAAgF;AAChF,iBAAiB;AACjB,gFAAgF;AAEnE,QAAA,aAAa,GAAG,IAAI,CAAC;AACrB,QAAA,aAAa,GAAG,qBAAa,GAAG,EAAE,CAAC;AACnC,QAAA,WAAW,GAAG,qBAAa,GAAG,EAAE,CAAC;AAE9C,gFAAgF;AAChF,+BAA+B;AAC/B,gFAAgF;AAEhF,0CAA0C;AAC7B,QAAA,+BAA+B,GAAG,EAAE,CAAC;AAElD,wDAAwD;AAC3C,QAAA,6BAA6B,GAAG,qBAAa,GAAG,EAAE,CAAC;AAEhE,kFAAkF;AACrE,QAAA,4BAA4B,GAAG,EAAE,CAAC;AAE/C,gFAAgF;AAChF,wBAAwB;AACxB,gFAAgF;AAEhF,oEAAoE;AACvD,QAAA,wBAAwB,GAAG,EAAE,CAAC;AAE3C,yEAAyE;AAC5D,QAAA,6BAA6B,GAAG,EAAE,CAAC;AAEhD,iEAAiE;AACpD,QAAA,oCAAoC,GAAG,EAAE,CAAC;AAEvD,sDAAsD;AACzC,QAAA,gBAAgB,GAAG,EAAE,CAAC;AAEnC,sDAAsD;AACzC,QAAA,gBAAgB,GAAG,EAAE,CAAC;AAEnC,6CAA6C;AAChC,QAAA,sBAAsB,GAAG,EAAE,CAAC;AAEzC,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF,8DAA8D;AACjD,QAAA,kCAAkC,GAAG,EAAE,CAAC;AAErD,8BAA8B;AACjB,QAAA,aAAa,GAAG,CAAC,CAAC;AAE/B,8BAA8B;AACjB,QAAA,aAAa,GAAG,CAAC,CAAC;AAE/B,gFAAgF;AAChF,kBAAkB;AAClB,gFAAgF;AAEhF,mEAAmE;AACtD,QAAA,2BAA2B,GAAG,EAAE,CAAC;AAE9C,wDAAwD;AAC3C,QAAA,aAAa,GAAG,IAAI,CAAC;AAElC,gFAAgF;AAChF,gBAAgB;AAChB,gFAAgF;AAEhF,4DAA4D;AAC/C,QAAA,2BAA2B,GAAG,EAAE,CAAC;AAE9C,wBAAwB;AACX,QAAA,WAAW,GAAG;IACvB,EAAE,EAAE,GAAG;IACP,UAAU,EAAE,GAAG;IACf,WAAW,EAAE,GAAG;IAChB,YAAY,EAAE,GAAG;IACjB,SAAS,EAAE,GAAG;IACd,QAAQ,EAAE,GAAG;IACb,oBAAoB,EAAE,GAAG;IACzB,iBAAiB,EAAE,GAAG;CAChB,CAAC;AAEX,8DAA8D;AACjD,QAAA,4BAA4B,GAAG,KAAK,CAAC;AAElD,gFAAgF;AAChF,wCAAwC;AACxC,gFAAgF;AAEhF,wDAAwD;AAC3C,QAAA,kBAAkB,GAAG,CAAC,CAAC;AAEpC,wDAAwD;AAC3C,QAAA,mBAAmB,GAAG,IAAI,CAAC;AAExC,2DAA2D;AAC9C,QAAA,kBAAkB,GAAG,KAAK,CAAC"}
|
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
<!DOCTYPE html>
|
|
2
|
-
<html>
|
|
2
|
+
<html data-bs-theme="auto">
|
|
3
3
|
<head>
|
|
4
|
+
<script>
|
|
5
|
+
// Auto-detect dark mode preference
|
|
6
|
+
if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
|
7
|
+
document.documentElement.setAttribute('data-bs-theme', 'dark');
|
|
8
|
+
}
|
|
9
|
+
window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', e => {
|
|
10
|
+
document.documentElement.setAttribute('data-bs-theme', e.matches ? 'dark' : 'light');
|
|
11
|
+
});
|
|
12
|
+
</script>
|
|
4
13
|
<title>Daikin Cloud</title>
|
|
5
14
|
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" crossorigin="anonymous">
|
|
6
15
|
<link rel="stylesheet" href="styles.css">
|
|
@@ -173,14 +173,27 @@ const Countdown = {
|
|
|
173
173
|
|
|
174
174
|
const Auth = {
|
|
175
175
|
STATUS_REFRESH_INTERVAL: 60000,
|
|
176
|
+
_lastStatusCheck: 0,
|
|
177
|
+
_statusPromise: null,
|
|
176
178
|
|
|
177
179
|
async loadStatus() {
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
this.updateUI({ authenticated: false, error: error.message });
|
|
180
|
+
// Debounce: skip if called within 500ms of last call
|
|
181
|
+
const now = Date.now();
|
|
182
|
+
if (now - this._lastStatusCheck < 500 && this._statusPromise) {
|
|
183
|
+
return this._statusPromise;
|
|
183
184
|
}
|
|
185
|
+
this._lastStatusCheck = now;
|
|
186
|
+
|
|
187
|
+
this._statusPromise = (async () => {
|
|
188
|
+
try {
|
|
189
|
+
const response = await homebridge.request('/auth/status');
|
|
190
|
+
this.updateUI(response);
|
|
191
|
+
} catch (error) {
|
|
192
|
+
this.updateUI({ authenticated: false, error: error.message });
|
|
193
|
+
}
|
|
194
|
+
})();
|
|
195
|
+
|
|
196
|
+
return this._statusPromise;
|
|
184
197
|
},
|
|
185
198
|
|
|
186
199
|
startStatusRefresh() {
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"displayName": "Daikin Cloud",
|
|
3
3
|
"platformname": "daikincloud",
|
|
4
4
|
"name": "@mp-consulting/homebridge-daikin-cloud",
|
|
5
|
-
"version": "1.2.
|
|
5
|
+
"version": "1.2.2",
|
|
6
6
|
"description": "Integrate with the Daikin Cloud to control your Daikin air conditioning via the cloud",
|
|
7
7
|
"license": "Apache-2.0",
|
|
8
8
|
"repository": {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export const althermaFraction =
|
|
2
2
|
{
|
|
3
|
-
'
|
|
3
|
+
'id': '',
|
|
4
4
|
'deviceModel': 'Altherma',
|
|
5
5
|
'type': 'heating-wlan',
|
|
6
6
|
'isCloudConnectionUp':
|
|
@@ -715,5 +715,4 @@ export const althermaFraction =
|
|
|
715
715
|
],
|
|
716
716
|
'embeddedId': '',
|
|
717
717
|
'timestamp': '2024-10-02T09:29:40.484Z',
|
|
718
|
-
'id': '',
|
|
719
718
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Altherma heatpump
|
|
2
2
|
export const althermaHeatPump = {
|
|
3
|
-
'
|
|
3
|
+
'id': '10b029e7-484c-4519-b22e-c14be4b7a71c',
|
|
4
4
|
'deviceModel': 'Altherma',
|
|
5
5
|
'type': 'heating-wlan',
|
|
6
6
|
'isCloudConnectionUp': {
|
|
@@ -753,6 +753,5 @@ export const althermaHeatPump = {
|
|
|
753
753
|
],
|
|
754
754
|
'embeddedId': 'e1bac939-1495-4803-a6a3-ca2f9388c8ad',
|
|
755
755
|
'timestamp': '2023-03-07T19:01:39.983Z',
|
|
756
|
-
'id': '10b029e7-484c-4519-b22e-c14be4b7a71c',
|
|
757
756
|
'lastUpdateReceived': '2023-03-07T19:01:39.983Z',
|
|
758
757
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// introduced via https://github.com/mp-consulting/homebridge-daikin-cloud/issues/81
|
|
2
2
|
|
|
3
3
|
export const althermaV1ckoeln = {
|
|
4
|
-
'
|
|
4
|
+
'id': 'ef81d359-4501-431f-9479-d71594658b51',
|
|
5
5
|
'deviceModel': 'Altherma',
|
|
6
6
|
'type': 'heating-wlan',
|
|
7
7
|
'isCloudConnectionUp': {
|
|
@@ -641,5 +641,4 @@ export const althermaV1ckoeln = {
|
|
|
641
641
|
],
|
|
642
642
|
'embeddedId': 'bbfb5284-036a-44ff-96f8-9cde288e1beb',
|
|
643
643
|
'timestamp': '2024-08-18T13:31:41.225Z',
|
|
644
|
-
'id': 'ef81d359-4501-431f-9479-d71594658b51',
|
|
645
644
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Keuken Jeroen, more simple, no horizontal and vertical swing, no powerful mode, min-max speed 1-3
|
|
2
2
|
export const dx23Airco = {
|
|
3
|
-
'
|
|
3
|
+
'id': 'efd08509-2edb-41d0-a9ab-ce913323d811',
|
|
4
4
|
'isCloudConnectionUp': {
|
|
5
5
|
'settable': false,
|
|
6
6
|
'value': true,
|
|
@@ -514,6 +514,5 @@ export const dx23Airco = {
|
|
|
514
514
|
],
|
|
515
515
|
'embeddedId': '78e9e2b5-2e25-4e9b-ae72-56184fc0e6a9',
|
|
516
516
|
'timestamp': '2022-05-04T10:47:18.040Z',
|
|
517
|
-
'id': 'efd08509-2edb-41d0-a9ab-ce913323d811',
|
|
518
517
|
'lastUpdateReceived': '2022-05-04T10:47:18.040Z',
|
|
519
518
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Zolder Jeroen, has all options
|
|
2
2
|
export const dx4Airco= {
|
|
3
|
-
'
|
|
3
|
+
'id': 'ca043bde-8db6-488b-a69e-f43949a24020',
|
|
4
4
|
'isCloudConnectionUp': {
|
|
5
5
|
'settable': false,
|
|
6
6
|
'value': true,
|
|
@@ -910,6 +910,5 @@ export const dx4Airco= {
|
|
|
910
910
|
],
|
|
911
911
|
'embeddedId': '87988',
|
|
912
912
|
'timestamp': '2022-05-04T10:49:25.002Z',
|
|
913
|
-
'id': 'ca043bde-8db6-488b-a69e-f43949a24020',
|
|
914
913
|
'lastUpdateReceived': '2022-05-04T10:49:25.002Z',
|
|
915
914
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Unknown from: https://github.com/mp-consulting/homebridge-daikin-cloud/issues/50
|
|
2
2
|
export const unknownJan = {
|
|
3
|
-
'
|
|
3
|
+
'id': 'c6001930-f7a2-4903-a2d2-be0b649ac9da',
|
|
4
4
|
'error': 'INVALID_GATEWAY_DEVICE',
|
|
5
5
|
'type': 'dx4',
|
|
6
6
|
'deviceModel': 'dx4',
|
|
@@ -485,5 +485,4 @@ export const unknownJan = {
|
|
|
485
485
|
],
|
|
486
486
|
'embeddedId': '1407366',
|
|
487
487
|
'timestamp': '2024-01-24T19:56:06.956Z',
|
|
488
|
-
'id': 'c6001930-f7a2-4903-a2d2-be0b649ac9da',
|
|
489
488
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Unknown from: https://github.com/mp-consulting/homebridge-daikin-cloud/issues/50
|
|
2
2
|
export const unknownKitchenGuests = {
|
|
3
|
-
'
|
|
3
|
+
'id': '60f60b43-0d09-4084-94a0-d7a71020001f',
|
|
4
4
|
'error': 'INVALID_GATEWAY_DEVICE',
|
|
5
5
|
'type': 'dx4',
|
|
6
6
|
'deviceModel': 'dx4',
|
|
@@ -485,5 +485,4 @@ export const unknownKitchenGuests = {
|
|
|
485
485
|
],
|
|
486
486
|
'embeddedId': '1395211',
|
|
487
487
|
'timestamp': '2024-01-24T19:56:47.581Z',
|
|
488
|
-
'id': '60f60b43-0d09-4084-94a0-d7a71020001f',
|
|
489
488
|
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
"access_token": "eyJ0eXAiOiJhdCtKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6Ik1FVkdRa0l5TXprNE0wRTRNVFkzTnpJM1FUYzBNek16T0RRd05FRkVRVUpCTTBFd1EwRkZRZyJ9.
|
|
2
|
+
"access_token": "eyJ0eXAiOiJhdCtKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6Ik1FVkdRa0l5TXprNE0wRTRNVFkzTnpJM1FUYzBNek16T0RRd05FRkVRVUpCTTBFd1EwRkZRZyJ9.eyJzY29wZSI6Im9wZW5pZCBvbmVjdGE6b25lY3RhLmFwcGxpY2F0aW9uIG9mZmxpbmVfYWNjZXNzIiwiaWF0IjoxNzY3OTkyNzA4LCJleHAiOjE3Njc5OTYzMDgsImF1ZCI6WyJodHRwczovL2lkcC5vbmVjdGEuZGFpa2luZXVyb3BlLmNvbSIsImh0dHBzOi8vYXBpLm9uZWN0YS5kYWlraW5ldXJvcGUuY29tIiwid3NzOi8vd3NhcGkub25lY3RhLmRhaWtpbmV1cm9wZS5jb20iLCJGalM2VDVvWkh2enBaRU5JRHliRlJkdEsiXSwiaXNzIjoiaHR0cHM6Ly9jZGMuZGFpa2luLmV1L29pZGMvb3AvdjEuMC8zX3hSQjNqYVE2MmJWanFYVTFvbWFFc1BEVllDMFR3aTF6ZnExekhQdV81SEZUMHpXa0R2WkpTOTdZdzFsb0puVG0vIiwic3ViIjoiZTQzN2YzNTE4YWFkNDMxNGI0N2IzOTlhMzcyNjc4MDciLCJzaWQiOiJVVlpRZmpBeU1EUTFNRFV6TlRRMFlqQTRNemN6TWpNNU16Y3pNak00TXpNek5UQXlNRGM1TjM1TlRuRnNUWEZHTlRSNFZXVmtOamRwYURkak9XWTRabWxQYXpWSGR6SllWbEZPWlcxTk5rOUZUUzFDVWpkNGJESlFTMDgyZW14eFVIZEdNWEJsY0Y5dGVHaERkME5wYjB3dFpWQmxOalphTW5sbmEyWk9XRkZSZmc9PSIsImp0aSI6InN0Mi5zLkF0THQxUG15cXcuZXVFMjF5OGZ1aVdqR1pNR3BuVXpranpyZmdycFRPSlRCdlZWdXFDbTZPT09JZFJCb0lpTUJscmtEZ3hZM2k4MlhrblIxUGsxdEI4ODlJSGRsdWdGY2Y0MkIzTzllbDZ4MjZTVHI3WkprWE9rTFRtQ2JCVnpicUtINm9tTUUxTlcuYXN6OHV4dVZzS1kwWERNNmZEVkR5dnFFZjhPWTg0YW1na01LOUZVYi1TaHNicnhCOW1MY2U5Q19KelFEVnI2ODgzakhwVzdvRUtRR1NvNm1UYlFEWGcuc2MzIiwiY2xpZW50X2lkIjoiRmpTNlQ1b1pIdnpwWkVOSUR5YkZSZHRLIiwiYXpwIjoiRmpTNlQ1b1pIdnpwWkVOSUR5YkZSZHRLIn0.HDrROtqyenBkwZwVSi3aaf0xWqiJxkTU689b65Np3KVR1Uh4q07-TmYywQ42dGqJ7jJIfKnfjcDa6qIohuo2_CqIkhOMeB1cF-bfoaTnSnuHXYnVBRikHLH8EIMFB2LR996rUiHJ0Q6c3Q9wpmumercCxlTJ-SSRCIaqoq2hdNd_bsxnYU5r_C20k9AK_G0cBB1SuvmESNrPFQGXNFIT0fiAGTCMlmfZa1OiXiuS-rc_GTY-djniZTWahfZEbabUcSoz5Uoys4TPuVQ1Ze1O31t3v63uD_TI2faf3CIEhqLSbF-lgRuBvRsaIpckHCny42-T-yOfX6VyHVV1usfiLQ",
|
|
3
3
|
"token_type": "Bearer",
|
|
4
4
|
"expires_in": 3600,
|
|
5
|
-
"id_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6Ik1FVkdRa0l5TXprNE0wRTRNVFkzTnpJM1FUYzBNek16T0RRd05FRkVRVUpCTTBFd1EwRkZRZyJ9.
|
|
6
|
-
"refresh_token": "st2.s.
|
|
7
|
-
"expires_at":
|
|
5
|
+
"id_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6Ik1FVkdRa0l5TXprNE0wRTRNVFkzTnpJM1FUYzBNek16T0RRd05FRkVRVUpCTTBFd1EwRkZRZyJ9.eyJpc3MiOiJodHRwczovL2NkYy5kYWlraW4uZXUvb2lkYy9vcC92MS4wLzNfeFJCM2phUTYyYlZqcVhVMW9tYUVzUERWWUMwVHdpMXpmcTF6SFB1XzVIRlQweldrRHZaSlM5N1l3MWxvSm5UbS8iLCJleHAiOjE3OTk1Mjg3MDksImlhdCI6MTc2Nzk5MjcwOSwiYXVkIjpbImh0dHBzOi8vaWRwLm9uZWN0YS5kYWlraW5ldXJvcGUuY29tIiwiaHR0cHM6Ly9hcGkub25lY3RhLmRhaWtpbmV1cm9wZS5jb20iLCJ3c3M6Ly93c2FwaS5vbmVjdGEuZGFpa2luZXVyb3BlLmNvbSIsIkZqUzZUNW9aSHZ6cFpFTklEeWJGUmR0SyJdLCJhdXRoX3RpbWUiOjE3Njc5OTExMTcsImF6cCI6IkZqUzZUNW9aSHZ6cFpFTklEeWJGUmR0SyIsInN1YiI6ImU0MzdmMzUxOGFhZDQzMTRiNDdiMzk5YTM3MjY3ODA3IiwiYXRfaGFzaCI6IndLMWNHeWlmX2w0WUJqV09DYklNOGciLCJzaWQiOiJVV0ZQZmpBeU1EUTFNRFV6TlRRMFlqQTRNemN6TWpNNU16Y3pNak00TXpNek5UQXlNRGM1TjM1TlREaDJSMHMzVG5wTWRtVlhVbUZ5Ymt0WVRISnFPVWxWVW5oMVJWWklUakZwTFdvNVlXRnljVUprYkdWTVgwSTRRMGxVUW5wS2ExVlJYM3BHTVdGUE1FSkRkME5wYjB3dFpWQmxOalphTW5sbmEyWk9XRkZSZmc9PSJ9.NG9vhaaOFrhi2t24cVXjIJykB0bfGSsPe66NpIhny9kWLKXGUWxZQ7LYK1gc3aT_A7apgORU9ajawppJZYaiBND_aH8DP1L1FxubT3o3bSOOugXe4phivR18syZh4eXEEF4Awn4crKL_Ejd5udXnQzHEx8W6q8GTdAzr7NpGwShsMUDY95hMkf4n2dEqfOZet2jRkfp7vhjuvtfyxld6pPBFh-6fQzV8_SOlX8Wc7FXjKUH80R0PAzqa7vbjQZJ0BlfMf1F5vFInQK1tbQeGrraBK9YUU7BMhqhHRa3ts626izyPl2tATBshP5s9iFesDFzaC3gFPGAKgBr4vu-hhQ",
|
|
6
|
+
"refresh_token": "st2.s.AtLtZePt7g.-RfvPZ2kOwWkfXW_dbFHfCzj6ppUxRDaDerBTQR63LJkIM9Yc79tdOBPo-BoaNSqQi8MVW7EEZYrOpN6-2NXqzWUcfvwfkL0SQh0BtgtrUBh2hSWxko3HyHHYgdyr3CC.1hj2CHyjWni11zmuXyiP_sziH_-GToLav2eOgqgQ6rRR7SiOazk_y_JdFCCJz069uhjsqkabqtq3ZD0Xo3tnYA.sc3",
|
|
7
|
+
"expires_at": 1767996309
|
|
8
8
|
}
|