mediasoup-client 3.7.1 → 3.7.3

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.
Files changed (107) hide show
  1. package/README.md +85 -112
  2. package/lib/Consumer.d.ts +1 -1
  3. package/lib/Consumer.d.ts.map +1 -1
  4. package/lib/Consumer.js +1 -1
  5. package/lib/DataConsumer.d.ts +1 -1
  6. package/lib/DataConsumer.d.ts.map +1 -1
  7. package/lib/DataConsumer.js +1 -1
  8. package/lib/DataProducer.d.ts +1 -1
  9. package/lib/DataProducer.d.ts.map +1 -1
  10. package/lib/DataProducer.js +1 -1
  11. package/lib/Device.d.ts +3 -3
  12. package/lib/Device.d.ts.map +1 -1
  13. package/lib/Device.js +66 -89
  14. package/lib/EnhancedEventEmitter.d.ts.map +1 -1
  15. package/lib/Logger.d.ts.map +1 -1
  16. package/lib/Producer.d.ts +5 -15
  17. package/lib/Producer.d.ts.map +1 -1
  18. package/lib/Producer.js +2 -2
  19. package/lib/RtpParameters.d.ts.map +1 -1
  20. package/lib/SctpParameters.d.ts.map +1 -1
  21. package/lib/Transport.d.ts +21 -11
  22. package/lib/Transport.d.ts.map +1 -1
  23. package/lib/Transport.js +73 -55
  24. package/lib/errors.d.ts.map +1 -1
  25. package/lib/errors.js +6 -6
  26. package/lib/handlers/Chrome111.d.ts +4 -4
  27. package/lib/handlers/Chrome111.d.ts.map +1 -1
  28. package/lib/handlers/Chrome111.js +79 -78
  29. package/lib/handlers/Chrome55.d.ts +4 -4
  30. package/lib/handlers/Chrome55.d.ts.map +1 -1
  31. package/lib/handlers/Chrome55.js +88 -81
  32. package/lib/handlers/Chrome67.d.ts +4 -4
  33. package/lib/handlers/Chrome67.d.ts.map +1 -1
  34. package/lib/handlers/Chrome67.js +90 -84
  35. package/lib/handlers/Chrome70.d.ts +4 -4
  36. package/lib/handlers/Chrome70.d.ts.map +1 -1
  37. package/lib/handlers/Chrome70.js +81 -79
  38. package/lib/handlers/Chrome74.d.ts +4 -4
  39. package/lib/handlers/Chrome74.d.ts.map +1 -1
  40. package/lib/handlers/Chrome74.js +80 -79
  41. package/lib/handlers/Edge11.d.ts +1 -1
  42. package/lib/handlers/Edge11.d.ts.map +1 -1
  43. package/lib/handlers/Edge11.js +66 -78
  44. package/lib/handlers/FakeHandler.d.ts +3 -3
  45. package/lib/handlers/FakeHandler.d.ts.map +1 -1
  46. package/lib/handlers/FakeHandler.js +20 -22
  47. package/lib/handlers/Firefox60.d.ts +4 -4
  48. package/lib/handlers/Firefox60.d.ts.map +1 -1
  49. package/lib/handlers/Firefox60.js +80 -73
  50. package/lib/handlers/HandlerInterface.d.ts +1 -0
  51. package/lib/handlers/HandlerInterface.d.ts.map +1 -1
  52. package/lib/handlers/ReactNative.d.ts +4 -4
  53. package/lib/handlers/ReactNative.d.ts.map +1 -1
  54. package/lib/handlers/ReactNative.js +89 -83
  55. package/lib/handlers/ReactNativeUnifiedPlan.d.ts +4 -4
  56. package/lib/handlers/ReactNativeUnifiedPlan.d.ts.map +1 -1
  57. package/lib/handlers/ReactNativeUnifiedPlan.js +80 -79
  58. package/lib/handlers/Safari11.d.ts +4 -4
  59. package/lib/handlers/Safari11.d.ts.map +1 -1
  60. package/lib/handlers/Safari11.js +89 -82
  61. package/lib/handlers/Safari12.d.ts +4 -4
  62. package/lib/handlers/Safari12.d.ts.map +1 -1
  63. package/lib/handlers/Safari12.js +80 -78
  64. package/lib/handlers/ortc/edgeUtils.d.ts.map +1 -1
  65. package/lib/handlers/ortc/utils.d.ts.map +1 -1
  66. package/lib/handlers/ortc/utils.js +2 -2
  67. package/lib/handlers/sdp/MediaSection.d.ts +5 -5
  68. package/lib/handlers/sdp/MediaSection.d.ts.map +1 -1
  69. package/lib/handlers/sdp/MediaSection.js +296 -318
  70. package/lib/handlers/sdp/RemoteSdp.d.ts +5 -5
  71. package/lib/handlers/sdp/RemoteSdp.d.ts.map +1 -1
  72. package/lib/handlers/sdp/RemoteSdp.js +28 -30
  73. package/lib/handlers/sdp/commonUtils.d.ts +8 -5
  74. package/lib/handlers/sdp/commonUtils.d.ts.map +1 -1
  75. package/lib/handlers/sdp/commonUtils.js +71 -59
  76. package/lib/handlers/sdp/plainRtpUtils.d.ts +2 -2
  77. package/lib/handlers/sdp/plainRtpUtils.d.ts.map +1 -1
  78. package/lib/handlers/sdp/plainRtpUtils.js +5 -7
  79. package/lib/handlers/sdp/planBUtils.d.ts +2 -2
  80. package/lib/handlers/sdp/planBUtils.d.ts.map +1 -1
  81. package/lib/handlers/sdp/planBUtils.js +11 -14
  82. package/lib/handlers/sdp/unifiedPlanUtils.d.ts +2 -2
  83. package/lib/handlers/sdp/unifiedPlanUtils.d.ts.map +1 -1
  84. package/lib/handlers/sdp/unifiedPlanUtils.js +11 -14
  85. package/lib/index.d.ts +1 -1
  86. package/lib/index.js +1 -1
  87. package/lib/ortc.d.ts +4 -58
  88. package/lib/ortc.d.ts.map +1 -1
  89. package/lib/ortc.js +432 -478
  90. package/lib/scalabilityModes.d.ts.map +1 -1
  91. package/lib/scalabilityModes.js +2 -2
  92. package/lib/{tests → test}/fakeParameters.d.ts +3 -2
  93. package/lib/test/fakeParameters.d.ts.map +1 -0
  94. package/lib/test/fakeParameters.js +654 -0
  95. package/lib/{tests → test}/test.d.ts.map +1 -1
  96. package/lib/{tests → test}/test.js +469 -496
  97. package/lib/test/uaTestCases.d.ts.map +1 -0
  98. package/lib/{tests → test}/uaTestCases.js +17 -17
  99. package/lib/types.d.ts.map +1 -1
  100. package/lib/utils.d.ts.map +1 -1
  101. package/npm-scripts.mjs +75 -103
  102. package/package.json +93 -90
  103. package/lib/tests/fakeParameters.d.ts.map +0 -1
  104. package/lib/tests/fakeParameters.js +0 -662
  105. package/lib/tests/uaTestCases.d.ts.map +0 -1
  106. /package/lib/{tests → test}/test.d.ts +0 -0
  107. /package/lib/{tests → test}/uaTestCases.d.ts +0 -0
@@ -84,7 +84,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
84
84
  iceTransportPolicy: 'all',
85
85
  bundlePolicy: 'max-bundle',
86
86
  rtcpMuxPolicy: 'require',
87
- sdpSemantics: 'unified-plan'
87
+ sdpSemantics: 'unified-plan',
88
88
  });
89
89
  try {
90
90
  pc.addTransceiver('audio');
@@ -95,7 +95,9 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
95
95
  }
96
96
  catch (error) { }
97
97
  const sdpObject = sdpTransform.parse(offer.sdp);
98
- const nativeRtpCapabilities = sdpCommonUtils.extractRtpCapabilities({ sdpObject });
98
+ const nativeRtpCapabilities = sdpCommonUtils.extractRtpCapabilities({
99
+ sdpObject,
100
+ });
99
101
  // libwebrtc supports NACK for OPUS but doesn't announce it.
100
102
  ortcUtils.addNackSuppportForOpus(nativeRtpCapabilities);
101
103
  return nativeRtpCapabilities;
@@ -111,10 +113,10 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
111
113
  async getNativeSctpCapabilities() {
112
114
  logger.debug('getNativeSctpCapabilities()');
113
115
  return {
114
- numStreams: SCTP_NUM_STREAMS
116
+ numStreams: SCTP_NUM_STREAMS,
115
117
  };
116
118
  }
117
- run({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, proprietaryConstraints, extendedRtpCapabilities }) {
119
+ run({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, proprietaryConstraints, extendedRtpCapabilities, }) {
118
120
  this.assertNotClosed();
119
121
  logger.debug('run()');
120
122
  this._direction = direction;
@@ -122,22 +124,19 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
122
124
  iceParameters,
123
125
  iceCandidates,
124
126
  dtlsParameters,
125
- sctpParameters
127
+ sctpParameters,
126
128
  });
127
- this._sendingRtpParametersByKind =
128
- {
129
- audio: ortc.getSendingRtpParameters('audio', extendedRtpCapabilities),
130
- video: ortc.getSendingRtpParameters('video', extendedRtpCapabilities)
131
- };
132
- this._sendingRemoteRtpParametersByKind =
133
- {
134
- audio: ortc.getSendingRemoteRtpParameters('audio', extendedRtpCapabilities),
135
- video: ortc.getSendingRemoteRtpParameters('video', extendedRtpCapabilities)
136
- };
129
+ this._sendingRtpParametersByKind = {
130
+ audio: ortc.getSendingRtpParameters('audio', extendedRtpCapabilities),
131
+ video: ortc.getSendingRtpParameters('video', extendedRtpCapabilities),
132
+ };
133
+ this._sendingRemoteRtpParametersByKind = {
134
+ audio: ortc.getSendingRemoteRtpParameters('audio', extendedRtpCapabilities),
135
+ video: ortc.getSendingRemoteRtpParameters('video', extendedRtpCapabilities),
136
+ };
137
137
  if (dtlsParameters.role && dtlsParameters.role !== 'auto') {
138
- this._forcedLocalDtlsRole = dtlsParameters.role === 'server'
139
- ? 'client'
140
- : 'server';
138
+ this._forcedLocalDtlsRole =
139
+ dtlsParameters.role === 'server' ? 'client' : 'server';
141
140
  }
142
141
  this._pc = new RTCPeerConnection({
143
142
  iceServers: iceServers || [],
@@ -145,7 +144,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
145
144
  bundlePolicy: 'max-bundle',
146
145
  rtcpMuxPolicy: 'require',
147
146
  sdpSemantics: 'unified-plan',
148
- ...additionalSettings
147
+ ...additionalSettings,
149
148
  }, proprietaryConstraints);
150
149
  this._pc.addEventListener('icegatheringstatechange', () => {
151
150
  this.emit('@icegatheringstatechange', this._pc.iceGatheringState);
@@ -159,32 +158,27 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
159
158
  logger.warn('run() | pc.connectionState not supported, using pc.iceConnectionState');
160
159
  this._pc.addEventListener('iceconnectionstatechange', () => {
161
160
  switch (this._pc.iceConnectionState) {
162
- case 'checking':
163
- {
164
- this.emit('@connectionstatechange', 'connecting');
165
- break;
166
- }
161
+ case 'checking': {
162
+ this.emit('@connectionstatechange', 'connecting');
163
+ break;
164
+ }
167
165
  case 'connected':
168
- case 'completed':
169
- {
170
- this.emit('@connectionstatechange', 'connected');
171
- break;
172
- }
173
- case 'failed':
174
- {
175
- this.emit('@connectionstatechange', 'failed');
176
- break;
177
- }
178
- case 'disconnected':
179
- {
180
- this.emit('@connectionstatechange', 'disconnected');
181
- break;
182
- }
183
- case 'closed':
184
- {
185
- this.emit('@connectionstatechange', 'closed');
186
- break;
187
- }
166
+ case 'completed': {
167
+ this.emit('@connectionstatechange', 'connected');
168
+ break;
169
+ }
170
+ case 'failed': {
171
+ this.emit('@connectionstatechange', 'failed');
172
+ break;
173
+ }
174
+ case 'disconnected': {
175
+ this.emit('@connectionstatechange', 'disconnected');
176
+ break;
177
+ }
178
+ case 'closed': {
179
+ this.emit('@connectionstatechange', 'closed');
180
+ break;
181
+ }
188
182
  }
189
183
  });
190
184
  }
@@ -225,7 +219,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
225
219
  this.assertNotClosed();
226
220
  return this._pc.getStats();
227
221
  }
228
- async send({ track, encodings, codecOptions, codec }) {
222
+ async send({ track, encodings, codecOptions, codec, }) {
229
223
  this.assertNotClosed();
230
224
  this.assertSendDirection();
231
225
  logger.debug('send() [kind:%s, track.id:%s]', track.kind, track.id);
@@ -255,24 +249,22 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
255
249
  }
256
250
  const sendingRtpParameters = utils.clone(this._sendingRtpParametersByKind[track.kind]);
257
251
  // This may throw.
258
- sendingRtpParameters.codecs =
259
- ortc.reduceCodecs(sendingRtpParameters.codecs, codec);
252
+ sendingRtpParameters.codecs = ortc.reduceCodecs(sendingRtpParameters.codecs, codec);
260
253
  const sendingRemoteRtpParameters = utils.clone(this._sendingRemoteRtpParametersByKind[track.kind]);
261
254
  // This may throw.
262
- sendingRemoteRtpParameters.codecs =
263
- ortc.reduceCodecs(sendingRemoteRtpParameters.codecs, codec);
255
+ sendingRemoteRtpParameters.codecs = ortc.reduceCodecs(sendingRemoteRtpParameters.codecs, codec);
264
256
  const mediaSectionIdx = this._remoteSdp.getNextMediaSectionIdx();
265
257
  const transceiver = this._pc.addTransceiver(track, {
266
258
  direction: 'sendonly',
267
259
  streams: [this._sendStream],
268
- sendEncodings: encodings
260
+ sendEncodings: encodings,
269
261
  });
270
262
  const offer = await this._pc.createOffer();
271
263
  let localSdpObject = sdpTransform.parse(offer.sdp);
272
264
  if (!this._transportReady) {
273
265
  await this.setupTransport({
274
266
  localDtlsRole: this._forcedLocalDtlsRole ?? 'client',
275
- localSdpObject
267
+ localSdpObject,
276
268
  });
277
269
  }
278
270
  logger.debug('send() | calling pc.setLocalDescription() [offer:%o]', offer);
@@ -284,17 +276,21 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
284
276
  localSdpObject = sdpTransform.parse(this._pc.localDescription.sdp);
285
277
  const offerMediaObject = localSdpObject.media[mediaSectionIdx.idx];
286
278
  // Set RTCP CNAME.
287
- sendingRtpParameters.rtcp.cname =
288
- sdpCommonUtils.getCname({ offerMediaObject });
279
+ sendingRtpParameters.rtcp.cname = sdpCommonUtils.getCname({
280
+ offerMediaObject,
281
+ });
289
282
  // Set RTP encodings by parsing the SDP offer if no encodings are given.
290
283
  if (!encodings) {
291
- sendingRtpParameters.encodings =
292
- sdpUnifiedPlanUtils.getRtpEncodings({ offerMediaObject });
284
+ sendingRtpParameters.encodings = sdpUnifiedPlanUtils.getRtpEncodings({
285
+ offerMediaObject,
286
+ });
293
287
  }
294
288
  // Set RTP encodings by parsing the SDP offer and complete them with given
295
289
  // one if just a single encoding has been given.
296
290
  else if (encodings.length === 1) {
297
- const newEncodings = sdpUnifiedPlanUtils.getRtpEncodings({ offerMediaObject });
291
+ const newEncodings = sdpUnifiedPlanUtils.getRtpEncodings({
292
+ offerMediaObject,
293
+ });
298
294
  Object.assign(newEncodings[0], encodings[0]);
299
295
  sendingRtpParameters.encodings = newEncodings;
300
296
  }
@@ -308,7 +304,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
308
304
  offerRtpParameters: sendingRtpParameters,
309
305
  answerRtpParameters: sendingRemoteRtpParameters,
310
306
  codecOptions,
311
- extmapAllowMixed: true
307
+ extmapAllowMixed: true,
312
308
  });
313
309
  const answer = { type: 'answer', sdp: this._remoteSdp.getSdp() };
314
310
  logger.debug('send() | calling pc.setRemoteDescription() [answer:%o]', answer);
@@ -318,7 +314,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
318
314
  return {
319
315
  localId,
320
316
  rtpParameters: sendingRtpParameters,
321
- rtpSender: transceiver.sender
317
+ rtpSender: transceiver.sender,
322
318
  };
323
319
  }
324
320
  async stopSending(localId) {
@@ -453,7 +449,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
453
449
  }
454
450
  return transceiver.sender.getStats();
455
451
  }
456
- async sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol }) {
452
+ async sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol, }) {
457
453
  this.assertNotClosed();
458
454
  this.assertSendDirection();
459
455
  const options = {
@@ -462,7 +458,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
462
458
  ordered,
463
459
  maxPacketLifeTime,
464
460
  maxRetransmits,
465
- protocol
461
+ protocol,
466
462
  };
467
463
  logger.debug('sendDataChannel() [options:%o]', options);
468
464
  const dataChannel = this._pc.createDataChannel(label, options);
@@ -474,12 +470,11 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
474
470
  if (!this._hasDataChannelMediaSection) {
475
471
  const offer = await this._pc.createOffer();
476
472
  const localSdpObject = sdpTransform.parse(offer.sdp);
477
- const offerMediaObject = localSdpObject.media
478
- .find((m) => m.type === 'application');
473
+ const offerMediaObject = localSdpObject.media.find((m) => m.type === 'application');
479
474
  if (!this._transportReady) {
480
475
  await this.setupTransport({
481
476
  localDtlsRole: this._forcedLocalDtlsRole ?? 'client',
482
- localSdpObject
477
+ localSdpObject,
483
478
  });
484
479
  }
485
480
  logger.debug('sendDataChannel() | calling pc.setLocalDescription() [offer:%o]', offer);
@@ -494,7 +489,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
494
489
  streamId: options.id,
495
490
  ordered: options.ordered,
496
491
  maxPacketLifeTime: options.maxPacketLifeTime,
497
- maxRetransmits: options.maxRetransmits
492
+ maxRetransmits: options.maxRetransmits,
498
493
  };
499
494
  return { dataChannel, sctpStreamParameters };
500
495
  }
@@ -513,7 +508,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
513
508
  kind,
514
509
  offerRtpParameters: rtpParameters,
515
510
  streamId: streamId || rtpParameters.rtcp.cname,
516
- trackId
511
+ trackId,
517
512
  });
518
513
  }
519
514
  const offer = { type: 'offer', sdp: this._remoteSdp.getSdp() };
@@ -524,20 +519,19 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
524
519
  for (const options of optionsList) {
525
520
  const { trackId, rtpParameters } = options;
526
521
  const localId = mapLocalId.get(trackId);
527
- const answerMediaObject = localSdpObject.media
528
- .find((m) => String(m.mid) === localId);
522
+ const answerMediaObject = localSdpObject.media.find((m) => String(m.mid) === localId);
529
523
  // May need to modify codec parameters in the answer based on codec
530
524
  // parameters in the offer.
531
525
  sdpCommonUtils.applyCodecParameters({
532
526
  offerRtpParameters: rtpParameters,
533
- answerMediaObject
527
+ answerMediaObject,
534
528
  });
535
529
  }
536
530
  answer = { type: 'answer', sdp: sdpTransform.write(localSdpObject) };
537
531
  if (!this._transportReady) {
538
532
  await this.setupTransport({
539
533
  localDtlsRole: this._forcedLocalDtlsRole ?? 'client',
540
- localSdpObject
534
+ localSdpObject,
541
535
  });
542
536
  }
543
537
  logger.debug('receive() | calling pc.setLocalDescription() [answer:%o]', answer);
@@ -545,7 +539,8 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
545
539
  for (const options of optionsList) {
546
540
  const { trackId } = options;
547
541
  const localId = mapLocalId.get(trackId);
548
- const transceiver = this._pc.getTransceivers()
542
+ const transceiver = this._pc
543
+ .getTransceivers()
549
544
  .find((t) => t.mid === localId);
550
545
  if (!transceiver) {
551
546
  throw new Error('new RTCRtpTransceiver not found');
@@ -556,7 +551,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
556
551
  results.push({
557
552
  localId,
558
553
  track: transceiver.receiver.track,
559
- rtpReceiver: transceiver.receiver
554
+ rtpReceiver: transceiver.receiver,
560
555
  });
561
556
  }
562
557
  }
@@ -632,17 +627,17 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
632
627
  }
633
628
  return transceiver.receiver.getStats();
634
629
  }
635
- async receiveDataChannel({ sctpStreamParameters, label, protocol }) {
630
+ async receiveDataChannel({ sctpStreamParameters, label, protocol, }) {
636
631
  this.assertNotClosed();
637
632
  this.assertRecvDirection();
638
- const { streamId, ordered, maxPacketLifeTime, maxRetransmits } = sctpStreamParameters;
633
+ const { streamId, ordered, maxPacketLifeTime, maxRetransmits, } = sctpStreamParameters;
639
634
  const options = {
640
635
  negotiated: true,
641
636
  id: streamId,
642
637
  ordered,
643
638
  maxPacketLifeTime,
644
639
  maxRetransmits,
645
- protocol
640
+ protocol,
646
641
  };
647
642
  logger.debug('receiveDataChannel() [options:%o]', options);
648
643
  const dataChannel = this._pc.createDataChannel(label, options);
@@ -658,7 +653,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
658
653
  const localSdpObject = sdpTransform.parse(answer.sdp);
659
654
  await this.setupTransport({
660
655
  localDtlsRole: this._forcedLocalDtlsRole ?? 'client',
661
- localSdpObject
656
+ localSdpObject,
662
657
  });
663
658
  }
664
659
  logger.debug('receiveDataChannel() | calling pc.setRemoteDescription() [answer:%o]', answer);
@@ -667,19 +662,25 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
667
662
  }
668
663
  return { dataChannel };
669
664
  }
670
- async setupTransport({ localDtlsRole, localSdpObject }) {
665
+ async setupTransport({ localDtlsRole, localSdpObject, }) {
671
666
  if (!localSdpObject) {
672
667
  localSdpObject = sdpTransform.parse(this._pc.localDescription.sdp);
673
668
  }
669
+ // Get our local ICE parameters.
670
+ const iceParameters = sdpCommonUtils.extractIceParameters({
671
+ sdpObject: localSdpObject,
672
+ });
674
673
  // Get our local DTLS parameters.
675
- const dtlsParameters = sdpCommonUtils.extractDtlsParameters({ sdpObject: localSdpObject });
674
+ const dtlsParameters = sdpCommonUtils.extractDtlsParameters({
675
+ sdpObject: localSdpObject,
676
+ });
676
677
  // Set our DTLS role.
677
678
  dtlsParameters.role = localDtlsRole;
678
679
  // Update the remote DTLS role in the SDP.
679
680
  this._remoteSdp.updateDtlsRole(localDtlsRole === 'client' ? 'server' : 'client');
680
681
  // Need to tell the remote transport about our parameters.
681
682
  await new Promise((resolve, reject) => {
682
- this.safeEmit('@connect', { dtlsParameters }, resolve, reject);
683
+ this.safeEmit('@connect', { iceParameters, dtlsParameters }, resolve, reject);
683
684
  });
684
685
  this._transportReady = true;
685
686
  }
@@ -25,11 +25,11 @@ export declare class Chrome55 extends HandlerInterface {
25
25
  close(): void;
26
26
  getNativeRtpCapabilities(): Promise<RtpCapabilities>;
27
27
  getNativeSctpCapabilities(): Promise<SctpCapabilities>;
28
- run({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, proprietaryConstraints, extendedRtpCapabilities }: HandlerRunOptions): void;
28
+ run({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, proprietaryConstraints, extendedRtpCapabilities, }: HandlerRunOptions): void;
29
29
  updateIceServers(iceServers: RTCIceServer[]): Promise<void>;
30
30
  restartIce(iceParameters: IceParameters): Promise<void>;
31
31
  getTransportStats(): Promise<RTCStatsReport>;
32
- send({ track, encodings, codecOptions, codec }: HandlerSendOptions): Promise<HandlerSendResult>;
32
+ send({ track, encodings, codecOptions, codec, }: HandlerSendOptions): Promise<HandlerSendResult>;
33
33
  stopSending(localId: string): Promise<void>;
34
34
  pauseSending(localId: string): Promise<void>;
35
35
  resumeSending(localId: string): Promise<void>;
@@ -37,13 +37,13 @@ export declare class Chrome55 extends HandlerInterface {
37
37
  setMaxSpatialLayer(localId: string, spatialLayer: number): Promise<void>;
38
38
  setRtpEncodingParameters(localId: string, params: any): Promise<void>;
39
39
  getSenderStats(localId: string): Promise<RTCStatsReport>;
40
- sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol }: HandlerSendDataChannelOptions): Promise<HandlerSendDataChannelResult>;
40
+ sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol, }: HandlerSendDataChannelOptions): Promise<HandlerSendDataChannelResult>;
41
41
  receive(optionsList: HandlerReceiveOptions[]): Promise<HandlerReceiveResult[]>;
42
42
  stopReceiving(localIds: string[]): Promise<void>;
43
43
  pauseReceiving(localIds: string[]): Promise<void>;
44
44
  resumeReceiving(localIds: string[]): Promise<void>;
45
45
  getReceiverStats(localId: string): Promise<RTCStatsReport>;
46
- receiveDataChannel({ sctpStreamParameters, label, protocol }: HandlerReceiveDataChannelOptions): Promise<HandlerReceiveDataChannelResult>;
46
+ receiveDataChannel({ sctpStreamParameters, label, protocol, }: HandlerReceiveDataChannelOptions): Promise<HandlerReceiveDataChannelResult>;
47
47
  private setupTransport;
48
48
  private assertSendDirection;
49
49
  private assertRecvDirection;
@@ -1 +1 @@
1
- {"version":3,"file":"Chrome55.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome55.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Chrome55.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome55.ts"],"names":[],"mappings":"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"}