@amityco/ts-sdk 7.26.1-86332f0.0 → 7.26.1-93c0877f.0
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.
|
@@ -32,7 +32,9 @@ declare global {
|
|
|
32
32
|
accessToken: string;
|
|
33
33
|
userId: string;
|
|
34
34
|
}) => Promise<void>;
|
|
35
|
-
disconnect: (
|
|
35
|
+
disconnect: (options?: {
|
|
36
|
+
endSession?: boolean;
|
|
37
|
+
}) => Promise<void>;
|
|
36
38
|
get connected(): boolean;
|
|
37
39
|
on: <T extends keyof Amity.MqttEvents>(event: T, handler: (payload: Amity.MqttEvents[T]) => void) => void;
|
|
38
40
|
once: <T extends keyof Amity.MqttEvents>(event: T, handler: (payload: Amity.MqttEvents[T]) => void) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../src/@types/core/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,CAAC;AAEV,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,KAAK,CAAC;QACd,KAAK,eAAe,CAAC,CAAC,IAAI;YACxB,MAAM,EAAE,SAAS,CAAC;YAClB,IAAI,EAAE,CAAC,CAAC;SACT,CAAC;QAEF,KAAK,YAAY,GAAG;YAClB,MAAM,EAAE,MAAM,CAAC;YACf,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC;SACzB,CAAC;QAEF,KAAK,aAAa,GAAG;YACnB,MAAM,EAAE,OAAO,CAAC;YAChB,OAAO,EAAE,MAAM,CAAC;YAChB,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC;SACzB,CAAC;QAEF,KAAK,gBAAgB,GAAG;YACtB,OAAO,EAAE,OAAO,CAAC;SAClB,CAAC;QAEF,KAAK,QAAQ,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,GAAG,YAAY,GAAG,aAAa,CAAC;QAErE,KAAK,KAAK,GAAG,MAAM,CAAC;QAEpB,KAAK,UAAU,GAAG;YAChB,MAAM,EAAE;gBACN,QAAQ,CAAC,EAAE,KAAK,CAAC;gBACjB,IAAI,CAAC,EAAE,KAAK,CAAC;gBACb,SAAS,CAAC,EAAE,MAAM,CAAC;aACpB,CAAC;SACH,CAAC;QAEF,KAAK,UAAU,GAAG;YAChB,OAAO,EAAE,CAAC,MAAM,EAAE;gBAAE,WAAW,EAAE,MAAM,CAAC;gBAAC,MAAM,EAAE,MAAM,CAAA;aAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;YAC5E,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../src/@types/core/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,CAAC;AAEV,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,KAAK,CAAC;QACd,KAAK,eAAe,CAAC,CAAC,IAAI;YACxB,MAAM,EAAE,SAAS,CAAC;YAClB,IAAI,EAAE,CAAC,CAAC;SACT,CAAC;QAEF,KAAK,YAAY,GAAG;YAClB,MAAM,EAAE,MAAM,CAAC;YACf,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC;SACzB,CAAC;QAEF,KAAK,aAAa,GAAG;YACnB,MAAM,EAAE,OAAO,CAAC;YAChB,OAAO,EAAE,MAAM,CAAC;YAChB,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC;SACzB,CAAC;QAEF,KAAK,gBAAgB,GAAG;YACtB,OAAO,EAAE,OAAO,CAAC;SAClB,CAAC;QAEF,KAAK,QAAQ,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,GAAG,YAAY,GAAG,aAAa,CAAC;QAErE,KAAK,KAAK,GAAG,MAAM,CAAC;QAEpB,KAAK,UAAU,GAAG;YAChB,MAAM,EAAE;gBACN,QAAQ,CAAC,EAAE,KAAK,CAAC;gBACjB,IAAI,CAAC,EAAE,KAAK,CAAC;gBACb,SAAS,CAAC,EAAE,MAAM,CAAC;aACpB,CAAC;SACH,CAAC;QAEF,KAAK,UAAU,GAAG;YAChB,OAAO,EAAE,CAAC,MAAM,EAAE;gBAAE,WAAW,EAAE,MAAM,CAAC;gBAAC,MAAM,EAAE,MAAM,CAAA;aAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;YAC5E,UAAU,EAAE,CAAC,OAAO,CAAC,EAAE;gBAAE,UAAU,CAAC,EAAE,OAAO,CAAA;aAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;YAClE,IAAI,SAAS,IAAI,OAAO,CAAC;YACzB,EAAE,EAAE,CAAC,CAAC,SAAS,MAAM,KAAK,CAAC,UAAU,EACnC,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,KAC5C,IAAI,CAAC;YACV,IAAI,EAAE,CAAC,CAAC,SAAS,MAAM,KAAK,CAAC,UAAU,EACrC,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,KAC5C,IAAI,CAAC;YACV,GAAG,EAAE,CAAC,CAAC,SAAS,MAAM,KAAK,CAAC,UAAU,EACpC,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,KAC7C,IAAI,CAAC;YACV,kBAAkB,EAAE,MAAM,IAAI,CAAC;YAC/B,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;YAC7F,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;SACtC,CAAC;KACH;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mqtt.d.ts","sourceRoot":"","sources":["../../../src/core/transports/mqtt.ts"],"names":[],"mappings":"AAEA,OAAa,EAAuB,cAAc,EAAsB,UAAU,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"mqtt.d.ts","sourceRoot":"","sources":["../../../src/core/transports/mqtt.ts"],"names":[],"mappings":"AAEA,OAAa,EAAuB,cAAc,EAAsB,UAAU,EAAE,MAAM,MAAM,CAAC;AAiCjG,wBAAgB,cAAc,CAAC,MAAM,EAAE;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,cAAc,CAuBjB;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,aAAc,MAAM,KAAG,gBAgLtD,CAAC"}
|
package/dist/index.cjs.js
CHANGED
|
@@ -2456,10 +2456,11 @@ var MqttError;
|
|
|
2456
2456
|
MqttError[MqttError["BAD_USERNAME_OR_PASSWORD"] = 134] = "BAD_USERNAME_OR_PASSWORD";
|
|
2457
2457
|
MqttError[MqttError["NOT_AUTHORIZED"] = 135] = "NOT_AUTHORIZED";
|
|
2458
2458
|
})(MqttError || (MqttError = {}));
|
|
2459
|
-
// MQTT 5 session expiry, in seconds.
|
|
2460
|
-
//
|
|
2461
|
-
//
|
|
2462
|
-
|
|
2459
|
+
// MQTT 5 session expiry, in seconds. Under MQTT 3.1.1 the broker capped
|
|
2460
|
+
// retained sessions at ~30 min; under MQTT 5 the client's value wins, so an
|
|
2461
|
+
// unbounded value ("never") left disconnected sessions piling up on the broker.
|
|
2462
|
+
// 1800s matches the previous 3.1.1 cap.
|
|
2463
|
+
const SESSION_EXPIRY_INTERVAL = 1800;
|
|
2463
2464
|
function getMqttOptions(params) {
|
|
2464
2465
|
return Object.assign({ clean: false, clientId: `mqttjs_ + ${Math.random().toString(16).substring(2, 10)}`, protocolId: 'MQTT', protocolVersion: 5, reconnectPeriod: RETRY_BASE_TIMEOUT, resubscribe: true,
|
|
2465
2466
|
// The broker/LB drops idle sockets at ~60s. mqtt.js v5 sends its first
|
|
@@ -2561,8 +2562,16 @@ const createMqttTransport = (endpoint) => {
|
|
|
2561
2562
|
}
|
|
2562
2563
|
return {
|
|
2563
2564
|
connect,
|
|
2564
|
-
async disconnect() {
|
|
2565
|
+
async disconnect(options) {
|
|
2565
2566
|
if (this.connected) {
|
|
2567
|
+
// On logout we want the broker to release the session immediately
|
|
2568
|
+
// instead of keeping it around for SESSION_EXPIRY_INTERVAL. mqtt.js
|
|
2569
|
+
// only sends a DISCONNECT packet when `force` is false; force=true
|
|
2570
|
+
// just tears the socket down and the broker keeps the session until
|
|
2571
|
+
// it expires on its own.
|
|
2572
|
+
if (options === null || options === void 0 ? void 0 : options.endSession) {
|
|
2573
|
+
return new Promise(resolve => mqttClient === null || mqttClient === void 0 ? void 0 : mqttClient.end(false, { reasonCode: 0, properties: { sessionExpiryInterval: 0 } }, () => resolve()));
|
|
2574
|
+
}
|
|
2566
2575
|
return new Promise(resolve => mqttClient === null || mqttClient === void 0 ? void 0 : mqttClient.end(true, undefined, () => resolve()));
|
|
2567
2576
|
}
|
|
2568
2577
|
},
|
|
@@ -5439,7 +5448,7 @@ const logout = async () => {
|
|
|
5439
5448
|
const client = getActiveClient();
|
|
5440
5449
|
client.log('client/api/disconnectClient');
|
|
5441
5450
|
if (client.mqtt && client.mqtt.connected) {
|
|
5442
|
-
client.mqtt.disconnect();
|
|
5451
|
+
await client.mqtt.disconnect({ endSession: true });
|
|
5443
5452
|
}
|
|
5444
5453
|
/*
|
|
5445
5454
|
* for cases when session state is terminated (example on ban) or token expired,
|
package/dist/index.esm.js
CHANGED
|
@@ -2440,10 +2440,11 @@ var MqttError;
|
|
|
2440
2440
|
MqttError[MqttError["BAD_USERNAME_OR_PASSWORD"] = 134] = "BAD_USERNAME_OR_PASSWORD";
|
|
2441
2441
|
MqttError[MqttError["NOT_AUTHORIZED"] = 135] = "NOT_AUTHORIZED";
|
|
2442
2442
|
})(MqttError || (MqttError = {}));
|
|
2443
|
-
// MQTT 5 session expiry, in seconds.
|
|
2444
|
-
//
|
|
2445
|
-
//
|
|
2446
|
-
|
|
2443
|
+
// MQTT 5 session expiry, in seconds. Under MQTT 3.1.1 the broker capped
|
|
2444
|
+
// retained sessions at ~30 min; under MQTT 5 the client's value wins, so an
|
|
2445
|
+
// unbounded value ("never") left disconnected sessions piling up on the broker.
|
|
2446
|
+
// 1800s matches the previous 3.1.1 cap.
|
|
2447
|
+
const SESSION_EXPIRY_INTERVAL = 1800;
|
|
2447
2448
|
function getMqttOptions(params) {
|
|
2448
2449
|
return Object.assign({ clean: false, clientId: `mqttjs_ + ${Math.random().toString(16).substring(2, 10)}`, protocolId: 'MQTT', protocolVersion: 5, reconnectPeriod: RETRY_BASE_TIMEOUT, resubscribe: true,
|
|
2449
2450
|
// The broker/LB drops idle sockets at ~60s. mqtt.js v5 sends its first
|
|
@@ -2545,8 +2546,16 @@ const createMqttTransport = (endpoint) => {
|
|
|
2545
2546
|
}
|
|
2546
2547
|
return {
|
|
2547
2548
|
connect,
|
|
2548
|
-
async disconnect() {
|
|
2549
|
+
async disconnect(options) {
|
|
2549
2550
|
if (this.connected) {
|
|
2551
|
+
// On logout we want the broker to release the session immediately
|
|
2552
|
+
// instead of keeping it around for SESSION_EXPIRY_INTERVAL. mqtt.js
|
|
2553
|
+
// only sends a DISCONNECT packet when `force` is false; force=true
|
|
2554
|
+
// just tears the socket down and the broker keeps the session until
|
|
2555
|
+
// it expires on its own.
|
|
2556
|
+
if (options === null || options === void 0 ? void 0 : options.endSession) {
|
|
2557
|
+
return new Promise(resolve => mqttClient === null || mqttClient === void 0 ? void 0 : mqttClient.end(false, { reasonCode: 0, properties: { sessionExpiryInterval: 0 } }, () => resolve()));
|
|
2558
|
+
}
|
|
2550
2559
|
return new Promise(resolve => mqttClient === null || mqttClient === void 0 ? void 0 : mqttClient.end(true, undefined, () => resolve()));
|
|
2551
2560
|
}
|
|
2552
2561
|
},
|
|
@@ -5439,7 +5448,7 @@ const logout = async () => {
|
|
|
5439
5448
|
const client = getActiveClient();
|
|
5440
5449
|
client.log('client/api/disconnectClient');
|
|
5441
5450
|
if (client.mqtt && client.mqtt.connected) {
|
|
5442
|
-
client.mqtt.disconnect();
|
|
5451
|
+
await client.mqtt.disconnect({ endSession: true });
|
|
5443
5452
|
}
|
|
5444
5453
|
/*
|
|
5445
5454
|
* for cases when session state is terminated (example on ban) or token expired,
|