vani-meeting-client 2.2.6 → 2.2.8-beta1

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.
@@ -5,5 +5,5 @@ export declare class DynamicLibHelper {
5
5
  getVideoCallClassHandler(meetingType: MeetingType, meetingStartRequest: MeetingStartRequest, _communicationHandler: CommunicationHandler): Promise<import("../video-call-handler/SFUHandler").SFUHandler | import("../video-call-handler/WebrtcHandler").WebrtcHandler>;
6
6
  getMediaDevicesVariable(meetingStartRequest: MeetingStartRequest): any;
7
7
  getMediaStreamVariable(meetingStartRequest: MeetingStartRequest): any;
8
- getRTCPeerConnection(meetingStartRequest: MeetingStartRequest): any;
8
+ getRTCPeerConnection(meetingStartRequest: MeetingStartRequest): RTCPeerConnection;
9
9
  }
@@ -34,7 +34,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
34
34
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
35
  }
36
36
  };
37
- import { MeetingType } from '..';
37
+ import { LogLevel, MeetingType } from '..';
38
38
  import * as log from 'loglevel';
39
39
  var DynamicLibHelper = /** @class */ (function () {
40
40
  function DynamicLibHelper() {
@@ -105,6 +105,7 @@ var DynamicLibHelper = /** @class */ (function () {
105
105
  };
106
106
  DynamicLibHelper.prototype.getRTCPeerConnection = function (meetingStartRequest) {
107
107
  if (meetingStartRequest && meetingStartRequest.iceServers) {
108
+ meetingStartRequest && meetingStartRequest.logLevel === LogLevel.Debug && console.log("Webrtc-" + "Ice Servers", meetingStartRequest.iceServers);
108
109
  return new RTCPeerConnection({ iceServers: meetingStartRequest.iceServers });
109
110
  }
110
111
  else {
@@ -5,5 +5,5 @@ export declare class DynamicLibHelper {
5
5
  getVideoCallClassHandler(meetingType: MeetingType, meetingStartRequest: MeetingStartRequest, _communicationHandler: CommunicationHandler): Promise<import("../video-call-handler/SFUHandler").SFUHandler | import("../video-call-handler/WebrtcHandler").WebrtcHandler>;
6
6
  getMediaDevicesVariable(meetingStartRequest: MeetingStartRequest): any;
7
7
  getMediaStreamVariable(meetingStartRequest: MeetingStartRequest): any;
8
- getRTCPeerConnection(meetingStartRequest: MeetingStartRequest): any;
8
+ getRTCPeerConnection(meetingStartRequest: MeetingStartRequest): RTCPeerConnection;
9
9
  }
@@ -34,7 +34,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
34
34
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
35
  }
36
36
  };
37
- import { MeetingType } from '..';
37
+ import { LogLevel, MeetingType } from '..';
38
38
  import * as log from 'loglevel';
39
39
  var DynamicLibHelper = /** @class */ (function () {
40
40
  function DynamicLibHelper() {
@@ -105,6 +105,7 @@ var DynamicLibHelper = /** @class */ (function () {
105
105
  DynamicLibHelper.prototype.getRTCPeerConnection = function (meetingStartRequest) {
106
106
  try {
107
107
  if (meetingStartRequest && meetingStartRequest.iceServers) {
108
+ meetingStartRequest && meetingStartRequest.logLevel === LogLevel.Debug && console.log("Webrtc-" + "Ice Servers", meetingStartRequest.iceServers);
108
109
  return new (require("react-native-webrtc").RTCPeerConnection)({ iceServers: meetingStartRequest.iceServers });
109
110
  }
110
111
  else {
@@ -114,7 +115,7 @@ var DynamicLibHelper = /** @class */ (function () {
114
115
  catch (err) {
115
116
  log.error("react-native-webrtc not found. Please do npm install ");
116
117
  }
117
- return new RTCPeerConnection();
118
+ return new (require("react-native-webrtc").RTCPeerConnection)();
118
119
  };
119
120
  return DynamicLibHelper;
120
121
  }());
@@ -5,5 +5,5 @@ export declare class DynamicLibHelper {
5
5
  getVideoCallClassHandler(meetingType: MeetingType, meetingStartRequest: MeetingStartRequest, _communicationHandler: CommunicationHandler): Promise<import("../video-call-handler/SFUHandler").SFUHandler | import("../video-call-handler/WebrtcHandler").WebrtcHandler>;
6
6
  getMediaDevicesVariable(meetingStartRequest: MeetingStartRequest): any;
7
7
  getMediaStreamVariable(meetingStartRequest: MeetingStartRequest): any;
8
- getRTCPeerConnection(meetingStartRequest: MeetingStartRequest): any;
8
+ getRTCPeerConnection(meetingStartRequest: MeetingStartRequest): RTCPeerConnection;
9
9
  }
@@ -34,7 +34,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
34
34
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
35
  }
36
36
  };
37
- import { MeetingType } from '..';
37
+ import { LogLevel, MeetingType } from '..';
38
38
  import * as log from 'loglevel';
39
39
  var DynamicLibHelper = /** @class */ (function () {
40
40
  function DynamicLibHelper() {
@@ -105,6 +105,7 @@ var DynamicLibHelper = /** @class */ (function () {
105
105
  };
106
106
  DynamicLibHelper.prototype.getRTCPeerConnection = function (meetingStartRequest) {
107
107
  if (meetingStartRequest && meetingStartRequest.iceServers) {
108
+ meetingStartRequest && meetingStartRequest.logLevel === LogLevel.Debug && console.log("Webrtc-" + "Ice Servers", meetingStartRequest.iceServers);
108
109
  return new RTCPeerConnection({ iceServers: meetingStartRequest.iceServers });
109
110
  }
110
111
  else {
@@ -68,6 +68,7 @@ var WebrtcHandler = /** @class */ (function (_super) {
68
68
  selfParticpant = this.communicationHandler.getSelfParticipant();
69
69
  console.log(selfParticpant);
70
70
  if (!(selfParticpant.userId !== participant.userId && !selfParticpant.getPeerConnections().has(participant.userId))) return [3 /*break*/, 2];
71
+ this.printLogIfRequired("Check if Can Send Offer");
71
72
  isOfferInitParticipant = this.isOfferInitParticipant(participant);
72
73
  if (!!isOfferInitParticipant) return [3 /*break*/, 2];
73
74
  peerConnectionObject = selfParticpant.getPeerConnectionsViaUserId(participant.userId, this.meetingStartRequest);
@@ -83,7 +84,7 @@ var WebrtcHandler = /** @class */ (function (_super) {
83
84
  peerConnectionObject.offer = offer;
84
85
  peerConnectionObject.rtcPeerConnection = peerConnection;
85
86
  // send offer to peer
86
- console.log("offer", offer);
87
+ this.printLogIfRequired("Send Offer", offer);
87
88
  messageJson = { to: participant.userId, type: WebrtcMessageType.SendOffer, data: offer };
88
89
  this.sendWebrtcMessage(messageJson);
89
90
  _a.label = 2;
@@ -96,6 +97,7 @@ var WebrtcHandler = /** @class */ (function (_super) {
96
97
  return __generator(this, function (_a) {
97
98
  switch (_a.label) {
98
99
  case 0:
100
+ this.printLogIfRequired("On New Offer", data);
99
101
  selfParticpant = this.communicationHandler.getSelfParticipant();
100
102
  participant = data.sender;
101
103
  peerConnectionObject = selfParticpant.getPeerConnectionsViaUserId(participant.userId, this.meetingStartRequest);
@@ -105,8 +107,8 @@ var WebrtcHandler = /** @class */ (function (_super) {
105
107
  peerConnection = peerConnectionObject.rtcPeerConnection ? peerConnectionObject.rtcPeerConnection : this.dynamicLibHelper.getRTCPeerConnection(this.meetingStartRequest);
106
108
  if (!peerConnection) return [3 /*break*/, 2];
107
109
  this.subToConnectionState(participant);
108
- peerConnection.addTransceiver("audio", { direction: "sendrecv" });
109
- peerConnection.addTransceiver("video", { direction: "sendrecv" });
110
+ // peerConnection.addTransceiver("audio", { direction: "sendrecv" })
111
+ // peerConnection.addTransceiver("video", { direction: "sendrecv" })
110
112
  peerConnection.setRemoteDescription({ type: 'offer', sdp: peerConnectionObject.remoteOffer });
111
113
  return [4 /*yield*/, peerConnection.createAnswer()];
112
114
  case 1:
@@ -125,6 +127,7 @@ var WebrtcHandler = /** @class */ (function (_super) {
125
127
  _this.onNewAnswer = function (data) { return __awaiter(_this, void 0, void 0, function () {
126
128
  var selfParticpant, participant, peerConnectionObject, peerConnection;
127
129
  return __generator(this, function (_a) {
130
+ this.printLogIfRequired("On New Answer", data);
128
131
  selfParticpant = this.communicationHandler.getSelfParticipant();
129
132
  participant = data.sender;
130
133
  peerConnectionObject = selfParticpant.getPeerConnectionsViaUserId(participant.userId, this.meetingStartRequest);
@@ -175,9 +178,10 @@ var WebrtcHandler = /** @class */ (function (_super) {
175
178
  }
176
179
  });
177
180
  rtcConnection.addEventListener('iceconnectionstatechange', function (event) {
178
- _this.printLogIfRequired("iceconnectionstatechange", event, remoteParticipant);
181
+ _this.printLogIfRequired("iceconnectionstatechange", rtcConnection.iceConnectionState, event, remoteParticipant);
179
182
  });
180
183
  rtcConnection.addEventListener('connectionstatechange', function (event) {
184
+ _this.printLogIfRequired("connectionstatechange", event, rtcConnection.connectionState);
181
185
  if (rtcConnection.connectionState === 'connected') {
182
186
  _this.printLogIfRequired("On Connection Change", event, remoteParticipant);
183
187
  _this.startSendTrackToPartiipant(remoteParticipant);
@@ -185,6 +189,7 @@ var WebrtcHandler = /** @class */ (function (_super) {
185
189
  });
186
190
  rtcConnection.addEventListener("track", function (onRemoteTrack) {
187
191
  var _a, _b;
192
+ _this.printLogIfRequired("On New Track Remote", onRemoteTrack);
188
193
  if (onRemoteTrack.streams && onRemoteTrack.streams.length > 0) {
189
194
  var mediaStream = onRemoteTrack.streams.at(0);
190
195
  if (mediaStream.getTracks() && mediaStream.getTracks().length > 0) {
@@ -214,14 +219,26 @@ var WebrtcHandler = /** @class */ (function (_super) {
214
219
  });
215
220
  }); };
216
221
  _this.sendTrackToParticipant = function (track, participant) { return __awaiter(_this, void 0, void 0, function () {
217
- var selfParticpant, peerConnection;
222
+ var selfParticpant, peerConnection, transceiver;
218
223
  return __generator(this, function (_a) {
224
+ if (!track.track) {
225
+ return [2 /*return*/];
226
+ }
219
227
  selfParticpant = this.communicationHandler.getSelfParticipant();
220
228
  if (selfParticpant) {
221
229
  peerConnection = selfParticpant.getPeerConnectionsViaUserId(participant.userId, this.meetingStartRequest);
222
230
  if (peerConnection && peerConnection.rtcPeerConnection) {
223
- this.printLogIfRequired("Send Track");
224
- peerConnection.rtcPeerConnection.addTrack(track.track);
231
+ this.printLogIfRequired("Send Track", participant);
232
+ transceiver = peerConnection.rtcPeerConnection.getTransceivers().find(function (t) { return t.receiver.track.kind === track.track.kind; });
233
+ if (transceiver) {
234
+ this.printLogIfRequired("Replace track", participant, track);
235
+ transceiver.sender.replaceTrack(track.track);
236
+ }
237
+ else {
238
+ this.printLogIfRequired("Send add track - reaplce track not found", participant, track);
239
+ peerConnection.rtcPeerConnection.addTrack(track.track);
240
+ }
241
+ // peerConnection.rtcPeerConnection.addStream(new MediaStream([track.track]))
225
242
  }
226
243
  }
227
244
  return [2 /*return*/];
@@ -243,10 +260,10 @@ var WebrtcHandler = /** @class */ (function (_super) {
243
260
  optionalParams[_i - 1] = arguments[_i];
244
261
  }
245
262
  if (optionalParams && optionalParams.length > 0) {
246
- _this.meetingStartRequest && _this.meetingStartRequest.logLevel === LogLevel.Debug && console.log(message, optionalParams);
263
+ _this.meetingStartRequest && _this.meetingStartRequest.logLevel === LogLevel.Debug && console.log("Webrtc-" + message, optionalParams);
247
264
  }
248
265
  else {
249
- _this.meetingStartRequest && _this.meetingStartRequest.logLevel === LogLevel.Debug && console.log(message);
266
+ _this.meetingStartRequest && _this.meetingStartRequest.logLevel === LogLevel.Debug && console.log("Webrtc-" + message);
250
267
  }
251
268
  };
252
269
  return _this;
@@ -276,7 +293,7 @@ var WebrtcHandler = /** @class */ (function (_super) {
276
293
  };
277
294
  WebrtcHandler.prototype.onSocketMessage = function (websocketCallHandler) {
278
295
  var _a;
279
- console.log("websocketCallHandler", websocketCallHandler);
296
+ this.printLogIfRequired("websocketCallHandler", websocketCallHandler);
280
297
  var data = websocketCallHandler.data;
281
298
  if (websocketCallHandler.data.message) {
282
299
  data = websocketCallHandler.data.message;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vani-meeting-client",
3
- "version": "2.2.6",
3
+ "version": "2.2.8beta1",
4
4
  "description": "Vani Meeting Clinet SDK",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",