@techsee/techsee-media-service 999.17.9002-alphasa01 → 999.17.9003-alphasa01

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 (93) hide show
  1. package/lib/Live3/DetectWebRtcService.js +93 -52
  2. package/lib/Live3/DetectWebRtcService.js.map +1 -1
  3. package/lib/Live3/MediaCapabilitiesService.js +171 -68
  4. package/lib/Live3/MediaCapabilitiesService.js.map +1 -1
  5. package/lib/Live3/MediaCapabilitiesUtils.js +111 -52
  6. package/lib/Live3/MediaCapabilitiesUtils.js.map +1 -1
  7. package/lib/Live3/MediaTracer.js +1 -1
  8. package/lib/Live3/MediaTracer.js.map +1 -1
  9. package/lib/Live3/MultiPartyService.js +25 -4
  10. package/lib/Live3/MultiPartyService.js.map +1 -1
  11. package/lib/Live3/MultiPartyServiceFactory.js +1 -1
  12. package/lib/Live3/MultiPartyServiceFactory.js.map +1 -1
  13. package/lib/Live3/opentok/OpentokMultiPartyService.js +343 -227
  14. package/lib/Live3/opentok/OpentokMultiPartyService.js.map +1 -1
  15. package/lib/Live3/opentok/OpentokPublisher.js +164 -94
  16. package/lib/Live3/opentok/OpentokPublisher.js.map +1 -1
  17. package/lib/Live3/opentok/OpentokPublisherEventMapper.js +16 -16
  18. package/lib/Live3/opentok/OpentokPublisherEventMapper.js.map +1 -1
  19. package/lib/Live3/opentok/OpentokSubscriber.js +4 -4
  20. package/lib/Live3/opentok/OpentokSubscriber.js.map +1 -1
  21. package/lib/Live3/opentok/mocks/OpentokPublisher.js +71 -31
  22. package/lib/Live3/opentok/mocks/OpentokPublisher.js.map +1 -1
  23. package/lib/Live3/opentok/mocks/OpentokSession.js +61 -21
  24. package/lib/Live3/opentok/mocks/OpentokSession.js.map +1 -1
  25. package/lib/Live3/opentok/mocks/objects.js +33 -4
  26. package/lib/Live3/opentok/mocks/objects.js.map +1 -1
  27. package/lib/Live3/opentok/trace.js +8 -4
  28. package/lib/Live3/opentok/trace.js.map +1 -1
  29. package/lib/Live3/utils.js +1 -1
  30. package/lib/Live3/utils.js.map +1 -1
  31. package/lib/LocalStreamManager.js +375 -299
  32. package/lib/LocalStreamManager.js.map +1 -1
  33. package/lib/MediaConstants.js +7 -7
  34. package/lib/MediaConstants.js.map +1 -1
  35. package/lib/MediaPublisher.js +35 -16
  36. package/lib/MediaPublisher.js.map +1 -1
  37. package/lib/MediaServiceBase.js +871 -574
  38. package/lib/MediaServiceBase.js.map +1 -1
  39. package/lib/MediaSession/MediaServer.js +467 -328
  40. package/lib/MediaSession/MediaServer.js.map +1 -1
  41. package/lib/MediaSession/MediaSessionBase.js +108 -73
  42. package/lib/MediaSession/MediaSessionBase.js.map +1 -1
  43. package/lib/MediaSession/SessionOpentok.js +456 -323
  44. package/lib/MediaSession/SessionOpentok.js.map +1 -1
  45. package/lib/MediaSession/SessionTurn.js +531 -367
  46. package/lib/MediaSession/SessionTurn.js.map +1 -1
  47. package/lib/MediaSession/TurnConstants.js +2 -2
  48. package/lib/MediaSession/TurnConstants.js.map +1 -1
  49. package/lib/MediaSubscriber.js +225 -120
  50. package/lib/MediaSubscriber.js.map +1 -1
  51. package/lib/MediaUtils/Compatibility.js +53 -24
  52. package/lib/MediaUtils/Compatibility.js.map +1 -1
  53. package/lib/MediaUtils/MediaDomUtils.js +53 -47
  54. package/lib/MediaUtils/MediaDomUtils.js.map +1 -1
  55. package/lib/MediaUtils/MediaTracer.js +1 -1
  56. package/lib/MediaUtils/MediaTracer.js.map +1 -1
  57. package/lib/MultiParty/DetectWebRtcService.js +91 -50
  58. package/lib/MultiParty/DetectWebRtcService.js.map +1 -1
  59. package/lib/MultiParty/MediaCapabilitiesService.js +170 -67
  60. package/lib/MultiParty/MediaCapabilitiesService.js.map +1 -1
  61. package/lib/MultiParty/MediaCapabilitiesUtils.js +91 -36
  62. package/lib/MultiParty/MediaCapabilitiesUtils.js.map +1 -1
  63. package/lib/MultiParty/MediaTracer.js +1 -1
  64. package/lib/MultiParty/MediaTracer.js.map +1 -1
  65. package/lib/MultiParty/MultiPartyService.js +25 -4
  66. package/lib/MultiParty/MultiPartyService.js.map +1 -1
  67. package/lib/MultiParty/MultiPartyServiceFactory.js +1 -1
  68. package/lib/MultiParty/MultiPartyServiceFactory.js.map +1 -1
  69. package/lib/MultiParty/opentok/OpentokMultiPartyService.js +412 -263
  70. package/lib/MultiParty/opentok/OpentokMultiPartyService.js.map +1 -1
  71. package/lib/MultiParty/opentok/OpentokPublisher.js +96 -41
  72. package/lib/MultiParty/opentok/OpentokPublisher.js.map +1 -1
  73. package/lib/MultiParty/opentok/OpentokPublisherEventMapper.js +14 -14
  74. package/lib/MultiParty/opentok/OpentokPublisherEventMapper.js.map +1 -1
  75. package/lib/MultiParty/opentok/OpentokScreenPublisher.js +39 -9
  76. package/lib/MultiParty/opentok/OpentokScreenPublisher.js.map +1 -1
  77. package/lib/MultiParty/opentok/OpentokSubscriber.js +4 -4
  78. package/lib/MultiParty/opentok/OpentokSubscriber.js.map +1 -1
  79. package/lib/MultiParty/opentok/OpentokVideoPublisher.js +146 -71
  80. package/lib/MultiParty/opentok/OpentokVideoPublisher.js.map +1 -1
  81. package/lib/MultiParty/opentok/trace.js +7 -3
  82. package/lib/MultiParty/opentok/trace.js.map +1 -1
  83. package/lib/TechseeMediaStream.js +47 -21
  84. package/lib/TechseeMediaStream.js.map +1 -1
  85. package/lib/qos/raw-qos.js +298 -210
  86. package/lib/qos/raw-qos.js.map +1 -1
  87. package/lib/spec/MultiParty/mocks/MediaCapablitiesService.js +2 -2
  88. package/lib/spec/MultiParty/mocks/MediaCapablitiesService.js.map +1 -1
  89. package/lib/spec/MultiParty/mocks/OpentokPublisher.js +64 -30
  90. package/lib/spec/MultiParty/mocks/OpentokPublisher.js.map +1 -1
  91. package/lib/spec/MultiParty/mocks/OpentokSession.js +53 -19
  92. package/lib/spec/MultiParty/mocks/OpentokSession.js.map +1 -1
  93. package/package.json +1 -1
@@ -7,18 +7,45 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
- var _a;
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (_) try {
17
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
11
37
  import detectRTC from 'detectrtc';
12
- export const DETECT_RTC_ADVISED_TIMEOUT = 20000;
13
- export const defaultWebRtcResult = {
38
+ export var DETECT_RTC_ADVISED_TIMEOUT = 20000;
39
+ export var defaultWebRtcResult = {
14
40
  isWebRTCSupported: false,
15
41
  isWebsiteHasWebcamPermissions: false,
16
42
  isWebsiteHasMicrophonePermissions: false,
17
43
  isGetUserMediaSupported: false,
18
44
  isApplyConstraintsSupported: false,
19
45
  };
20
- export class DetectWebRtcService {
21
- constructor() {
46
+ var DetectWebRtcService = /** @class */ (function () {
47
+ function DetectWebRtcService() {
48
+ var _this = this;
22
49
  Object.defineProperty(this, "cachedResult", {
23
50
  enumerable: true,
24
51
  configurable: true,
@@ -29,59 +56,73 @@ export class DetectWebRtcService {
29
56
  enumerable: true,
30
57
  configurable: true,
31
58
  writable: true,
32
- value: () => __awaiter(this, void 0, void 0, function* () {
33
- // eslint-disable-next-line @typescript-eslint/return-await
34
- return new Promise((resolve, reject) => {
35
- let timeoutPtr = setTimeout(() => {
36
- timeoutPtr = null;
37
- this.cachedResult = defaultWebRtcResult;
38
- // eslint-disable-next-line prefer-promise-reject-errors
39
- reject();
40
- }, DETECT_RTC_ADVISED_TIMEOUT);
41
- detectRTC.load(() => {
42
- if (timeoutPtr === null) {
43
- return;
44
- }
45
- clearTimeout(timeoutPtr);
46
- this.cachedResult = {
47
- isWebRTCSupported: detectRTC.isWebRTCSupported,
48
- isWebsiteHasWebcamPermissions: detectRTC.isWebsiteHasWebcamPermissions,
49
- isWebsiteHasMicrophonePermissions: detectRTC.isWebsiteHasMicrophonePermissions,
50
- isGetUserMediaSupported: detectRTC.isGetUserMediaSupported,
51
- isApplyConstraintsSupported: detectRTC.isApplyConstraintsSupported,
52
- };
53
- resolve();
54
- });
59
+ value: function () { return __awaiter(_this, void 0, void 0, function () {
60
+ var _this = this;
61
+ return __generator(this, function (_b) {
62
+ // eslint-disable-next-line @typescript-eslint/return-await
63
+ return [2 /*return*/, new Promise(function (resolve, reject) {
64
+ var timeoutPtr = setTimeout(function () {
65
+ timeoutPtr = null;
66
+ _this.cachedResult = defaultWebRtcResult;
67
+ // eslint-disable-next-line prefer-promise-reject-errors
68
+ reject();
69
+ }, DETECT_RTC_ADVISED_TIMEOUT);
70
+ detectRTC.load(function () {
71
+ if (timeoutPtr === null) {
72
+ return;
73
+ }
74
+ clearTimeout(timeoutPtr);
75
+ _this.cachedResult = {
76
+ isWebRTCSupported: detectRTC.isWebRTCSupported,
77
+ isWebsiteHasWebcamPermissions: detectRTC.isWebsiteHasWebcamPermissions,
78
+ isWebsiteHasMicrophonePermissions: detectRTC.isWebsiteHasMicrophonePermissions,
79
+ isGetUserMediaSupported: detectRTC.isGetUserMediaSupported,
80
+ isApplyConstraintsSupported: detectRTC.isApplyConstraintsSupported,
81
+ };
82
+ resolve();
83
+ });
84
+ })];
55
85
  });
56
- })
86
+ }); }
57
87
  });
58
88
  Object.defineProperty(this, "getWebRtcInfo", {
59
89
  enumerable: true,
60
90
  configurable: true,
61
91
  writable: true,
62
- value: () => this.cachedResult
92
+ value: function () { return _this.cachedResult; }
63
93
  });
64
94
  }
65
- }
66
- _a = DetectWebRtcService;
67
- Object.defineProperty(DetectWebRtcService, "initPromise", {
68
- enumerable: true,
69
- configurable: true,
70
- writable: true,
71
- value: Promise.resolve()
72
- });
73
- Object.defineProperty(DetectWebRtcService, "get", {
74
- enumerable: true,
75
- configurable: true,
76
- writable: true,
77
- value: () => __awaiter(void 0, void 0, void 0, function* () {
78
- yield DetectWebRtcService.initPromise;
79
- if (!DetectWebRtcService.instance) {
80
- DetectWebRtcService.instance = new DetectWebRtcService();
81
- DetectWebRtcService.initPromise = DetectWebRtcService.instance.init();
82
- yield DetectWebRtcService.initPromise;
83
- }
84
- return DetectWebRtcService.instance;
85
- })
86
- });
95
+ var _a;
96
+ _a = DetectWebRtcService;
97
+ Object.defineProperty(DetectWebRtcService, "initPromise", {
98
+ enumerable: true,
99
+ configurable: true,
100
+ writable: true,
101
+ value: Promise.resolve()
102
+ });
103
+ Object.defineProperty(DetectWebRtcService, "get", {
104
+ enumerable: true,
105
+ configurable: true,
106
+ writable: true,
107
+ value: function () { return __awaiter(void 0, void 0, void 0, function () {
108
+ return __generator(_a, function (_b) {
109
+ switch (_b.label) {
110
+ case 0: return [4 /*yield*/, DetectWebRtcService.initPromise];
111
+ case 1:
112
+ _b.sent();
113
+ if (!!DetectWebRtcService.instance) return [3 /*break*/, 3];
114
+ DetectWebRtcService.instance = new DetectWebRtcService();
115
+ DetectWebRtcService.initPromise = DetectWebRtcService.instance.init();
116
+ return [4 /*yield*/, DetectWebRtcService.initPromise];
117
+ case 2:
118
+ _b.sent();
119
+ _b.label = 3;
120
+ case 3: return [2 /*return*/, DetectWebRtcService.instance];
121
+ }
122
+ });
123
+ }); }
124
+ });
125
+ return DetectWebRtcService;
126
+ }());
127
+ export { DetectWebRtcService };
87
128
  //# sourceMappingURL=DetectWebRtcService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DetectWebRtcService.js","sourceRoot":"","sources":["../../src/Live3/DetectWebRtcService.ts"],"names":[],"mappings":";;;;;;;;;;AACA,OAAO,SAAS,MAAM,WAAW,CAAC;AAElC,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,CAAC;AAEhD,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,iBAAiB,EAAE,KAAK;IACxB,6BAA6B,EAAE,KAAK;IACpC,iCAAiC,EAAE,KAAK;IACxC,uBAAuB,EAAE,KAAK;IAC9B,2BAA2B,EAAE,KAAK;CACnC,CAAC;AAEF,MAAM,OAAO,mBAAmB;IAM9B;QAFA;;;;mBAAyC,mBAAmB;WAAC;QAiB7D;;;;mBAAwB,GAAwB,EAAE;gBAChD,2DAA2D;gBAC3D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBACrC,IAAI,UAAU,GAA0B,UAAU,CAAC,GAAG,EAAE;wBACtD,UAAU,GAAG,IAAI,CAAC;wBAClB,IAAI,CAAC,YAAY,GAAG,mBAAmB,CAAC;wBACxC,wDAAwD;wBACxD,MAAM,EAAE,CAAC;oBACX,CAAC,EAAE,0BAA0B,CAAC,CAAC;oBAE/B,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE;wBAClB,IAAI,UAAU,KAAK,IAAI,EAAE;4BACvB,OAAO;yBACR;wBAED,YAAY,CAAC,UAAU,CAAC,CAAC;wBAEzB,IAAI,CAAC,YAAY,GAAG;4BAClB,iBAAiB,EAAE,SAAS,CAAC,iBAAiB;4BAC9C,6BAA6B,EAAE,SAAS,CAAC,6BAA6B;4BACtE,iCAAiC,EAAE,SAAS,CAAC,iCAAiC;4BAC9E,uBAAuB,EAAE,SAAS,CAAC,uBAAuB;4BAC1D,2BAA2B,EAAE,SAAS,CAAC,2BAA2B;yBACnE,CAAC;wBAEF,OAAO,EAAE,CAAC;oBACZ,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAA;WAAC;QAEF;;;;mBAAuB,GAAqB,EAAE,CAAC,IAAI,CAAC,YAAY;WAAC;IA7C1C,CAAC;;;AAJT;;;;WAA6B,OAAO,CAAC,OAAO,EAAE;GAAC;AAMhD;;;;WAAM,GAAuC,EAAE;QAC3D,MAAM,mBAAmB,CAAC,WAAW,CAAC;QAEtC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE;YACjC,mBAAmB,CAAC,QAAQ,GAAG,IAAI,mBAAmB,EAAE,CAAC;YACzD,mBAAmB,CAAC,WAAW,GAAG,mBAAmB,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAEtE,MAAM,mBAAmB,CAAC,WAAW,CAAC;SACvC;QAED,OAAO,mBAAmB,CAAC,QAAQ,CAAC;IACtC,CAAC,CAAA;GAAC"}
1
+ {"version":3,"file":"DetectWebRtcService.js","sourceRoot":"","sources":["../../src/Live3/DetectWebRtcService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,SAAS,MAAM,WAAW,CAAC;AAElC,MAAM,CAAC,IAAM,0BAA0B,GAAG,KAAK,CAAC;AAEhD,MAAM,CAAC,IAAM,mBAAmB,GAAG;IACjC,iBAAiB,EAAE,KAAK;IACxB,6BAA6B,EAAE,KAAK;IACpC,iCAAiC,EAAE,KAAK;IACxC,uBAAuB,EAAE,KAAK;IAC9B,2BAA2B,EAAE,KAAK;CACnC,CAAC;AAEF;IAME;QAAA,iBAAwB;QAFxB;;;;mBAAyC,mBAAmB;WAAC;QAiB7D;;;;mBAAwB;;;oBACtB,2DAA2D;oBAC3D,sBAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;4BACjC,IAAI,UAAU,GAA0B,UAAU,CAAC;gCACjD,UAAU,GAAG,IAAI,CAAC;gCAClB,KAAI,CAAC,YAAY,GAAG,mBAAmB,CAAC;gCACxC,wDAAwD;gCACxD,MAAM,EAAE,CAAC;4BACX,CAAC,EAAE,0BAA0B,CAAC,CAAC;4BAE/B,SAAS,CAAC,IAAI,CAAC;gCACb,IAAI,UAAU,KAAK,IAAI,EAAE;oCACvB,OAAO;iCACR;gCAED,YAAY,CAAC,UAAU,CAAC,CAAC;gCAEzB,KAAI,CAAC,YAAY,GAAG;oCAClB,iBAAiB,EAAE,SAAS,CAAC,iBAAiB;oCAC9C,6BAA6B,EAAE,SAAS,CAAC,6BAA6B;oCACtE,iCAAiC,EAAE,SAAS,CAAC,iCAAiC;oCAC9E,uBAAuB,EAAE,SAAS,CAAC,uBAAuB;oCAC1D,2BAA2B,EAAE,SAAS,CAAC,2BAA2B;iCACnE,CAAC;gCAEF,OAAO,EAAE,CAAC;4BACZ,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,EAAC;;iBACJ;WAAC;QAEF;;;;mBAAuB,cAAwB,OAAA,KAAI,CAAC,YAAY,EAAjB,CAAiB;WAAC;IA7C1C,CAAC;;;IAJT;;;;eAA6B,OAAO,CAAC,OAAO,EAAE;OAAC;IAMhD;;;;eAAM;;;4BAClB,qBAAM,mBAAmB,CAAC,WAAW,EAAA;;wBAArC,SAAqC,CAAC;6BAElC,CAAC,mBAAmB,CAAC,QAAQ,EAA7B,wBAA6B;wBAC/B,mBAAmB,CAAC,QAAQ,GAAG,IAAI,mBAAmB,EAAE,CAAC;wBACzD,mBAAmB,CAAC,WAAW,GAAG,mBAAmB,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;wBAEtE,qBAAM,mBAAmB,CAAC,WAAW,EAAA;;wBAArC,SAAqC,CAAC;;4BAGxC,sBAAO,mBAAmB,CAAC,QAAQ,EAAC;;;aACrC;OAAC;IAiCJ,0BAAC;CAAA,AApDD,IAoDC;SApDY,mBAAmB"}
@@ -7,13 +7,40 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (_) try {
17
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
10
37
  import { TsEnvironmentDetect } from '@techsee/techsee-common/lib/helpers/ts-environment-detect';
11
38
  import { getMediaTracer } from './MediaTracer';
12
39
  import { DetectWebRtcService, defaultWebRtcResult } from './DetectWebRtcService';
13
40
  //TODO not a same service like the client infra
14
- const trace = getMediaTracer('MediaCapabilitiesService');
15
- export class MediaCapabilitiesService {
16
- constructor() {
41
+ var trace = getMediaTracer('MediaCapabilitiesService');
42
+ var MediaCapabilitiesService = /** @class */ (function () {
43
+ function MediaCapabilitiesService() {
17
44
  Object.defineProperty(this, "webRtcSupportInfo", {
18
45
  enumerable: true,
19
46
  configurable: true,
@@ -36,69 +63,145 @@ export class MediaCapabilitiesService {
36
63
  value: new TsEnvironmentDetect()
37
64
  });
38
65
  }
39
- static getInstance() {
40
- return __awaiter(this, void 0, void 0, function* () {
41
- yield this.initPromise;
42
- if (!this.instance) {
43
- this.instance = new MediaCapabilitiesService();
44
- this.initPromise = this.instance.init();
45
- yield this.initPromise;
46
- }
47
- return this.instance;
48
- });
49
- }
50
- init() {
51
- return __awaiter(this, void 0, void 0, function* () {
52
- const detectWebRtcService = yield DetectWebRtcService.get();
53
- this.webRtcSupportInfo = detectWebRtcService.getWebRtcInfo();
54
- yield this.updateDevicesList();
55
- //** @FIXME handle promise */
56
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
57
- trace.info('initialize media capabilities helper successfully');
58
- });
59
- }
60
- hasCamera() {
61
- return this.devicesList.video.length > 0 && this.webRtcSupportInfo.isGetUserMediaSupported;
62
- }
63
- hasMicrophone() {
64
- const userMediaSupported = this.webRtcSupportInfo.isGetUserMediaSupported;
65
- return this.environmentService.isIOS()
66
- ? userMediaSupported
67
- : this.devicesList.audio.length > 0 && userMediaSupported;
68
- }
69
- hasWebRTC() {
70
- return this.webRtcSupportInfo.isWebRTCSupported;
71
- }
72
- updateDevicesList(reverse) {
73
- return __awaiter(this, void 0, void 0, function* () {
74
- const localDevicesList = this.webRtcSupportInfo.isWebRTCSupported
75
- ? yield navigator.mediaDevices.enumerateDevices()
76
- : [];
77
- this.devicesList = {
78
- video: localDevicesList.filter(device => device.kind.toLowerCase() === 'videoinput'),
79
- audio: localDevicesList.filter(device => device.kind.toLowerCase() === 'audioinput'),
80
- };
81
- if (reverse) {
82
- this.devicesList.video.reverse();
83
- }
84
- });
85
- }
86
- get supportSwitchCamera() {
87
- return this.devicesList.video.length > 1;
88
- }
89
- get backCameraDeviceId() {
90
- var _a;
91
- return ((_a = this.devicesList.video[this.devicesList.video.length - 1]) === null || _a === void 0 ? void 0 : _a.deviceId) || '';
92
- }
93
- get frontCameraDeviceId() {
94
- var _a;
95
- return ((_a = this.devicesList.video[0]) === null || _a === void 0 ? void 0 : _a.deviceId) || '';
96
- }
97
- }
98
- Object.defineProperty(MediaCapabilitiesService, "initPromise", {
99
- enumerable: true,
100
- configurable: true,
101
- writable: true,
102
- value: Promise.resolve()
103
- });
66
+ Object.defineProperty(MediaCapabilitiesService, "getInstance", {
67
+ enumerable: false,
68
+ configurable: true,
69
+ writable: true,
70
+ value: function () {
71
+ return __awaiter(this, void 0, void 0, function () {
72
+ return __generator(this, function (_a) {
73
+ switch (_a.label) {
74
+ case 0: return [4 /*yield*/, this.initPromise];
75
+ case 1:
76
+ _a.sent();
77
+ if (!!this.instance) return [3 /*break*/, 3];
78
+ this.instance = new MediaCapabilitiesService();
79
+ this.initPromise = this.instance.init();
80
+ return [4 /*yield*/, this.initPromise];
81
+ case 2:
82
+ _a.sent();
83
+ _a.label = 3;
84
+ case 3: return [2 /*return*/, this.instance];
85
+ }
86
+ });
87
+ });
88
+ }
89
+ });
90
+ Object.defineProperty(MediaCapabilitiesService.prototype, "init", {
91
+ enumerable: false,
92
+ configurable: true,
93
+ writable: true,
94
+ value: function () {
95
+ return __awaiter(this, void 0, void 0, function () {
96
+ var detectWebRtcService;
97
+ return __generator(this, function (_a) {
98
+ switch (_a.label) {
99
+ case 0: return [4 /*yield*/, DetectWebRtcService.get()];
100
+ case 1:
101
+ detectWebRtcService = _a.sent();
102
+ this.webRtcSupportInfo = detectWebRtcService.getWebRtcInfo();
103
+ return [4 /*yield*/, this.updateDevicesList()];
104
+ case 2:
105
+ _a.sent();
106
+ //** @FIXME handle promise */
107
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
108
+ trace.info('initialize media capabilities helper successfully');
109
+ return [2 /*return*/];
110
+ }
111
+ });
112
+ });
113
+ }
114
+ });
115
+ Object.defineProperty(MediaCapabilitiesService.prototype, "hasCamera", {
116
+ enumerable: false,
117
+ configurable: true,
118
+ writable: true,
119
+ value: function () {
120
+ return this.devicesList.video.length > 0 && this.webRtcSupportInfo.isGetUserMediaSupported;
121
+ }
122
+ });
123
+ Object.defineProperty(MediaCapabilitiesService.prototype, "hasMicrophone", {
124
+ enumerable: false,
125
+ configurable: true,
126
+ writable: true,
127
+ value: function () {
128
+ var userMediaSupported = this.webRtcSupportInfo.isGetUserMediaSupported;
129
+ return this.environmentService.isIOS()
130
+ ? userMediaSupported
131
+ : this.devicesList.audio.length > 0 && userMediaSupported;
132
+ }
133
+ });
134
+ Object.defineProperty(MediaCapabilitiesService.prototype, "hasWebRTC", {
135
+ enumerable: false,
136
+ configurable: true,
137
+ writable: true,
138
+ value: function () {
139
+ return this.webRtcSupportInfo.isWebRTCSupported;
140
+ }
141
+ });
142
+ Object.defineProperty(MediaCapabilitiesService.prototype, "updateDevicesList", {
143
+ enumerable: false,
144
+ configurable: true,
145
+ writable: true,
146
+ value: function (reverse) {
147
+ return __awaiter(this, void 0, void 0, function () {
148
+ var localDevicesList, _a;
149
+ return __generator(this, function (_b) {
150
+ switch (_b.label) {
151
+ case 0:
152
+ if (!this.webRtcSupportInfo.isWebRTCSupported) return [3 /*break*/, 2];
153
+ return [4 /*yield*/, navigator.mediaDevices.enumerateDevices()];
154
+ case 1:
155
+ _a = _b.sent();
156
+ return [3 /*break*/, 3];
157
+ case 2:
158
+ _a = [];
159
+ _b.label = 3;
160
+ case 3:
161
+ localDevicesList = _a;
162
+ this.devicesList = {
163
+ video: localDevicesList.filter(function (device) { return device.kind.toLowerCase() === 'videoinput'; }),
164
+ audio: localDevicesList.filter(function (device) { return device.kind.toLowerCase() === 'audioinput'; }),
165
+ };
166
+ if (reverse) {
167
+ this.devicesList.video.reverse();
168
+ }
169
+ return [2 /*return*/];
170
+ }
171
+ });
172
+ });
173
+ }
174
+ });
175
+ Object.defineProperty(MediaCapabilitiesService.prototype, "supportSwitchCamera", {
176
+ get: function () {
177
+ return this.devicesList.video.length > 1;
178
+ },
179
+ enumerable: false,
180
+ configurable: true
181
+ });
182
+ Object.defineProperty(MediaCapabilitiesService.prototype, "backCameraDeviceId", {
183
+ get: function () {
184
+ var _a;
185
+ return ((_a = this.devicesList.video[this.devicesList.video.length - 1]) === null || _a === void 0 ? void 0 : _a.deviceId) || '';
186
+ },
187
+ enumerable: false,
188
+ configurable: true
189
+ });
190
+ Object.defineProperty(MediaCapabilitiesService.prototype, "frontCameraDeviceId", {
191
+ get: function () {
192
+ var _a;
193
+ return ((_a = this.devicesList.video[0]) === null || _a === void 0 ? void 0 : _a.deviceId) || '';
194
+ },
195
+ enumerable: false,
196
+ configurable: true
197
+ });
198
+ Object.defineProperty(MediaCapabilitiesService, "initPromise", {
199
+ enumerable: true,
200
+ configurable: true,
201
+ writable: true,
202
+ value: Promise.resolve()
203
+ });
204
+ return MediaCapabilitiesService;
205
+ }());
206
+ export { MediaCapabilitiesService };
104
207
  //# sourceMappingURL=MediaCapabilitiesService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MediaCapabilitiesService.js","sourceRoot":"","sources":["../../src/Live3/MediaCapabilitiesService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MediaCapabilitiesService.js","sourceRoot":"","sources":["../../src/Live3/MediaCapabilitiesService.ts"],"names":[],"mappings":"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"}
@@ -7,70 +7,129 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (_) try {
17
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
10
37
  import { TsEnvironmentDetect } from '@techsee/techsee-common/lib/helpers/ts-environment-detect';
11
38
  import { getMediaTracer } from './MediaTracer';
12
39
  import { MediaCapabilitiesService } from './MediaCapabilitiesService';
13
- const trace = getMediaTracer('MediaCapabilitiesUtils');
14
- export const checkIsMobile = () => {
15
- const environmentService = new TsEnvironmentDetect();
40
+ var trace = getMediaTracer('MediaCapabilitiesUtils');
41
+ export var checkIsMobile = function () {
42
+ var environmentService = new TsEnvironmentDetect();
16
43
  return environmentService.isMobile();
17
44
  };
18
- export const checkWebRtc = () => __awaiter(void 0, void 0, void 0, function* () {
19
- try {
20
- const mediaCapabilitiesService = yield MediaCapabilitiesService.getInstance();
21
- const hasWebRTC = mediaCapabilitiesService.hasWebRTC();
22
- return hasWebRTC;
23
- }
24
- catch (err) {
25
- //** @FIXME handle promise */
26
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
27
- trace.error(JSON.stringify(err));
28
- }
29
- return false;
30
- });
31
- export function checkVideoCapabilities() {
32
- return __awaiter(this, void 0, void 0, function* () {
33
- try {
34
- const mediaCapabilitiesService = yield MediaCapabilitiesService.getInstance();
35
- const hasCamera = mediaCapabilitiesService.hasCamera();
36
- return hasCamera;
37
- }
38
- catch (err) {
39
- //** @FIXME handle promise */
40
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
41
- trace.error(JSON.stringify(err));
45
+ export var checkWebRtc = function () { return __awaiter(void 0, void 0, void 0, function () {
46
+ var mediaCapabilitiesService, hasWebRTC, err_1;
47
+ return __generator(this, function (_a) {
48
+ switch (_a.label) {
49
+ case 0:
50
+ _a.trys.push([0, 2, , 3]);
51
+ return [4 /*yield*/, MediaCapabilitiesService.getInstance()];
52
+ case 1:
53
+ mediaCapabilitiesService = _a.sent();
54
+ hasWebRTC = mediaCapabilitiesService.hasWebRTC();
55
+ return [2 /*return*/, hasWebRTC];
56
+ case 2:
57
+ err_1 = _a.sent();
58
+ //** @FIXME handle promise */
59
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
60
+ trace.error(JSON.stringify(err_1));
61
+ return [3 /*break*/, 3];
62
+ case 3: return [2 /*return*/, false];
42
63
  }
43
- return false;
64
+ });
65
+ }); };
66
+ export function checkVideoCapabilities() {
67
+ return __awaiter(this, void 0, void 0, function () {
68
+ var mediaCapabilitiesService, hasCamera, err_2;
69
+ return __generator(this, function (_a) {
70
+ switch (_a.label) {
71
+ case 0:
72
+ _a.trys.push([0, 2, , 3]);
73
+ return [4 /*yield*/, MediaCapabilitiesService.getInstance()];
74
+ case 1:
75
+ mediaCapabilitiesService = _a.sent();
76
+ hasCamera = mediaCapabilitiesService.hasCamera();
77
+ return [2 /*return*/, hasCamera];
78
+ case 2:
79
+ err_2 = _a.sent();
80
+ //** @FIXME handle promise */
81
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
82
+ trace.error(JSON.stringify(err_2));
83
+ return [3 /*break*/, 3];
84
+ case 3: return [2 /*return*/, false];
85
+ }
86
+ });
44
87
  });
45
88
  }
46
89
  export function checkAudioCapabilities() {
47
- return __awaiter(this, void 0, void 0, function* () {
48
- try {
49
- const mediaCapabilitiesService = yield MediaCapabilitiesService.getInstance();
50
- const hasMicrophone = mediaCapabilitiesService.hasMicrophone();
51
- return hasMicrophone;
52
- }
53
- catch (err) {
54
- //** @FIXME handle promise */
55
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
56
- trace.error(JSON.stringify(err));
57
- }
58
- return false;
90
+ return __awaiter(this, void 0, void 0, function () {
91
+ var mediaCapabilitiesService, hasMicrophone, err_3;
92
+ return __generator(this, function (_a) {
93
+ switch (_a.label) {
94
+ case 0:
95
+ _a.trys.push([0, 2, , 3]);
96
+ return [4 /*yield*/, MediaCapabilitiesService.getInstance()];
97
+ case 1:
98
+ mediaCapabilitiesService = _a.sent();
99
+ hasMicrophone = mediaCapabilitiesService.hasMicrophone();
100
+ return [2 /*return*/, hasMicrophone];
101
+ case 2:
102
+ err_3 = _a.sent();
103
+ //** @FIXME handle promise */
104
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
105
+ trace.error(JSON.stringify(err_3));
106
+ return [3 /*break*/, 3];
107
+ case 3: return [2 /*return*/, false];
108
+ }
109
+ });
59
110
  });
60
111
  }
61
112
  export function checkSupportSwitchCamera() {
62
- return __awaiter(this, void 0, void 0, function* () {
63
- try {
64
- const mediaCapabilitiesService = yield MediaCapabilitiesService.getInstance();
65
- const supportSwitchCamera = mediaCapabilitiesService.supportSwitchCamera;
66
- return supportSwitchCamera;
67
- }
68
- catch (err) {
69
- //** @FIXME handle promise */
70
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
71
- trace.error(JSON.stringify(err));
72
- }
73
- return false;
113
+ return __awaiter(this, void 0, void 0, function () {
114
+ var mediaCapabilitiesService, supportSwitchCamera, err_4;
115
+ return __generator(this, function (_a) {
116
+ switch (_a.label) {
117
+ case 0:
118
+ _a.trys.push([0, 2, , 3]);
119
+ return [4 /*yield*/, MediaCapabilitiesService.getInstance()];
120
+ case 1:
121
+ mediaCapabilitiesService = _a.sent();
122
+ supportSwitchCamera = mediaCapabilitiesService.supportSwitchCamera;
123
+ return [2 /*return*/, supportSwitchCamera];
124
+ case 2:
125
+ err_4 = _a.sent();
126
+ //** @FIXME handle promise */
127
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
128
+ trace.error(JSON.stringify(err_4));
129
+ return [3 /*break*/, 3];
130
+ case 3: return [2 /*return*/, false];
131
+ }
132
+ });
74
133
  });
75
134
  }
76
135
  //# sourceMappingURL=MediaCapabilitiesUtils.js.map