sip-connector 5.2.0 → 5.4.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.
@@ -1,6 +1,7 @@
1
1
  import type { UA, WebSocketInterface } from '@krivega/jssip';
2
2
  import type { IncomingRequest } from '@krivega/jssip/lib/SIPMessage';
3
- import type { IncomingInfoEvent, OutgoingInfoEvent, RTCSession } from '@krivega/jssip/lib/RTCSession';
3
+ import type RTCSession from '@krivega/jssip/lib/RTCSession';
4
+ import type { IncomingInfoEvent, OutgoingInfoEvent } from '@krivega/jssip/lib/RTCSession';
4
5
  import type { IncomingRTCSessionEvent, RegisteredEvent, UnRegisteredEvent } from '@krivega/jssip/lib/UA';
5
6
  import type { TEventUA, TEventSession } from './eventNames';
6
7
  export declare enum EEventsMainCAM {
@@ -29,6 +30,9 @@ declare type TMediaState = {
29
30
  cam: boolean;
30
31
  mic: boolean;
31
32
  };
33
+ declare type TOptionsInfoMediaState = {
34
+ noTerminateWhenError: boolean;
35
+ };
32
36
  declare const CMD_CHANNELS: "channels";
33
37
  declare const CMD_WEBCAST_STARTED: "WebcastStarted";
34
38
  declare const CMD_ADDED_TO_LIST_MODERATORS: "addedToListModerators";
@@ -166,14 +170,15 @@ export default class SipConnector {
166
170
  replaceMediaStream(mediaStream: MediaStream, options?: {
167
171
  deleteExisting: boolean;
168
172
  addMissing: boolean;
173
+ forceRenegotiation: boolean;
169
174
  }): Promise<void>;
170
175
  declineToIncomingCall: ({ statusCode }?: {
171
176
  statusCode?: number | undefined;
172
177
  }) => Promise<unknown>;
173
178
  busyIncomingCall: () => Promise<unknown>;
174
179
  removeIncomingSession: () => void;
175
- askPermissionToEnableCam(): Promise<void>;
176
- askPermissionToEnableMic(): Promise<void>;
180
+ askPermissionToEnableCam(options?: TOptionsInfoMediaState): Promise<void>;
181
+ askPermissionToEnableMic(options?: TOptionsInfoMediaState): Promise<void>;
177
182
  startPresentation(stream: MediaStream, { isNeedReinvite, isP2P, maxBitrate, }?: {
178
183
  isNeedReinvite?: boolean;
179
184
  isP2P?: boolean;
@@ -192,8 +197,6 @@ export default class SipConnector {
192
197
  onceSession(eventName: TEventSession, handler: any): void;
193
198
  waitSession(eventName: TEventSession): Promise<any>;
194
199
  offSession(eventName: TEventSession, handler: any): void;
195
- isMutedVideo(): boolean | undefined;
196
- isMutedAudio(): boolean | undefined;
197
200
  isConfigured(): boolean;
198
201
  getConnectionConfiguration(): {
199
202
  sipServerUrl?: string | undefined;
@@ -207,14 +210,14 @@ export default class SipConnector {
207
210
  getRemoteStreams(): MediaStream[] | undefined;
208
211
  get connection(): RTCPeerConnection | undefined;
209
212
  get remoteCallerData(): {
210
- displayName: string | undefined;
211
- host: string | undefined;
212
- incomingNumber: string | undefined;
213
+ displayName: any;
214
+ host: any;
215
+ incomingNumber: any;
213
216
  session: RTCSession | undefined;
214
217
  };
215
218
  get requested(): boolean;
216
- get isEstablishedSession(): boolean | undefined;
217
- get isRegistered(): boolean;
219
+ get establishedSession(): RTCSession | undefined;
220
+ get isRegistered(): any;
218
221
  get isRegisterConfig(): boolean;
219
222
  get isCallActive(): boolean;
220
223
  get isAvailableIncomingCall(): boolean;
@@ -247,17 +250,17 @@ export default class SipConnector {
247
250
  _handleShareState: (eventName: any) => void;
248
251
  _maybeTriggerChannels: (request: IncomingRequest) => void;
249
252
  _handleNotify: (header: TInfoNotify) => void;
250
- _maybeTriggerRemovedFromListModeratorsNotify: ({ conference, }: TRemovedFromListModeratorsInfoNotify) => void;
251
- _maybeTriggerAddedToListModeratorsNotify: ({ conference }: TAddedToListModeratorsInfoNotify) => void;
252
- _maybeTriggerWebcastStartedNotify: ({ body: { conference, type } }: TWebcastInfoNotify) => void;
253
- _maybeTriggerWebcastStoppedNotify: ({ body: { conference, type } }: TWebcastInfoNotify) => void;
254
- _maybeTriggerAccountChangedNotify: () => void;
255
- _maybeTriggerAccountDeletedNotify: () => void;
256
- _maybeTriggerConferenceParticipantTokenIssued: ({ body: { conference, participant, jwt }, }: TConferenceParticipantTokenIssued) => void;
257
- _maybeTriggerChannelsNotify: (channelsInfo: TChannelsInfoNotify) => void;
258
- _maybeTriggerParticipantMoveRequestToConference: ({ body: { conference }, }: TMoveRequestToConferenceInfoNotify) => void;
259
- _maybeTriggerParticipantCancelingWordRequest: ({ body: { conference }, }: TCancelingWordRequestInfoNotify) => void;
260
- _maybeTriggerParticipantMoveRequestToStream: ({ body: { conference }, }: TMoveRequestToStreamInfoNotify) => void;
253
+ _triggerRemovedFromListModeratorsNotify: ({ conference, }: TRemovedFromListModeratorsInfoNotify) => void;
254
+ _triggerAddedToListModeratorsNotify: ({ conference }: TAddedToListModeratorsInfoNotify) => void;
255
+ _triggerWebcastStartedNotify: ({ body: { conference, type } }: TWebcastInfoNotify) => void;
256
+ _triggerWebcastStoppedNotify: ({ body: { conference, type } }: TWebcastInfoNotify) => void;
257
+ _triggerAccountChangedNotify: () => void;
258
+ _triggerAccountDeletedNotify: () => void;
259
+ _triggerConferenceParticipantTokenIssued: ({ body: { conference, participant, jwt }, }: TConferenceParticipantTokenIssued) => void;
260
+ _triggerChannelsNotify: (channelsInfo: TChannelsInfoNotify) => void;
261
+ _triggerParticipantMoveRequestToConference: ({ body: { conference }, }: TMoveRequestToConferenceInfoNotify) => void;
262
+ _triggerParticipantCancelingWordRequest: ({ body: { conference }, }: TCancelingWordRequestInfoNotify) => void;
263
+ _triggerParticipantMoveRequestToStream: ({ body: { conference }, }: TMoveRequestToStreamInfoNotify) => void;
261
264
  _triggerEnterRoom: (request: IncomingRequest) => void;
262
265
  _triggerShareState: (request: IncomingRequest) => void;
263
266
  _triggerMainCamControl: (request: IncomingRequest) => void;
@@ -268,7 +271,7 @@ export default class SipConnector {
268
271
  _maybeHandleNotify: (request: IncomingRequest) => void;
269
272
  waitChannels(): Promise<TChannels>;
270
273
  sendChannels({ inputChannels, outputChannels }: TChannels): void;
271
- sendMediaState({ cam, mic }: TMediaState): void;
274
+ sendMediaState({ cam, mic }: TMediaState, options?: TOptionsInfoMediaState): void;
272
275
  _handleEnded: (error: ICustomError) => void;
273
276
  }
274
277
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"SipConnector.d.ts","sourceRoot":"","sources":["../src/SipConnector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SipConnector.d.ts","sourceRoot":"","sources":["../src/SipConnector.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ const causes_1 = require("./causes");
21
21
  const headers_1 = require("./headers");
22
22
  const getExtraHeadersRemoteAddress_1 = __importDefault(require("./getExtraHeadersRemoteAddress"));
23
23
  const utils_1 = require("./utils");
24
+ const errors_1 = require("./utils/errors");
24
25
  const constants_1 = require("./constants");
25
26
  const BUSY_HERE_STATUS_CODE = 486;
26
27
  const REQUEST_TERMINATED_STATUS_CODE = 487;
@@ -132,7 +133,7 @@ class SipConnector {
132
133
  if (originator === ORIGINATOR_REMOTE) {
133
134
  this.incomingSession = session;
134
135
  const callerData = this.remoteCallerData;
135
- this.incomingSession.on(constants_1.FAILED, () => {
136
+ session.on(constants_1.FAILED, () => {
136
137
  this.removeIncomingSession();
137
138
  this._uaEvents.trigger(constants_1.FAILED_INCOMING_CALL, callerData);
138
139
  });
@@ -315,19 +316,24 @@ class SipConnector {
315
316
  }
316
317
  this.session = this.incomingSession;
317
318
  this.removeIncomingSession();
319
+ const session = this.session;
320
+ if (!session) {
321
+ reject(new Error('No session established'));
322
+ return;
323
+ }
318
324
  this._sessionEvents.eachTriggers((trigger, eventName) => {
319
325
  const sessionJsSipEvent = eventNames_1.SESSION_JSSIP_EVENT_NAMES.find((jsSipEvent) => {
320
326
  return jsSipEvent === eventName;
321
327
  });
322
328
  if (sessionJsSipEvent) {
323
- this.session.on(sessionJsSipEvent, trigger);
329
+ session.on(sessionJsSipEvent, trigger);
324
330
  }
325
331
  });
326
332
  this._connectionConfiguration.answer = true;
327
- this._connectionConfiguration.number = this.session.remote_identity.uri.user;
333
+ this._connectionConfiguration.number = session.remote_identity.uri.user;
328
334
  this._handleCall({ ontrack }).then(resolve).catch(reject);
329
335
  const preparedMediaStream = mediaStream ? (0, utils_1.prepareMediaStream)(mediaStream) : undefined;
330
- this.session.answer({
336
+ session.answer({
331
337
  extraHeaders,
332
338
  mediaStream: preparedMediaStream,
333
339
  pcConfig: {
@@ -390,20 +396,20 @@ class SipConnector {
390
396
  };
391
397
  this._sendDTMF = (tone) => {
392
398
  return new Promise((resolve, reject) => {
393
- if (this.session) {
394
- this.onceSession(constants_1.NEW_DTMF, ({ originator }) => {
395
- if (originator === ORIGINATOR_LOCAL) {
396
- resolve();
397
- }
398
- });
399
- this.session.sendDTMF(tone, {
400
- duration: 120,
401
- interToneGap: 600,
402
- });
403
- }
404
- else {
405
- reject();
399
+ const session = this.session;
400
+ if (!session) {
401
+ reject(new Error('No session established'));
402
+ return;
406
403
  }
404
+ this.onceSession(constants_1.NEW_DTMF, ({ originator }) => {
405
+ if (originator === ORIGINATOR_LOCAL) {
406
+ resolve();
407
+ }
408
+ });
409
+ session.sendDTMF(tone, {
410
+ duration: 120,
411
+ interToneGap: 600,
412
+ });
407
413
  });
408
414
  };
409
415
  this._hangUpWithoutCancelRequests = () => __awaiter(this, void 0, void 0, function* () {
@@ -447,115 +453,113 @@ class SipConnector {
447
453
  this._handleNotify = (header) => {
448
454
  if (header.cmd === CMD_CHANNELS) {
449
455
  const channelsInfo = header;
450
- this._maybeTriggerChannelsNotify(channelsInfo);
456
+ this._triggerChannelsNotify(channelsInfo);
451
457
  }
452
458
  else if (header.cmd === CMD_WEBCAST_STARTED) {
453
459
  const webcastInfo = header;
454
- this._maybeTriggerWebcastStartedNotify(webcastInfo);
460
+ this._triggerWebcastStartedNotify(webcastInfo);
455
461
  }
456
462
  else if (header.cmd === CMD_WEBCAST_STOPPED) {
457
463
  const webcastInfo = header;
458
- this._maybeTriggerWebcastStoppedNotify(webcastInfo);
464
+ this._triggerWebcastStoppedNotify(webcastInfo);
459
465
  }
460
466
  else if (header.cmd === CMD_ADDED_TO_LIST_MODERATORS) {
461
467
  const data = header;
462
- this._maybeTriggerAddedToListModeratorsNotify(data);
468
+ this._triggerAddedToListModeratorsNotify(data);
463
469
  }
464
470
  else if (header.cmd === CMD_REMOVED_FROM_LIST_MODERATORS) {
465
471
  const data = header;
466
- this._maybeTriggerRemovedFromListModeratorsNotify(data);
472
+ this._triggerRemovedFromListModeratorsNotify(data);
467
473
  }
468
474
  else if (header.cmd === CMD_MOVE_REQUEST_TO_CONFERENCE) {
469
475
  const data = header;
470
- this._maybeTriggerParticipantMoveRequestToConference(data);
476
+ this._triggerParticipantMoveRequestToConference(data);
471
477
  }
472
478
  else if (header.cmd === CMD_CANCELLING_WORD_REQUEST) {
473
479
  const data = header;
474
- this._maybeTriggerParticipantCancelingWordRequest(data);
480
+ this._triggerParticipantCancelingWordRequest(data);
475
481
  }
476
482
  else if (header.cmd === CMD_MOVE_REQUEST_TO_STREAM) {
477
483
  const data = header;
478
- this._maybeTriggerParticipantMoveRequestToStream(data);
484
+ this._triggerParticipantMoveRequestToStream(data);
479
485
  }
480
486
  else if (header.cmd === CMD_ACCOUNT_CHANGED) {
481
- this._maybeTriggerAccountChangedNotify();
487
+ this._triggerAccountChangedNotify();
482
488
  }
483
489
  else if (header.cmd === CMD_ACCOUNT_DELETED) {
484
- this._maybeTriggerAccountDeletedNotify();
490
+ this._triggerAccountDeletedNotify();
485
491
  }
486
492
  else if (header.cmd === CMD_CONFERENCE_PARTICIPANT_TOKEN_ISSUED) {
487
493
  const data = header;
488
- this._maybeTriggerConferenceParticipantTokenIssued(data);
494
+ this._triggerConferenceParticipantTokenIssued(data);
489
495
  }
490
496
  };
491
- this._maybeTriggerRemovedFromListModeratorsNotify = ({ conference, }) => {
497
+ this._triggerRemovedFromListModeratorsNotify = ({ conference, }) => {
492
498
  const headersParametersModeratorsList = {
493
499
  conference,
494
500
  };
495
- this._sessionEvents.trigger(constants_1.PARTICIPANT_REMOVED_FROM_LIST_MODERATORS, headersParametersModeratorsList);
501
+ this._uaEvents.trigger(constants_1.PARTICIPANT_REMOVED_FROM_LIST_MODERATORS, headersParametersModeratorsList);
496
502
  };
497
- this._maybeTriggerAddedToListModeratorsNotify = ({ conference }) => {
503
+ this._triggerAddedToListModeratorsNotify = ({ conference }) => {
498
504
  const headersParametersModeratorsList = {
499
505
  conference,
500
506
  };
501
- this._sessionEvents.trigger(constants_1.PARTICIPANT_ADDED_TO_LIST_MODERATORS, headersParametersModeratorsList);
507
+ this._uaEvents.trigger(constants_1.PARTICIPANT_ADDED_TO_LIST_MODERATORS, headersParametersModeratorsList);
502
508
  };
503
- this._maybeTriggerWebcastStartedNotify = ({ body: { conference, type } }) => {
509
+ this._triggerWebcastStartedNotify = ({ body: { conference, type } }) => {
504
510
  const headersParametersWebcast = {
505
511
  conference,
506
512
  type,
507
513
  };
508
- this._sessionEvents.trigger(constants_1.WEBCAST_STARTED, headersParametersWebcast);
514
+ this._uaEvents.trigger(constants_1.WEBCAST_STARTED, headersParametersWebcast);
509
515
  };
510
- this._maybeTriggerWebcastStoppedNotify = ({ body: { conference, type } }) => {
516
+ this._triggerWebcastStoppedNotify = ({ body: { conference, type } }) => {
511
517
  const headersParametersWebcast = {
512
518
  conference,
513
519
  type,
514
520
  };
515
- this._sessionEvents.trigger(constants_1.WEBCAST_STOPPED, headersParametersWebcast);
521
+ this._uaEvents.trigger(constants_1.WEBCAST_STOPPED, headersParametersWebcast);
516
522
  };
517
- this._maybeTriggerAccountChangedNotify = () => {
518
- this._sessionEvents.trigger(constants_1.ACCOUNT_CHANGED, undefined);
523
+ this._triggerAccountChangedNotify = () => {
524
+ this._uaEvents.trigger(constants_1.ACCOUNT_CHANGED, undefined);
519
525
  };
520
- this._maybeTriggerAccountDeletedNotify = () => {
521
- this._sessionEvents.trigger(constants_1.ACCOUNT_DELETED, undefined);
526
+ this._triggerAccountDeletedNotify = () => {
527
+ this._uaEvents.trigger(constants_1.ACCOUNT_DELETED, undefined);
522
528
  };
523
- this._maybeTriggerConferenceParticipantTokenIssued = ({ body: { conference, participant, jwt }, }) => {
529
+ this._triggerConferenceParticipantTokenIssued = ({ body: { conference, participant, jwt }, }) => {
524
530
  const headersConferenceParticipantTokenIssued = {
525
531
  conference,
526
532
  participant,
527
533
  jwt,
528
534
  };
529
- this._sessionEvents.trigger(constants_1.CONFERENCE_PARTICIPANT_TOKEN_ISSUED, headersConferenceParticipantTokenIssued);
535
+ this._uaEvents.trigger(constants_1.CONFERENCE_PARTICIPANT_TOKEN_ISSUED, headersConferenceParticipantTokenIssued);
530
536
  };
531
- this._maybeTriggerChannelsNotify = (channelsInfo) => {
537
+ this._triggerChannelsNotify = (channelsInfo) => {
532
538
  const inputChannels = channelsInfo.input;
533
539
  const outputChannels = channelsInfo.output;
534
540
  const data = {
535
541
  inputChannels,
536
542
  outputChannels,
537
543
  };
538
- if (this.session) {
539
- this._sessionEvents.trigger(constants_1.CHANNELS_NOTIFY, data);
540
- }
544
+ this._uaEvents.trigger(constants_1.CHANNELS_NOTIFY, data);
541
545
  };
542
- this._maybeTriggerParticipantMoveRequestToConference = ({ body: { conference }, }) => {
546
+ this._triggerParticipantMoveRequestToConference = ({ body: { conference }, }) => {
543
547
  const data = {
544
548
  conference,
545
549
  };
546
- this._sessionEvents.trigger(constants_1.PARTICIPANT_MOVE_REQUEST_TO_CONFERENCE, data);
550
+ this._uaEvents.trigger(constants_1.PARTICIPANT_MOVE_REQUEST_TO_CONFERENCE, data);
547
551
  };
548
- this._maybeTriggerParticipantCancelingWordRequest = ({ body: { conference }, }) => {
552
+ this._triggerParticipantCancelingWordRequest = ({ body: { conference }, }) => {
549
553
  const data = {
550
554
  conference,
551
555
  };
552
- this._sessionEvents.trigger(constants_1.PARTICIPANT_CANCELLING_WORD_REQUEST, data);
556
+ this._uaEvents.trigger(constants_1.PARTICIPANT_CANCELLING_WORD_REQUEST, data);
553
557
  };
554
- this._maybeTriggerParticipantMoveRequestToStream = ({ body: { conference }, }) => {
558
+ this._triggerParticipantMoveRequestToStream = ({ body: { conference }, }) => {
555
559
  const data = {
556
560
  conference,
557
561
  };
558
- this._sessionEvents.trigger(constants_1.PARTICIPANT_MOVE_REQUEST_TO_STREAM, data);
562
+ this._uaEvents.trigger(constants_1.PARTICIPANT_MOVE_REQUEST_TO_STREAM, data);
559
563
  };
560
564
  this._triggerEnterRoom = (request) => {
561
565
  const room = request.getHeader(headers_1.HEADER_CONTENT_ENTER_ROOM);
@@ -660,21 +664,44 @@ class SipConnector {
660
664
  });
661
665
  }
662
666
  replaceMediaStream(mediaStream, options) {
667
+ if (!this.session) {
668
+ throw new Error('No session established');
669
+ }
663
670
  return this.session.replaceMediaStream(mediaStream, options);
664
671
  }
665
- askPermissionToEnableCam() {
672
+ askPermissionToEnableCam(options = { noTerminateWhenError: true }) {
673
+ if (!this.session) {
674
+ throw new Error('No session established');
675
+ }
666
676
  const extraHeaders = [headers_1.HEADER_ENABLE_MAIN_CAM];
667
- return this.session.sendInfo(headers_1.CONTENT_TYPE_MAIN_CAM, undefined, {
668
- extraHeaders,
677
+ return this.session
678
+ .sendInfo(headers_1.CONTENT_TYPE_MAIN_CAM, undefined, Object.assign(Object.assign({}, options), { extraHeaders }))
679
+ .catch((error) => {
680
+ if ((0, errors_1.hasDeclineResponseFromServer)(error)) {
681
+ throw error;
682
+ }
683
+ return;
669
684
  });
670
685
  }
671
- askPermissionToEnableMic() {
686
+ askPermissionToEnableMic(options = { noTerminateWhenError: true }) {
687
+ if (!this.session) {
688
+ throw new Error('No session established');
689
+ }
672
690
  const extraHeaders = [headers_1.HEADER_ENABLE_MIC];
673
- return this.session.sendInfo(headers_1.CONTENT_TYPE_MIC, undefined, {
674
- extraHeaders,
691
+ return this.session
692
+ .sendInfo(headers_1.CONTENT_TYPE_MIC, undefined, Object.assign(Object.assign({}, options), { extraHeaders }))
693
+ .catch((error) => {
694
+ if ((0, errors_1.hasDeclineResponseFromServer)(error)) {
695
+ throw error;
696
+ }
697
+ return;
675
698
  });
676
699
  }
677
700
  startPresentation(stream, { isNeedReinvite = true, isP2P = false, maxBitrate, } = {}) {
701
+ const session = this.establishedSession;
702
+ if (!session) {
703
+ return Promise.reject(new Error('No session established'));
704
+ }
678
705
  this.isPendingPresentation = true;
679
706
  const streamPresentationCurrent = (0, utils_1.prepareMediaStream)(stream);
680
707
  this._streamPresentationCurrent = streamPresentationCurrent;
@@ -682,29 +709,28 @@ class SipConnector {
682
709
  const preparatoryHeaders = isP2P
683
710
  ? [headers_1.HEADER_START_PRESENTATION_P2P]
684
711
  : [headers_1.HEADER_START_PRESENTATION];
685
- if (this.isEstablishedSession) {
686
- result = this.session.sendInfo(headers_1.CONTENT_TYPE_SHARE_STATE, undefined, {
687
- extraHeaders: preparatoryHeaders,
688
- })
689
- .then(() => {
690
- return this.session.startPresentation(streamPresentationCurrent, isNeedReinvite);
691
- })
692
- .then(() => {
693
- const { connection } = this;
694
- if (!connection || maxBitrate === undefined) {
695
- return undefined;
696
- }
697
- const senders = connection.getSenders();
698
- return (0, scaleBitrate_1.default)(senders, stream, maxBitrate);
699
- })
700
- .then(() => {
701
- return stream;
702
- })
703
- .catch((error) => {
704
- this._sessionEvents.trigger(constants_1.PRESENTATION_FAILED, error);
705
- throw error;
706
- });
707
- }
712
+ result = session
713
+ .sendInfo(headers_1.CONTENT_TYPE_SHARE_STATE, undefined, {
714
+ extraHeaders: preparatoryHeaders,
715
+ })
716
+ .then(() => {
717
+ return session.startPresentation(streamPresentationCurrent, isNeedReinvite);
718
+ })
719
+ .then(() => {
720
+ const { connection } = this;
721
+ if (!connection || maxBitrate === undefined) {
722
+ return undefined;
723
+ }
724
+ const senders = connection.getSenders();
725
+ return (0, scaleBitrate_1.default)(senders, stream, maxBitrate);
726
+ })
727
+ .then(() => {
728
+ return stream;
729
+ })
730
+ .catch((error) => {
731
+ this._sessionEvents.trigger(constants_1.PRESENTATION_FAILED, error);
732
+ throw error;
733
+ });
708
734
  return result.finally(() => {
709
735
  this.isPendingPresentation = false;
710
736
  });
@@ -714,19 +740,21 @@ class SipConnector {
714
740
  const streamPresentationPrev = this._streamPresentationCurrent;
715
741
  let result = Promise.resolve();
716
742
  const preparatoryHeaders = isP2P ? [headers_1.HEADER_STOP_PRESENTATION_P2P] : [headers_1.HEADER_STOP_PRESENTATION];
717
- if (this.isEstablishedSession && streamPresentationPrev) {
718
- result = this.session.sendInfo(headers_1.CONTENT_TYPE_SHARE_STATE, undefined, {
743
+ const session = this.establishedSession;
744
+ if (session && streamPresentationPrev) {
745
+ result = session
746
+ .sendInfo(headers_1.CONTENT_TYPE_SHARE_STATE, undefined, {
719
747
  extraHeaders: preparatoryHeaders,
720
748
  })
721
749
  .then(() => {
722
- return this.session.stopPresentation(streamPresentationPrev);
750
+ return session.stopPresentation(streamPresentationPrev);
723
751
  })
724
752
  .catch((error) => {
725
753
  this._sessionEvents.trigger(constants_1.PRESENTATION_FAILED, error);
726
754
  throw error;
727
755
  });
728
756
  }
729
- if (!this.isEstablishedSession && streamPresentationPrev) {
757
+ if (!session && streamPresentationPrev) {
730
758
  this._sessionEvents.trigger(constants_1.PRESENTATION_ENDED, streamPresentationPrev);
731
759
  }
732
760
  return result.finally(() => {
@@ -761,18 +789,6 @@ class SipConnector {
761
789
  offSession(eventName, handler) {
762
790
  this._sessionEvents.off(eventName, handler);
763
791
  }
764
- isMutedVideo() {
765
- if (!this.session) {
766
- return undefined;
767
- }
768
- return this.session.isMuted().video;
769
- }
770
- isMutedAudio() {
771
- if (!this.session) {
772
- return undefined;
773
- }
774
- return this.session.isMuted().audio;
775
- }
776
792
  isConfigured() {
777
793
  return !!this.ua;
778
794
  }
@@ -815,8 +831,8 @@ class SipConnector {
815
831
  this._cancelableCall.requested ||
816
832
  this._cancelableAnswer.requested);
817
833
  }
818
- get isEstablishedSession() {
819
- return this.session && this.session.isEstablished();
834
+ get establishedSession() {
835
+ return this.session && this.session.isEstablished() ? this.session : undefined;
820
836
  }
821
837
  get isRegistered() {
822
838
  return !!this.ua && this.ua.isRegistered();
@@ -894,6 +910,9 @@ class SipConnector {
894
910
  return this.waitSession(constants_1.CHANNELS);
895
911
  }
896
912
  sendChannels({ inputChannels, outputChannels }) {
913
+ if (!this.session) {
914
+ throw new Error('No session established');
915
+ }
897
916
  const headerInputChannels = `${headers_1.HEADER_INPUT_CHANNELS}: ${inputChannels}`;
898
917
  const headerOutputChannels = `${headers_1.HEADER_OUTPUT_CHANNELS}: ${outputChannels}`;
899
918
  const extraHeaders = [
@@ -902,7 +921,10 @@ class SipConnector {
902
921
  ];
903
922
  this.session.sendInfo(headers_1.CONTENT_TYPE_CHANNELS, undefined, { extraHeaders });
904
923
  }
905
- sendMediaState({ cam, mic }) {
924
+ sendMediaState({ cam, mic }, options = { noTerminateWhenError: true }) {
925
+ if (!this.session) {
926
+ throw new Error('No session established');
927
+ }
906
928
  const headerMediaState = `${headers_1.HEADER_MEDIA_STATE}: currentstate`;
907
929
  const headerCam = `${headers_1.HEADER_MAIN_CAM_STATE}: ${+cam}`;
908
930
  const headerMic = `${headers_1.HEADER_MIC_STATE}: ${+mic}`;
@@ -911,7 +933,7 @@ class SipConnector {
911
933
  headerCam,
912
934
  headerMic,
913
935
  ];
914
- this.session.sendInfo(headers_1.CONTENT_TYPE_MEDIA_STATE, undefined, { extraHeaders });
936
+ this.session.sendInfo(headers_1.CONTENT_TYPE_MEDIA_STATE, undefined, Object.assign(Object.assign({}, options), { extraHeaders }));
915
937
  }
916
938
  }
917
939
  exports.default = SipConnector;