@vex-chat/libvex 7.1.5 → 7.2.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.
- package/dist/Client.d.ts +32 -1
- package/dist/Client.d.ts.map +1 -1
- package/dist/Client.js +184 -4
- package/dist/Client.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/storage/sqlite.d.ts.map +1 -1
- package/dist/storage/sqlite.js +10 -6
- package/dist/storage/sqlite.js.map +1 -1
- package/package.json +3 -3
- package/src/Client.ts +270 -0
- package/src/__tests__/storage-sqlite.test.ts +122 -0
- package/src/index.ts +11 -1
- package/src/storage/sqlite.ts +21 -13
package/dist/Client.d.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Commercial licenses available at vex.wtf
|
|
5
5
|
*/
|
|
6
6
|
import type { Storage } from "./Storage.js";
|
|
7
|
-
import type { Channel, Device, Emoji, FileResponse, FileSQL, Invite, Passkey, Permission, Server, ServerChannelBootstrap, SessionSQL } from "@vex-chat/types";
|
|
7
|
+
import type { CallEvent, CallSession, CallSignalPayload, Channel, Device, Emoji, FileResponse, FileSQL, IceServerConfig, Invite, Passkey, Permission, Server, ServerChannelBootstrap, SessionSQL } from "@vex-chat/types";
|
|
8
8
|
import { type HttpError } from "./http.js";
|
|
9
9
|
/**
|
|
10
10
|
* Thrown by {@link Client.register} when the server determined the supplied
|
|
@@ -34,6 +34,24 @@ export declare class DeviceApprovalRequiredError extends Error {
|
|
|
34
34
|
userID?: null | string;
|
|
35
35
|
});
|
|
36
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* Voice-call signaling operations.
|
|
39
|
+
*
|
|
40
|
+
* `libvex` moves authenticated call control over Spire. Platform apps own
|
|
41
|
+
* WebRTC/media capture and pass offers, answers, and ICE candidates through
|
|
42
|
+
* these methods.
|
|
43
|
+
*/
|
|
44
|
+
export interface Calls {
|
|
45
|
+
accept: (callID: string, signal?: CallSignalPayload) => Promise<CallEvent>;
|
|
46
|
+
active: () => Promise<CallSession[]>;
|
|
47
|
+
cancel: (callID: string) => Promise<CallEvent>;
|
|
48
|
+
hangup: (callID: string) => Promise<CallEvent>;
|
|
49
|
+
ice: (callID: string, signal: CallSignalPayload) => Promise<CallEvent>;
|
|
50
|
+
iceServers: () => Promise<IceServerConfig[]>;
|
|
51
|
+
reject: (callID: string) => Promise<CallEvent>;
|
|
52
|
+
signal: (callID: string, signal: CallSignalPayload) => Promise<CallEvent>;
|
|
53
|
+
startDM: (recipientUserID: string, signal?: CallSignalPayload) => Promise<CallEvent>;
|
|
54
|
+
}
|
|
37
55
|
/**
|
|
38
56
|
* @ignore
|
|
39
57
|
*/
|
|
@@ -463,6 +481,8 @@ export interface RetryRequest {
|
|
|
463
481
|
* and {@link Client.once}.
|
|
464
482
|
*/
|
|
465
483
|
export interface ClientEvents {
|
|
484
|
+
/** Voice-call signaling changed or an incoming call was received. */
|
|
485
|
+
call: (event: CallEvent) => void;
|
|
466
486
|
/** The client has been shut down (via {@link Client.close}). */
|
|
467
487
|
closed: () => void;
|
|
468
488
|
/** WebSocket authorized by the server; pre-auth setup begins. */
|
|
@@ -683,6 +703,13 @@ export declare class Client {
|
|
|
683
703
|
static encryptKeyData: (password: string, keyToSave: string, iterationOverride?: number) => Uint8Array;
|
|
684
704
|
static encryptKeyDataAsync: (password: string, keyToSave: string, iterationOverride?: number) => Promise<Uint8Array>;
|
|
685
705
|
private static readonly NOT_FOUND_TTL;
|
|
706
|
+
/**
|
|
707
|
+
* Voice-call signaling operations.
|
|
708
|
+
*
|
|
709
|
+
* Platform apps own native media capture/WebRTC. These methods only move
|
|
710
|
+
* authenticated signaling and call state over Spire.
|
|
711
|
+
*/
|
|
712
|
+
calls: Calls;
|
|
686
713
|
/**
|
|
687
714
|
* Browser-safe NODE_ENV accessor.
|
|
688
715
|
* Uses indirect lookup so the bare `process` global never appears in
|
|
@@ -1028,6 +1055,9 @@ export declare class Client {
|
|
|
1028
1055
|
private deliverMailResource;
|
|
1029
1056
|
private deliverMailResourceOverSocket;
|
|
1030
1057
|
private deviceListFailureDetail;
|
|
1058
|
+
private emitUndecryptedMessage;
|
|
1059
|
+
private fetchActiveCalls;
|
|
1060
|
+
private fetchIceServers;
|
|
1031
1061
|
/**
|
|
1032
1062
|
* Gets a list of permissions for a server.
|
|
1033
1063
|
*
|
|
@@ -1155,6 +1185,7 @@ export declare class Client {
|
|
|
1155
1185
|
private scheduleReconnect;
|
|
1156
1186
|
private scheduleRetentionPurge;
|
|
1157
1187
|
private send;
|
|
1188
|
+
private sendCallResource;
|
|
1158
1189
|
private sendGroupMessage;
|
|
1159
1190
|
private sendMail;
|
|
1160
1191
|
private sendMailWithRecovery;
|
package/dist/Client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Client.d.ts","sourceRoot":"","sources":["../src/Client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Client.d.ts","sourceRoot":"","sources":["../src/Client.ts"],"names":[],"mappings":"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"}
|
package/dist/Client.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Commercial licenses available at vex.wtf
|
|
5
5
|
*/
|
|
6
6
|
import { enterCryptoProfileScope, getCryptoProfile, leaveCryptoProfileScope, setCryptoProfile, xBoxKeyPairAsync, xBoxKeyPairFromSecretAsync, xConcat, xConstants, xDHAsync, xEcdhKeyPairFromEcdsaKeyPairAsync, xEncode, xHMAC, xKDF, XKeyConvert, xMakeNonce, xMnemonic, xRandomBytes, xSecretboxAsync, xSecretboxOpenAsync, xSignAsync, xSignKeyPair, xSignKeyPairAsync, xSignKeyPairFromSecret, xSignKeyPairFromSecretAsync, xSignOpenAsync, XUtils, } from "@vex-chat/crypto";
|
|
7
|
-
import { MailType, MailWSSchema, PermissionSchema, WSMessageSchema, } from "@vex-chat/types";
|
|
7
|
+
import { CallEventSchema, CallSessionSchema, IceServerConfigSchema, MailType, MailWSSchema, PermissionSchema, WSMessageSchema, } from "@vex-chat/types";
|
|
8
8
|
import { EventEmitter } from "eventemitter3";
|
|
9
9
|
import * as uuid from "uuid";
|
|
10
10
|
import { z } from "zod/v4";
|
|
@@ -74,6 +74,15 @@ function debugLibvexDm(msg, data) {
|
|
|
74
74
|
// eslint-disable-next-line no-console -- gated by LIBVEX_DEBUG_DM; remove when debugging is done
|
|
75
75
|
console.error(`[libvex:debug-dm] ${payload}`);
|
|
76
76
|
}
|
|
77
|
+
function errorFromUnknown(err) {
|
|
78
|
+
if (err instanceof Error) {
|
|
79
|
+
return err;
|
|
80
|
+
}
|
|
81
|
+
if (typeof err === "string") {
|
|
82
|
+
return new Error(err);
|
|
83
|
+
}
|
|
84
|
+
return new Error(JSON.stringify(err));
|
|
85
|
+
}
|
|
77
86
|
function ignoreSocketTeardown(err) {
|
|
78
87
|
if (err instanceof WebSocketNotOpenError)
|
|
79
88
|
return;
|
|
@@ -380,6 +389,30 @@ export class Client {
|
|
|
380
389
|
static encryptKeyData = XUtils.encryptKeyData;
|
|
381
390
|
static encryptKeyDataAsync = XUtils.encryptKeyDataAsync;
|
|
382
391
|
static NOT_FOUND_TTL = 30 * 60 * 1000;
|
|
392
|
+
/**
|
|
393
|
+
* Voice-call signaling operations.
|
|
394
|
+
*
|
|
395
|
+
* Platform apps own native media capture/WebRTC. These methods only move
|
|
396
|
+
* authenticated signaling and call state over Spire.
|
|
397
|
+
*/
|
|
398
|
+
calls = {
|
|
399
|
+
accept: (callID, signal) => this.sendCallResource("ACCEPT", {
|
|
400
|
+
callID,
|
|
401
|
+
...(signal ? { signal } : {}),
|
|
402
|
+
}),
|
|
403
|
+
active: this.fetchActiveCalls.bind(this),
|
|
404
|
+
cancel: (callID) => this.sendCallResource("CANCEL", { callID }),
|
|
405
|
+
hangup: (callID) => this.sendCallResource("HANGUP", { callID }),
|
|
406
|
+
ice: (callID, signal) => this.sendCallResource("ICE", { callID, signal }),
|
|
407
|
+
iceServers: this.fetchIceServers.bind(this),
|
|
408
|
+
reject: (callID) => this.sendCallResource("REJECT", { callID }),
|
|
409
|
+
signal: (callID, signal) => this.sendCallResource("SIGNAL", { callID, signal }),
|
|
410
|
+
startDM: (recipientUserID, signal) => this.sendCallResource("INVITE", {
|
|
411
|
+
conversationType: "dm",
|
|
412
|
+
recipientUserID,
|
|
413
|
+
...(signal ? { signal } : {}),
|
|
414
|
+
}),
|
|
415
|
+
};
|
|
383
416
|
/**
|
|
384
417
|
* Browser-safe NODE_ENV accessor.
|
|
385
418
|
* Uses indirect lookup so the bare `process` global never appears in
|
|
@@ -1342,7 +1375,7 @@ export class Client {
|
|
|
1342
1375
|
this.seenMailIDs.add(mail.mailID);
|
|
1343
1376
|
this.sendReceipt(new Uint8Array(mail.nonce));
|
|
1344
1377
|
}
|
|
1345
|
-
acknowledgeRepeatedDecryptFailure(mail, count) {
|
|
1378
|
+
acknowledgeRepeatedDecryptFailure(mail, count, timestamp) {
|
|
1346
1379
|
if (count < 2)
|
|
1347
1380
|
return;
|
|
1348
1381
|
if (libvexDebugDmEnabled()) {
|
|
@@ -1353,6 +1386,7 @@ export class Client {
|
|
|
1353
1386
|
thisDevice: this.getDevice().deviceID,
|
|
1354
1387
|
});
|
|
1355
1388
|
}
|
|
1389
|
+
this.emitUndecryptedMessage(mail, timestamp);
|
|
1356
1390
|
this.acknowledgeInboundMail(mail);
|
|
1357
1391
|
}
|
|
1358
1392
|
async approveDeviceRequest(requestID) {
|
|
@@ -1708,6 +1742,37 @@ export class Client {
|
|
|
1708
1742
|
}
|
|
1709
1743
|
return "";
|
|
1710
1744
|
}
|
|
1745
|
+
emitUndecryptedMessage(mail, timestamp) {
|
|
1746
|
+
this.emitter.emit("message", {
|
|
1747
|
+
authorID: mail.authorID,
|
|
1748
|
+
decrypted: false,
|
|
1749
|
+
direction: "incoming",
|
|
1750
|
+
forward: mail.forward,
|
|
1751
|
+
group: mail.group ? uuid.stringify(mail.group) : null,
|
|
1752
|
+
mailID: mail.mailID,
|
|
1753
|
+
message: "",
|
|
1754
|
+
nonce: XUtils.encodeHex(new Uint8Array(mail.nonce)),
|
|
1755
|
+
readerID: mail.readerID,
|
|
1756
|
+
recipient: mail.recipient,
|
|
1757
|
+
sender: mail.sender,
|
|
1758
|
+
timestamp,
|
|
1759
|
+
});
|
|
1760
|
+
}
|
|
1761
|
+
async fetchActiveCalls() {
|
|
1762
|
+
const res = await this.http.get(this.getHost() + "/calls/active", {
|
|
1763
|
+
responseType: "json",
|
|
1764
|
+
});
|
|
1765
|
+
return z.object({ calls: z.array(CallSessionSchema) }).parse(res.data)
|
|
1766
|
+
.calls;
|
|
1767
|
+
}
|
|
1768
|
+
async fetchIceServers() {
|
|
1769
|
+
const res = await this.http.get(this.getHost() + "/calls/ice-servers", {
|
|
1770
|
+
responseType: "json",
|
|
1771
|
+
});
|
|
1772
|
+
return z
|
|
1773
|
+
.object({ iceServers: z.array(IceServerConfigSchema) })
|
|
1774
|
+
.parse(res.data).iceServers;
|
|
1775
|
+
}
|
|
1711
1776
|
/**
|
|
1712
1777
|
* Gets a list of permissions for a server.
|
|
1713
1778
|
*
|
|
@@ -2180,6 +2245,14 @@ export class Client {
|
|
|
2180
2245
|
}
|
|
2181
2246
|
async handleNotify(msg) {
|
|
2182
2247
|
switch (msg.event) {
|
|
2248
|
+
case "call":
|
|
2249
|
+
case "callInvite": {
|
|
2250
|
+
const parsed = CallEventSchema.safeParse(msg.data);
|
|
2251
|
+
if (parsed.success) {
|
|
2252
|
+
this.emitter.emit("call", parsed.data);
|
|
2253
|
+
}
|
|
2254
|
+
break;
|
|
2255
|
+
}
|
|
2183
2256
|
case "deviceRequest": {
|
|
2184
2257
|
const parsed = deviceRequestNotifyData.safeParse(msg.data);
|
|
2185
2258
|
if (parsed.success) {
|
|
@@ -2704,9 +2777,11 @@ export class Client {
|
|
|
2704
2777
|
? null
|
|
2705
2778
|
: await this.database.getOneTimeKey(preKeyIndex);
|
|
2706
2779
|
if (otk?.index !== preKeyIndex && preKeyIndex !== 0) {
|
|
2780
|
+
const failureCount = this.registerDecryptFailure(mail);
|
|
2707
2781
|
if (libvexDebugDmEnabled()) {
|
|
2708
2782
|
try {
|
|
2709
2783
|
debugLibvexDm("readMail initial: abort (otk index mismatch)", {
|
|
2784
|
+
attempts: failureCount,
|
|
2710
2785
|
mailID: mail.mailID,
|
|
2711
2786
|
otkIndex: String(otk?.index ?? "null"),
|
|
2712
2787
|
preKeyIndex: String(preKeyIndex),
|
|
@@ -2719,6 +2794,13 @@ export class Client {
|
|
|
2719
2794
|
});
|
|
2720
2795
|
}
|
|
2721
2796
|
}
|
|
2797
|
+
if (failureCount === 1) {
|
|
2798
|
+
this.emitter.emit("retryRequest", {
|
|
2799
|
+
mailID: mail.mailID,
|
|
2800
|
+
source: "decrypt_failure",
|
|
2801
|
+
});
|
|
2802
|
+
}
|
|
2803
|
+
this.acknowledgeRepeatedDecryptFailure(mail, failureCount, timestamp);
|
|
2722
2804
|
return;
|
|
2723
2805
|
}
|
|
2724
2806
|
// their public keys
|
|
@@ -2733,9 +2815,11 @@ export class Client {
|
|
|
2733
2815
|
return c;
|
|
2734
2816
|
})();
|
|
2735
2817
|
if (!IK_A) {
|
|
2818
|
+
const failureCount = this.registerDecryptFailure(mail);
|
|
2736
2819
|
if (libvexDebugDmEnabled()) {
|
|
2737
2820
|
try {
|
|
2738
2821
|
debugLibvexDm("readMail initial: abort (IK_A null, Ed→X25519?)", {
|
|
2822
|
+
attempts: failureCount,
|
|
2739
2823
|
fips: String(fipsRead),
|
|
2740
2824
|
mailID: mail.mailID,
|
|
2741
2825
|
thisDevice: this.getDevice().deviceID,
|
|
@@ -2747,6 +2831,13 @@ export class Client {
|
|
|
2747
2831
|
});
|
|
2748
2832
|
}
|
|
2749
2833
|
}
|
|
2834
|
+
if (failureCount === 1) {
|
|
2835
|
+
this.emitter.emit("retryRequest", {
|
|
2836
|
+
mailID: mail.mailID,
|
|
2837
|
+
source: "decrypt_failure",
|
|
2838
|
+
});
|
|
2839
|
+
}
|
|
2840
|
+
this.acknowledgeRepeatedDecryptFailure(mail, failureCount, timestamp);
|
|
2750
2841
|
return;
|
|
2751
2842
|
}
|
|
2752
2843
|
const EK_A = ephKey;
|
|
@@ -2782,9 +2873,11 @@ export class Client {
|
|
|
2782
2873
|
? fipsP256AdFromIdentityPubs(IK_A, IK_BP)
|
|
2783
2874
|
: xConcat(xEncode(xConstants.CURVE, IK_A), xEncode(xConstants.CURVE, IK_BP));
|
|
2784
2875
|
if (!XUtils.bytesEqual(hmac, header)) {
|
|
2876
|
+
const failureCount = this.registerDecryptFailure(mail);
|
|
2785
2877
|
if (libvexDebugDmEnabled()) {
|
|
2786
2878
|
try {
|
|
2787
2879
|
debugLibvexDm("readMail initial: abort (HMAC mismatch)", {
|
|
2880
|
+
attempts: failureCount,
|
|
2788
2881
|
mailID: mail.mailID,
|
|
2789
2882
|
preKeyIndex: String(preKeyIndex),
|
|
2790
2883
|
thisDevice: this.getDevice().deviceID,
|
|
@@ -2796,6 +2889,13 @@ export class Client {
|
|
|
2796
2889
|
});
|
|
2797
2890
|
}
|
|
2798
2891
|
}
|
|
2892
|
+
if (failureCount === 1) {
|
|
2893
|
+
this.emitter.emit("retryRequest", {
|
|
2894
|
+
mailID: mail.mailID,
|
|
2895
|
+
source: "decrypt_failure",
|
|
2896
|
+
});
|
|
2897
|
+
}
|
|
2898
|
+
this.acknowledgeRepeatedDecryptFailure(mail, failureCount, timestamp);
|
|
2799
2899
|
return;
|
|
2800
2900
|
}
|
|
2801
2901
|
const unsealed = await xSecretboxOpenAsync(new Uint8Array(mail.cipher), new Uint8Array(mail.nonce), SK);
|
|
@@ -2893,12 +2993,21 @@ export class Client {
|
|
|
2893
2993
|
this.acknowledgeInboundMail(mail);
|
|
2894
2994
|
}
|
|
2895
2995
|
else {
|
|
2996
|
+
const failureCount = this.registerDecryptFailure(mail);
|
|
2896
2997
|
if (libvexDebugDmEnabled()) {
|
|
2897
2998
|
debugLibvexDm("readMail initial: abort (xSecretboxOpen null)", {
|
|
2999
|
+
attempts: failureCount,
|
|
2898
3000
|
mailID: mail.mailID,
|
|
2899
3001
|
preKeyIndex: String(preKeyIndex),
|
|
2900
3002
|
});
|
|
2901
3003
|
}
|
|
3004
|
+
if (failureCount === 1) {
|
|
3005
|
+
this.emitter.emit("retryRequest", {
|
|
3006
|
+
mailID: mail.mailID,
|
|
3007
|
+
source: "decrypt_failure",
|
|
3008
|
+
});
|
|
3009
|
+
}
|
|
3010
|
+
this.acknowledgeRepeatedDecryptFailure(mail, failureCount, timestamp);
|
|
2902
3011
|
}
|
|
2903
3012
|
break;
|
|
2904
3013
|
case MailType.subsequent: {
|
|
@@ -2914,7 +3023,15 @@ export class Client {
|
|
|
2914
3023
|
session = await this.database.getSessionByDeviceID(mail.sender);
|
|
2915
3024
|
}
|
|
2916
3025
|
if (!session) {
|
|
3026
|
+
const failureCount = this.registerDecryptFailure(mail);
|
|
2917
3027
|
healSession();
|
|
3028
|
+
if (failureCount === 1) {
|
|
3029
|
+
this.emitter.emit("retryRequest", {
|
|
3030
|
+
mailID: mail.mailID,
|
|
3031
|
+
source: "decrypt_failure",
|
|
3032
|
+
});
|
|
3033
|
+
}
|
|
3034
|
+
this.acknowledgeRepeatedDecryptFailure(mail, failureCount, timestamp);
|
|
2918
3035
|
return;
|
|
2919
3036
|
}
|
|
2920
3037
|
const originalSession = cloneSessionCrypto(session);
|
|
@@ -2975,7 +3092,7 @@ export class Client {
|
|
|
2975
3092
|
source: "decrypt_failure",
|
|
2976
3093
|
});
|
|
2977
3094
|
}
|
|
2978
|
-
this.acknowledgeRepeatedDecryptFailure(mail, failureCount);
|
|
3095
|
+
this.acknowledgeRepeatedDecryptFailure(mail, failureCount, timestamp);
|
|
2979
3096
|
return;
|
|
2980
3097
|
}
|
|
2981
3098
|
session = candidateSession;
|
|
@@ -3047,7 +3164,7 @@ export class Client {
|
|
|
3047
3164
|
source: "decrypt_failure",
|
|
3048
3165
|
});
|
|
3049
3166
|
}
|
|
3050
|
-
this.acknowledgeRepeatedDecryptFailure(mail, failureCount);
|
|
3167
|
+
this.acknowledgeRepeatedDecryptFailure(mail, failureCount, timestamp);
|
|
3051
3168
|
}
|
|
3052
3169
|
break;
|
|
3053
3170
|
}
|
|
@@ -3349,6 +3466,69 @@ export class Client {
|
|
|
3349
3466
|
throw err;
|
|
3350
3467
|
}
|
|
3351
3468
|
}
|
|
3469
|
+
async sendCallResource(action, data) {
|
|
3470
|
+
const msg = {
|
|
3471
|
+
action,
|
|
3472
|
+
data,
|
|
3473
|
+
resourceType: "call",
|
|
3474
|
+
transmissionID: uuid.v4(),
|
|
3475
|
+
type: "resource",
|
|
3476
|
+
};
|
|
3477
|
+
return await new Promise((resolve, reject) => {
|
|
3478
|
+
const settle = (err, event) => {
|
|
3479
|
+
this.socket.off("message", callback);
|
|
3480
|
+
if (err !== null) {
|
|
3481
|
+
reject(errorFromUnknown(err));
|
|
3482
|
+
return;
|
|
3483
|
+
}
|
|
3484
|
+
if (!event) {
|
|
3485
|
+
reject(new Error("Call signaling response was empty."));
|
|
3486
|
+
return;
|
|
3487
|
+
}
|
|
3488
|
+
resolve(event);
|
|
3489
|
+
};
|
|
3490
|
+
const callback = (packedMsg) => {
|
|
3491
|
+
const [_header, receivedMsg] = XUtils.unpackMessage(packedMsg);
|
|
3492
|
+
if (receivedMsg.transmissionID !== msg.transmissionID) {
|
|
3493
|
+
return;
|
|
3494
|
+
}
|
|
3495
|
+
const parsed = WSMessageSchema.safeParse(receivedMsg);
|
|
3496
|
+
if (!parsed.success) {
|
|
3497
|
+
settle("Call signaling failed: " + JSON.stringify(receivedMsg));
|
|
3498
|
+
return;
|
|
3499
|
+
}
|
|
3500
|
+
if (parsed.data.type === "success") {
|
|
3501
|
+
const event = CallEventSchema.safeParse(parsed.data.data);
|
|
3502
|
+
if (!event.success) {
|
|
3503
|
+
settle("Invalid call signaling response: " +
|
|
3504
|
+
JSON.stringify(event.error.issues));
|
|
3505
|
+
return;
|
|
3506
|
+
}
|
|
3507
|
+
settle(null, event.data);
|
|
3508
|
+
return;
|
|
3509
|
+
}
|
|
3510
|
+
if (parsed.data.type === "error") {
|
|
3511
|
+
settle(new Error(parsed.data.error));
|
|
3512
|
+
return;
|
|
3513
|
+
}
|
|
3514
|
+
if (parsed.data.type === "notify" &&
|
|
3515
|
+
(parsed.data.event === "call" ||
|
|
3516
|
+
parsed.data.event === "callInvite")) {
|
|
3517
|
+
const event = CallEventSchema.safeParse(parsed.data.data);
|
|
3518
|
+
if (event.success) {
|
|
3519
|
+
settle(null, event.data);
|
|
3520
|
+
}
|
|
3521
|
+
return;
|
|
3522
|
+
}
|
|
3523
|
+
settle("Unexpected call signaling response: " +
|
|
3524
|
+
JSON.stringify(parsed.data));
|
|
3525
|
+
};
|
|
3526
|
+
this.socket.on("message", callback);
|
|
3527
|
+
this.send(msg).catch((err) => {
|
|
3528
|
+
settle(err);
|
|
3529
|
+
});
|
|
3530
|
+
});
|
|
3531
|
+
}
|
|
3352
3532
|
async sendGroupMessage(channelID, message, opts) {
|
|
3353
3533
|
const userList = await this.getUserList(channelID);
|
|
3354
3534
|
for (const user of userList) {
|