@flashphoner/websdk 2.0.222 → 2.0.223

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,4 +1,4 @@
1
- Web SDK - 2.0.222
1
+ Web SDK - 2.0.223
2
2
 
3
3
  [Download builds](https://docs.flashphoner.com/display/WEBSDK2EN/Web+SDK+release+notes)
4
4
 
@@ -13367,10 +13367,10 @@ var stripCodecs = function stripCodecs(sdp, codecs) {
13367
13367
  var getCurrentCodecAndSampleRate = function getCurrentCodecAndSampleRate(sdp, mediaType) {
13368
13368
  var rows = sdp.split("\n");
13369
13369
  var codecPt;
13370
+ var ret = {};
13370
13371
 
13371
13372
  for (var i = 0; i < rows.length; i++) {
13372
13373
  if (codecPt && rows[i].indexOf("a=rtpmap:" + codecPt) != -1) {
13373
- var ret = {};
13374
13374
  ret.name = rows[i].split(" ")[1].split("/")[0];
13375
13375
  ret.sampleRate = rows[i].split(" ")[1].split("/")[1];
13376
13376
  return ret;
@@ -13380,7 +13380,12 @@ var getCurrentCodecAndSampleRate = function getCurrentCodecAndSampleRate(sdp, me
13380
13380
  if (rows[i].indexOf("m=" + mediaType) != -1) {
13381
13381
  codecPt = rows[i].split(" ")[3].trim();
13382
13382
  }
13383
- }
13383
+ } // A workaround for empty sdp passed #WCS-3583
13384
+
13385
+
13386
+ ret.name = "undefined";
13387
+ ret.sampleRate = "undefined";
13388
+ return ret;
13384
13389
  };
13385
13390
 
13386
13391
  module.exports = {
@@ -13924,8 +13929,17 @@ var createConnection = function createConnection(options) {
13924
13929
  var mediaType = report.mediaType;
13925
13930
  obj[mediaType] = {}; //WCS-1922, currentRemoteDescription - browser compatibilitySection: Chrome 70, FF 57, Safari 11
13926
13931
 
13927
- var description = connection.currentRemoteDescription != undefined ? connection.currentRemoteDescription : connection.remoteDescription;
13928
- var codec = util.getCurrentCodecAndSampleRate(description.sdp, mediaType);
13932
+ var description = connection.currentRemoteDescription != undefined ? connection.currentRemoteDescription : connection.remoteDescription; // SDP may be null in Safari 12.1 and older, prevent TypeError here #WCS-3583
13933
+
13934
+ var sdp = "";
13935
+
13936
+ if (description && description.sdp) {
13937
+ sdp = description.sdp;
13938
+ } else {
13939
+ logger.debug(LOG_PREFIX, "Can't parse current SDP to detect codec and sampleRate");
13940
+ }
13941
+
13942
+ var codec = util.getCurrentCodecAndSampleRate(sdp, mediaType);
13929
13943
  obj[mediaType]["codec"] = codec.name;
13930
13944
  obj[mediaType]["codecRate"] = codec.sampleRate;
13931
13945
  Object.keys(report).forEach(function (key) {