@rongcloud/plugin-rtc 5.6.3-alpha.7 → 5.6.4-alpha.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.
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /*
2
- * RCRTC - v5.6.3-alpha.7
3
- * CommitId - 58b37e81b5a25ac7a7c2ed16fa4f996fdc6004ce
4
- * Fri Nov 18 2022 11:53:17 GMT+0800 (中国标准时间)
2
+ * RCRTC - v5.6.4-alpha.1
3
+ * CommitId - 568df307dd985346dd4af574ecc9b4e5577ecd59
4
+ * Fri Nov 25 2022 18:55:25 GMT+0800 (中国标准时间)
5
5
  * ©2020 RongCloud, Inc. All rights reserved.
6
6
  */
7
7
  'use strict';
@@ -6804,30 +6804,33 @@ class RCTrack extends engine.EventEmitter {
6804
6804
  * @param volume 有效值为 0-100
6805
6805
  */
6806
6806
  play(element, options) {
6807
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
6807
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
6808
6808
  return __awaiter(this, void 0, void 0, function* () {
6809
6809
  (_a = this._logger) === null || _a === void 0 ? void 0 : _a.info(RCLoggerTag.L_TRACK_PLAY_O, JSON.stringify({
6810
6810
  element,
6811
6811
  options,
6812
+ kind: (_b = this._kind) !== null && _b !== void 0 ? _b : '',
6812
6813
  msg: `start play trackId: ${this._id}`,
6813
6814
  }));
6814
6815
  if (!this._msTrack) {
6815
- (_b = this._logger) === null || _b === void 0 ? void 0 : _b.error(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6816
+ (_c = this._logger) === null || _c === void 0 ? void 0 : _c.error(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6816
6817
  status: RCLoggerStatus.FAILED,
6817
6818
  code: exports.RCRTCCode.TRACK_NOT_READY,
6819
+ kind: (_d = this._kind) !== null && _d !== void 0 ? _d : '',
6818
6820
  msg: `the track is not ready to play -> id: ${this._id}`,
6819
6821
  }));
6820
6822
  return { code: exports.RCRTCCode.TRACK_NOT_READY };
6821
6823
  }
6822
6824
  if (this._msTrack.readyState === 'ended') {
6823
- (_c = this._logger) === null || _c === void 0 ? void 0 : _c.error(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6825
+ (_e = this._logger) === null || _e === void 0 ? void 0 : _e.error(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6824
6826
  status: RCLoggerStatus.FAILED,
6827
+ kind: (_f = this._kind) !== null && _f !== void 0 ? _f : '',
6825
6828
  msg: `the track's readyState is ended -> id: ${this._id}`,
6826
6829
  }));
6827
6830
  }
6828
6831
  if (options === null || options === void 0 ? void 0 : options.volume) {
6829
6832
  if (!engine.isNumber(options === null || options === void 0 ? void 0 : options.volume)) {
6830
- (_d = this._logger) === null || _d === void 0 ? void 0 : _d.error(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6833
+ (_g = this._logger) === null || _g === void 0 ? void 0 : _g.error(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6831
6834
  status: RCLoggerStatus.FAILED,
6832
6835
  code: exports.RCRTCCode.PARAMS_ERROR,
6833
6836
  msg: 'params error -> options.volume not a number',
@@ -6836,7 +6839,7 @@ class RCTrack extends engine.EventEmitter {
6836
6839
  }
6837
6840
  if ((options === null || options === void 0 ? void 0 : options.volume) < 0) {
6838
6841
  options.volume = 0;
6839
- (_e = this._logger) === null || _e === void 0 ? void 0 : _e.warn(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6842
+ (_h = this._logger) === null || _h === void 0 ? void 0 : _h.warn(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6840
6843
  status: RCLoggerStatus.FAILED,
6841
6844
  msg: 'params error -> options.volume < 0',
6842
6845
  tips: 'the valid range of options.volume is 0-100, the value of volume has been set 0',
@@ -6844,7 +6847,7 @@ class RCTrack extends engine.EventEmitter {
6844
6847
  }
6845
6848
  if ((options === null || options === void 0 ? void 0 : options.volume) > 100) {
6846
6849
  options.volume = 100;
6847
- (_f = this._logger) === null || _f === void 0 ? void 0 : _f.warn(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6850
+ (_j = this._logger) === null || _j === void 0 ? void 0 : _j.warn(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6848
6851
  status: RCLoggerStatus.FAILED,
6849
6852
  msg: 'params error -> options.volume > 100',
6850
6853
  tips: 'the valid range of options.volume is 0-100, the value of volume has been set 100',
@@ -6858,7 +6861,7 @@ class RCTrack extends engine.EventEmitter {
6858
6861
  const deviceIds = (yield device.getSpeakers()).map((item) => item.deviceId);
6859
6862
  const isValid = deviceIds.includes(options.audioDeviceId);
6860
6863
  if (!isValid) {
6861
- (_g = this._logger) === null || _g === void 0 ? void 0 : _g.error(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6864
+ (_k = this._logger) === null || _k === void 0 ? void 0 : _k.error(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6862
6865
  status: RCLoggerStatus.FAILED,
6863
6866
  code: exports.RCRTCCode.PARAMS_ERROR,
6864
6867
  msg: 'params error -> options.audioDeviceId',
@@ -6869,9 +6872,10 @@ class RCTrack extends engine.EventEmitter {
6869
6872
  const isVideoTrack = this.isVideoTrack();
6870
6873
  // video 播放必须传递一个 HTMLVideoElement 实例作为 video track 的播放组件
6871
6874
  if (isVideoTrack && (!element || !(element instanceof HTMLVideoElement || this.__validateVideoNodeName(element)))) {
6872
- (_h = this._logger) === null || _h === void 0 ? void 0 : _h.error(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6875
+ (_l = this._logger) === null || _l === void 0 ? void 0 : _l.error(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6873
6876
  status: RCLoggerStatus.FAILED,
6874
6877
  code: exports.RCRTCCode.VIDEO_TRACK_MISS_MEDIA_ELEMENT,
6878
+ kind: (_m = this._kind) !== null && _m !== void 0 ? _m : '',
6875
6879
  msg: 'params element is not a HTMLVideoElement',
6876
6880
  }));
6877
6881
  return { code: exports.RCRTCCode.VIDEO_TRACK_MISS_MEDIA_ELEMENT };
@@ -6885,73 +6889,81 @@ class RCTrack extends engine.EventEmitter {
6885
6889
  this._element.pause();
6886
6890
  }
6887
6891
  this._element.onloadstart = (evt) => {
6888
- var _a, _b;
6892
+ var _a, _b, _c;
6889
6893
  // 开始寻找资源
6890
6894
  (_a = this._logger) === null || _a === void 0 ? void 0 : _a.info(RCLoggerTag.L_TRACK_LOAD_START_O, JSON.stringify({
6891
6895
  status: RCLoggerStatus.INFO,
6892
- msg: `HTMLMediaElement onloadstart -> id: ${(_b = evt.target) === null || _b === void 0 ? void 0 : _b.id}, trackId: ${this._id}`,
6896
+ kind: (_b = this._kind) !== null && _b !== void 0 ? _b : '',
6897
+ msg: `HTMLMediaElement onloadstart -> id: ${(_c = evt.target) === null || _c === void 0 ? void 0 : _c.id}, trackId: ${this._id}`,
6893
6898
  }));
6894
6899
  };
6895
6900
  this._element.ondurationchange = (evt) => {
6896
- var _a, _b;
6901
+ var _a, _b, _c;
6897
6902
  // 时长变更
6898
6903
  (_a = this._logger) === null || _a === void 0 ? void 0 : _a.info(RCLoggerTag.L_TRACK_DURATION_CHANGE_O, JSON.stringify({
6899
6904
  status: RCLoggerStatus.INFO,
6900
- msg: `HTMLMediaElement ondurationchange -> id: ${(_b = evt.target) === null || _b === void 0 ? void 0 : _b.id}, trackId: ${this._id}`,
6905
+ kind: (_b = this._kind) !== null && _b !== void 0 ? _b : '',
6906
+ msg: `HTMLMediaElement ondurationchange -> id: ${(_c = evt.target) === null || _c === void 0 ? void 0 : _c.id}, trackId: ${this._id}`,
6901
6907
  }));
6902
6908
  };
6903
6909
  this._element.onloadedmetadata = (evt) => {
6904
- var _a, _b;
6910
+ var _a, _b, _c;
6905
6911
  // 元数据加载完成
6906
6912
  (_a = this._logger) === null || _a === void 0 ? void 0 : _a.info(RCLoggerTag.L_TRACK_LOADED_META_DATA_O, JSON.stringify({
6907
6913
  status: RCLoggerStatus.INFO,
6908
- msg: `HTMLMediaElement onloadedmetadata -> id: ${(_b = evt.target) === null || _b === void 0 ? void 0 : _b.id}, trackId: ${this._id}`,
6914
+ kind: (_b = this._kind) !== null && _b !== void 0 ? _b : '',
6915
+ msg: `HTMLMediaElement onloadedmetadata -> id: ${(_c = evt.target) === null || _c === void 0 ? void 0 : _c.id}, trackId: ${this._id}`,
6909
6916
  }));
6910
6917
  };
6911
6918
  this._element.onloadeddata = (evt) => {
6912
- var _a, _b;
6919
+ var _a, _b, _c;
6913
6920
  // 首帧加载完成
6914
6921
  (_a = this._logger) === null || _a === void 0 ? void 0 : _a.info(RCLoggerTag.L_TRACK_LOADED_DATA_O, JSON.stringify({
6915
6922
  status: RCLoggerStatus.INFO,
6916
- msg: `HTMLMediaElement onloadeddata -> id: ${(_b = evt.target) === null || _b === void 0 ? void 0 : _b.id}, trackId: ${this._id}`,
6923
+ kind: (_b = this._kind) !== null && _b !== void 0 ? _b : '',
6924
+ msg: `HTMLMediaElement onloadeddata -> id: ${(_c = evt.target) === null || _c === void 0 ? void 0 : _c.id}, trackId: ${this._id}`,
6917
6925
  }));
6918
6926
  };
6919
6927
  this._element.onabort = (evt) => {
6920
- var _a, _b;
6928
+ var _a, _b, _c;
6921
6929
  // 中止
6922
6930
  (_a = this._logger) === null || _a === void 0 ? void 0 : _a.info(RCLoggerTag.L_TRACK_ABORT_O, JSON.stringify({
6923
6931
  status: RCLoggerStatus.INFO,
6924
- msg: `HTMLMediaElement onabort -> id: ${(_b = evt.target) === null || _b === void 0 ? void 0 : _b.id}, trackId: ${this._id}`,
6932
+ kind: (_b = this._kind) !== null && _b !== void 0 ? _b : '',
6933
+ msg: `HTMLMediaElement onabort -> id: ${(_c = evt.target) === null || _c === void 0 ? void 0 : _c.id}, trackId: ${this._id}`,
6925
6934
  }));
6926
6935
  };
6927
6936
  this._element.oncanplay = (evt) => __awaiter(this, void 0, void 0, function* () {
6928
- var _k, _l, _m, _o, _p;
6937
+ var _p, _q, _r, _s, _t, _u, _v, _w;
6929
6938
  // 可以播放
6930
- (_k = this._logger) === null || _k === void 0 ? void 0 : _k.info(RCLoggerTag.L_TRACK_CANPLAY_O, JSON.stringify({
6939
+ (_p = this._logger) === null || _p === void 0 ? void 0 : _p.info(RCLoggerTag.L_TRACK_CANPLAY_O, JSON.stringify({
6931
6940
  status: RCLoggerStatus.INFO,
6932
- msg: `HTMLMediaElement oncanplay -> id: ${(_l = evt.target) === null || _l === void 0 ? void 0 : _l.id}, trackId: ${this._id}`,
6941
+ kind: (_q = this._kind) !== null && _q !== void 0 ? _q : '',
6942
+ msg: `HTMLMediaElement oncanplay -> id: ${(_r = evt.target) === null || _r === void 0 ? void 0 : _r.id}, trackId: ${this._id}`,
6933
6943
  }));
6934
6944
  try {
6935
6945
  if ((options === null || options === void 0 ? void 0 : options.audioDeviceId) && !isVideoTrack) {
6936
6946
  yield this._element.setSinkId(options.audioDeviceId);
6937
6947
  }
6938
- yield ((_m = this._element) === null || _m === void 0 ? void 0 : _m.play());
6948
+ yield ((_s = this._element) === null || _s === void 0 ? void 0 : _s.play());
6939
6949
  }
6940
6950
  catch (error) {
6941
6951
  /**
6942
6952
  * 检测是否有设置音频输出设备的权限
6943
6953
  */
6944
6954
  if (error.message === 'No permission to use requested device') {
6945
- (_o = this._logger) === null || _o === void 0 ? void 0 : _o.error(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6955
+ (_t = this._logger) === null || _t === void 0 ? void 0 : _t.error(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6946
6956
  status: RCLoggerStatus.FAILED,
6957
+ kind: (_u = this._kind) !== null && _u !== void 0 ? _u : '',
6947
6958
  code: exports.RCRTCCode.NO_PERMISSION_TO_USE_REQUESTED_DEVICE,
6948
6959
  msg: `setSinkId failed, error msg: ${error.message}`,
6949
6960
  }));
6950
6961
  return;
6951
6962
  }
6952
- (_p = this._logger) === null || _p === void 0 ? void 0 : _p.error(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6963
+ (_v = this._logger) === null || _v === void 0 ? void 0 : _v.error(RCLoggerTag.L_TRACK_PLAY_E, JSON.stringify({
6953
6964
  status: RCLoggerStatus.FAILED,
6954
6965
  code: exports.RCRTCCode.TRACK_PLAY_ERROR,
6966
+ kind: (_w = this._kind) !== null && _w !== void 0 ? _w : '',
6955
6967
  msg: `play error, error msg: ${error.message}`,
6956
6968
  }));
6957
6969
  }
@@ -6981,7 +6993,7 @@ class RCTrack extends engine.EventEmitter {
6981
6993
  this._element.volume = (options === null || options === void 0 ? void 0 : options.volume) / 100;
6982
6994
  }
6983
6995
  // 添加标签ID
6984
- (_j = this._element) === null || _j === void 0 ? void 0 : _j.setAttribute(this.DataTrackId, this.getTrackId());
6996
+ (_o = this._element) === null || _o === void 0 ? void 0 : _o.setAttribute(this.DataTrackId, this.getTrackId());
6985
6997
  return { code: exports.RCRTCCode.SUCCESS };
6986
6998
  });
6987
6999
  }
@@ -14804,7 +14816,7 @@ const getCommonHeader$1 = () => ({
14804
14816
  'Content-Type': 'application/json;charset=UTF-8',
14805
14817
  'Cache-Control': 'no-cache',
14806
14818
  ClientType: `web|${browserInfo.browser}|${browserInfo.version}`,
14807
- ClientVersion: "5.6.3-alpha.7",
14819
+ ClientVersion: "5.6.4-alpha.1",
14808
14820
  'Client-Session-Id': getUUID(),
14809
14821
  'Request-Id': Date.now().toString(),
14810
14822
  });
@@ -15380,7 +15392,7 @@ const getCommonHeader = () => ({
15380
15392
  'Content-Type': 'application/json;charset=UTF-8',
15381
15393
  'Cache-Control': 'no-cache',
15382
15394
  ClientType: `web|${browserInfo.browser}|${browserInfo.version}`,
15383
- ClientVersion: "5.6.3-alpha.7",
15395
+ ClientVersion: "5.6.4-alpha.1",
15384
15396
  'Client-Session-Id': getUUID(),
15385
15397
  'Request-Id': Date.now().toString(),
15386
15398
  });
@@ -15551,9 +15563,8 @@ class RCMediaService {
15551
15563
  const jsonBody = /x-www-form-urlencoded/.test(mergeHeaders['Content-Type']) ? body : JSON.stringify(body);
15552
15564
  const reqId = commonHeader['Request-Id'];
15553
15565
  (_e = (_d = this._context) === null || _d === void 0 ? void 0 : _d.logger) === null || _e === void 0 ? void 0 : _e.info(RCLoggerTag.L_MEDIA_SERVICE_REQUEST_T, JSON.stringify({
15554
- url: path,
15566
+ url,
15555
15567
  'Request-Id': reqId,
15556
- timeout: this._timeout,
15557
15568
  }), traceId);
15558
15569
  const { status, data } = yield this._runtime.httpReq({
15559
15570
  url,
@@ -15588,6 +15599,7 @@ class RCMediaService {
15588
15599
  (_j = (_h = this._context) === null || _h === void 0 ? void 0 : _h.logger) === null || _j === void 0 ? void 0 : _j.error(RCLoggerTag.L_MEDIA_SERVICE_REQUEST_R, JSON.stringify({
15589
15600
  status: RCLoggerStatus.FAILED,
15590
15601
  msg: `request error -> Request-Id: ${reqId}, status: ${status}, url: ${url}`,
15602
+ timeout: this._timeout,
15591
15603
  }), traceId);
15592
15604
  }
15593
15605
  return { code: exports.RCRTCCode.REQUEST_FAILED };
@@ -15617,8 +15629,10 @@ class RCMediaService {
15617
15629
  * 退出房间
15618
15630
  */
15619
15631
  exit(headers) {
15632
+ var _a, _b;
15620
15633
  return __awaiter(this, void 0, void 0, function* () {
15621
- const { code } = yield this._request('/exit', headers, {});
15634
+ const traceId = (_b = (_a = this._context) === null || _a === void 0 ? void 0 : _a.logger) === null || _b === void 0 ? void 0 : _b.createTraceId();
15635
+ const { code } = yield this._request('/exit', headers, {}, traceId);
15622
15636
  return code;
15623
15637
  });
15624
15638
  }
@@ -15626,14 +15640,18 @@ class RCMediaService {
15626
15640
  * 观众端订阅主播资源
15627
15641
  */
15628
15642
  broadcastSubscribe(headers, body) {
15629
- return this._request('/broadcast/subscribe', headers, body);
15643
+ var _a, _b;
15644
+ const traceId = (_b = (_a = this._context) === null || _a === void 0 ? void 0 : _a.logger) === null || _b === void 0 ? void 0 : _b.createTraceId();
15645
+ return this._request('/broadcast/subscribe', headers, body, traceId);
15630
15646
  }
15631
15647
  /**
15632
15648
  * 观众端退出订阅
15633
15649
  */
15634
15650
  broadcastExit(headers) {
15651
+ var _a, _b;
15635
15652
  return __awaiter(this, void 0, void 0, function* () {
15636
- const { code } = yield this._request('/broadcast/exit', headers, {});
15653
+ const traceId = (_b = (_a = this._context) === null || _a === void 0 ? void 0 : _a.logger) === null || _b === void 0 ? void 0 : _b.createTraceId();
15654
+ const { code } = yield this._request('/broadcast/exit', headers, {}, traceId);
15637
15655
  return { code };
15638
15656
  });
15639
15657
  }
@@ -17170,25 +17188,37 @@ class ASdpStrategy {
17170
17188
  return result;
17171
17189
  }
17172
17190
  setRemoteAnswer(sdp) {
17173
- var _a, _b;
17191
+ var _a, _b, _c;
17174
17192
  return __awaiter(this, void 0, void 0, function* () {
17175
17193
  // 过滤行末的空格,服务可能产生空格数据
17176
17194
  sdp = ASdpBuilder.trimBlankLine(sdp);
17177
17195
  if (this._peer.connectionState === 'disconnected'
17178
17196
  || this._peer.connectionState === 'closed') {
17197
+ (_a = this._logger) === null || _a === void 0 ? void 0 : _a.info(RCLoggerTag.L_A_SDP_STRATEGY_SET_REMOTE_ANSWER_O, JSON.stringify({
17198
+ status: RCLoggerStatus.FAILED,
17199
+ msg: `peer.connectionState is ${this._peer.connectionState}`,
17200
+ }));
17179
17201
  return exports.RCRTCCode.SET_REMOTE_DESCRIPTION_FAILED;
17180
17202
  }
17203
+ // if (this._peer.signalingState !== 'have-local-offer') {
17204
+ // // https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/signalingState
17205
+ // this._logger?.info(RCLoggerTag.L_A_SDP_STRATEGY_SET_REMOTE_ANSWER_O, JSON.stringify({
17206
+ // status: RCLoggerStatus.FAILED,
17207
+ // msg: `peer.signalingState is ${this._peer.signalingState}`,
17208
+ // }));
17209
+ // return RCRTCCode.SET_REMOTE_DESCRIPTION_FAILED;
17210
+ // }
17181
17211
  try {
17182
17212
  yield this._peer.setRemoteDescription({ type: 'answer', sdp });
17183
17213
  }
17184
17214
  catch (error) {
17185
- (_a = this._logger) === null || _a === void 0 ? void 0 : _a.info(RCLoggerTag.L_A_SDP_STRATEGY_SET_REMOTE_ANSWER_O, JSON.stringify({
17215
+ (_b = this._logger) === null || _b === void 0 ? void 0 : _b.info(RCLoggerTag.L_A_SDP_STRATEGY_SET_REMOTE_ANSWER_O, JSON.stringify({
17186
17216
  status: RCLoggerStatus.FAILED,
17187
17217
  msg: error,
17188
17218
  }));
17189
17219
  return exports.RCRTCCode.SET_REMOTE_DESCRIPTION_FAILED;
17190
17220
  }
17191
- (_b = this._logger) === null || _b === void 0 ? void 0 : _b.info(RCLoggerTag.L_A_SDP_STRATEGY_SET_REMOTE_ANSWER_O, JSON.stringify({
17221
+ (_c = this._logger) === null || _c === void 0 ? void 0 : _c.info(RCLoggerTag.L_A_SDP_STRATEGY_SET_REMOTE_ANSWER_O, JSON.stringify({
17192
17222
  status: RCLoggerStatus.SUCCESSED,
17193
17223
  sdp,
17194
17224
  }));
@@ -18688,7 +18718,7 @@ class PolarisReporter {
18688
18718
  * 加入房间
18689
18719
  */
18690
18720
  sendR1() {
18691
- const rtcVersion = "5.6.3-alpha.7";
18721
+ const rtcVersion = "5.6.4-alpha.1";
18692
18722
  const imVersion = this._context.getCoreVersion();
18693
18723
  const platform = 'web';
18694
18724
  const pcName = navigator.platform;
@@ -18838,7 +18868,7 @@ class PolarisHttpReporter {
18838
18868
  _formatR1Data() {
18839
18869
  return {
18840
18870
  joinTime: this._context.userJoinTime || 0,
18841
- rtcVersion: "5.6.3-alpha.7",
18871
+ rtcVersion: "5.6.4-alpha.1",
18842
18872
  imVersion: this._context.getCoreVersion(),
18843
18873
  platform: 'web',
18844
18874
  device: navigator.platform,
@@ -19736,12 +19766,13 @@ class BaseInvoker {
19736
19766
  this._busy = true;
19737
19767
  const { command, resolve, reject } = this._queue.shift();
19738
19768
  let res;
19769
+ const kinds = this._queue.map((item) => { var _a; return (_a = item === null || item === void 0 ? void 0 : item.command) === null || _a === void 0 ? void 0 : _a.kind; });
19739
19770
  const traceId = (_a = this.context.logger) === null || _a === void 0 ? void 0 : _a.createTraceId();
19740
19771
  try {
19741
19772
  /**
19742
19773
  * 说明:由于是先弹出 再执行 Command,所以不存在 在队列中正在执行的任务
19743
19774
  */
19744
- (_b = this.context.logger) === null || _b === void 0 ? void 0 : _b.info(RCLoggerTag.L_INVOKER_EXECUTE_T, `commandKind: ${command.kind}, commandLength: ${this._queue.length}`, traceId);
19775
+ (_b = this.context.logger) === null || _b === void 0 ? void 0 : _b.info(RCLoggerTag.L_INVOKER_EXECUTE_T, `commandKind: ${command.kind}, kinds:${kinds.join(',')}, length: ${this._queue.length}`, traceId);
19745
19776
  res = yield command.execute(this._store, this);
19746
19777
  }
19747
19778
  catch (error) {
@@ -19749,6 +19780,7 @@ class BaseInvoker {
19749
19780
  error,
19750
19781
  status: RCLoggerStatus.FAILED,
19751
19782
  commandKind: command.kind,
19783
+ kinds: kinds.join(','),
19752
19784
  }), traceId);
19753
19785
  reject(error);
19754
19786
  this._next();
@@ -19765,7 +19797,7 @@ class BaseInvoker {
19765
19797
  (_a = this.context.logger) === null || _a === void 0 ? void 0 : _a.info(RCLoggerTag.L_INVOKER_PUSH_O, JSON.stringify({
19766
19798
  isDestroyed: this._isDestroyed,
19767
19799
  commandKind: command.kind,
19768
- commandLength: this._queue.length,
19800
+ length: this._queue.length,
19769
19801
  }));
19770
19802
  // 房间已销毁
19771
19803
  if (this._isDestroyed) {
@@ -20995,52 +21027,6 @@ class SubscribeCommand extends BaseCommand {
20995
21027
  }
20996
21028
  }
20997
21029
 
20998
- class RetrySignaling {
20999
- constructor() {
21000
- /* 类的私有财产。 */
21001
- this.tasks = [];
21002
- }
21003
- /**
21004
- * 如果未设置 retryHandler,则创建一个新的并返回它。否则,返回现有的。
21005
- * @returns 重试处理程序
21006
- */
21007
- static handler() {
21008
- if (!this.retryHandler) {
21009
- this.retryHandler = new RetrySignaling();
21010
- }
21011
- return this.retryHandler;
21012
- }
21013
- /**
21014
- * > `execute` 函数执行 `tasks` 数组中的所有任务,然后销毁 `TaskQueue` 实例
21015
- */
21016
- execute() {
21017
- for (const task of this.tasks) {
21018
- task();
21019
- }
21020
- this.destroy();
21021
- }
21022
- /**
21023
- * 它接受一个函数作为参数,并返回一个在函数被调用时解析的 Promise
21024
- * @param {Function} fn - 功能:要执行的功能。
21025
- * @returns 将解析为传入函数的结果的承诺。
21026
- */
21027
- task(fn) {
21028
- return __awaiter(this, void 0, void 0, function* () {
21029
- return new Promise((resolve) => {
21030
- this.tasks.push(() => {
21031
- resolve(fn());
21032
- });
21033
- });
21034
- });
21035
- }
21036
- /**
21037
- * 它从任务数组中删除所有任务
21038
- */
21039
- destroy() {
21040
- this.tasks = [];
21041
- }
21042
- }
21043
-
21044
21030
  const PUBLISHSIGNALRETRYTIME = 30 * 1000;
21045
21031
  /**
21046
21032
  * 资源发布命令
@@ -21153,7 +21139,7 @@ class PublishCommand extends BaseCommand {
21153
21139
  pushOtherRooms && (reqBody.pushOtherRooms = pushOtherRooms);
21154
21140
  // 缓存发布资源的ssrc和msid
21155
21141
  AbstractStatParser.formatSourceIdMapFromSdp(reqBody.sdp.sdp, 'publish');
21156
- const resp = yield new ExchangeCommand(headers, reqBody).execute(store, invoker);
21142
+ const resp = yield new ExchangeCommand(headers, reqBody, this._traceId).execute(store, invoker);
21157
21143
  if (resp.code !== exports.RCRTCCode.SUCCESS) {
21158
21144
  // 连通率相关埋点-发布资源结束
21159
21145
  reportQualityPublishData(localTracks, resp.code);
@@ -21258,24 +21244,7 @@ class PublishCommand extends BaseCommand {
21258
21244
  // 通知房间成员
21259
21245
  // 连通率相关埋点-统计扩散耗时
21260
21246
  recordPublishSignalTotalData();
21261
- let errorCode = yield store.context.setRTCTotalRes(roomId, [buildPlusMessage(RCRTCMessageType.PUBLISH, plus)], buildTotalURIMessageContent(allPublishList), RCRTCMessageType.TOTAL_CONTENT_RESOURCE, buildTotalURIMessageContent(crtMcuPublishList), CDNValueInfo);
21262
- // TIPS: 通知房间成员失败,对信息进行重试操作
21263
- if (errorCode !== engine.ErrorCode.SUCCESS) {
21264
- const RetrySignal = RetrySignaling.handler();
21265
- const startTime = (new Date()).valueOf();
21266
- const loop = () => __awaiter(this, void 0, void 0, function* () {
21267
- // 如果当前时间大于 60 秒
21268
- if ((new Date()).valueOf() - startTime > this.signalRetryTime) {
21269
- return errorCode;
21270
- }
21271
- const code = yield store.context.setRTCTotalRes(roomId, [buildPlusMessage(RCRTCMessageType.PUBLISH, plus)], buildTotalURIMessageContent(allPublishList), RCRTCMessageType.TOTAL_CONTENT_RESOURCE, buildTotalURIMessageContent(crtMcuPublishList));
21272
- if (code !== engine.ErrorCode.SUCCESS) {
21273
- yield RetrySignal.task(loop);
21274
- }
21275
- return code;
21276
- });
21277
- errorCode = yield RetrySignal.task(loop);
21278
- }
21247
+ const errorCode = yield store.context.setRTCTotalRes(roomId, [buildPlusMessage(RCRTCMessageType.PUBLISH, plus)], buildTotalURIMessageContent(allPublishList), RCRTCMessageType.TOTAL_CONTENT_RESOURCE, buildTotalURIMessageContent(crtMcuPublishList), CDNValueInfo);
21279
21248
  if (errorCode !== engine.ErrorCode.SUCCESS) {
21280
21249
  // 连通率相关埋点-发布资源结束
21281
21250
  reportQualityPublishSignalTotalData(allPublishList, errorCode);
@@ -21660,7 +21629,7 @@ class RetryExchangeCommand extends BaseCommand {
21660
21629
  const { pushOtherRooms, headers } = this.retryHook(pcName);
21661
21630
  pushOtherRooms && (reqBody.pushOtherRooms = pushOtherRooms);
21662
21631
  // 发送 /exchange 请求
21663
- const resp = yield new ExchangeCommand(headers, reqBody).execute(store, invoker);
21632
+ const resp = yield new ExchangeCommand(headers, reqBody, traceId).execute(store, invoker);
21664
21633
  if (resp.code !== exports.RCRTCCode.SUCCESS) {
21665
21634
  return;
21666
21635
  }
@@ -27530,6 +27499,52 @@ class RCMediaStreamCapture {
27530
27499
  }
27531
27500
  }
27532
27501
 
27502
+ class RetrySignaling {
27503
+ constructor() {
27504
+ /* 类的私有财产。 */
27505
+ this.tasks = [];
27506
+ }
27507
+ /**
27508
+ * 如果未设置 retryHandler,则创建一个新的并返回它。否则,返回现有的。
27509
+ * @returns 重试处理程序
27510
+ */
27511
+ static handler() {
27512
+ if (!this.retryHandler) {
27513
+ this.retryHandler = new RetrySignaling();
27514
+ }
27515
+ return this.retryHandler;
27516
+ }
27517
+ /**
27518
+ * > `execute` 函数执行 `tasks` 数组中的所有任务,然后销毁 `TaskQueue` 实例
27519
+ */
27520
+ execute() {
27521
+ for (const task of this.tasks) {
27522
+ task();
27523
+ }
27524
+ this.destroy();
27525
+ }
27526
+ /**
27527
+ * 它接受一个函数作为参数,并返回一个在函数被调用时解析的 Promise
27528
+ * @param {Function} fn - 功能:要执行的功能。
27529
+ * @returns 将解析为传入函数的结果的承诺。
27530
+ */
27531
+ task(fn) {
27532
+ return __awaiter(this, void 0, void 0, function* () {
27533
+ return new Promise((resolve) => {
27534
+ this.tasks.push(() => {
27535
+ resolve(fn());
27536
+ });
27537
+ });
27538
+ });
27539
+ }
27540
+ /**
27541
+ * 它从任务数组中删除所有任务
27542
+ */
27543
+ destroy() {
27544
+ this.tasks = [];
27545
+ }
27546
+ }
27547
+
27533
27548
  /**
27534
27549
  * RTC 业务客户端
27535
27550
  * @public
@@ -28088,7 +28103,7 @@ class RCRTCClient extends RCMediaStreamCapture {
28088
28103
  }
28089
28104
  reportSDKInfo() {
28090
28105
  this._context.reportSDKInfo({
28091
- 'plugin-rtc': "5.6.3-alpha.7",
28106
+ 'plugin-rtc': "5.6.4-alpha.1",
28092
28107
  });
28093
28108
  }
28094
28109
  }
@@ -29081,7 +29096,7 @@ const installer = {
29081
29096
  console.error('Please use the https protocol or use `http://localhost` to open the page!');
29082
29097
  return false;
29083
29098
  }
29084
- engine.VersionManage.add('plugin-rtc', "5.6.3-alpha.7");
29099
+ engine.VersionManage.add('plugin-rtc', "5.6.4-alpha.1");
29085
29100
  if (!engine.VersionManage.validEngine("^5.6.0")) {
29086
29101
  console.error(`The current engine version '${engine.VersionManage.getInfo().engine}' error, plugin-rtc required engine version at least '${"^5.6.0"}'.`);
29087
29102
  return false;
@@ -29095,8 +29110,8 @@ const installer = {
29095
29110
  RTCLogger.setLogger(originLogger);
29096
29111
  logger.setLogger(originLogger);
29097
29112
  originLogger.warn(RCLoggerTag.L_INDEX_INSTALL_RTC_PLUGIN_O, JSON.stringify({
29098
- 'RCRTC Version': "5.6.3-alpha.7",
29099
- Commit: "58b37e81b5a25ac7a7c2ed16fa4f996fdc6004ce",
29113
+ 'RCRTC Version': "5.6.4-alpha.1",
29114
+ Commit: "568df307dd985346dd4af574ecc9b4e5577ecd59",
29100
29115
  'browserInfo.browser': browserInfo.browser,
29101
29116
  'browserInfo.supportsUnifiedPlan': browserInfo.supportsUnifiedPlan,
29102
29117
  'browserInfo.version': browserInfo.version,