sip-connector 12.1.0 → 13.0.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/index.js CHANGED
@@ -1,21 +1,21 @@
1
- var Z = Object.defineProperty;
2
- var ee = (n, e, t) => e in n ? Z(n, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : n[e] = t;
3
- var l = (n, e, t) => ee(n, typeof e != "symbol" ? e + "" : e, t);
4
- import { B as X, N as j, l as i, E as k, s as ne, a as te, P as se, b as re, S as Je } from "./SipConnector-BxDInUHC.js";
5
- import { i as ln, j as dn, m as Sn, k as mn, c as Cn, d as fn, f as hn, g as Rn, e as gn, h as pn } from "./SipConnector-BxDInUHC.js";
6
- import { sequentPromises as oe } from "sequent-promises";
7
- import { createStackPromises as ce } from "stack-promises";
8
- import { isCanceledError as ie } from "@krivega/cancelable-promise";
9
- import { hasCanceledError as ae } from "repeated-calls";
10
- import { debounce as ue } from "ts-debounce";
11
- import { default as En } from "debug";
12
- const x = (n) => {
1
+ var se = Object.defineProperty;
2
+ var re = (n, e, t) => e in n ? se(n, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : n[e] = t;
3
+ var l = (n, e, t) => re(n, typeof e != "symbol" ? e + "" : e, t);
4
+ import { B as G, N as K, l as a, E as L, s as oe, a as ie, P as ce, b as ae, S as tn } from "./SipConnector-B4xLnl6L.js";
5
+ import { i as Cn, j as fn, m as hn, k as Rn, c as gn, d as pn, f as yn, g as En, e as Tn, h as bn } from "./SipConnector-B4xLnl6L.js";
6
+ import { sequentPromises as ue } from "sequent-promises";
7
+ import { createStackPromises as le } from "stack-promises";
8
+ import { isCanceledError as de } from "@krivega/cancelable-promise";
9
+ import { hasCanceledError as Se } from "repeated-calls";
10
+ import { debounce as me } from "ts-debounce";
11
+ import { default as An } from "debug";
12
+ const H = (n) => {
13
13
  const { url: e, cause: t } = n;
14
14
  let s = e;
15
- return (t === X || t === j) && (s = `${n.message.to.uri.user}@${n.message.to.uri.host}`), s;
15
+ return (t === G || t === K) && (s = `${n.message.to.uri.user}@${n.message.to.uri.host}`), s;
16
16
  };
17
- var W = /* @__PURE__ */ ((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))(W || {});
18
- const le = (n = new Error()) => {
17
+ var q = /* @__PURE__ */ ((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))(q || {});
18
+ const Ce = (n = new Error()) => {
19
19
  var r;
20
20
  const { cause: e, socket: t } = n;
21
21
  let s = "CONNECT_SERVER_FAILED";
@@ -24,36 +24,36 @@ const le = (n = new Error()) => {
24
24
  s = "WRONG_USER_OR_PASSWORD";
25
25
  break;
26
26
  }
27
- case X: {
27
+ case G: {
28
28
  s = "BAD_MEDIA_ERROR";
29
29
  break;
30
30
  }
31
- case j: {
31
+ case K: {
32
32
  s = "NOT_FOUND_ERROR";
33
33
  break;
34
34
  }
35
35
  default:
36
- t && ((r = t == null ? void 0 : t._ws) == null ? void 0 : r.readyState) === 3 ? s = "WS_CONNECTION_FAILED" : x(n) && (s = "CONNECT_SERVER_FAILED_BY_LINK");
36
+ t && ((r = t == null ? void 0 : t._ws) == null ? void 0 : r.readyState) === 3 ? s = "WS_CONNECTION_FAILED" : H(n) && (s = "CONNECT_SERVER_FAILED_BY_LINK");
37
37
  }
38
38
  return s;
39
- }, de = (n) => {
39
+ }, fe = (n) => {
40
40
  let e = "";
41
41
  try {
42
42
  e = JSON.stringify(n);
43
43
  } catch (t) {
44
- i("failed to stringify message", t);
44
+ a("failed to stringify message", t);
45
45
  }
46
46
  return e;
47
- }, Se = (n = new Error()) => {
48
- const { code: e, cause: t, message: s } = n, r = x(n), o = { code: "", cause: "", message: "" };
49
- return typeof s == "object" && s !== null ? o.message = de(s) : s && (o.message = String(s)), r && (o.link = r), e && (o.code = e), t && (o.cause = t), o;
50
- }, me = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
47
+ }, he = (n = new Error()) => {
48
+ const { code: e, cause: t, message: s } = n, r = H(n), o = { code: "", cause: "", message: "" };
49
+ return typeof s == "object" && s !== null ? o.message = fe(s) : s && (o.message = String(s)), r && (o.link = r), e && (o.code = e), t && (o.cause = t), o;
50
+ }, Re = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
51
51
  __proto__: null,
52
- EErrorTypes: W,
53
- getLinkError: x,
54
- getTypeFromError: le,
55
- getValuesFromError: Se
56
- }, Symbol.toStringTag, { value: "Module" })), Ce = ({
52
+ EErrorTypes: q,
53
+ getLinkError: H,
54
+ getTypeFromError: Ce,
55
+ getValuesFromError: he
56
+ }, Symbol.toStringTag, { value: "Module" })), ge = ({
57
57
  sessionId: n,
58
58
  remoteAddress: e,
59
59
  isMutedAudio: t,
@@ -61,71 +61,71 @@ const le = (n = new Error()) => {
61
61
  isRegistered: r,
62
62
  isPresentationCall: o
63
63
  }) => {
64
- const c = [], a = t ? "0" : "1", u = s ? "0" : "1";
65
- return c.push(`X-Vinteo-Mic-State: ${a}`, `X-Vinteo-MainCam-State: ${u}`), r || c.push("X-Vinteo-Purgatory-Call: yes"), n && c.push(`X-Vinteo-Session: ${n}`), o && c.push("X-Vinteo-Presentation-Call: yes"), e && c.push(`X-Vinteo-Remote: ${e}`), c;
66
- }, fe = "[@*!|]", he = "_", Re = (n) => {
64
+ const i = [], c = t ? "0" : "1", u = s ? "0" : "1";
65
+ return i.push(`X-Vinteo-Mic-State: ${c}`, `X-Vinteo-MainCam-State: ${u}`), r || i.push("X-Vinteo-Purgatory-Call: yes"), n && i.push(`X-Vinteo-Session: ${n}`), o && i.push("X-Vinteo-Presentation-Call: yes"), e && i.push(`X-Vinteo-Remote: ${e}`), i;
66
+ }, pe = "[@*!|]", ye = "_", Ee = (n) => {
67
67
  let e = n;
68
- return e = e.replaceAll(new RegExp(fe, "g"), he), e;
69
- }, ge = ({
68
+ return e = e.replaceAll(new RegExp(pe, "g"), ye), e;
69
+ }, Te = ({
70
70
  appName: n,
71
71
  appVersion: e,
72
72
  browserName: t,
73
73
  browserVersion: s
74
74
  }) => {
75
- const o = `${Re(n)} ${e}`;
75
+ const o = `${Ee(n)} ${e}`;
76
76
  return `ChromeNew - ${t ? `${t} ${s}, ${o}` : o}`;
77
- }, pe = ({
77
+ }, be = ({
78
78
  isUnifiedSdpSemantic: n,
79
79
  appVersion: e,
80
80
  browserName: t,
81
81
  browserVersion: s,
82
82
  appName: r
83
- }) => n ? ge({ appVersion: e, browserName: t, browserVersion: s, appName: r }) : "Chrome", G = "purgatory", P = (n) => n === G, ye = (n) => (e) => [...e].map((s) => async () => n(s)), Ee = async ({
83
+ }) => n ? Te({ appVersion: e, browserName: t, browserVersion: s, appName: r }) : "Chrome", Y = "purgatory", D = (n) => n === Y, Me = (n) => (e) => [...e].map((s) => async () => n(s)), Ae = async ({
84
84
  accumulatedKeys: n,
85
85
  sendKey: e,
86
86
  canRunTask: t
87
87
  }) => {
88
- const r = ye(e)(n);
89
- return oe(r, t);
90
- }, Te = (n) => (t) => (i("onStartMainCam"), n.onSession("admin-start-main-cam", t)), be = (n) => (t) => (i("onStartMic"), n.onSession("admin-start-mic", t)), Me = (n) => (t) => (i("onStopMainCam"), n.onSession("admin-stop-main-cam", t)), _e = (n) => (t) => (i("onStopMic"), n.onSession("admin-stop-mic", t)), Ae = ({ sipConnector: n }) => {
91
- const e = (f, g) => ({ isSyncForced: p = !1 }) => {
92
- if (p) {
88
+ const r = Me(e)(n);
89
+ return ue(r, t);
90
+ }, _e = (n) => (t) => (a("onStartMainCam"), n.onSession("admin-start-main-cam", t)), ve = (n) => (t) => (a("onStartMic"), n.onSession("admin-start-mic", t)), Oe = (n) => (t) => (a("onStopMainCam"), n.onSession("admin-stop-main-cam", t)), Ne = (n) => (t) => (a("onStopMic"), n.onSession("admin-stop-mic", t)), Be = ({ sipConnector: n }) => {
91
+ const e = (f, p) => ({ isSyncForced: h = !1 }) => {
92
+ if (h) {
93
93
  f();
94
94
  return;
95
95
  }
96
- g();
97
- }, t = Te(n), s = Me(n), r = be(n), o = _e(n);
98
- let c = () => {
99
- }, a = () => {
96
+ p();
97
+ }, t = _e(n), s = Oe(n), r = ve(n), o = Ne(n);
98
+ let i = () => {
99
+ }, c = () => {
100
100
  }, u = () => {
101
101
  }, S = () => {
102
102
  };
103
103
  const C = ({
104
104
  onStartMainCamForced: f,
105
- onStartMainCamNotForced: g,
106
- onStopMainCamForced: p,
107
- onStopMainCamNotForced: b,
108
- onStartMicForced: _,
109
- onStartMicNotForced: A,
110
- onStopMicForced: O,
111
- onStopMicNotForced: v
105
+ onStartMainCamNotForced: p,
106
+ onStopMainCamForced: h,
107
+ onStopMainCamNotForced: R,
108
+ onStartMicForced: y,
109
+ onStartMicNotForced: E,
110
+ onStopMicForced: T,
111
+ onStopMicNotForced: b
112
112
  }) => {
113
- const y = e(
113
+ const _ = e(
114
114
  f,
115
- g
115
+ p
116
116
  );
117
- c = t(y);
118
- const E = e(
119
- p,
120
- b
117
+ i = t(_);
118
+ const v = e(
119
+ h,
120
+ R
121
121
  );
122
- a = s(E);
123
- const w = e(_, A);
124
- u = r(w);
125
- const M = e(O, v);
126
- S = o(M);
122
+ c = s(v);
123
+ const O = e(y, E);
124
+ u = r(O);
125
+ const N = e(T, b);
126
+ S = o(N);
127
127
  }, m = () => {
128
- c(), a(), u(), S();
128
+ i(), c(), u(), S();
129
129
  };
130
130
  return {
131
131
  start: (f) => {
@@ -135,79 +135,79 @@ const le = (n = new Error()) => {
135
135
  m();
136
136
  }
137
137
  };
138
- }, rn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
138
+ }, un = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
139
139
  __proto__: null,
140
- PURGATORY_CONFERENCE_NUMBER: G,
141
- createSyncMediaState: Ae,
142
- error: me,
143
- getExtraHeaders: Ce,
144
- getUserAgent: pe,
145
- hasPurgatory: P,
146
- sendDTMFAccumulated: Ee
147
- }, Symbol.toStringTag, { value: "Module" })), Oe = (n) => [...n.keys()].map((e) => n.get(e)), ve = (n, e) => Oe(n).find((t) => t.type === e), Ne = async (n) => n.getStats().then((e) => {
148
- const t = ve(e, "codec");
140
+ PURGATORY_CONFERENCE_NUMBER: Y,
141
+ createSyncMediaState: Be,
142
+ error: Re,
143
+ getExtraHeaders: ge,
144
+ getUserAgent: be,
145
+ hasPurgatory: D,
146
+ sendDTMFAccumulated: Ae
147
+ }, Symbol.toStringTag, { value: "Module" })), Pe = (n) => [...n.keys()].map((e) => n.get(e)), we = (n, e) => Pe(n).find((t) => t.type === e), De = async (n) => n.getStats().then((e) => {
148
+ const t = we(e, "codec");
149
149
  return t == null ? void 0 : t.mimeType;
150
- }), Be = (n) => n.find((e) => {
150
+ }), Ie = (n) => n.find((e) => {
151
151
  var t;
152
152
  return ((t = e == null ? void 0 : e.track) == null ? void 0 : t.kind) === "video";
153
- }), K = (n, e) => n !== void 0 && e !== void 0 && n.toLowerCase().includes(e.toLowerCase()), Pe = 1e6, h = (n) => n * Pe, q = h(0.06), we = h(4), De = (n) => n <= 64 ? q : n <= 128 ? h(0.12) : n <= 256 ? h(0.25) : n <= 384 ? h(0.32) : n <= 426 ? h(0.38) : n <= 640 ? h(0.5) : n <= 848 ? h(0.7) : n <= 1280 ? h(1) : n <= 1920 ? h(2) : we, Ie = "av1", Fe = (n) => K(n, Ie), ke = 0.6, Y = (n, e) => Fe(e) ? n * ke : n, Ue = (n) => Y(q, n), z = (n, e) => {
154
- const t = De(n);
155
- return Y(t, e);
156
- }, Le = 1, Q = ({
153
+ }), z = (n, e) => n !== void 0 && e !== void 0 && n.toLowerCase().includes(e.toLowerCase()), Fe = 1e6, g = (n) => n * Fe, Q = g(0.06), ke = g(4), Ue = (n) => n <= 64 ? Q : n <= 128 ? g(0.12) : n <= 256 ? g(0.25) : n <= 384 ? g(0.32) : n <= 426 ? g(0.38) : n <= 640 ? g(0.5) : n <= 848 ? g(0.7) : n <= 1280 ? g(1) : n <= 1920 ? g(2) : ke, Ve = "av1", Le = (n) => z(n, Ve), xe = 0.6, J = (n, e) => Le(e) ? n * xe : n, $e = (n) => J(Q, n), Z = (n, e) => {
154
+ const t = Ue(n);
155
+ return J(t, e);
156
+ }, He = 1, ee = ({
157
157
  videoTrack: n,
158
158
  targetSize: e,
159
159
  codec: t
160
160
  }) => {
161
- const s = n.getSettings(), r = s.width, o = s.height, c = r / e.width, a = o / e.height, u = Math.max(c, a, Le), S = z(e.width, t);
161
+ const s = n.getSettings(), r = s.width, o = s.height, i = r / e.width, c = o / e.height, u = Math.max(i, c, He), S = Z(e.width, t);
162
162
  return { scaleResolutionDownBy: u, maxBitrate: S };
163
- }, J = ce(), xe = async () => J().catch((n) => {
164
- i("videoSendingBalancer: error", n);
165
- }), Ve = async (n) => (J.add(n), xe()), V = async ({
163
+ }, ne = le(), Xe = async () => ne().catch((n) => {
164
+ a("videoSendingBalancer: error", n);
165
+ }), je = async (n) => (ne.add(n), Xe()), X = async ({
166
166
  sender: n,
167
167
  scaleResolutionDownBy: e,
168
168
  maxBitrate: t,
169
169
  onSetParameters: s
170
- }) => Ve(async () => ne(n, { scaleResolutionDownBy: e, maxBitrate: t }, s)), $e = async ({ sender: n, codec: e }, t) => {
171
- const r = Ue(e);
172
- return V({
170
+ }) => je(async () => oe(n, { scaleResolutionDownBy: e, maxBitrate: t }, s)), We = async ({ sender: n, codec: e }, t) => {
171
+ const r = $e(e);
172
+ return X({
173
173
  sender: n,
174
174
  maxBitrate: r,
175
175
  onSetParameters: t,
176
176
  scaleResolutionDownBy: 200
177
177
  });
178
- }, U = async ({
178
+ }, x = async ({
179
179
  sender: n,
180
180
  videoTrack: e,
181
181
  codec: t
182
182
  }, s) => {
183
- const c = e.getSettings().width, a = z(c, t);
184
- return V({
183
+ const i = e.getSettings().width, c = Z(i, t);
184
+ return X({
185
185
  sender: n,
186
- maxBitrate: a,
186
+ maxBitrate: c,
187
187
  onSetParameters: s,
188
188
  scaleResolutionDownBy: 1
189
189
  });
190
- }, He = async ({
190
+ }, Ge = async ({
191
191
  sender: n,
192
192
  videoTrack: e,
193
193
  resolution: t,
194
194
  codec: s
195
195
  }, r) => {
196
- const [o, c] = t.split("x"), { maxBitrate: a, scaleResolutionDownBy: u } = Q({
196
+ const [o, i] = t.split("x"), { maxBitrate: c, scaleResolutionDownBy: u } = ee({
197
197
  videoTrack: e,
198
198
  codec: s,
199
199
  targetSize: {
200
200
  width: Number(o),
201
- height: Number(c)
201
+ height: Number(i)
202
202
  }
203
203
  });
204
- return V({
204
+ return X({
205
205
  sender: n,
206
- maxBitrate: a,
206
+ maxBitrate: c,
207
207
  onSetParameters: r,
208
208
  scaleResolutionDownBy: u
209
209
  });
210
- }, Xe = async ({
210
+ }, Ke = async ({
211
211
  mainCam: n,
212
212
  resolutionMainCam: e,
213
213
  sender: t,
@@ -215,19 +215,19 @@ const le = (n = new Error()) => {
215
215
  codec: r
216
216
  }, o) => {
217
217
  switch (n) {
218
- case k.PAUSE_MAIN_CAM:
219
- return $e({ sender: t, codec: r }, o);
220
- case k.RESUME_MAIN_CAM:
221
- return U({ sender: t, videoTrack: s, codec: r }, o);
222
- case k.MAX_MAIN_CAM_RESOLUTION:
223
- return e !== void 0 ? He(
218
+ case L.PAUSE_MAIN_CAM:
219
+ return We({ sender: t, codec: r }, o);
220
+ case L.RESUME_MAIN_CAM:
221
+ return x({ sender: t, videoTrack: s, codec: r }, o);
222
+ case L.MAX_MAIN_CAM_RESOLUTION:
223
+ return e !== void 0 ? Ge(
224
224
  { sender: t, videoTrack: s, codec: r, resolution: e },
225
225
  o
226
- ) : U({ sender: t, videoTrack: s, codec: r }, o);
226
+ ) : x({ sender: t, videoTrack: s, codec: r }, o);
227
227
  default:
228
- return U({ sender: t, videoTrack: s, codec: r }, o);
228
+ return x({ sender: t, videoTrack: s, codec: r }, o);
229
229
  }
230
- }, $ = {
230
+ }, j = {
231
231
  isChanged: !1,
232
232
  parameters: {
233
233
  encodings: [{}],
@@ -236,28 +236,28 @@ const le = (n = new Error()) => {
236
236
  headerExtensions: [],
237
237
  rtcp: {}
238
238
  }
239
- }, H = async ({
239
+ }, W = async ({
240
240
  mainCam: n,
241
241
  resolutionMainCam: e,
242
242
  connection: t,
243
243
  onSetParameters: s,
244
244
  ignoreForCodec: r
245
245
  }) => {
246
- const o = t.getSenders(), c = Be(o);
247
- if (!(c != null && c.track))
248
- return $;
249
- const a = await Ne(c);
250
- return K(a, r) ? $ : Xe(
246
+ const o = t.getSenders(), i = Ie(o);
247
+ if (!(i != null && i.track))
248
+ return j;
249
+ const c = await De(i);
250
+ return z(c, r) ? j : Ke(
251
251
  {
252
252
  mainCam: n,
253
253
  resolutionMainCam: e,
254
- sender: c,
255
- codec: a,
256
- videoTrack: c.track
254
+ sender: i,
255
+ codec: c,
256
+ videoTrack: i.track
257
257
  },
258
258
  s
259
259
  );
260
- }, on = (n, {
260
+ }, ln = (n, {
261
261
  ignoreForCodec: e,
262
262
  onSetParameters: t
263
263
  } = {}) => {
@@ -265,7 +265,7 @@ const le = (n = new Error()) => {
265
265
  const { connection: u } = n;
266
266
  if (!u)
267
267
  throw new Error("connection is not exist");
268
- return H({
268
+ return W({
269
269
  connection: u,
270
270
  onSetParameters: t,
271
271
  ignoreForCodec: e
@@ -276,7 +276,7 @@ const le = (n = new Error()) => {
276
276
  const { mainCam: S, resolutionMainCam: C } = u, { connection: m } = n;
277
277
  if (!m)
278
278
  throw new Error("connection is not exist");
279
- return H({
279
+ return W({
280
280
  mainCam: S,
281
281
  resolutionMainCam: C,
282
282
  connection: m,
@@ -299,47 +299,49 @@ const le = (n = new Error()) => {
299
299
  return r();
300
300
  }
301
301
  };
302
- }, je = (n) => n.getVideoTracks()[0], N = ({
302
+ }, qe = (n) => n.getVideoTracks()[0], P = ({
303
303
  mediaStream: n,
304
304
  simulcastEncodings: e,
305
305
  sendEncodings: t
306
306
  }) => {
307
307
  if (e && e.length > 0) {
308
- const s = t ?? [], r = je(n);
309
- return e.forEach((o, c) => {
310
- const a = s[c] ?? {}, { maxBitrate: u, scaleResolutionDownBy: S } = Q({
308
+ const s = t ?? [], r = qe(n);
309
+ return e.forEach((o, i) => {
310
+ const c = s[i] ?? {};
311
+ c.active = !0, o.rid !== void 0 && (c.rid = o.rid), o.scalabilityMode !== void 0 && (c.scalabilityMode = o.scalabilityMode);
312
+ const { maxBitrate: u, scaleResolutionDownBy: S } = ee({
311
313
  videoTrack: r,
312
314
  targetSize: {
313
315
  width: o.width,
314
316
  height: o.height
315
317
  }
316
318
  });
317
- a.maxBitrate = u, a.scaleResolutionDownBy = S, s[c] = a;
319
+ c.maxBitrate = u, c.scaleResolutionDownBy = S, s[i] = c;
318
320
  }), s;
319
321
  }
320
322
  return t;
321
- }, We = (n, e) => [...n, ...e].filter((r, o, c) => o === c.findIndex((a) => a.clockRate === r.clockRate && a.mimeType === r.mimeType && a.channels === r.channels && a.sdpFmtpLine === r.sdpFmtpLine)), Ge = (n) => {
323
+ }, Ye = (n, e) => [...n, ...e].filter((r, o, i) => o === i.findIndex((c) => c.clockRate === r.clockRate && c.mimeType === r.mimeType && c.channels === r.channels && c.sdpFmtpLine === r.sdpFmtpLine)), ze = (n) => {
322
324
  const e = RTCRtpSender.getCapabilities(n), t = RTCRtpReceiver.getCapabilities(n), s = e === null ? [] : e.codecs, r = t === null ? [] : t.codecs;
323
- return We(s, r);
324
- }, Ke = (n, e) => e === void 0 || e.length === 0 ? n : n.sort((t, s) => {
325
- const r = e.indexOf(t.mimeType), o = e.indexOf(s.mimeType), c = r === -1 ? Number.MAX_VALUE : r, a = o === -1 ? Number.MAX_VALUE : o;
326
- return c - a;
327
- }), qe = (n, e) => e === void 0 || e.length === 0 ? n : n.filter((t) => !e.includes(t.mimeType)), B = (n, {
325
+ return Ye(s, r);
326
+ }, Qe = (n, e) => e === void 0 || e.length === 0 ? n : n.sort((t, s) => {
327
+ const r = e.indexOf(t.mimeType), o = e.indexOf(s.mimeType), i = r === -1 ? Number.MAX_VALUE : r, c = o === -1 ? Number.MAX_VALUE : o;
328
+ return i - c;
329
+ }), Je = (n, e) => e === void 0 || e.length === 0 ? n : n.filter((t) => !e.includes(t.mimeType)), w = (n, {
328
330
  preferredMimeTypesVideoCodecs: e,
329
331
  excludeMimeTypesVideoCodecs: t
330
332
  }) => async (s) => {
331
333
  var r;
332
334
  if (typeof s.setCodecPreferences == "function" && ((r = s.sender.track) == null ? void 0 : r.kind) === "video" && (e !== void 0 && (e == null ? void 0 : e.length) > 0 || t !== void 0 && (t == null ? void 0 : t.length) > 0)) {
333
- const o = Ge("video"), c = qe(o, t), a = Ke(c, e);
334
- s.setCodecPreferences(a);
335
+ const o = ze("video"), i = Je(o, t), c = Qe(i, e);
336
+ s.setCodecPreferences(c);
335
337
  }
336
- Object.keys(n).length > 0 && await te(s.sender, n);
337
- }, L = (n) => {
338
- if (!ie(n) && !ae(n))
338
+ Object.keys(n).length > 0 && await ie(s.sender, n);
339
+ }, $ = (n) => {
340
+ if (!de(n) && !Se(n))
339
341
  throw n;
340
342
  return { isSuccessful: !1 };
341
- }, Ye = ({ kind: n, readyState: e }) => n === "video" && e === "live";
342
- class cn {
343
+ }, Ze = ({ kind: n, readyState: e }) => n === "video" && e === "live";
344
+ class dn {
343
345
  constructor(e, {
344
346
  preferredMimeTypesVideoCodecs: t,
345
347
  excludeMimeTypesVideoCodecs: s
@@ -353,22 +355,22 @@ class cn {
353
355
  sipWebSocketServerURL: s,
354
356
  sipServerUrl: r,
355
357
  remoteAddress: o,
356
- displayName: c,
357
- name: a,
358
+ displayName: i,
359
+ name: c,
358
360
  password: u,
359
361
  isRegisteredUser: S,
360
362
  isDisconnectOnFail: C
361
363
  } = e;
362
- return i("connectToServer", e), this.sipConnector.connect({
364
+ return a("connectToServer", e), this.sipConnector.connect({
363
365
  userAgent: t,
364
366
  sipWebSocketServerURL: s,
365
367
  sipServerUrl: r,
366
368
  remoteAddress: o,
367
- displayName: c,
369
+ displayName: i,
368
370
  password: u,
369
- user: a,
371
+ user: c,
370
372
  register: S
371
- }).then((m) => (i("connectToServer then"), { ua: m, isSuccessful: !0 })).catch(async (m) => (i("connectToServer catch: error", m), C === !0 ? this.sipConnector.disconnect().then(() => L(m)).catch(() => L(m)) : L(m)));
373
+ }).then((m) => (a("connectToServer then"), { ua: m, isSuccessful: !0 })).catch(async (m) => (a("connectToServer catch: error", m), C === !0 ? this.sipConnector.disconnect().then(() => $(m)).catch(() => $(m)) : $(m)));
372
374
  });
373
375
  l(this, "callToServer", async (e) => {
374
376
  const {
@@ -376,23 +378,27 @@ class cn {
376
378
  mediaStream: s,
377
379
  extraHeaders: r,
378
380
  iceServers: o,
379
- contentHint: c,
380
- simulcastEncodings: a,
381
+ contentHint: i,
382
+ simulcastEncodings: c,
381
383
  degradationPreference: u,
382
384
  sendEncodings: S,
383
- setRemoteStreams: C,
384
- onBeforeProgressCall: m,
385
- onSuccessProgressCall: T,
385
+ offerToReceiveAudio: C,
386
+ offerToReceiveVideo: m,
387
+ directionVideo: I,
388
+ directionAudio: F,
389
+ setRemoteStreams: f,
390
+ onBeforeProgressCall: p,
391
+ onSuccessProgressCall: h,
386
392
  onEnterPurgatory: R,
387
- onEnterConference: f,
388
- onFailProgressCall: g,
389
- onFinishProgressCall: p,
393
+ onEnterConference: y,
394
+ onFailProgressCall: E,
395
+ onFinishProgressCall: T,
390
396
  onEndedCall: b
391
397
  } = e, _ = this.resolveHandleReadyRemoteStreamsDebounced({
392
- onReadyRemoteStreams: C
393
- }), A = this.resolveHandleReadyRemoteStreams({
398
+ onReadyRemoteStreams: f
399
+ }), v = this.resolveHandleReadyRemoteStreams({
394
400
  onReadyRemoteStreams: _
395
- }), O = B(
401
+ }), O = w(
396
402
  {
397
403
  degradationPreference: u
398
404
  },
@@ -401,98 +407,110 @@ class cn {
401
407
  excludeMimeTypesVideoCodecs: this.excludeMimeTypesVideoCodecs
402
408
  }
403
409
  );
404
- i("callToServer", e);
405
- const v = async () => (i("startCall"), this.sipConnector.call({
410
+ a("callToServer", e);
411
+ const N = async () => (a("startCall"), this.sipConnector.call({
406
412
  mediaStream: s,
407
413
  extraHeaders: r,
408
414
  iceServers: o,
409
- contentHint: c,
410
- sendEncodings: N({
415
+ contentHint: i,
416
+ offerToReceiveAudio: C,
417
+ offerToReceiveVideo: m,
418
+ directionVideo: I,
419
+ directionAudio: F,
420
+ sendEncodings: P({
411
421
  mediaStream: s,
412
- simulcastEncodings: a,
422
+ simulcastEncodings: c,
413
423
  sendEncodings: S
414
424
  }),
415
425
  number: t,
416
426
  onAddedTransceiver: O,
417
- ontrack: A
427
+ ontrack: v
418
428
  }));
419
- let y = !1, E;
420
- const M = (i("subscribeEnterConference: onEnterConference", f), R ?? f ? this.sipConnector.onSession("enterRoom", ({ room: d }) => {
421
- i("enterRoom", { _room: d, isSuccessProgressCall: y }), E = d, P(E) ? R && R() : f && f({ isSuccessProgressCall: y });
429
+ let M = !1, A;
430
+ const B = (a("subscribeEnterConference: onEnterConference", y), R ?? y ? this.sipConnector.onSession("enterRoom", ({ room: d }) => {
431
+ a("enterRoom", { _room: d, isSuccessProgressCall: M }), A = d, D(A) ? R && R() : y && y({ isSuccessProgressCall: M });
422
432
  }) : () => {
423
- }), D = (d) => (i("onSuccess"), y = !0, _(), T && T({ isPurgatory: P(E) }), this.sipConnector.onceRaceSession(["ended", "failed"], () => {
424
- M(), b && b();
425
- }), d), I = (d) => {
426
- throw i("onFail"), g && g(), M(), d;
427
- }, F = () => {
428
- i("onFinish"), p && p();
433
+ }), k = (d) => (a("onSuccess"), M = !0, _(), h && h({ isPurgatory: D(A) }), this.sipConnector.onceRaceSession(["ended", "failed"], () => {
434
+ B(), b && b();
435
+ }), d), U = (d) => {
436
+ throw a("onFail"), E && E(), B(), d;
437
+ }, V = () => {
438
+ a("onFinish"), T && T();
429
439
  };
430
- return i("onBeforeProgressCall"), m && m(t), v().then(D).catch((d) => I(d)).finally(F);
440
+ return a("onBeforeProgressCall"), p && p(t), N().then(k).catch((d) => U(d)).finally(V);
431
441
  });
432
- l(this, "disconnectFromServer", async () => this.sipConnector.disconnect().then(() => (i("disconnectFromServer: then"), { isSuccessful: !0 })).catch((e) => (i("disconnectFromServer: catch", e), { isSuccessful: !1 })));
442
+ l(this, "disconnectFromServer", async () => this.sipConnector.disconnect().then(() => (a("disconnectFromServer: then"), { isSuccessful: !0 })).catch((e) => (a("disconnectFromServer: catch", e), { isSuccessful: !1 })));
433
443
  l(this, "answerIncomingCall", async (e) => {
434
444
  const {
435
445
  mediaStream: t,
436
446
  extraHeaders: s,
437
447
  iceServers: r,
438
448
  contentHint: o,
439
- simulcastEncodings: c,
440
- degradationPreference: a,
449
+ simulcastEncodings: i,
450
+ degradationPreference: c,
441
451
  sendEncodings: u,
442
- setRemoteStreams: S,
443
- onBeforeProgressCall: C,
444
- onSuccessProgressCall: m,
445
- onEnterPurgatory: T,
452
+ offerToReceiveAudio: S,
453
+ offerToReceiveVideo: C,
454
+ directionVideo: m,
455
+ directionAudio: I,
456
+ setRemoteStreams: F,
457
+ onBeforeProgressCall: f,
458
+ onSuccessProgressCall: p,
459
+ onEnterPurgatory: h,
446
460
  onEnterConference: R,
447
- onFailProgressCall: f,
448
- onFinishProgressCall: g,
449
- onEndedCall: p
461
+ onFailProgressCall: y,
462
+ onFinishProgressCall: E,
463
+ onEndedCall: T
450
464
  } = e, b = this.resolveHandleReadyRemoteStreamsDebounced({
451
- onReadyRemoteStreams: S
465
+ onReadyRemoteStreams: F
452
466
  }), _ = this.resolveHandleReadyRemoteStreams({
453
467
  onReadyRemoteStreams: b
454
- }), A = B(
468
+ }), v = w(
455
469
  {
456
- degradationPreference: a
470
+ degradationPreference: c
457
471
  },
458
472
  {
459
473
  preferredMimeTypesVideoCodecs: this.preferredMimeTypesVideoCodecs,
460
474
  excludeMimeTypesVideoCodecs: this.excludeMimeTypesVideoCodecs
461
475
  }
462
476
  );
463
- i("answerIncomingCall", e);
477
+ a("answerIncomingCall", e);
464
478
  const O = async () => this.sipConnector.answerToIncomingCall({
465
479
  mediaStream: t,
466
480
  extraHeaders: s,
467
481
  iceServers: r,
468
482
  contentHint: o,
469
- sendEncodings: N({
483
+ offerToReceiveAudio: S,
484
+ offerToReceiveVideo: C,
485
+ directionVideo: m,
486
+ directionAudio: I,
487
+ sendEncodings: P({
470
488
  mediaStream: t,
471
- simulcastEncodings: c,
489
+ simulcastEncodings: i,
472
490
  sendEncodings: u
473
491
  }),
474
- onAddedTransceiver: A,
492
+ onAddedTransceiver: v,
475
493
  ontrack: _
476
- }), v = () => {
494
+ }), N = () => {
477
495
  const { remoteCallerData: d } = this.sipConnector;
478
496
  return d.incomingNumber;
479
497
  };
480
- let y = !1, E;
481
- const M = (i("subscribeEnterConference: onEnterConference", R), T ?? R ? this.sipConnector.onSession("enterRoom", (d) => {
482
- i("enterRoom", { _room: d, isSuccessProgressCall: y }), E = d, P(E) ? T && T() : R && R({ isSuccessProgressCall: y });
498
+ let M = !1, A;
499
+ const B = (a("subscribeEnterConference: onEnterConference", R), h ?? R ? this.sipConnector.onSession("enterRoom", (d) => {
500
+ a("enterRoom", { _room: d, isSuccessProgressCall: M }), A = d, D(A) ? h && h() : R && R({ isSuccessProgressCall: M });
483
501
  }) : () => {
484
- }), D = (d) => (i("onSuccess"), y = !0, b(), m && m({ isPurgatory: P(E) }), this.sipConnector.onceRaceSession(["ended", "failed"], () => {
485
- M(), p && p();
486
- }), d), I = (d) => {
487
- throw i("onFail"), f && f(), M(), d;
488
- }, F = () => {
489
- i("onFinish"), g && g();
502
+ }), k = (d) => (a("onSuccess"), M = !0, b(), p && p({ isPurgatory: D(A) }), this.sipConnector.onceRaceSession(["ended", "failed"], () => {
503
+ B(), T && T();
504
+ }), d), U = (d) => {
505
+ throw a("onFail"), y && y(), B(), d;
506
+ }, V = () => {
507
+ a("onFinish"), E && E();
490
508
  };
491
- if (i("onBeforeProgressCall"), C) {
492
- const d = v();
493
- C(d);
509
+ if (a("onBeforeProgressCall"), f) {
510
+ const d = N();
511
+ f(d);
494
512
  }
495
- return O().then(D).catch((d) => I(d)).finally(F);
513
+ return O().then(k).catch((d) => U(d)).finally(V);
496
514
  });
497
515
  l(this, "updatePresentation", async ({
498
516
  mediaStream: e,
@@ -500,28 +518,28 @@ class cn {
500
518
  maxBitrate: s,
501
519
  contentHint: r,
502
520
  simulcastEncodings: o,
503
- degradationPreference: c,
504
- sendEncodings: a,
521
+ degradationPreference: i,
522
+ sendEncodings: c,
505
523
  preferredMimeTypesVideoCodecs: u,
506
524
  excludeMimeTypesVideoCodecs: S
507
525
  }) => {
508
- const C = B(
526
+ const C = w(
509
527
  {
510
- degradationPreference: c
528
+ degradationPreference: i
511
529
  },
512
530
  {
513
531
  preferredMimeTypesVideoCodecs: u,
514
532
  excludeMimeTypesVideoCodecs: S
515
533
  }
516
534
  );
517
- return i("updatePresentation"), this.sipConnector.updatePresentation(e, {
535
+ return a("updatePresentation"), this.sipConnector.updatePresentation(e, {
518
536
  isP2P: t,
519
537
  maxBitrate: s,
520
538
  contentHint: r,
521
- sendEncodings: N({
539
+ sendEncodings: P({
522
540
  mediaStream: e,
523
541
  simulcastEncodings: o,
524
- sendEncodings: a
542
+ sendEncodings: c
525
543
  }),
526
544
  onAddedTransceiver: C
527
545
  });
@@ -532,51 +550,51 @@ class cn {
532
550
  maxBitrate: s,
533
551
  contentHint: r,
534
552
  simulcastEncodings: o,
535
- degradationPreference: c,
536
- sendEncodings: a,
553
+ degradationPreference: i,
554
+ sendEncodings: c,
537
555
  preferredMimeTypesVideoCodecs: u,
538
556
  excludeMimeTypesVideoCodecs: S
539
557
  }, C) => {
540
- const m = B(
558
+ const m = w(
541
559
  {
542
- degradationPreference: c
560
+ degradationPreference: i
543
561
  },
544
562
  {
545
563
  preferredMimeTypesVideoCodecs: u,
546
564
  excludeMimeTypesVideoCodecs: S
547
565
  }
548
566
  );
549
- return i("startPresentation"), this.sipConnector.startPresentation(
567
+ return a("startPresentation"), this.sipConnector.startPresentation(
550
568
  e,
551
569
  {
552
570
  isP2P: t,
553
571
  maxBitrate: s,
554
572
  contentHint: r,
555
- sendEncodings: N({
573
+ sendEncodings: P({
556
574
  mediaStream: e,
557
575
  simulcastEncodings: o,
558
- sendEncodings: a
576
+ sendEncodings: c
559
577
  }),
560
578
  onAddedTransceiver: m
561
579
  },
562
580
  C
563
581
  );
564
582
  });
565
- l(this, "stopShareSipConnector", async ({ isP2P: e = !1 } = {}) => (i("stopShareSipConnector"), this.sipConnector.stopPresentation({
583
+ l(this, "stopShareSipConnector", async ({ isP2P: e = !1 } = {}) => (a("stopShareSipConnector"), this.sipConnector.stopPresentation({
566
584
  isP2P: e
567
585
  }).catch((t) => {
568
- i(t);
586
+ a(t);
569
587
  })));
570
588
  l(this, "sendRefusalToTurnOnMic", async () => {
571
589
  if (this.sipConnector.isCallActive)
572
- return i("sendRefusalToTurnOnMic"), this.sipConnector.sendRefusalToTurnOnMic().catch((e) => {
573
- i("sendRefusalToTurnOnMic: error", e);
590
+ return a("sendRefusalToTurnOnMic"), this.sipConnector.sendRefusalToTurnOnMic().catch((e) => {
591
+ a("sendRefusalToTurnOnMic: error", e);
574
592
  });
575
593
  });
576
594
  l(this, "sendRefusalToTurnOnCam", async () => {
577
595
  if (this.sipConnector.isCallActive)
578
- return i("sendRefusalToTurnOnCam"), this.sipConnector.sendRefusalToTurnOnCam().catch((e) => {
579
- i("sendRefusalToTurnOnCam: error", e);
596
+ return a("sendRefusalToTurnOnCam"), this.sipConnector.sendRefusalToTurnOnCam().catch((e) => {
597
+ a("sendRefusalToTurnOnCam: error", e);
580
598
  });
581
599
  });
582
600
  l(this, "sendMediaState", async ({
@@ -584,34 +602,34 @@ class cn {
584
602
  isEnabledMic: t
585
603
  }) => {
586
604
  if (this.sipConnector.isCallActive)
587
- return i("sendMediaState"), this.sipConnector.sendMediaState({ cam: e, mic: t });
605
+ return a("sendMediaState"), this.sipConnector.sendMediaState({ cam: e, mic: t });
588
606
  });
589
607
  l(this, "replaceMediaStream", async (e, {
590
608
  deleteExisting: t,
591
609
  addMissing: s,
592
610
  forceRenegotiation: r,
593
611
  contentHint: o,
594
- simulcastEncodings: c,
595
- degradationPreference: a,
612
+ simulcastEncodings: i,
613
+ degradationPreference: c,
596
614
  sendEncodings: u
597
615
  } = {}) => {
598
- const S = B(
616
+ const S = w(
599
617
  {
600
- degradationPreference: a
618
+ degradationPreference: c
601
619
  },
602
620
  {
603
621
  preferredMimeTypesVideoCodecs: this.preferredMimeTypesVideoCodecs,
604
622
  excludeMimeTypesVideoCodecs: this.excludeMimeTypesVideoCodecs
605
623
  }
606
624
  );
607
- return i("replaceMediaStream"), this.sipConnector.replaceMediaStream(e, {
625
+ return a("replaceMediaStream"), this.sipConnector.replaceMediaStream(e, {
608
626
  deleteExisting: t,
609
627
  addMissing: s,
610
628
  forceRenegotiation: r,
611
629
  contentHint: o,
612
- sendEncodings: N({
630
+ sendEncodings: P({
613
631
  mediaStream: e,
614
- simulcastEncodings: c,
632
+ simulcastEncodings: i,
615
633
  sendEncodings: u
616
634
  }),
617
635
  onAddedTransceiver: S
@@ -619,44 +637,44 @@ class cn {
619
637
  });
620
638
  l(this, "askPermissionToEnableCam", async () => {
621
639
  if (this.sipConnector.isCallActive)
622
- return i("askPermissionToEnableCam"), this.sipConnector.askPermissionToEnableCam();
640
+ return a("askPermissionToEnableCam"), this.sipConnector.askPermissionToEnableCam();
623
641
  });
624
642
  l(this, "resolveHandleReadyRemoteStreamsDebounced", ({
625
643
  onReadyRemoteStreams: e
626
- }) => ue(() => {
644
+ }) => me(() => {
627
645
  const t = this.sipConnector.getRemoteStreams();
628
- i("remoteStreams", t), t && e(t);
646
+ a("remoteStreams", t), t && e(t);
629
647
  }, 200));
630
648
  l(this, "resolveHandleReadyRemoteStreams", ({
631
649
  onReadyRemoteStreams: e
632
650
  }) => ({ track: t }) => {
633
- Ye(t) && e();
651
+ Ze(t) && e();
634
652
  });
635
- l(this, "getRemoteStreams", () => (i("getRemoteStreams"), this.sipConnector.getRemoteStreams()));
636
- l(this, "onUseLicense", (e) => (i("onUseLicense"), this.sipConnector.onSession("useLicense", e)));
637
- l(this, "onMustStopPresentation", (e) => (i("onMustStopPresentation"), this.sipConnector.onSession("mustStopPresentation", e)));
638
- l(this, "onMoveToSpectators", (e) => (i("onMoveToSpectators"), this.sipConnector.onSession(se, e)));
639
- l(this, "onMoveToParticipants", (e) => (i("onMoveToParticipants"), this.sipConnector.onSession(re, e)));
653
+ l(this, "getRemoteStreams", () => (a("getRemoteStreams"), this.sipConnector.getRemoteStreams()));
654
+ l(this, "onUseLicense", (e) => (a("onUseLicense"), this.sipConnector.onSession("useLicense", e)));
655
+ l(this, "onMustStopPresentation", (e) => (a("onMustStopPresentation"), this.sipConnector.onSession("mustStopPresentation", e)));
656
+ l(this, "onMoveToSpectators", (e) => (a("onMoveToSpectators"), this.sipConnector.onSession(ce, e)));
657
+ l(this, "onMoveToParticipants", (e) => (a("onMoveToParticipants"), this.sipConnector.onSession(ae, e)));
640
658
  this.sipConnector = e, this.preferredMimeTypesVideoCodecs = t, this.excludeMimeTypesVideoCodecs = s;
641
659
  }
642
660
  }
643
661
  export {
644
- k as EEventsMainCAM,
645
- ln as EEventsMic,
646
- dn as EEventsSyncMediaState,
647
- Sn as EMimeTypesVideoCodecs,
648
- mn as EUseLicense,
649
- cn as SipConnectorFacade,
650
- Cn as causes,
651
- fn as constants,
652
- En as debug,
653
- Je as default,
654
- hn as disableDebug,
655
- Rn as enableDebug,
656
- gn as eventNames,
657
- Ne as getCodecFromSender,
658
- pn as hasCanceledCallError,
659
- on as resolveVideoSendingBalancer,
660
- te as setParametersToSender,
661
- rn as tools
662
+ L as EEventsMainCAM,
663
+ Cn as EEventsMic,
664
+ fn as EEventsSyncMediaState,
665
+ hn as EMimeTypesVideoCodecs,
666
+ Rn as EUseLicense,
667
+ dn as SipConnectorFacade,
668
+ gn as causes,
669
+ pn as constants,
670
+ An as debug,
671
+ tn as default,
672
+ yn as disableDebug,
673
+ En as enableDebug,
674
+ Tn as eventNames,
675
+ De as getCodecFromSender,
676
+ bn as hasCanceledCallError,
677
+ ln as resolveVideoSendingBalancer,
678
+ ie as setParametersToSender,
679
+ un as tools
662
680
  };