sip-connector 5.1.7 → 5.3.1

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.
@@ -25,6 +25,13 @@ declare type TChannels = {
25
25
  inputChannels: string;
26
26
  outputChannels: string;
27
27
  };
28
+ declare type TMediaState = {
29
+ cam: boolean;
30
+ mic: boolean;
31
+ };
32
+ declare type TOptionsInfoMediaState = {
33
+ noTerminateWhenError: boolean;
34
+ };
28
35
  declare const CMD_CHANNELS: "channels";
29
36
  declare const CMD_WEBCAST_STARTED: "WebcastStarted";
30
37
  declare const CMD_ADDED_TO_LIST_MODERATORS: "addedToListModerators";
@@ -168,6 +175,8 @@ export default class SipConnector {
168
175
  }) => Promise<unknown>;
169
176
  busyIncomingCall: () => Promise<unknown>;
170
177
  removeIncomingSession: () => void;
178
+ askPermissionToEnableCam(options?: TOptionsInfoMediaState): Promise<void>;
179
+ askPermissionToEnableMic(options?: TOptionsInfoMediaState): Promise<void>;
171
180
  startPresentation(stream: MediaStream, { isNeedReinvite, isP2P, maxBitrate, }?: {
172
181
  isNeedReinvite?: boolean;
173
182
  isP2P?: boolean;
@@ -186,8 +195,6 @@ export default class SipConnector {
186
195
  onceSession(eventName: TEventSession, handler: any): void;
187
196
  waitSession(eventName: TEventSession): Promise<any>;
188
197
  offSession(eventName: TEventSession, handler: any): void;
189
- isMutedVideo(): boolean | undefined;
190
- isMutedAudio(): boolean | undefined;
191
198
  isConfigured(): boolean;
192
199
  getConnectionConfiguration(): {
193
200
  sipServerUrl?: string | undefined;
@@ -207,7 +214,7 @@ export default class SipConnector {
207
214
  session: RTCSession | undefined;
208
215
  };
209
216
  get requested(): boolean;
210
- get isEstablishedSession(): boolean | undefined;
217
+ get establishedSession(): RTCSession | undefined;
211
218
  get isRegistered(): boolean;
212
219
  get isRegisterConfig(): boolean;
213
220
  get isCallActive(): boolean;
@@ -241,17 +248,17 @@ export default class SipConnector {
241
248
  _handleShareState: (eventName: any) => void;
242
249
  _maybeTriggerChannels: (request: IncomingRequest) => void;
243
250
  _handleNotify: (header: TInfoNotify) => void;
244
- _maybeTriggerRemovedFromListModeratorsNotify: ({ conference, }: TRemovedFromListModeratorsInfoNotify) => void;
245
- _maybeTriggerAddedToListModeratorsNotify: ({ conference }: TAddedToListModeratorsInfoNotify) => void;
246
- _maybeTriggerWebcastStartedNotify: ({ body: { conference, type } }: TWebcastInfoNotify) => void;
247
- _maybeTriggerWebcastStoppedNotify: ({ body: { conference, type } }: TWebcastInfoNotify) => void;
248
- _maybeTriggerAccountChangedNotify: () => void;
249
- _maybeTriggerAccountDeletedNotify: () => void;
250
- _maybeTriggerConferenceParticipantTokenIssued: ({ body: { conference, participant, jwt }, }: TConferenceParticipantTokenIssued) => void;
251
- _maybeTriggerChannelsNotify: (channelsInfo: TChannelsInfoNotify) => void;
252
- _maybeTriggerParticipantMoveRequestToConference: ({ body: { conference }, }: TMoveRequestToConferenceInfoNotify) => void;
253
- _maybeTriggerParticipantCancelingWordRequest: ({ body: { conference }, }: TCancelingWordRequestInfoNotify) => void;
254
- _maybeTriggerParticipantMoveRequestToStream: ({ body: { conference }, }: TMoveRequestToStreamInfoNotify) => void;
251
+ _triggerRemovedFromListModeratorsNotify: ({ conference, }: TRemovedFromListModeratorsInfoNotify) => void;
252
+ _triggerAddedToListModeratorsNotify: ({ conference }: TAddedToListModeratorsInfoNotify) => void;
253
+ _triggerWebcastStartedNotify: ({ body: { conference, type } }: TWebcastInfoNotify) => void;
254
+ _triggerWebcastStoppedNotify: ({ body: { conference, type } }: TWebcastInfoNotify) => void;
255
+ _triggerAccountChangedNotify: () => void;
256
+ _triggerAccountDeletedNotify: () => void;
257
+ _triggerConferenceParticipantTokenIssued: ({ body: { conference, participant, jwt }, }: TConferenceParticipantTokenIssued) => void;
258
+ _triggerChannelsNotify: (channelsInfo: TChannelsInfoNotify) => void;
259
+ _triggerParticipantMoveRequestToConference: ({ body: { conference }, }: TMoveRequestToConferenceInfoNotify) => void;
260
+ _triggerParticipantCancelingWordRequest: ({ body: { conference }, }: TCancelingWordRequestInfoNotify) => void;
261
+ _triggerParticipantMoveRequestToStream: ({ body: { conference }, }: TMoveRequestToStreamInfoNotify) => void;
255
262
  _triggerEnterRoom: (request: IncomingRequest) => void;
256
263
  _triggerShareState: (request: IncomingRequest) => void;
257
264
  _triggerMainCamControl: (request: IncomingRequest) => void;
@@ -262,6 +269,7 @@ export default class SipConnector {
262
269
  _maybeHandleNotify: (request: IncomingRequest) => void;
263
270
  waitChannels(): Promise<TChannels>;
264
271
  sendChannels({ inputChannels, outputChannels }: TChannels): void;
272
+ sendMediaState({ cam, mic }: TMediaState, options?: TOptionsInfoMediaState): void;
265
273
  _handleEnded: (error: ICustomError) => void;
266
274
  }
267
275
  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;
@@ -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,9 +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
  }
672
+ askPermissionToEnableCam(options = { noTerminateWhenError: true }) {
673
+ if (!this.session) {
674
+ throw new Error('No session established');
675
+ }
676
+ const extraHeaders = [headers_1.HEADER_ENABLE_MAIN_CAM];
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;
684
+ });
685
+ }
686
+ askPermissionToEnableMic(options = { noTerminateWhenError: true }) {
687
+ if (!this.session) {
688
+ throw new Error('No session established');
689
+ }
690
+ const extraHeaders = [headers_1.HEADER_ENABLE_MIC];
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;
698
+ });
699
+ }
665
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
+ }
666
705
  this.isPendingPresentation = true;
667
706
  const streamPresentationCurrent = (0, utils_1.prepareMediaStream)(stream);
668
707
  this._streamPresentationCurrent = streamPresentationCurrent;
@@ -670,29 +709,28 @@ class SipConnector {
670
709
  const preparatoryHeaders = isP2P
671
710
  ? [headers_1.HEADER_START_PRESENTATION_P2P]
672
711
  : [headers_1.HEADER_START_PRESENTATION];
673
- if (this.isEstablishedSession) {
674
- result = this.session.sendInfo(headers_1.CONTENT_TYPE_SHARE_STATE, undefined, {
675
- extraHeaders: preparatoryHeaders,
676
- })
677
- .then(() => {
678
- return this.session.startPresentation(streamPresentationCurrent, isNeedReinvite);
679
- })
680
- .then(() => {
681
- const { connection } = this;
682
- if (!connection || maxBitrate === undefined) {
683
- return undefined;
684
- }
685
- const senders = connection.getSenders();
686
- return (0, scaleBitrate_1.default)(senders, stream, maxBitrate);
687
- })
688
- .then(() => {
689
- return stream;
690
- })
691
- .catch((error) => {
692
- this._sessionEvents.trigger(constants_1.PRESENTATION_FAILED, error);
693
- throw error;
694
- });
695
- }
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
+ });
696
734
  return result.finally(() => {
697
735
  this.isPendingPresentation = false;
698
736
  });
@@ -702,19 +740,21 @@ class SipConnector {
702
740
  const streamPresentationPrev = this._streamPresentationCurrent;
703
741
  let result = Promise.resolve();
704
742
  const preparatoryHeaders = isP2P ? [headers_1.HEADER_STOP_PRESENTATION_P2P] : [headers_1.HEADER_STOP_PRESENTATION];
705
- if (this.isEstablishedSession && streamPresentationPrev) {
706
- 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, {
707
747
  extraHeaders: preparatoryHeaders,
708
748
  })
709
749
  .then(() => {
710
- return this.session.stopPresentation(streamPresentationPrev);
750
+ return session.stopPresentation(streamPresentationPrev);
711
751
  })
712
752
  .catch((error) => {
713
753
  this._sessionEvents.trigger(constants_1.PRESENTATION_FAILED, error);
714
754
  throw error;
715
755
  });
716
756
  }
717
- if (!this.isEstablishedSession && streamPresentationPrev) {
757
+ if (!session && streamPresentationPrev) {
718
758
  this._sessionEvents.trigger(constants_1.PRESENTATION_ENDED, streamPresentationPrev);
719
759
  }
720
760
  return result.finally(() => {
@@ -749,18 +789,6 @@ class SipConnector {
749
789
  offSession(eventName, handler) {
750
790
  this._sessionEvents.off(eventName, handler);
751
791
  }
752
- isMutedVideo() {
753
- if (!this.session) {
754
- return undefined;
755
- }
756
- return this.session.isMuted().video;
757
- }
758
- isMutedAudio() {
759
- if (!this.session) {
760
- return undefined;
761
- }
762
- return this.session.isMuted().audio;
763
- }
764
792
  isConfigured() {
765
793
  return !!this.ua;
766
794
  }
@@ -803,8 +831,8 @@ class SipConnector {
803
831
  this._cancelableCall.requested ||
804
832
  this._cancelableAnswer.requested);
805
833
  }
806
- get isEstablishedSession() {
807
- return this.session && this.session.isEstablished();
834
+ get establishedSession() {
835
+ return this.session && this.session.isEstablished() ? this.session : undefined;
808
836
  }
809
837
  get isRegistered() {
810
838
  return !!this.ua && this.ua.isRegistered();
@@ -882,6 +910,9 @@ class SipConnector {
882
910
  return this.waitSession(constants_1.CHANNELS);
883
911
  }
884
912
  sendChannels({ inputChannels, outputChannels }) {
913
+ if (!this.session) {
914
+ throw new Error('No session established');
915
+ }
885
916
  const headerInputChannels = `${headers_1.HEADER_INPUT_CHANNELS}: ${inputChannels}`;
886
917
  const headerOutputChannels = `${headers_1.HEADER_OUTPUT_CHANNELS}: ${outputChannels}`;
887
918
  const extraHeaders = [
@@ -890,6 +921,20 @@ class SipConnector {
890
921
  ];
891
922
  this.session.sendInfo(headers_1.CONTENT_TYPE_CHANNELS, undefined, { extraHeaders });
892
923
  }
924
+ sendMediaState({ cam, mic }, options = { noTerminateWhenError: true }) {
925
+ if (!this.session) {
926
+ throw new Error('No session established');
927
+ }
928
+ const headerMediaState = `${headers_1.HEADER_MEDIA_STATE}: currentstate`;
929
+ const headerCam = `${headers_1.HEADER_MAIN_CAM_STATE}: ${+cam}`;
930
+ const headerMic = `${headers_1.HEADER_MIC_STATE}: ${+mic}`;
931
+ const extraHeaders = [
932
+ headerMediaState,
933
+ headerCam,
934
+ headerMic,
935
+ ];
936
+ this.session.sendInfo(headers_1.CONTENT_TYPE_MEDIA_STATE, undefined, Object.assign(Object.assign({}, options), { extraHeaders }));
937
+ }
893
938
  }
894
939
  exports.default = SipConnector;
895
940
  //# sourceMappingURL=SipConnector.js.map