sip-connector 19.0.1 → 19.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/@SipConnector-4vrb2RbW.cjs +1 -0
- package/dist/{@SipConnector-DC8z6npa.js → @SipConnector-BRWV-qDT.js} +228 -229
- package/dist/AutoConnectorManager/@AutoConnectorManager.d.ts +2 -1
- package/dist/AutoConnectorManager/index.d.ts +0 -1
- package/dist/AutoConnectorManager/types.d.ts +1 -0
- package/dist/ConnectionManager/@ConnectionManager.d.ts +7 -8
- package/dist/ConnectionManager/ConnectionFlow.d.ts +2 -3
- package/dist/ConnectionManager/ConnectionStateMachine.d.ts +2 -3
- package/dist/ConnectionManager/RegistrationManager.d.ts +4 -5
- package/dist/ConnectionManager/UAFactory.d.ts +1 -1
- package/dist/ConnectionManager/eventNames.d.ts +27 -4
- package/dist/ConnectionManager/utils/errors.d.ts +4 -2
- package/dist/SipConnector/eventNames.d.ts +1 -1
- package/dist/__fixtures__/RTCSessionMock.d.ts +4 -1
- package/dist/doMock.cjs +1 -1
- package/dist/doMock.js +102 -99
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +53 -55
- package/package.json +14 -14
- package/dist/@SipConnector-eNxG0NqG.cjs +0 -1
- package/dist/AutoConnectorManager/utils/errors.d.ts +0 -2
- package/dist/AutoConnectorManager/utils/index.d.ts +0 -1
package/dist/doMock.js
CHANGED
|
@@ -2,10 +2,10 @@ import { EventEmitter as L } from "node:events";
|
|
|
2
2
|
import F from "@krivega/jssip/lib/NameAddrHeader";
|
|
3
3
|
import b from "@krivega/jssip/lib/URI";
|
|
4
4
|
import { IncomingRequest as k } from "@krivega/jssip/lib/SIPMessage";
|
|
5
|
-
import { NameAddrHeader as V, URI as E, C as N } from "@krivega/jssip";
|
|
6
|
-
import { createAudioMediaStreamTrackMock as
|
|
5
|
+
import { NameAddrHeader as V, URI as E, SessionStatus as W, C as N } from "@krivega/jssip";
|
|
6
|
+
import { createAudioMediaStreamTrackMock as U, createVideoMediaStreamTrackMock as G } from "webrtc-mock";
|
|
7
7
|
import { Events as T } from "events-constructor";
|
|
8
|
-
import { O as
|
|
8
|
+
import { O as H, S as x } from "./@SipConnector-BRWV-qDT.js";
|
|
9
9
|
class _ extends k {
|
|
10
10
|
headers;
|
|
11
11
|
constructor(e) {
|
|
@@ -15,34 +15,33 @@ class _ extends k {
|
|
|
15
15
|
return this.headers.get(e) ?? "";
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
|
-
const
|
|
19
|
-
x,
|
|
20
|
-
q,
|
|
18
|
+
const j = "incomingCall", q = "declinedIncomingCall", Y = "failedIncomingCall", z = "terminatedIncomingCall", v = "connecting", B = "connected", K = "disconnected", $ = "newRTCSession", J = "registered", Q = "unregistered", X = "registrationFailed", Z = "newMessage", ee = "sipEvent", te = "availableSecondRemoteStream", re = "notAvailableSecondRemoteStream", ne = "mustStopPresentation", oe = "shareState", se = "enterRoom", ie = "useLicense", ae = "peerconnection:confirmed", ce = "peerconnection:ontrack", de = "channels", Ee = "channels:notify", he = "ended:fromserver", me = "main-cam-control", ue = "admin-stop-main-cam", le = "admin-start-main-cam", pe = "admin-stop-mic", ge = "admin-start-mic", Te = "admin-force-sync-media-state", _e = "participant:added-to-list-moderators", Ie = "participant:removed-from-list-moderators", Se = "participant:move-request-to-stream", we = "participant:move-request-to-spectators", Ne = "participant:move-request-to-participants", fe = "participation:accepting-word-request", Ce = "participation:cancelling-word-request", Re = "webcast:started", Me = "webcast:stopped", Ae = "account:changed", Oe = "account:deleted", ve = "conference:participant-token-issued", Pe = "ended", De = "sending", ye = "reinvite", Le = "replaces", Fe = "refer", be = "progress", ke = "accepted", Ve = "confirmed", We = "peerconnection", Ue = "failed", Ge = "muted", He = "unmuted", xe = "newDTMF", je = "newInfo", qe = "hold", Ye = "unhold", ze = "update", Be = "sdp", Ke = "icecandidate", $e = "getusermediafailed", Je = "peerconnection:createofferfailed", Qe = "peerconnection:createanswerfailed", Xe = "peerconnection:setlocaldescriptionfailed", Ze = "peerconnection:setremotedescriptionfailed", et = "presentation:start", tt = "presentation:started", rt = "presentation:end", nt = "presentation:ended", ot = "presentation:failed", st = [
|
|
21
19
|
j,
|
|
20
|
+
q,
|
|
21
|
+
z,
|
|
22
22
|
Y,
|
|
23
|
-
Ne,
|
|
24
23
|
fe,
|
|
25
|
-
Ie,
|
|
26
|
-
de,
|
|
27
|
-
Oe,
|
|
28
|
-
Me,
|
|
29
|
-
Ae,
|
|
30
24
|
Ce,
|
|
25
|
+
Se,
|
|
26
|
+
Ee,
|
|
27
|
+
ve,
|
|
28
|
+
Ae,
|
|
29
|
+
Oe,
|
|
31
30
|
Re,
|
|
32
|
-
|
|
33
|
-
_e
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
31
|
+
Me,
|
|
32
|
+
_e,
|
|
33
|
+
Ie
|
|
34
|
+
], P = [
|
|
35
|
+
v,
|
|
37
36
|
B,
|
|
37
|
+
K,
|
|
38
38
|
$,
|
|
39
39
|
J,
|
|
40
|
-
K,
|
|
41
40
|
Q,
|
|
42
41
|
X,
|
|
43
|
-
Z
|
|
44
|
-
|
|
45
|
-
|
|
42
|
+
Z,
|
|
43
|
+
ee
|
|
44
|
+
], it = [
|
|
46
45
|
te,
|
|
47
46
|
re,
|
|
48
47
|
ne,
|
|
@@ -51,19 +50,19 @@ const x = "incomingCall", q = "declinedIncomingCall", Y = "failedIncomingCall",
|
|
|
51
50
|
ie,
|
|
52
51
|
ae,
|
|
53
52
|
ce,
|
|
54
|
-
|
|
53
|
+
de,
|
|
55
54
|
he,
|
|
56
|
-
ue,
|
|
57
55
|
me,
|
|
58
56
|
le,
|
|
57
|
+
ue,
|
|
59
58
|
pe,
|
|
60
59
|
ge,
|
|
60
|
+
Te,
|
|
61
61
|
we,
|
|
62
|
-
|
|
62
|
+
Ne
|
|
63
63
|
], p = [
|
|
64
64
|
Pe,
|
|
65
|
-
|
|
66
|
-
ve,
|
|
65
|
+
v,
|
|
67
66
|
De,
|
|
68
67
|
ye,
|
|
69
68
|
Le,
|
|
@@ -76,28 +75,29 @@ const x = "incomingCall", q = "declinedIncomingCall", Y = "failedIncomingCall",
|
|
|
76
75
|
Ge,
|
|
77
76
|
He,
|
|
78
77
|
xe,
|
|
78
|
+
je,
|
|
79
79
|
qe,
|
|
80
80
|
Ye,
|
|
81
|
-
je,
|
|
82
81
|
ze,
|
|
83
82
|
Be,
|
|
83
|
+
Ke,
|
|
84
84
|
$e,
|
|
85
85
|
Je,
|
|
86
|
-
Ke,
|
|
87
86
|
Qe,
|
|
88
87
|
Xe,
|
|
89
88
|
Ze,
|
|
90
89
|
et,
|
|
91
90
|
tt,
|
|
92
91
|
rt,
|
|
93
|
-
nt
|
|
92
|
+
nt,
|
|
93
|
+
ot
|
|
94
94
|
];
|
|
95
|
-
[...
|
|
95
|
+
[...P, ...st];
|
|
96
96
|
[
|
|
97
97
|
...p,
|
|
98
|
-
...
|
|
98
|
+
...it
|
|
99
99
|
];
|
|
100
|
-
class
|
|
100
|
+
class at {
|
|
101
101
|
originator;
|
|
102
102
|
connection;
|
|
103
103
|
events;
|
|
@@ -329,8 +329,8 @@ class C {
|
|
|
329
329
|
stop() {
|
|
330
330
|
}
|
|
331
331
|
}
|
|
332
|
-
const
|
|
333
|
-
class
|
|
332
|
+
const ct = ["track"];
|
|
333
|
+
class dt {
|
|
334
334
|
senders = [];
|
|
335
335
|
receivers = [];
|
|
336
336
|
canTrickleIceCandidates;
|
|
@@ -361,7 +361,7 @@ class ct {
|
|
|
361
361
|
signalingState;
|
|
362
362
|
events;
|
|
363
363
|
constructor(e, t) {
|
|
364
|
-
this.events = new T(
|
|
364
|
+
this.events = new T(ct), this.receivers = t.map((r) => ({ track: r }));
|
|
365
365
|
}
|
|
366
366
|
getRemoteStreams() {
|
|
367
367
|
throw new Error("Method not implemented.");
|
|
@@ -432,14 +432,14 @@ class ct {
|
|
|
432
432
|
return t === void 0 ? n.mid = e.kind === "audio" ? "0" : "1" : n.mid = t, this.senders.push(r), this.events.trigger("track", { track: e, transceiver: n }), r;
|
|
433
433
|
};
|
|
434
434
|
}
|
|
435
|
-
function
|
|
435
|
+
function Et(o) {
|
|
436
436
|
const e = o.match(/(purgatory)|[\d.]+/g);
|
|
437
437
|
if (!e)
|
|
438
438
|
throw new Error("wrong sip url");
|
|
439
439
|
return e[0];
|
|
440
440
|
}
|
|
441
|
-
const R = 400,
|
|
442
|
-
class i extends
|
|
441
|
+
const R = 400, ht = "777", mt = (o) => o.getVideoTracks().length > 0;
|
|
442
|
+
class i extends at {
|
|
443
443
|
static presentationError;
|
|
444
444
|
static startPresentationError;
|
|
445
445
|
static countStartPresentationError = Number.POSITIVE_INFINITY;
|
|
@@ -468,6 +468,10 @@ class i extends it {
|
|
|
468
468
|
});
|
|
469
469
|
replaceMediaStream = jest.fn(async (e) => {
|
|
470
470
|
});
|
|
471
|
+
_isReadyToReOffer = jest.fn(() => !0);
|
|
472
|
+
addTransceiver = jest.fn(
|
|
473
|
+
(e, t) => ({})
|
|
474
|
+
);
|
|
471
475
|
restartIce = jest.fn(
|
|
472
476
|
async (e) => !0
|
|
473
477
|
);
|
|
@@ -489,6 +493,9 @@ class i extends it {
|
|
|
489
493
|
}) {
|
|
490
494
|
super({ originator: t, eventHandlers: e, remoteIdentity: r }), this.delayStartPresentation = n;
|
|
491
495
|
}
|
|
496
|
+
static get C() {
|
|
497
|
+
return W;
|
|
498
|
+
}
|
|
492
499
|
static setPresentationError(e) {
|
|
493
500
|
this.presentationError = e;
|
|
494
501
|
}
|
|
@@ -523,25 +530,25 @@ class i extends it {
|
|
|
523
530
|
return e ? (this.createPeerconnection(e), !0) : !1;
|
|
524
531
|
}
|
|
525
532
|
createPeerconnection(e) {
|
|
526
|
-
const t =
|
|
533
|
+
const t = U();
|
|
527
534
|
t.id = "mainaudio1";
|
|
528
535
|
const r = [t];
|
|
529
|
-
if (
|
|
530
|
-
const a =
|
|
536
|
+
if (mt(e)) {
|
|
537
|
+
const a = G();
|
|
531
538
|
a.id = "mainvideo1", r.push(a);
|
|
532
539
|
}
|
|
533
|
-
this.connection = new
|
|
540
|
+
this.connection = new dt(void 0, r), this.addStream(e), this.trigger("peerconnection", { peerconnection: this.connection });
|
|
534
541
|
}
|
|
535
542
|
connect(e, { mediaStream: t } = {}) {
|
|
536
|
-
const r =
|
|
543
|
+
const r = Et(e);
|
|
537
544
|
return this.initPeerconnection(t), this.timeoutConnect = setTimeout(() => {
|
|
538
|
-
e.includes(
|
|
545
|
+
e.includes(ht) ? this.trigger("failed", {
|
|
539
546
|
originator: "remote",
|
|
540
547
|
message: "IncomingResponse",
|
|
541
548
|
cause: "Rejected"
|
|
542
549
|
}) : (this.trigger("connecting"), this.timeoutNewInfo = setTimeout(() => {
|
|
543
550
|
this.newInfo({
|
|
544
|
-
originator:
|
|
551
|
+
originator: H.REMOTE,
|
|
545
552
|
// @ts-expect-error
|
|
546
553
|
request: {
|
|
547
554
|
getHeader: (n) => n === "content-type" ? "application/vinteo.webrtc.roomname" : n === "x-webrtc-enter-room" ? r : n === "x-webrtc-participant-name" ? "Test Caller 1" : ""
|
|
@@ -575,17 +582,14 @@ class i extends it {
|
|
|
575
582
|
e(r);
|
|
576
583
|
return t;
|
|
577
584
|
}
|
|
578
|
-
/* eslint-disable no-param-reassign */
|
|
579
585
|
toggleMuteAudio(e) {
|
|
580
586
|
this.forEachSenders(({ track: t }) => {
|
|
581
|
-
t
|
|
587
|
+
t?.kind === "audio" && (t.enabled = !e);
|
|
582
588
|
});
|
|
583
589
|
}
|
|
584
|
-
/* eslint-enable no-param-reassign */
|
|
585
|
-
/* eslint-disable no-param-reassign */
|
|
586
590
|
toggleMuteVideo(e) {
|
|
587
591
|
this.forEachSenders(({ track: t }) => {
|
|
588
|
-
t
|
|
592
|
+
t?.kind === "video" && (t.enabled = !e);
|
|
589
593
|
});
|
|
590
594
|
}
|
|
591
595
|
mute(e) {
|
|
@@ -615,9 +619,8 @@ class i extends it {
|
|
|
615
619
|
clear() {
|
|
616
620
|
clearTimeout(this.timeoutStartPresentation), clearTimeout(this.timeoutConnect), clearTimeout(this.timeoutNewInfo), clearTimeout(this.timeoutAccepted), clearTimeout(this.timeoutConfirmed);
|
|
617
621
|
}
|
|
618
|
-
/* eslint-enable no-param-reassign */
|
|
619
622
|
}
|
|
620
|
-
class
|
|
623
|
+
class ut {
|
|
621
624
|
extraHeaders = [];
|
|
622
625
|
setExtraHeaders(e) {
|
|
623
626
|
this.extraHeaders = e;
|
|
@@ -626,7 +629,7 @@ class mt {
|
|
|
626
629
|
setExtraContactParams() {
|
|
627
630
|
}
|
|
628
631
|
}
|
|
629
|
-
const c = "PASSWORD_CORRECT", M = "PASSWORD_CORRECT_2",
|
|
632
|
+
const c = "PASSWORD_CORRECT", M = "PASSWORD_CORRECT_2", lt = "NAME_INCORRECT", d = 400, l = {
|
|
630
633
|
url: "wss://sipServerUrl/webrtc/wss/",
|
|
631
634
|
sip_uri: "sip:sipServerUrl;transport=ws",
|
|
632
635
|
via_transport: "WSS"
|
|
@@ -683,12 +686,12 @@ class s {
|
|
|
683
686
|
isConnectedInner;
|
|
684
687
|
configuration;
|
|
685
688
|
constructor(e) {
|
|
686
|
-
this.events = new T(
|
|
689
|
+
this.events = new T(P);
|
|
687
690
|
const [t, r] = e.uri.split(":"), [n, a] = r.split("@"), u = {
|
|
688
691
|
...e,
|
|
689
692
|
uri: new E(t, n, a)
|
|
690
693
|
};
|
|
691
|
-
this.configuration = u, this.registratorInner = new
|
|
694
|
+
this.configuration = u, this.registratorInner = new ut();
|
|
692
695
|
}
|
|
693
696
|
static setStartError(e, { count: t = Number.POSITIVE_INFINITY } = {}) {
|
|
694
697
|
s.startError = e, s.countStartError = t;
|
|
@@ -733,7 +736,7 @@ class s {
|
|
|
733
736
|
register() {
|
|
734
737
|
this.startedTimeout && clearTimeout(this.startedTimeout);
|
|
735
738
|
const { password: e, register: t, uri: r } = this.configuration;
|
|
736
|
-
t === !0 && r.user.includes(
|
|
739
|
+
t === !0 && r.user.includes(lt) ? (this.isRegisteredInner = !1, this.isConnectedInner = !1, this.startedTimeout = setTimeout(() => {
|
|
737
740
|
this.trigger("registrationFailed", { response: O, cause: N.causes.REJECTED });
|
|
738
741
|
}, d)) : !this.isRegistered() && t === !0 && (e === c || e === M) ? (this.isRegisteredInner = !0, this.startedTimeout = setTimeout(() => {
|
|
739
742
|
this.trigger("registered", { response: A });
|
|
@@ -770,30 +773,30 @@ class s {
|
|
|
770
773
|
return this.registratorInner;
|
|
771
774
|
}
|
|
772
775
|
}
|
|
773
|
-
class
|
|
776
|
+
class pt {
|
|
774
777
|
url;
|
|
775
778
|
constructor(e) {
|
|
776
779
|
this.url = e;
|
|
777
780
|
}
|
|
778
781
|
}
|
|
779
|
-
class
|
|
782
|
+
class gt extends L {
|
|
780
783
|
contentType;
|
|
781
784
|
body;
|
|
782
785
|
constructor(e, t) {
|
|
783
786
|
super(), this.contentType = e, this.body = t;
|
|
784
787
|
}
|
|
785
788
|
}
|
|
786
|
-
const g = "remote",
|
|
789
|
+
const g = "remote", Tt = (o, e) => {
|
|
787
790
|
const t = new _(e), r = {
|
|
788
791
|
originator: g,
|
|
789
792
|
request: t,
|
|
790
|
-
info: new
|
|
793
|
+
info: new gt("", "")
|
|
791
794
|
};
|
|
792
795
|
o.newInfo(r);
|
|
793
|
-
},
|
|
796
|
+
}, _t = (o, e) => {
|
|
794
797
|
const r = { event: "sipEvent", request: new _(e) };
|
|
795
798
|
o.newSipEvent(r);
|
|
796
|
-
},
|
|
799
|
+
}, It = (o, {
|
|
797
800
|
incomingNumber: e = "1234",
|
|
798
801
|
displayName: t,
|
|
799
802
|
host: r
|
|
@@ -806,34 +809,34 @@ const g = "remote", gt = (o, e) => {
|
|
|
806
809
|
session: n,
|
|
807
810
|
request: u
|
|
808
811
|
});
|
|
809
|
-
},
|
|
812
|
+
}, St = (o, e) => {
|
|
810
813
|
e ? o.trigger("failed", e) : o.trigger("failed", o);
|
|
811
814
|
}, D = {
|
|
812
|
-
triggerNewInfo:
|
|
813
|
-
triggerNewSipEvent:
|
|
814
|
-
triggerIncomingSession:
|
|
815
|
-
triggerFailIncomingSession:
|
|
816
|
-
WebSocketInterface:
|
|
815
|
+
triggerNewInfo: Tt,
|
|
816
|
+
triggerNewSipEvent: _t,
|
|
817
|
+
triggerIncomingSession: It,
|
|
818
|
+
triggerFailIncomingSession: St,
|
|
819
|
+
WebSocketInterface: pt,
|
|
817
820
|
UA: s,
|
|
818
821
|
C: {
|
|
819
822
|
INVITE: "INVITE"
|
|
820
823
|
}
|
|
821
|
-
}, I = "user", h = "displayName",
|
|
824
|
+
}, I = "user", h = "displayName", S = "SIP_SERVER_URL", y = "SIP_WEB_SOCKET_SERVER_URL", wt = new D.WebSocketInterface(y), w = {
|
|
822
825
|
userAgent: "Chrome",
|
|
823
|
-
sipServerUrl:
|
|
826
|
+
sipServerUrl: S,
|
|
824
827
|
sipWebSocketServerURL: y
|
|
825
|
-
},
|
|
826
|
-
...
|
|
827
|
-
},
|
|
828
|
-
...
|
|
828
|
+
}, yt = {
|
|
829
|
+
...w
|
|
830
|
+
}, Nt = {
|
|
831
|
+
...w,
|
|
829
832
|
user: I,
|
|
830
833
|
password: c,
|
|
831
834
|
register: !0
|
|
832
|
-
}, yt = {
|
|
833
|
-
...St,
|
|
834
|
-
displayName: h
|
|
835
835
|
}, Lt = {
|
|
836
|
-
...
|
|
836
|
+
...Nt,
|
|
837
|
+
displayName: h
|
|
838
|
+
}, Ft = {
|
|
839
|
+
...w,
|
|
837
840
|
displayName: h,
|
|
838
841
|
register: !1
|
|
839
842
|
}, m = {
|
|
@@ -844,48 +847,48 @@ const g = "remote", gt = (o, e) => {
|
|
|
844
847
|
register_expires: 300,
|
|
845
848
|
connection_recovery_max_interval: 6,
|
|
846
849
|
connection_recovery_min_interval: 2
|
|
847
|
-
},
|
|
850
|
+
}, bt = {
|
|
848
851
|
...m,
|
|
849
852
|
password: c,
|
|
850
|
-
uri: new E("sip", I,
|
|
853
|
+
uri: new E("sip", I, S),
|
|
851
854
|
display_name: "",
|
|
852
855
|
register: !0
|
|
853
|
-
},
|
|
856
|
+
}, kt = {
|
|
854
857
|
...m,
|
|
855
858
|
password: c,
|
|
856
|
-
uri: new E("sip", I,
|
|
859
|
+
uri: new E("sip", I, S),
|
|
857
860
|
display_name: h,
|
|
858
861
|
register: !0
|
|
859
|
-
},
|
|
862
|
+
}, Vt = {
|
|
860
863
|
...m,
|
|
861
864
|
display_name: h,
|
|
862
865
|
register: !1
|
|
863
|
-
},
|
|
866
|
+
}, Wt = {
|
|
864
867
|
...m,
|
|
865
868
|
display_name: "",
|
|
866
869
|
register: !1
|
|
867
|
-
},
|
|
870
|
+
}, ft = "10.10.10.10", Ut = [`X-Vinteo-Remote: ${ft}`], Gt = () => new x({
|
|
868
871
|
JsSIP: D
|
|
869
872
|
});
|
|
870
873
|
export {
|
|
871
|
-
|
|
874
|
+
ht as FAILED_CONFERENCE_NUMBER,
|
|
872
875
|
D as JsSIP,
|
|
873
|
-
|
|
876
|
+
lt as NAME_INCORRECT,
|
|
874
877
|
c as PASSWORD_CORRECT,
|
|
875
878
|
M as PASSWORD_CORRECT_2,
|
|
876
|
-
|
|
879
|
+
S as SIP_SERVER_URL,
|
|
877
880
|
y as SIP_WEB_SOCKET_SERVER_URL,
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
881
|
+
Nt as dataForConnectionWithAuthorization,
|
|
882
|
+
Lt as dataForConnectionWithAuthorizationWithDisplayName,
|
|
883
|
+
Ft as dataForConnectionWithoutAuthorization,
|
|
884
|
+
yt as dataForConnectionWithoutAuthorizationWithoutDisplayName,
|
|
882
885
|
h as displayName,
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
886
|
+
Gt as doMockSipConnector,
|
|
887
|
+
Ut as extraHeadersRemoteAddress,
|
|
888
|
+
ft as remoteAddress,
|
|
889
|
+
bt as uaConfigurationWithAuthorization,
|
|
890
|
+
kt as uaConfigurationWithAuthorizationWithDisplayName,
|
|
891
|
+
Vt as uaConfigurationWithoutAuthorization,
|
|
892
|
+
Wt as uaConfigurationWithoutAuthorizationWithoutDisplayName,
|
|
890
893
|
I as user
|
|
891
894
|
};
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("events-constructor");const t=require("./@SipConnector-eNxG0NqG.cjs"),x=require("@krivega/cancelable-promise"),W=require("repeated-calls"),j=require("ts-debounce"),K=require("ua-parser-js"),X=require("sequent-promises"),Y=require("stack-promises");require("@krivega/timeout-requester");const G=n=>n instanceof Object&&("originator"in n||"cause"in n),J=n=>{if(x.isCanceledError(n))return!0;if(!G(n))return!1;const{originator:e,cause:r}=n;return typeof r=="string"?r===t.ECallCause.REQUEST_TIMEOUT||r===t.ECallCause.REJECTED||e==="local"&&(r===t.ECallCause.CANCELED||r===t.ECallCause.BYE):!1},z=()=>globalThis.process?.versions?.electron!==void 0,V=()=>{const n=new K.UAParser,{name:e}=n.getBrowser(),r=z();return{isChrome:e==="Chrome"||r}},A=n=>{const{url:e,cause:r}=n;let o=e;return(r===t.ECallCause.BAD_MEDIA_DESCRIPTION||r===t.ECallCause.NOT_FOUND)&&(o=`${n.message.to.uri.user}@${n.message.to.uri.host}`),o};var B=(n=>(n.CONNECT_SERVER_FAILED="CONNECT_SERVER_FAILED",n.WRONG_USER_OR_PASSWORD="WRONG_USER_OR_PASSWORD",n.BAD_MEDIA_ERROR="BAD_MEDIA_ERROR",n.NOT_FOUND_ERROR="NOT_FOUND_ERROR",n.WS_CONNECTION_FAILED="WS_CONNECTION_FAILED",n.CONNECT_SERVER_FAILED_BY_LINK="CONNECT_SERVER_FAILED_BY_LINK",n))(B||{});const Q=new Error("Unknown error"),Z=(n=Q)=>{const{cause:e,socket:r}=n;let o="CONNECT_SERVER_FAILED";switch(e){case"Forbidden":{o="WRONG_USER_OR_PASSWORD";break}case t.ECallCause.BAD_MEDIA_DESCRIPTION:{o="BAD_MEDIA_ERROR";break}case t.ECallCause.NOT_FOUND:{o="NOT_FOUND_ERROR";break}default:r!==void 0&&r._ws?.readyState===3?o="WS_CONNECTION_FAILED":A(n)!==void 0&&A(n)!==""&&(o="CONNECT_SERVER_FAILED_BY_LINK")}return o},ee=n=>{let e="";try{e=JSON.stringify(n)}catch(r){t.logger("failed to stringify message",r)}return e},ne=new Error("Unknown error"),te=(n=ne)=>{const{code:e,cause:r,message:o}=n,s=A(n),a={code:"",cause:"",message:""};return typeof o=="object"&&o!==null?a.message=ee(o):o&&(a.message=String(o)),s!==void 0&&s!==""&&(a.link=s),e!==void 0&&e!==""&&(a.code=e),r!==void 0&&r!==""&&(a.cause=r),a},re=Object.freeze(Object.defineProperty({__proto__:null,EErrorTypes:B,getLinkError:A,getTypeFromError:Z,getValuesFromError:te},Symbol.toStringTag,{value:"Module"})),oe=({sessionId:n,remoteAddress:e,isMutedAudio:r,isMutedVideo:o,isRegistered:s,isPresentationCall:a})=>{const c=[],l=r?"0":"1",u=o?"0":"1";return c.push(`X-Vinteo-Mic-State: ${l}`,`X-Vinteo-MainCam-State: ${u}`),(s===!1||s===void 0)&&c.push("X-Vinteo-Purgatory-Call: yes"),n!==void 0&&n!==""&&c.push(`X-Vinteo-Session: ${n}`),a===!0&&c.push("X-Vinteo-Presentation-Call: yes"),e!==void 0&&e!==""&&c.push(`X-Vinteo-Remote: ${e}`),c},se="[@*!|]",ae="_",ce=n=>{let e=n;return e=e.replaceAll(new RegExp(se,"g"),ae),e},ie=({appName:n,appVersion:e,browserName:r,browserVersion:o})=>{const a=`${ce(n)} ${e}`;return`ChromeNew - ${r===void 0?a:`${r} ${o}, ${a}`}`},le=({isUnifiedSdpSemantic:n,appVersion:e,browserName:r,browserVersion:o,appName:s})=>n?ie({appVersion:e,browserName:r,browserVersion:o,appName:s}):"Chrome",$="purgatory",D=n=>n===$,ue=n=>e=>[...e].map(o=>async()=>n(o)),de=async({accumulatedKeys:n,sendKey:e,canRunTask:r})=>{const s=ue(e)(n);return X.sequentPromises(s,r)},ge=n=>r=>(t.logger("onStartMainCam"),n.on("api:admin-start-main-cam",r)),Ce=n=>r=>(t.logger("onStartMic"),n.on("api:admin-start-mic",r)),Se=n=>r=>(t.logger("onStopMainCam"),n.on("api:admin-stop-main-cam",r)),me=n=>r=>(t.logger("onStopMic"),n.on("api:admin-stop-mic",r)),fe=({sipConnector:n})=>{const e=(d,C)=>({isSyncForced:g})=>{if(g===!0){d();return}C()},r=ge(n),o=Se(n),s=Ce(n),a=me(n);let c,l,u,m;const f=({onStartMainCamForced:d,onStartMainCamNotForced:C,onStopMainCamForced:g,onStopMainCamNotForced:h,onStartMicForced:b,onStartMicNotForced:P,onStopMicForced:O,onStopMicNotForced:v})=>{const y=e(d,C);c=r(y);const _=e(g,h);l=o(_);const M=e(b,P);u=s(M);const S=e(O,v);m=a(S)},p=()=>{c?.(),l?.(),u?.(),m?.()};return{start:d=>{f(d)},stop:()=>{p()}}},pe=Object.freeze(Object.defineProperty({__proto__:null,PURGATORY_CONFERENCE_NUMBER:$,createSyncMediaState:fe,createUaParser:V,error:re,getExtraHeaders:oe,getUserAgent:le,hasPurgatory:D,prepareMediaStream:t.prepareMediaStream,sendDtmfAccumulated:de,setEncodingsToSender:t.setEncodingsToSender,setParametersToSender:t.setParametersToSender},Symbol.toStringTag,{value:"Module"})),he=()=>V().isChrome,Re=n=>{if(!x.isCanceledError(n)&&!W.hasCanceledError(n)&&!t.hasNotReadyForConnectionError(n))throw n;return{isSuccessful:!1}},Ee=({kind:n,readyState:e})=>n==="video"&&e==="live",U=(n,e,{onEnterPurgatory:r,onEnterConference:o})=>{D(n)?r&&r():o&&o({isSuccessProgressCall:e})},k=(n,e)=>{n(),e&&e()},L=(n,e,r)=>{throw n&&n(),e(),r},be=new Set(["on","once","onceRace","wait","off","sendDTMF","hangUp","declineToIncomingCall","sendChannels","checkTelephony","waitChannels","ping","startAutoConnect","stopAutoConnect","connection","isConfigured","isRegistered"]);class Pe{on;once;onceRace;wait;off;sendDTMF;hangUp;declineToIncomingCall;sendChannels;checkTelephony;waitChannels;ping;startAutoConnect;stopAutoConnect;connection;isConfigured;isRegistered;sipConnector;constructor(e){return this.sipConnector=e,new Proxy(this,{get:(r,o,s)=>{if(typeof o=="string"&&be.has(o)&&o in this.sipConnector){const c=Reflect.get(this.sipConnector,o,this.sipConnector);return typeof c=="function"?c.bind(this.sipConnector):c}const a=Reflect.get(r,o,s);return typeof a=="function"?a.bind(r):a}})}connectToServer=async(e,r)=>{const o=async()=>{const s=await t.resolveParameters(e);t.logger("connectToServer",s);const{userAgent:a,sipWebSocketServerURL:c,sipServerUrl:l,remoteAddress:u,displayName:m,name:f,password:p,isRegisteredUser:E}=s;return{userAgent:a,sipWebSocketServerURL:c,sipServerUrl:l,remoteAddress:u,displayName:m,password:p,user:f,register:E}};return this.sipConnector.connect(o,r).then(s=>(t.logger("connectToServer then"),{ua:s,isSuccessful:!0})).catch(async s=>(t.logger("connectToServer catch: error",s),Re(s)))};callToServer=async e=>{const{conference:r,mediaStream:o,extraHeaders:s,iceServers:a,contentHint:c,degradationPreference:l,sendEncodings:u,offerToReceiveAudio:m,offerToReceiveVideo:f,directionVideo:p,directionAudio:E,setRemoteStreams:T,onBeforeProgressCall:d,onSuccessProgressCall:C,onEnterPurgatory:g,onEnterConference:h,onFailProgressCall:b,onFinishProgressCall:P,onEndedCall:O,onAddedTransceiver:v}=e,y=this.resolveHandleReadyRemoteStreamsDebounced({onReadyRemoteStreams:T}),_=this.resolveHandleReadyRemoteStreams({onReadyRemoteStreams:()=>{y().catch(t.logger)}});t.logger("callToServer",e);const M=async()=>(t.logger("startCall"),this.sipConnector.call({mediaStream:o,extraHeaders:s,iceServers:a,contentHint:c,offerToReceiveAudio:m,offerToReceiveVideo:f,directionVideo:p,directionAudio:E,degradationPreference:l,onAddedTransceiver:v,sendEncodings:u,number:r,ontrack:_}));let S=!1,R;const N=(t.logger("subscribeEnterConference: onEnterConference",h),this.sipConnector.on("api:enterRoom",({room:i})=>{t.logger("enterRoom",{_room:i,isSuccessProgressCall:S}),R=i,(g??h)&&U(R,S,{onEnterPurgatory:g,onEnterConference:h})})),F=i=>(t.logger("onSuccess"),S=!0,y().catch(t.logger),C&&C({isPurgatory:D(R)}),this.sipConnector.onceRace(["call:ended","call:failed"],()=>{k(N,O)}),i),w=i=>(t.logger("onFail"),L(b,N,i)),I=()=>{t.logger("onFinish"),P&&P()};return t.logger("onBeforeProgressCall"),d&&d(r),M().then(F).catch(i=>w(i)).finally(I)};disconnectFromServer=async()=>this.sipConnector.disconnect().then(()=>(t.logger("disconnectFromServer: then"),{isSuccessful:!0})).catch(e=>(t.logger("disconnectFromServer: catch",e),{isSuccessful:!1}));answerToIncomingCall=async e=>{const{mediaStream:r,extraHeaders:o,iceServers:s,contentHint:a,degradationPreference:c,sendEncodings:l,offerToReceiveAudio:u,offerToReceiveVideo:m,directionVideo:f,directionAudio:p,setRemoteStreams:E,onBeforeProgressCall:T,onSuccessProgressCall:d,onEnterPurgatory:C,onEnterConference:g,onFailProgressCall:h,onFinishProgressCall:b,onEndedCall:P,onAddedTransceiver:O}=e,v=this.resolveHandleReadyRemoteStreamsDebounced({onReadyRemoteStreams:E}),y=this.resolveHandleReadyRemoteStreams({onReadyRemoteStreams:()=>{v().catch(t.logger)}});t.logger("answerToIncomingCall",e);const _=async()=>this.sipConnector.answerToIncomingCall({mediaStream:r,extraHeaders:o,iceServers:s,contentHint:a,offerToReceiveAudio:u,offerToReceiveVideo:m,directionVideo:f,directionAudio:p,degradationPreference:c,onAddedTransceiver:O,sendEncodings:l,ontrack:y}),M=()=>{const{remoteCallerData:i}=this.sipConnector;return i.incomingNumber};let S=!1,R;const N=(t.logger("subscribeEnterConference: onEnterConference",g),this.sipConnector.on("api:enterRoom",i=>{t.logger("enterRoom",{_room:i,isSuccessProgressCall:S}),R=i,(C??g)&&U(R,S,{onEnterPurgatory:C,onEnterConference:g})})),F=i=>(t.logger("onSuccess"),S=!0,v().catch(t.logger),d&&d({isPurgatory:D(R)}),this.sipConnector.onceRace(["call:ended","call:failed"],()=>{k(N,P)}),i),w=i=>(t.logger("onFail"),L(h,N,i)),I=()=>{t.logger("onFinish"),b&&b()};if(t.logger("onBeforeProgressCall"),T){const i=M();T(i)}return _().then(F).catch(i=>w(i)).finally(I)};updatePresentation=async({mediaStream:e,isP2P:r,contentHint:o,degradationPreference:s,sendEncodings:a,onAddedTransceiver:c})=>(t.logger("updatePresentation"),this.sipConnector.updatePresentation(e,{isP2P:r,contentHint:o,degradationPreference:s,onAddedTransceiver:c,sendEncodings:a}));startPresentation=async({mediaStream:e,isP2P:r,contentHint:o,degradationPreference:s,sendEncodings:a,callLimit:c,onAddedTransceiver:l})=>(t.logger("startPresentation"),this.sipConnector.startPresentation(e,{isP2P:r,contentHint:o,callLimit:c,degradationPreference:s,onAddedTransceiver:l,sendEncodings:a}));stopShareSipConnector=async({isP2P:e=!1}={})=>(t.logger("stopShareSipConnector"),this.sipConnector.stopPresentation({isP2P:e}).catch(r=>{t.logger(r)}));sendRefusalToTurnOnMic=async()=>{t.logger("sendRefusalToTurnOnMic"),await this.sipConnector.sendRefusalToTurnOnMic().catch(e=>{t.logger("sendRefusalToTurnOnMic: error",e)})};sendRefusalToTurnOnCam=async()=>{t.logger("sendRefusalToTurnOnCam"),await this.sipConnector.sendRefusalToTurnOnCam().catch(e=>{t.logger("sendRefusalToTurnOnCam: error",e)})};sendMediaState=async({isEnabledCam:e,isEnabledMic:r})=>{t.logger("sendMediaState"),await this.sipConnector.sendMediaState({cam:e,mic:r})};replaceMediaStream=async(e,{deleteExisting:r,addMissing:o,forceRenegotiation:s,contentHint:a,degradationPreference:c,sendEncodings:l,onAddedTransceiver:u})=>(t.logger("replaceMediaStream"),this.sipConnector.replaceMediaStream(e,{deleteExisting:r,addMissing:o,forceRenegotiation:s,contentHint:a,degradationPreference:c,onAddedTransceiver:u,sendEncodings:l}));askPermissionToEnableCam=async()=>{t.logger("askPermissionToEnableCam"),await this.sipConnector.askPermissionToEnableCam()};resolveHandleReadyRemoteStreamsDebounced=({onReadyRemoteStreams:e})=>j.debounce(()=>{const r=this.sipConnector.getRemoteStreams();t.logger("remoteStreams",r),r&&e(r)},200);resolveHandleReadyRemoteStreams=({onReadyRemoteStreams:e})=>({track:r})=>{Ee(r)&&e()};getRemoteStreams=()=>(t.logger("getRemoteStreams"),this.sipConnector.getRemoteStreams());onUseLicense=e=>(t.logger("onUseLicense"),this.sipConnector.on("api:useLicense",e));onMustStopPresentation=e=>(t.logger("onMustStopPresentation"),this.sipConnector.on("api:mustStopPresentation",e));onMoveToSpectators=e=>(t.logger("onMoveToSpectators"),this.sipConnector.on("api:participant:move-request-to-spectators",e));onMoveToParticipants=e=>(t.logger("onMoveToParticipants"),this.sipConnector.on("api:participant:move-request-to-participants",e));onStats=e=>(t.logger("onStats"),this.sipConnector.on("stats:collected",e));offStats=e=>{t.logger("offStats"),this.sipConnector.off("stats:collected",e)}}var q=(n=>(n.VP8="video/VP8",n.VP9="video/VP9",n.H264="video/H264",n.AV1="video/AV1",n.rtx="video/rtx",n.red="video/red",n.flexfec03="video/flexfec-03",n))(q||{});exports.ECallCause=t.ECallCause;exports.EStatsTypes=t.EStatsTypes;exports.EUseLicense=t.EUseLicense;exports.SipConnector=t.SipConnector;exports.StatsPeerConnection=t.StatsPeerConnection;exports.createParametersNotExistError=t.createParametersNotExistError;exports.disableDebug=t.disableDebug;exports.enableDebug=t.enableDebug;exports.getCodecFromSender=t.getCodecFromSender;exports.hasCanceledStartPresentationError=t.hasCanceledStartPresentationError;Object.defineProperty(exports,"hasConnectionPromiseIsNotActualError",{enumerable:!0,get:()=>Y.isPromiseIsNotActualError});exports.EMimeTypesVideoCodecs=q;exports.SipConnectorFacade=Pe;exports.hasAvailableStats=he;exports.hasCanceledCallError=J;exports.tools=pe;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("events-constructor");const r=require("./@SipConnector-4vrb2RbW.cjs"),V=require("@krivega/cancelable-promise"),W=require("repeated-calls"),j=require("ts-debounce"),K=require("ua-parser-js"),X=require("sequent-promises"),Y=require("stack-promises"),G=n=>n instanceof Object&&("originator"in n||"cause"in n),J=n=>{if(V.isCanceledError(n))return!0;if(!G(n))return!1;const{originator:e,cause:t}=n;return typeof t=="string"?t===r.ECallCause.REQUEST_TIMEOUT||t===r.ECallCause.REJECTED||e==="local"&&(t===r.ECallCause.CANCELED||t===r.ECallCause.BYE):!1},z=()=>globalThis.process?.versions?.electron!==void 0,x=()=>{const n=new K.UAParser,{name:e}=n.getBrowser(),t=z();return{isChrome:e==="Chrome"||t}},N=n=>{const{url:e,cause:t}=n;let o=e;return(t===r.ECallCause.BAD_MEDIA_DESCRIPTION||t===r.ECallCause.NOT_FOUND)&&(o=`${n.message.to.uri.user}@${n.message.to.uri.host}`),o};var B=(n=>(n.CONNECT_SERVER_FAILED="CONNECT_SERVER_FAILED",n.WRONG_USER_OR_PASSWORD="WRONG_USER_OR_PASSWORD",n.BAD_MEDIA_ERROR="BAD_MEDIA_ERROR",n.NOT_FOUND_ERROR="NOT_FOUND_ERROR",n.WS_CONNECTION_FAILED="WS_CONNECTION_FAILED",n.CONNECT_SERVER_FAILED_BY_LINK="CONNECT_SERVER_FAILED_BY_LINK",n))(B||{});const Q=new Error("Unknown error"),Z=(n=Q)=>{const{cause:e,socket:t}=n;let o="CONNECT_SERVER_FAILED";switch(e){case"Forbidden":{o="WRONG_USER_OR_PASSWORD";break}case r.ECallCause.BAD_MEDIA_DESCRIPTION:{o="BAD_MEDIA_ERROR";break}case r.ECallCause.NOT_FOUND:{o="NOT_FOUND_ERROR";break}default:t!==void 0&&t._ws?.readyState===3?o="WS_CONNECTION_FAILED":N(n)!==void 0&&N(n)!==""&&(o="CONNECT_SERVER_FAILED_BY_LINK")}return o},ee=n=>{let e="";try{e=JSON.stringify(n)}catch(t){r.logger("failed to stringify message",t)}return e},ne=new Error("Unknown error"),te=(n=ne)=>{const{code:e,cause:t,message:o}=n,s=N(n),a={code:"",cause:"",message:""};return typeof o=="object"&&o!==null?a.message=ee(o):o&&(a.message=String(o)),s!==void 0&&s!==""&&(a.link=s),e!==void 0&&e!==""&&(a.code=e),t!==void 0&&t!==""&&(a.cause=t),a},re=Object.freeze(Object.defineProperty({__proto__:null,EErrorTypes:B,getLinkError:N,getTypeFromError:Z,getValuesFromError:te},Symbol.toStringTag,{value:"Module"})),oe=({sessionId:n,remoteAddress:e,isMutedAudio:t,isMutedVideo:o,isRegistered:s,isPresentationCall:a})=>{const c=[],l=t?"0":"1",u=o?"0":"1";return c.push(`X-Vinteo-Mic-State: ${l}`,`X-Vinteo-MainCam-State: ${u}`),(s===!1||s===void 0)&&c.push("X-Vinteo-Purgatory-Call: yes"),n!==void 0&&n!==""&&c.push(`X-Vinteo-Session: ${n}`),a===!0&&c.push("X-Vinteo-Presentation-Call: yes"),e!==void 0&&e!==""&&c.push(`X-Vinteo-Remote: ${e}`),c},se="[@*!|]",ae="_",ce=n=>{let e=n;return e=e.replaceAll(new RegExp(se,"g"),ae),e},ie=({appName:n,appVersion:e,browserName:t,browserVersion:o})=>{const a=`${ce(n)} ${e}`;return`ChromeNew - ${t===void 0?a:`${t} ${o}, ${a}`}`},le=({isUnifiedSdpSemantic:n,appVersion:e,browserName:t,browserVersion:o,appName:s})=>n?ie({appVersion:e,browserName:t,browserVersion:o,appName:s}):"Chrome",$="purgatory",D=n=>n===$,ue=n=>e=>[...e].map(o=>async()=>n(o)),de=async({accumulatedKeys:n,sendKey:e,canRunTask:t})=>{const s=ue(e)(n);return X.sequentPromises(s,t)},ge=n=>t=>(r.logger("onStartMainCam"),n.on("api:admin-start-main-cam",t)),Ce=n=>t=>(r.logger("onStartMic"),n.on("api:admin-start-mic",t)),Se=n=>t=>(r.logger("onStopMainCam"),n.on("api:admin-stop-main-cam",t)),me=n=>t=>(r.logger("onStopMic"),n.on("api:admin-stop-mic",t)),fe=({sipConnector:n})=>{const e=(d,C)=>({isSyncForced:g})=>{if(g===!0){d();return}C()},t=ge(n),o=Se(n),s=Ce(n),a=me(n);let c,l,u,m;const f=({onStartMainCamForced:d,onStartMainCamNotForced:C,onStopMainCamForced:g,onStopMainCamNotForced:h,onStartMicForced:b,onStartMicNotForced:v,onStopMicForced:O,onStopMicNotForced:P})=>{const y=e(d,C);c=t(y);const _=e(g,h);l=o(_);const M=e(b,v);u=s(M);const S=e(O,P);m=a(S)},p=()=>{c?.(),l?.(),u?.(),m?.()};return{start:d=>{f(d)},stop:()=>{p()}}},pe=Object.freeze(Object.defineProperty({__proto__:null,PURGATORY_CONFERENCE_NUMBER:$,createSyncMediaState:fe,createUaParser:x,error:re,getExtraHeaders:oe,getUserAgent:le,hasPurgatory:D,prepareMediaStream:r.prepareMediaStream,sendDtmfAccumulated:de,setEncodingsToSender:r.setEncodingsToSender,setParametersToSender:r.setParametersToSender},Symbol.toStringTag,{value:"Module"})),he=()=>x().isChrome,Re=n=>{if(!V.isCanceledError(n)&&!W.hasCanceledError(n)&&!r.hasNotReadyForConnectionError(n))throw n;return{isSuccessful:!1}},Ee=({kind:n,readyState:e})=>n==="video"&&e==="live",U=(n,e,{onEnterPurgatory:t,onEnterConference:o})=>{D(n)?t&&t():o&&o({isSuccessProgressCall:e})},k=(n,e)=>{n(),e&&e()},L=(n,e,t)=>{throw n&&n(),e(),t},be=new Set(["on","once","onceRace","wait","off","sendDTMF","hangUp","declineToIncomingCall","sendChannels","checkTelephony","waitChannels","ping","startAutoConnect","stopAutoConnect","connection","isConfigured","isRegistered"]);class ve{on;once;onceRace;wait;off;sendDTMF;hangUp;declineToIncomingCall;sendChannels;checkTelephony;waitChannels;ping;startAutoConnect;stopAutoConnect;connection;isConfigured;isRegistered;sipConnector;constructor(e){return this.sipConnector=e,new Proxy(this,{get:(t,o,s)=>{if(typeof o=="string"&&be.has(o)&&o in this.sipConnector){const c=Reflect.get(this.sipConnector,o,this.sipConnector);return typeof c=="function"?c.bind(this.sipConnector):c}const a=Reflect.get(t,o,s);return typeof a=="function"?a.bind(t):a}})}connectToServer=async(e,t)=>{const o=async()=>{const s=await r.resolveParameters(e);r.logger("connectToServer",s);const{userAgent:a,sipWebSocketServerURL:c,sipServerUrl:l,remoteAddress:u,displayName:m,name:f,password:p,isRegisteredUser:E}=s;return{userAgent:a,sipWebSocketServerURL:c,sipServerUrl:l,remoteAddress:u,displayName:m,password:p,user:f,register:E}};return this.sipConnector.connect(o,t).then(s=>(r.logger("connectToServer then"),{ua:s,isSuccessful:!0})).catch(async s=>(r.logger("connectToServer catch: error",s),Re(s)))};callToServer=async e=>{const{conference:t,mediaStream:o,extraHeaders:s,iceServers:a,contentHint:c,degradationPreference:l,sendEncodings:u,offerToReceiveAudio:m,offerToReceiveVideo:f,directionVideo:p,directionAudio:E,setRemoteStreams:T,onBeforeProgressCall:d,onSuccessProgressCall:C,onEnterPurgatory:g,onEnterConference:h,onFailProgressCall:b,onFinishProgressCall:v,onEndedCall:O,onAddedTransceiver:P}=e,y=this.resolveHandleReadyRemoteStreamsDebounced({onReadyRemoteStreams:T}),_=this.resolveHandleReadyRemoteStreams({onReadyRemoteStreams:()=>{y().catch(r.logger)}});r.logger("callToServer",e);const M=async()=>(r.logger("startCall"),this.sipConnector.call({mediaStream:o,extraHeaders:s,iceServers:a,contentHint:c,offerToReceiveAudio:m,offerToReceiveVideo:f,directionVideo:p,directionAudio:E,degradationPreference:l,onAddedTransceiver:P,sendEncodings:u,number:t,ontrack:_}));let S=!1,R;const A=(r.logger("subscribeEnterConference: onEnterConference",h),this.sipConnector.on("api:enterRoom",({room:i})=>{r.logger("enterRoom",{_room:i,isSuccessProgressCall:S}),R=i,(g??h)&&U(R,S,{onEnterPurgatory:g,onEnterConference:h})})),F=i=>(r.logger("onSuccess"),S=!0,y().catch(r.logger),C&&C({isPurgatory:D(R)}),this.sipConnector.onceRace(["call:ended","call:failed"],()=>{k(A,O)}),i),w=i=>(r.logger("onFail"),L(b,A,i)),I=()=>{r.logger("onFinish"),v&&v()};return r.logger("onBeforeProgressCall"),d&&d(t),M().then(F).catch(i=>w(i)).finally(I)};disconnectFromServer=async()=>this.sipConnector.disconnect().then(()=>(r.logger("disconnectFromServer: then"),{isSuccessful:!0})).catch(e=>(r.logger("disconnectFromServer: catch",e),{isSuccessful:!1}));answerToIncomingCall=async e=>{const{mediaStream:t,extraHeaders:o,iceServers:s,contentHint:a,degradationPreference:c,sendEncodings:l,offerToReceiveAudio:u,offerToReceiveVideo:m,directionVideo:f,directionAudio:p,setRemoteStreams:E,onBeforeProgressCall:T,onSuccessProgressCall:d,onEnterPurgatory:C,onEnterConference:g,onFailProgressCall:h,onFinishProgressCall:b,onEndedCall:v,onAddedTransceiver:O}=e,P=this.resolveHandleReadyRemoteStreamsDebounced({onReadyRemoteStreams:E}),y=this.resolveHandleReadyRemoteStreams({onReadyRemoteStreams:()=>{P().catch(r.logger)}});r.logger("answerToIncomingCall",e);const _=async()=>this.sipConnector.answerToIncomingCall({mediaStream:t,extraHeaders:o,iceServers:s,contentHint:a,offerToReceiveAudio:u,offerToReceiveVideo:m,directionVideo:f,directionAudio:p,degradationPreference:c,onAddedTransceiver:O,sendEncodings:l,ontrack:y}),M=()=>{const{remoteCallerData:i}=this.sipConnector;return i.incomingNumber};let S=!1,R;const A=(r.logger("subscribeEnterConference: onEnterConference",g),this.sipConnector.on("api:enterRoom",i=>{r.logger("enterRoom",{_room:i,isSuccessProgressCall:S}),R=i,(C??g)&&U(R,S,{onEnterPurgatory:C,onEnterConference:g})})),F=i=>(r.logger("onSuccess"),S=!0,P().catch(r.logger),d&&d({isPurgatory:D(R)}),this.sipConnector.onceRace(["call:ended","call:failed"],()=>{k(A,v)}),i),w=i=>(r.logger("onFail"),L(h,A,i)),I=()=>{r.logger("onFinish"),b&&b()};if(r.logger("onBeforeProgressCall"),T){const i=M();T(i)}return _().then(F).catch(i=>w(i)).finally(I)};updatePresentation=async({mediaStream:e,isP2P:t,contentHint:o,degradationPreference:s,sendEncodings:a,onAddedTransceiver:c})=>(r.logger("updatePresentation"),this.sipConnector.updatePresentation(e,{isP2P:t,contentHint:o,degradationPreference:s,onAddedTransceiver:c,sendEncodings:a}));startPresentation=async({mediaStream:e,isP2P:t,contentHint:o,degradationPreference:s,sendEncodings:a,callLimit:c,onAddedTransceiver:l})=>(r.logger("startPresentation"),this.sipConnector.startPresentation(e,{isP2P:t,contentHint:o,callLimit:c,degradationPreference:s,onAddedTransceiver:l,sendEncodings:a}));stopShareSipConnector=async({isP2P:e=!1}={})=>(r.logger("stopShareSipConnector"),this.sipConnector.stopPresentation({isP2P:e}).catch(t=>{r.logger(t)}));sendRefusalToTurnOnMic=async()=>{r.logger("sendRefusalToTurnOnMic"),await this.sipConnector.sendRefusalToTurnOnMic().catch(e=>{r.logger("sendRefusalToTurnOnMic: error",e)})};sendRefusalToTurnOnCam=async()=>{r.logger("sendRefusalToTurnOnCam"),await this.sipConnector.sendRefusalToTurnOnCam().catch(e=>{r.logger("sendRefusalToTurnOnCam: error",e)})};sendMediaState=async({isEnabledCam:e,isEnabledMic:t})=>{r.logger("sendMediaState"),await this.sipConnector.sendMediaState({cam:e,mic:t})};replaceMediaStream=async(e,{deleteExisting:t,addMissing:o,forceRenegotiation:s,contentHint:a,degradationPreference:c,sendEncodings:l,onAddedTransceiver:u})=>(r.logger("replaceMediaStream"),this.sipConnector.replaceMediaStream(e,{deleteExisting:t,addMissing:o,forceRenegotiation:s,contentHint:a,degradationPreference:c,onAddedTransceiver:u,sendEncodings:l}));askPermissionToEnableCam=async()=>{r.logger("askPermissionToEnableCam"),await this.sipConnector.askPermissionToEnableCam()};resolveHandleReadyRemoteStreamsDebounced=({onReadyRemoteStreams:e})=>j.debounce(()=>{const t=this.sipConnector.getRemoteStreams();r.logger("remoteStreams",t),t&&e(t)},200);resolveHandleReadyRemoteStreams=({onReadyRemoteStreams:e})=>({track:t})=>{Ee(t)&&e()};getRemoteStreams=()=>(r.logger("getRemoteStreams"),this.sipConnector.getRemoteStreams());onUseLicense=e=>(r.logger("onUseLicense"),this.sipConnector.on("api:useLicense",e));onMustStopPresentation=e=>(r.logger("onMustStopPresentation"),this.sipConnector.on("api:mustStopPresentation",e));onMoveToSpectators=e=>(r.logger("onMoveToSpectators"),this.sipConnector.on("api:participant:move-request-to-spectators",e));onMoveToParticipants=e=>(r.logger("onMoveToParticipants"),this.sipConnector.on("api:participant:move-request-to-participants",e));onStats=e=>(r.logger("onStats"),this.sipConnector.on("stats:collected",e));offStats=e=>{r.logger("offStats"),this.sipConnector.off("stats:collected",e)}}var H=(n=>(n.VP8="video/VP8",n.VP9="video/VP9",n.H264="video/H264",n.AV1="video/AV1",n.rtx="video/rtx",n.red="video/red",n.flexfec03="video/flexfec-03",n))(H||{});exports.ECallCause=r.ECallCause;exports.EStatsTypes=r.EStatsTypes;exports.EUseLicense=r.EUseLicense;exports.SipConnector=r.SipConnector;exports.StatsPeerConnection=r.StatsPeerConnection;exports.disableDebug=r.disableDebug;exports.enableDebug=r.enableDebug;exports.getCodecFromSender=r.getCodecFromSender;exports.hasCanceledStartPresentationError=r.hasCanceledStartPresentationError;Object.defineProperty(exports,"hasConnectionPromiseIsNotActualError",{enumerable:!0,get:()=>Y.isPromiseIsNotActualError});exports.EMimeTypesVideoCodecs=H;exports.SipConnectorFacade=ve;exports.hasAvailableStats=he;exports.hasCanceledCallError=J;exports.tools=pe;
|
package/dist/index.d.ts
CHANGED
|
@@ -13,4 +13,3 @@ export { EMimeTypesVideoCodecs } from './types';
|
|
|
13
13
|
export type { TJsSIP } from './types';
|
|
14
14
|
export { default as getCodecFromSender } from './utils/getCodecFromSender';
|
|
15
15
|
export { hasConnectionPromiseIsNotActualError } from './ConnectionQueueManager';
|
|
16
|
-
export { createParametersNotExistError } from './AutoConnectorManager';
|