@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.
@@ -12264,10 +12264,10 @@ var stripCodecs = function stripCodecs(sdp, codecs) {
12264
12264
  var getCurrentCodecAndSampleRate = function getCurrentCodecAndSampleRate(sdp, mediaType) {
12265
12265
  var rows = sdp.split("\n");
12266
12266
  var codecPt;
12267
+ var ret = {};
12267
12268
 
12268
12269
  for (var i = 0; i < rows.length; i++) {
12269
12270
  if (codecPt && rows[i].indexOf("a=rtpmap:" + codecPt) != -1) {
12270
- var ret = {};
12271
12271
  ret.name = rows[i].split(" ")[1].split("/")[0];
12272
12272
  ret.sampleRate = rows[i].split(" ")[1].split("/")[1];
12273
12273
  return ret;
@@ -12277,7 +12277,12 @@ var getCurrentCodecAndSampleRate = function getCurrentCodecAndSampleRate(sdp, me
12277
12277
  if (rows[i].indexOf("m=" + mediaType) != -1) {
12278
12278
  codecPt = rows[i].split(" ")[3].trim();
12279
12279
  }
12280
- }
12280
+ } // A workaround for empty sdp passed #WCS-3583
12281
+
12282
+
12283
+ ret.name = "undefined";
12284
+ ret.sampleRate = "undefined";
12285
+ return ret;
12281
12286
  };
12282
12287
 
12283
12288
  module.exports = {
@@ -12821,8 +12826,17 @@ var createConnection = function createConnection(options) {
12821
12826
  var mediaType = report.mediaType;
12822
12827
  obj[mediaType] = {}; //WCS-1922, currentRemoteDescription - browser compatibilitySection: Chrome 70, FF 57, Safari 11
12823
12828
 
12824
- var description = connection.currentRemoteDescription != undefined ? connection.currentRemoteDescription : connection.remoteDescription;
12825
- var codec = util.getCurrentCodecAndSampleRate(description.sdp, mediaType);
12829
+ var description = connection.currentRemoteDescription != undefined ? connection.currentRemoteDescription : connection.remoteDescription; // SDP may be null in Safari 12.1 and older, prevent TypeError here #WCS-3583
12830
+
12831
+ var sdp = "";
12832
+
12833
+ if (description && description.sdp) {
12834
+ sdp = description.sdp;
12835
+ } else {
12836
+ logger.debug(LOG_PREFIX, "Can't parse current SDP to detect codec and sampleRate");
12837
+ }
12838
+
12839
+ var codec = util.getCurrentCodecAndSampleRate(sdp, mediaType);
12826
12840
  obj[mediaType]["codec"] = codec.name;
12827
12841
  obj[mediaType]["codecRate"] = codec.sampleRate;
12828
12842
  Object.keys(report).forEach(function (key) {