@observertc/observer-js 0.42.9 → 1.0.1-1b9b3c5.0

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 (295) hide show
  1. package/.prettierrc +6 -6
  2. package/README.md +0 -104
  3. package/lib/ObservedCall.d.ts +63 -43
  4. package/lib/ObservedCall.d.ts.map +1 -1
  5. package/lib/ObservedCall.js +176 -108
  6. package/lib/ObservedCallEventMonitor.d.ts +103 -0
  7. package/lib/ObservedCallEventMonitor.d.ts.map +1 -0
  8. package/lib/ObservedCallEventMonitor.js +312 -0
  9. package/lib/ObservedCallSummary.d.ts +18 -0
  10. package/lib/ObservedCallSummary.d.ts.map +1 -0
  11. package/lib/ObservedCertificate.d.ts +19 -0
  12. package/lib/ObservedCertificate.d.ts.map +1 -0
  13. package/lib/ObservedCertificate.js +38 -0
  14. package/lib/ObservedClient.d.ts +79 -130
  15. package/lib/ObservedClient.d.ts.map +1 -1
  16. package/lib/ObservedClient.js +463 -744
  17. package/lib/ObservedClientEventMonitor.d.ts +89 -0
  18. package/lib/ObservedClientEventMonitor.d.ts.map +1 -0
  19. package/lib/ObservedClientEventMonitor.js +247 -0
  20. package/lib/ObservedClientSummary.d.ts +23 -0
  21. package/lib/ObservedClientSummary.d.ts.map +1 -0
  22. package/lib/ObservedClientSummary.js +2 -0
  23. package/lib/ObservedCodec.d.ts +22 -0
  24. package/lib/ObservedCodec.d.ts.map +1 -0
  25. package/lib/ObservedCodec.js +45 -0
  26. package/lib/ObservedDataChannel.d.ts +25 -69
  27. package/lib/ObservedDataChannel.d.ts.map +1 -1
  28. package/lib/ObservedDataChannel.js +69 -109
  29. package/lib/ObservedIceCandidate.d.ts +29 -0
  30. package/lib/ObservedIceCandidate.d.ts.map +1 -0
  31. package/lib/ObservedIceCandidate.js +59 -0
  32. package/lib/ObservedIceCandidatePair.d.ts +44 -0
  33. package/lib/ObservedIceCandidatePair.d.ts.map +1 -0
  34. package/lib/ObservedIceCandidatePair.js +111 -0
  35. package/lib/ObservedIceTransport.d.ts +36 -0
  36. package/lib/ObservedIceTransport.d.ts.map +1 -0
  37. package/lib/ObservedIceTransport.js +93 -0
  38. package/lib/ObservedInboundRtp.d.ts +92 -0
  39. package/lib/ObservedInboundRtp.d.ts.map +1 -0
  40. package/lib/ObservedInboundRtp.js +193 -0
  41. package/lib/ObservedInboundTrack.d.ts +31 -0
  42. package/lib/ObservedInboundTrack.d.ts.map +1 -0
  43. package/lib/ObservedInboundTrack.js +59 -0
  44. package/lib/ObservedMediaPlayout.d.ts +22 -0
  45. package/lib/ObservedMediaPlayout.d.ts.map +1 -0
  46. package/lib/ObservedMediaPlayout.js +42 -0
  47. package/lib/ObservedMediaSource.d.ts +28 -0
  48. package/lib/ObservedMediaSource.d.ts.map +1 -0
  49. package/lib/ObservedMediaSource.js +55 -0
  50. package/lib/ObservedOutboundRtp.d.ts +62 -0
  51. package/lib/ObservedOutboundRtp.d.ts.map +1 -0
  52. package/lib/ObservedOutboundRtp.js +144 -0
  53. package/lib/ObservedOutboundTrack.d.ts +31 -0
  54. package/lib/ObservedOutboundTrack.d.ts.map +1 -0
  55. package/lib/ObservedOutboundTrack.js +59 -0
  56. package/lib/ObservedPeerConnection.d.ts +132 -80
  57. package/lib/ObservedPeerConnection.d.ts.map +1 -1
  58. package/lib/ObservedPeerConnection.js +646 -357
  59. package/lib/ObservedPeerConnectionTransport.d.ts +17 -0
  60. package/lib/ObservedPeerConnectionTransport.d.ts.map +1 -0
  61. package/lib/ObservedPeerConnectionTransport.js +34 -0
  62. package/lib/ObservedRemoteInboundRtp.d.ts +30 -0
  63. package/lib/ObservedRemoteInboundRtp.d.ts.map +1 -0
  64. package/lib/ObservedRemoteInboundRtp.js +60 -0
  65. package/lib/ObservedRemoteOutboundRtp.d.ts +30 -0
  66. package/lib/ObservedRemoteOutboundRtp.d.ts.map +1 -0
  67. package/lib/ObservedRemoteOutboundRtp.js +60 -0
  68. package/lib/ObservedTURN.d.ts +31 -0
  69. package/lib/ObservedTURN.d.ts.map +1 -0
  70. package/lib/ObservedTURN.js +58 -0
  71. package/lib/ObservedTurnServer.d.ts +25 -0
  72. package/lib/ObservedTurnServer.d.ts.map +1 -0
  73. package/lib/ObservedTurnServer.js +59 -0
  74. package/lib/Observer.d.ts +44 -51
  75. package/lib/Observer.d.ts.map +1 -1
  76. package/lib/Observer.js +135 -226
  77. package/lib/ObserverEventMonitor.d.ts +106 -0
  78. package/lib/ObserverEventMonitor.d.ts.map +1 -0
  79. package/lib/ObserverEventMonitor.js +320 -0
  80. package/lib/ObserverSummary.d.ts +13 -0
  81. package/lib/ObserverSummary.d.ts.map +1 -0
  82. package/lib/ObserverSummary.js +2 -0
  83. package/lib/common/Middleware.d.ts +10 -1
  84. package/lib/common/Middleware.d.ts.map +1 -1
  85. package/lib/common/Middleware.js +55 -36
  86. package/lib/common/logger.d.ts +8 -4
  87. package/lib/common/logger.d.ts.map +1 -1
  88. package/lib/common/logger.js +44 -68
  89. package/lib/common/types.d.ts +0 -21
  90. package/lib/common/types.d.ts.map +1 -1
  91. package/lib/common/types.js +1 -0
  92. package/lib/common/utils.d.ts +3 -1
  93. package/lib/common/utils.d.ts.map +1 -1
  94. package/lib/common/utils.js +23 -3
  95. package/lib/detectors/Detector.d.ts +5 -0
  96. package/lib/detectors/Detector.d.ts.map +1 -0
  97. package/lib/detectors/Detector.js +3 -0
  98. package/lib/detectors/Detectors.d.ts +11 -0
  99. package/lib/detectors/Detectors.d.ts.map +1 -0
  100. package/lib/detectors/Detectors.js +34 -0
  101. package/lib/index.d.ts +26 -25
  102. package/lib/index.d.ts.map +1 -1
  103. package/lib/index.js +45 -41
  104. package/lib/monitors/TurnUsageMonitor.d.ts +0 -52
  105. package/lib/monitors/TurnUsageMonitor.d.ts.map +1 -1
  106. package/lib/monitors/TurnUsageMonitor.js +145 -120
  107. package/lib/schema/ClientEventTypes.d.ts +160 -0
  108. package/lib/schema/ClientEventTypes.d.ts.map +1 -0
  109. package/lib/schema/ClientEventTypes.js +38 -0
  110. package/lib/schema/ClientMetaTypes.d.ts +34 -0
  111. package/lib/schema/ClientMetaTypes.d.ts.map +1 -0
  112. package/lib/schema/ClientMetaTypes.js +16 -0
  113. package/lib/schema/ClientSample.d.ts +1333 -0
  114. package/lib/schema/ClientSample.d.ts.map +1 -0
  115. package/lib/schema/ClientSample.js +4 -0
  116. package/lib/scores/CalculatedScore.d.ts +6 -0
  117. package/lib/scores/CalculatedScore.d.ts.map +1 -0
  118. package/lib/scores/CalculatedScore.js +2 -0
  119. package/lib/scores/DefaultCallScoreCalculator.d.ts +7 -0
  120. package/lib/scores/DefaultCallScoreCalculator.d.ts.map +1 -0
  121. package/lib/scores/DefaultCallScoreCalculator.js +21 -0
  122. package/lib/scores/ScoreCalculator.d.ts +4 -0
  123. package/lib/scores/ScoreCalculator.d.ts.map +1 -0
  124. package/lib/scores/ScoreCalculator.js +2 -0
  125. package/lib/updaters/CallUpdater.d.ts +5 -0
  126. package/lib/updaters/CallUpdater.d.ts.map +1 -0
  127. package/lib/updaters/CallUpdater.js +2 -0
  128. package/lib/updaters/ObserverUpdater.d.ts +5 -0
  129. package/lib/updaters/ObserverUpdater.d.ts.map +1 -0
  130. package/lib/updaters/ObserverUpdater.js +2 -0
  131. package/lib/updaters/OnAllCallObserverUpdater.d.ts +15 -0
  132. package/lib/updaters/OnAllCallObserverUpdater.d.ts.map +1 -0
  133. package/lib/updaters/OnAllCallObserverUpdater.js +50 -0
  134. package/lib/updaters/OnAllClientCallUpdater.d.ts +15 -0
  135. package/lib/updaters/OnAllClientCallUpdater.d.ts.map +1 -0
  136. package/lib/updaters/OnAllClientCallUpdater.js +53 -0
  137. package/lib/updaters/OnAnyCallObserverUpdater.d.ts +12 -0
  138. package/lib/updaters/OnAnyCallObserverUpdater.d.ts.map +1 -0
  139. package/lib/updaters/OnAnyCallObserverUpdater.js +37 -0
  140. package/lib/updaters/OnAnyClientCallUpdater.d.ts +12 -0
  141. package/lib/updaters/OnAnyClientCallUpdater.d.ts.map +1 -0
  142. package/lib/updaters/OnAnyClientCallUpdater.js +36 -0
  143. package/lib/updaters/OnIntervalUpdater.d.ts +10 -0
  144. package/lib/updaters/OnIntervalUpdater.d.ts.map +1 -0
  145. package/lib/updaters/OnIntervalUpdater.js +17 -0
  146. package/lib/updaters/Updater.d.ts +6 -0
  147. package/lib/updaters/Updater.d.ts.map +1 -0
  148. package/lib/updaters/Updater.js +2 -0
  149. package/lib/utils/MediasoupRemoteTrackResolver.d.ts +25 -0
  150. package/lib/utils/MediasoupRemoteTrackResolver.d.ts.map +1 -0
  151. package/lib/utils/MediasoupRemoteTrackResolver.js +110 -0
  152. package/lib/utils/RemoteTrackResolver.d.ts +7 -0
  153. package/lib/utils/RemoteTrackResolver.d.ts.map +1 -0
  154. package/lib/utils/RemoteTrackResolver.js +2 -0
  155. package/package.json +4 -4
  156. package/src/ObservedCall.ts +267 -166
  157. package/src/ObservedCallEventMonitor.ts +389 -0
  158. package/src/ObservedCallSummary.ts +22 -0
  159. package/src/ObservedCertificate.ts +43 -0
  160. package/src/ObservedClient.ts +519 -1020
  161. package/src/ObservedClientEventMonitor.ts +301 -0
  162. package/src/ObservedClientSummary.ts +24 -0
  163. package/src/ObservedCodec.ts +49 -0
  164. package/src/ObservedDataChannel.ts +71 -181
  165. package/src/ObservedIceCandidate.ts +64 -0
  166. package/src/ObservedIceCandidatePair.ts +118 -0
  167. package/src/ObservedIceTransport.ts +99 -0
  168. package/src/ObservedInboundRtp.ts +205 -0
  169. package/src/ObservedInboundTrack.ts +73 -0
  170. package/src/ObservedMediaPlayout.ts +49 -0
  171. package/src/ObservedMediaSource.ts +60 -0
  172. package/src/ObservedOutboundRtp.ts +156 -0
  173. package/src/ObservedOutboundTrack.ts +72 -0
  174. package/src/ObservedPeerConnection.ts +854 -408
  175. package/src/ObservedPeerConnectionTransport.ts +38 -0
  176. package/src/ObservedRemoteInboundRtp.ts +64 -0
  177. package/src/ObservedRemoteOutboundRtp.ts +65 -0
  178. package/src/ObservedTURN.ts +86 -0
  179. package/src/ObservedTurnServer.ts +72 -0
  180. package/src/Observer.ts +180 -295
  181. package/src/ObserverEventMonitor.ts +398 -0
  182. package/src/ObserverSummary.ts +15 -0
  183. package/src/common/Middleware.ts +70 -42
  184. package/src/common/logger.ts +60 -69
  185. package/src/common/types.ts +0 -42
  186. package/src/common/utils.ts +24 -2
  187. package/src/detectors/Detector.ts +6 -0
  188. package/src/detectors/Detectors.ts +38 -0
  189. package/src/index.ts +26 -90
  190. package/src/monitors/TurnUsageMonitor.ts +164 -164
  191. package/src/schema/ClientEventTypes.ts +176 -0
  192. package/src/schema/ClientMetaTypes.ts +41 -0
  193. package/src/schema/ClientSample.ts +1682 -0
  194. package/src/scores/CalculatedScore.ts +6 -0
  195. package/src/scores/DefaultCallScoreCalculator.ts +23 -0
  196. package/src/scores/ScoreCalculator.ts +3 -0
  197. package/src/updaters/CallUpdater.ts +5 -0
  198. package/src/updaters/ObserverUpdater.ts +5 -0
  199. package/src/updaters/OnAllCallObserverUpdater.ts +59 -0
  200. package/src/updaters/OnAllClientCallUpdater.ts +61 -0
  201. package/src/updaters/OnAnyCallObserverUpdater.ts +41 -0
  202. package/src/updaters/OnAnyClientCallUpdater.ts +39 -0
  203. package/src/updaters/OnIntervalUpdater.ts +19 -0
  204. package/src/updaters/Updater.ts +5 -0
  205. package/src/utils/MediasoupRemoteTrackResolver.ts +155 -0
  206. package/src/utils/RemoteTrackResolver.ts +12 -0
  207. package/tsconfig.json +3 -3
  208. package/lib/ObservedICE.d.ts +0 -64
  209. package/lib/ObservedICE.d.ts.map +0 -1
  210. package/lib/ObservedICE.js +0 -141
  211. package/lib/ObservedInboundAudioTrack.d.ts +0 -96
  212. package/lib/ObservedInboundAudioTrack.d.ts.map +0 -1
  213. package/lib/ObservedInboundAudioTrack.js +0 -217
  214. package/lib/ObservedInboundVideoTrack.d.ts +0 -101
  215. package/lib/ObservedInboundVideoTrack.d.ts.map +0 -1
  216. package/lib/ObservedInboundVideoTrack.js +0 -232
  217. package/lib/ObservedOutboundAudioTrack.d.ts +0 -87
  218. package/lib/ObservedOutboundAudioTrack.d.ts.map +0 -1
  219. package/lib/ObservedOutboundAudioTrack.js +0 -186
  220. package/lib/ObservedOutboundVideoTrack.d.ts +0 -91
  221. package/lib/ObservedOutboundVideoTrack.d.ts.map +0 -1
  222. package/lib/ObservedOutboundVideoTrack.js +0 -193
  223. package/lib/ObservedSfu.d.ts +0 -59
  224. package/lib/ObservedSfu.d.ts.map +0 -1
  225. package/lib/ObservedSfu.js +0 -157
  226. package/lib/ObservedSfuInboundRtpPad.d.ts +0 -42
  227. package/lib/ObservedSfuInboundRtpPad.d.ts.map +0 -1
  228. package/lib/ObservedSfuInboundRtpPad.js +0 -71
  229. package/lib/ObservedSfuOutboundRtpPad.d.ts +0 -42
  230. package/lib/ObservedSfuOutboundRtpPad.d.ts.map +0 -1
  231. package/lib/ObservedSfuOutboundRtpPad.js +0 -72
  232. package/lib/ObservedSfuSctpChannel.d.ts +0 -42
  233. package/lib/ObservedSfuSctpChannel.d.ts.map +0 -1
  234. package/lib/ObservedSfuSctpChannel.js +0 -57
  235. package/lib/ObservedSfuTransport.d.ts +0 -58
  236. package/lib/ObservedSfuTransport.d.ts.map +0 -1
  237. package/lib/ObservedSfuTransport.js +0 -120
  238. package/lib/RemoteTrackAssigner.d.ts +0 -14
  239. package/lib/RemoteTrackAssigner.d.ts.map +0 -1
  240. package/lib/RemoteTrackAssigner.js +0 -52
  241. package/lib/ReportsCollector.d.ts +0 -109
  242. package/lib/ReportsCollector.d.ts.map +0 -1
  243. package/lib/ReportsCollector.js +0 -207
  244. package/lib/common/CalculatedScore.d.ts +0 -80
  245. package/lib/common/CalculatedScore.d.ts.map +0 -1
  246. package/lib/common/CalculatedScore.js +0 -162
  247. package/lib/common/CallEventType.d.ts +0 -63
  248. package/lib/common/CallEventType.d.ts.map +0 -1
  249. package/lib/common/CallEventType.js +0 -39
  250. package/lib/common/CallMetaReports.d.ts +0 -42
  251. package/lib/common/CallMetaReports.d.ts.map +0 -1
  252. package/lib/common/CallMetaReports.js +0 -36
  253. package/lib/common/QualityScoreUtils.d.ts +0 -1
  254. package/lib/common/QualityScoreUtils.d.ts.map +0 -1
  255. package/lib/common/QualityScoreUtils.js +0 -1
  256. package/lib/common/TypedEventEmitter.d.ts +0 -22
  257. package/lib/common/TypedEventEmitter.d.ts.map +0 -1
  258. package/lib/common/TypedEventEmitter.js +0 -11
  259. package/lib/common/callEventReports.d.ts +0 -10
  260. package/lib/common/callEventReports.d.ts.map +0 -1
  261. package/lib/common/callEventReports.js +0 -112
  262. package/lib/monitors/CallSummary.d.ts +0 -37
  263. package/lib/monitors/CallSummary.d.ts.map +0 -1
  264. package/lib/monitors/CallSummaryMonitor.d.ts +0 -32
  265. package/lib/monitors/CallSummaryMonitor.d.ts.map +0 -1
  266. package/lib/monitors/CallSummaryMonitor.js +0 -152
  267. package/lib/monitors/ClientIssueMonitor.d.ts +0 -32
  268. package/lib/monitors/ClientIssueMonitor.d.ts.map +0 -1
  269. package/lib/monitors/ClientIssueMonitor.js +0 -49
  270. package/lib/monitors/SfuServerMonitor.d.ts +0 -79
  271. package/lib/monitors/SfuServerMonitor.d.ts.map +0 -1
  272. package/lib/monitors/SfuServerMonitor.js +0 -198
  273. package/src/ObservedICE.ts +0 -237
  274. package/src/ObservedInboundAudioTrack.ts +0 -344
  275. package/src/ObservedInboundVideoTrack.ts +0 -361
  276. package/src/ObservedOutboundAudioTrack.ts +0 -307
  277. package/src/ObservedOutboundVideoTrack.ts +0 -319
  278. package/src/ObservedSfu.ts +0 -231
  279. package/src/ObservedSfuInboundRtpPad.ts +0 -106
  280. package/src/ObservedSfuOutboundRtpPad.ts +0 -107
  281. package/src/ObservedSfuSctpChannel.ts +0 -103
  282. package/src/ObservedSfuTransport.ts +0 -185
  283. package/src/RemoteTrackAssigner.ts +0 -68
  284. package/src/ReportsCollector.ts +0 -336
  285. package/src/common/CalculatedScore.ts +0 -188
  286. package/src/common/CallEventType.ts +0 -69
  287. package/src/common/CallMetaReports.ts +0 -82
  288. package/src/common/QualityScoreUtils.ts +0 -0
  289. package/src/common/TypedEventEmitter.ts +0 -32
  290. package/src/common/callEventReports.ts +0 -178
  291. package/src/monitors/CallSummary.ts +0 -38
  292. package/src/monitors/CallSummaryMonitor.ts +0 -192
  293. package/src/monitors/ClientIssueMonitor.ts +0 -88
  294. package/src/monitors/SfuServerMonitor.ts +0 -285
  295. /package/lib/{monitors/CallSummary.js → ObservedCallSummary.js} +0 -0
@@ -0,0 +1,320 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ObserverEventMonitor = void 0;
4
+ class ObserverEventMonitor {
5
+ observer;
6
+ context;
7
+ constructor(observer, context) {
8
+ this.observer = observer;
9
+ this.context = context;
10
+ this._onPeerConnconnectionAdded = this._onPeerConnconnectionAdded.bind(this);
11
+ this._onPeerConnectionRemoved = this._onPeerConnectionRemoved.bind(this);
12
+ this._onCertificateAdded = this._onCertificateAdded.bind(this);
13
+ this._onCertificateRemoved = this._onCertificateRemoved.bind(this);
14
+ this._onInboundTrackAdded = this._onInboundTrackAdded.bind(this);
15
+ this._onInboundTrackRemoved = this._onInboundTrackRemoved.bind(this);
16
+ this._onOutboundTrackAdded = this._onOutboundTrackAdded.bind(this);
17
+ this._onOutboundTrackRemoved = this._onOutboundTrackRemoved.bind(this);
18
+ this._onInboundRtpAdded = this._onInboundRtpAdded.bind(this);
19
+ this._onInboundRtpRemoved = this._onInboundRtpRemoved.bind(this);
20
+ this._onOutboundRtpAdded = this._onOutboundRtpAdded.bind(this);
21
+ this._onOutboundRtpRemoved = this._onOutboundRtpRemoved.bind(this);
22
+ this._onDataChannelAdded = this._onDataChannelAdded.bind(this);
23
+ this._onDataChannelRemoved = this._onDataChannelRemoved.bind(this);
24
+ this._onAddedIceTransport = this._onAddedIceTransport.bind(this);
25
+ this._onRemovedIceTransport = this._onRemovedIceTransport.bind(this);
26
+ this._onIceCandidateAdded = this._onIceCandidateAdded.bind(this);
27
+ this._onIceCandidateRemoved = this._onIceCandidateRemoved.bind(this);
28
+ this._onAddedIceCandidatePair = this._onAddedIceCandidatePair.bind(this);
29
+ this._onRemovedIceCandidatePair = this._onRemovedIceCandidatePair.bind(this);
30
+ this._onAddedMediaCodec = this._onAddedMediaCodec.bind(this);
31
+ this._onRemovedMediaCodec = this._onRemovedMediaCodec.bind(this);
32
+ this._onAddedMediaPlayout = this._onAddedMediaPlayout.bind(this);
33
+ this._onRemovedMediaPlayout = this._onRemovedMediaPlayout.bind(this);
34
+ this._onMediaSourceAdded = this._onMediaSourceAdded.bind(this);
35
+ this._onMediaSourceRemoved = this._onMediaSourceRemoved.bind(this);
36
+ this._onClientIssue = this._onClientIssue.bind(this);
37
+ this._onClientMetadata = this._onClientMetadata.bind(this);
38
+ this._onClientJoined = this._onClientJoined.bind(this);
39
+ this._onClientLeft = this._onClientLeft.bind(this);
40
+ this._onUserMediaError = this._onUserMediaError.bind(this);
41
+ this._onUsingTurn = this._onUsingTurn.bind(this);
42
+ this._onClientAdded = this._onClientAdded.bind(this);
43
+ this._onCallAdded = this._onCallAdded.bind(this);
44
+ this._onClientRejoined = this._onClientRejoined.bind(this);
45
+ this._onClientExtensionStats = this._onClientExtensionStats.bind(this);
46
+ this.observer.once('close', () => {
47
+ this.observer.off('newcall', this._onCallAdded);
48
+ });
49
+ this.observer.on('newcall', this._onCallAdded);
50
+ }
51
+ // Public event handlers
52
+ onCallAdded;
53
+ onCallRemoved;
54
+ onCallEmpty;
55
+ onCallNotEmpty;
56
+ onCallUpdated;
57
+ onClientAdded;
58
+ onClientClosed;
59
+ onClientRejoined;
60
+ onClientIssue;
61
+ onClientMetadata;
62
+ onClientExtensionStats;
63
+ onClientJoined;
64
+ onClientLeft;
65
+ onClientUserMediaError;
66
+ onClientUsingTurn;
67
+ onClientUpdated;
68
+ onClientEvent;
69
+ onPeerConnectionAdded;
70
+ onPeerConnectionRemoved;
71
+ onSelectedCandidatePairChanged;
72
+ onIceGatheringStateChange;
73
+ onIceConnectionStateChange;
74
+ onConnectionStateChange;
75
+ onCertificateAdded;
76
+ onCertificateRemoved;
77
+ onInboundTrackAdded;
78
+ onInboundTrackRemoved;
79
+ onOutboundTrackAdded;
80
+ onOutboundTrackRemoved;
81
+ onInboundRtpAdded;
82
+ onInboundRtpRemoved;
83
+ onOutboundRtpAdded;
84
+ onOutboundRtpRemoved;
85
+ onDataChannelAdded;
86
+ onDataChannelRemoved;
87
+ onAddedIceTransport;
88
+ onRemovedIceTransport;
89
+ onIceCandidateAdded;
90
+ onIceCandidateRemoved;
91
+ onAddedIceCandidatePair;
92
+ onRemovedIceCandidatePair;
93
+ onAddedMediaCodec;
94
+ onRemovedMediaCodec;
95
+ onAddedMediaPlayout;
96
+ onRemovedMediaPlayout;
97
+ onMediaSourceAdded;
98
+ onMediaSourceRemoved;
99
+ _onCallAdded(call) {
100
+ const onCallEmpty = () => this.onCallEmpty?.(call, this.context);
101
+ const onCallNotEmpty = () => this.onCallNotEmpty?.(call, this.context);
102
+ const onCallUpdated = () => this.onCallUpdated?.(call, this.context);
103
+ call.once('close', () => {
104
+ call.off('newclient', this._onClientAdded);
105
+ call.off('empty', onCallEmpty);
106
+ call.off('not-empty', onCallNotEmpty);
107
+ call.off('update', onCallUpdated);
108
+ this.onCallRemoved?.(call, this.context);
109
+ });
110
+ call.on('newclient', this._onClientAdded);
111
+ call.on('empty', onCallEmpty);
112
+ call.on('not-empty', onCallNotEmpty);
113
+ call.on('update', onCallUpdated);
114
+ this.onCallAdded?.(call, this.context);
115
+ }
116
+ _onClientAdded(observedClient) {
117
+ const onClientIssue = (issue) => this._onClientIssue(observedClient, issue);
118
+ const onClientMetadata = (metaData) => this._onClientMetadata(observedClient, metaData);
119
+ const onClientJoined = () => this._onClientJoined(observedClient);
120
+ const onClientLeft = () => this._onClientLeft(observedClient);
121
+ const onClientRejoined = () => this._onClientRejoined(observedClient);
122
+ const onClientExtensionStats = (extensionStats) => this._onClientExtensionStats(observedClient, extensionStats);
123
+ const onUsingTurn = (usingTurn) => this._onUsingTurn(observedClient, usingTurn);
124
+ const onUserMediaError = (error) => this._onUserMediaError(observedClient, error);
125
+ const onClientUpdated = () => this.onClientUpdated?.(observedClient, this.context);
126
+ const onClientEvent = (event) => this.onClientEvent?.(observedClient, event, this.context);
127
+ observedClient.once('close', () => {
128
+ observedClient.off('newpeerconnection', this._onPeerConnconnectionAdded);
129
+ observedClient.off('issue', onClientIssue);
130
+ observedClient.off('metaData', onClientMetadata);
131
+ observedClient.off('joined', onClientJoined);
132
+ observedClient.off('left', onClientLeft);
133
+ observedClient.off('rejoined', onClientJoined);
134
+ observedClient.off('usermediaerror', onUserMediaError);
135
+ observedClient.off('usingturn', onUsingTurn);
136
+ observedClient.off('extensionStats', onClientExtensionStats);
137
+ observedClient.off('update', onClientUpdated);
138
+ observedClient.off('clientEvent', onClientEvent);
139
+ this.onClientClosed?.(observedClient, this.context);
140
+ });
141
+ observedClient.on('newpeerconnection', this._onPeerConnconnectionAdded);
142
+ observedClient.on('issue', onClientIssue);
143
+ observedClient.on('metaData', onClientMetadata);
144
+ observedClient.on('joined', onClientJoined);
145
+ observedClient.on('left', onClientLeft);
146
+ observedClient.on('rejoined', onClientRejoined);
147
+ observedClient.on('usermediaerror', onUserMediaError);
148
+ observedClient.on('usingturn', onUsingTurn);
149
+ observedClient.on('extensionStats', onClientExtensionStats);
150
+ observedClient.on('update', onClientUpdated);
151
+ observedClient.on('clientEvent', onClientEvent);
152
+ this.onClientAdded?.(observedClient, this.context);
153
+ }
154
+ _onClientRejoined(observedClient) {
155
+ this.onClientRejoined?.(observedClient, this.context);
156
+ }
157
+ _onPeerConnconnectionAdded(peerConnection) {
158
+ const onSelectedCandidatePairChanged = () => this.onSelectedCandidatePairChanged?.(peerConnection, this.context);
159
+ const onIceGatheringStateChange = () => this.onIceGatheringStateChange?.(peerConnection, this.context);
160
+ const onIceConnectionStateChange = () => this.onIceConnectionStateChange?.(peerConnection, this.context);
161
+ const onConnectionStateChange = () => this.onConnectionStateChange?.(peerConnection, this.context);
162
+ peerConnection.once('close', () => {
163
+ peerConnection.off('added-certificate', this._onCertificateAdded);
164
+ peerConnection.off('removed-certificate', this._onCertificateRemoved);
165
+ peerConnection.off('added-inbound-track', this._onInboundTrackAdded);
166
+ peerConnection.off('removed-inbound-track', this._onInboundTrackRemoved);
167
+ peerConnection.off('added-outbound-track', this._onOutboundTrackAdded);
168
+ peerConnection.off('removed-outbound-track', this._onOutboundTrackRemoved);
169
+ peerConnection.off('added-inbound-rtp', this._onInboundRtpAdded);
170
+ peerConnection.off('removed-inbound-rtp', this._onInboundRtpRemoved);
171
+ peerConnection.off('added-outbound-rtp', this._onOutboundRtpAdded);
172
+ peerConnection.off('removed-outbound-rtp', this._onOutboundRtpRemoved);
173
+ peerConnection.off('added-data-channel', this._onDataChannelAdded);
174
+ peerConnection.off('removed-data-channel', this._onDataChannelRemoved);
175
+ peerConnection.off('added-ice-transport', this._onAddedIceTransport);
176
+ peerConnection.off('removed-ice-transport', this._onRemovedIceTransport);
177
+ peerConnection.off('added-ice-candidate', this._onIceCandidateAdded);
178
+ peerConnection.off('removed-ice-candidate', this._onIceCandidateRemoved);
179
+ peerConnection.off('added-ice-candidate-pair', this._onAddedIceCandidatePair);
180
+ peerConnection.off('removed-ice-candidate-pair', this._onRemovedIceCandidatePair);
181
+ peerConnection.off('added-codec', this._onAddedMediaCodec);
182
+ peerConnection.off('removed-codec', this._onRemovedMediaCodec);
183
+ peerConnection.off('added-media-playout', this._onAddedMediaPlayout);
184
+ peerConnection.off('removed-media-playout', this._onRemovedMediaPlayout);
185
+ peerConnection.off('added-media-source', this._onMediaSourceAdded);
186
+ peerConnection.off('removed-media-source', this._onMediaSourceRemoved);
187
+ peerConnection.off('selectedcandidatepair', onSelectedCandidatePairChanged);
188
+ peerConnection.off('icegatheringstatechange', onIceGatheringStateChange);
189
+ peerConnection.off('iceconnectionstatechange', onIceConnectionStateChange);
190
+ peerConnection.off('connectionstatechange', onConnectionStateChange);
191
+ this.onPeerConnectionRemoved?.(peerConnection, this.context);
192
+ });
193
+ peerConnection.on('added-certificate', this._onCertificateAdded);
194
+ peerConnection.on('removed-certificate', this._onCertificateRemoved);
195
+ peerConnection.on('added-inbound-track', this._onInboundTrackAdded);
196
+ peerConnection.on('removed-inbound-track', this._onInboundTrackRemoved);
197
+ peerConnection.on('added-outbound-track', this._onOutboundTrackAdded);
198
+ peerConnection.on('removed-outbound-track', this._onOutboundTrackRemoved);
199
+ peerConnection.on('added-inbound-rtp', this._onInboundRtpAdded);
200
+ peerConnection.on('removed-inbound-rtp', this._onInboundRtpRemoved);
201
+ peerConnection.on('added-outbound-rtp', this._onOutboundRtpAdded);
202
+ peerConnection.on('removed-outbound-rtp', this._onOutboundRtpRemoved);
203
+ peerConnection.on('added-data-channel', this._onDataChannelAdded);
204
+ peerConnection.on('removed-data-channel', this._onDataChannelRemoved);
205
+ peerConnection.on('added-ice-transport', this._onAddedIceTransport);
206
+ peerConnection.on('removed-ice-transport', this._onRemovedIceTransport);
207
+ peerConnection.on('added-ice-candidate', this._onIceCandidateAdded);
208
+ peerConnection.on('removed-ice-candidate', this._onIceCandidateRemoved);
209
+ peerConnection.on('added-ice-candidate-pair', this._onAddedIceCandidatePair);
210
+ peerConnection.on('removed-ice-candidate-pair', this._onRemovedIceCandidatePair);
211
+ peerConnection.on('added-codec', this._onAddedMediaCodec);
212
+ peerConnection.on('removed-codec', this._onRemovedMediaCodec);
213
+ peerConnection.on('added-media-playout', this._onAddedMediaPlayout);
214
+ peerConnection.on('removed-media-playout', this._onRemovedMediaPlayout);
215
+ peerConnection.on('added-media-source', this._onMediaSourceAdded);
216
+ peerConnection.on('removed-media-source', this._onMediaSourceRemoved);
217
+ peerConnection.on('selectedcandidatepair', onSelectedCandidatePairChanged);
218
+ peerConnection.on('icegatheringstatechange', onIceGatheringStateChange);
219
+ peerConnection.on('iceconnectionstatechange', onIceConnectionStateChange);
220
+ peerConnection.on('connectionstatechange', onConnectionStateChange);
221
+ this.onPeerConnectionAdded?.(peerConnection, this.context);
222
+ }
223
+ _onPeerConnectionRemoved(peerConnection) {
224
+ this.onPeerConnectionRemoved?.(peerConnection, this.context);
225
+ }
226
+ _onCertificateAdded(certificate) {
227
+ this.onCertificateAdded?.(certificate, this.context);
228
+ }
229
+ _onCertificateRemoved(certificate) {
230
+ this.onCertificateRemoved?.(certificate, this.context);
231
+ }
232
+ _onInboundTrackAdded(inboundTrack) {
233
+ this.onInboundTrackAdded?.(inboundTrack, this.context);
234
+ }
235
+ _onInboundTrackRemoved(inboundTrack) {
236
+ this.onInboundTrackRemoved?.(inboundTrack, this.context);
237
+ }
238
+ _onOutboundTrackAdded(outboundTrack) {
239
+ this.onOutboundTrackAdded?.(outboundTrack, this.context);
240
+ }
241
+ _onOutboundTrackRemoved(outboundTrack) {
242
+ this.onOutboundTrackRemoved?.(outboundTrack, this.context);
243
+ }
244
+ _onInboundRtpAdded(inboundRtp) {
245
+ this.onInboundRtpAdded?.(inboundRtp, this.context);
246
+ }
247
+ _onInboundRtpRemoved(inboundRtp) {
248
+ this.onInboundRtpRemoved?.(inboundRtp, this.context);
249
+ }
250
+ _onOutboundRtpAdded(outboundRtp) {
251
+ this.onOutboundRtpAdded?.(outboundRtp, this.context);
252
+ }
253
+ _onOutboundRtpRemoved(outboundRtp) {
254
+ this.onOutboundRtpRemoved?.(outboundRtp, this.context);
255
+ }
256
+ _onDataChannelAdded(dataChannel) {
257
+ this.onDataChannelAdded?.(dataChannel, this.context);
258
+ }
259
+ _onDataChannelRemoved(dataChannel) {
260
+ this.onDataChannelRemoved?.(dataChannel, this.context);
261
+ }
262
+ _onAddedIceTransport(iceTransport) {
263
+ this.onAddedIceTransport?.(iceTransport, this.context);
264
+ }
265
+ _onRemovedIceTransport(iceTransport) {
266
+ this.onRemovedIceTransport?.(iceTransport, this.context);
267
+ }
268
+ _onIceCandidateAdded(iceCandidate) {
269
+ this.onIceCandidateAdded?.(iceCandidate, this.context);
270
+ }
271
+ _onIceCandidateRemoved(iceCandidate) {
272
+ this.onIceCandidateRemoved?.(iceCandidate, this.context);
273
+ }
274
+ _onAddedIceCandidatePair(candidatePair) {
275
+ this.onAddedIceCandidatePair?.(candidatePair, this.context);
276
+ }
277
+ _onRemovedIceCandidatePair(candidatePair) {
278
+ this.onRemovedIceCandidatePair?.(candidatePair, this.context);
279
+ }
280
+ _onAddedMediaCodec(codec) {
281
+ this.onAddedMediaCodec?.(codec, this.context);
282
+ }
283
+ _onRemovedMediaCodec(codec) {
284
+ this.onRemovedMediaCodec?.(codec, this.context);
285
+ }
286
+ _onAddedMediaPlayout(mediaPlayout) {
287
+ this.onAddedMediaPlayout?.(mediaPlayout, this.context);
288
+ }
289
+ _onRemovedMediaPlayout(mediaPlayout) {
290
+ this.onRemovedMediaPlayout?.(mediaPlayout, this.context);
291
+ }
292
+ _onMediaSourceAdded(mediaSource) {
293
+ this.onMediaSourceAdded?.(mediaSource, this.context);
294
+ }
295
+ _onMediaSourceRemoved(mediaSource) {
296
+ this.onMediaSourceRemoved?.(mediaSource, this.context);
297
+ }
298
+ _onClientIssue(observedClent, issue) {
299
+ this.onClientIssue?.(observedClent, issue, this.context);
300
+ }
301
+ _onClientMetadata(observedClient, metadata) {
302
+ this.onClientMetadata?.(observedClient, metadata, this.context);
303
+ }
304
+ _onClientExtensionStats(observedClient, extensionStats) {
305
+ this.onClientExtensionStats?.(observedClient, extensionStats, this.context);
306
+ }
307
+ _onClientJoined(observedClient) {
308
+ this.onClientJoined?.(observedClient, this.context);
309
+ }
310
+ _onClientLeft(observedClient) {
311
+ this.onClientLeft?.(observedClient, this.context);
312
+ }
313
+ _onUserMediaError(observedClient, error) {
314
+ this.onClientUserMediaError?.(observedClient, error, this.context);
315
+ }
316
+ _onUsingTurn(observedClient, usingTurn) {
317
+ this.onClientUsingTurn?.(observedClient, usingTurn, this.context);
318
+ }
319
+ }
320
+ exports.ObserverEventMonitor = ObserverEventMonitor;
@@ -0,0 +1,13 @@
1
+ export type ObserverSummary = {
2
+ currentActiveCalls: number;
3
+ currentNumberOfClientsUsingTURN: number;
4
+ currentNumberOfClients: number;
5
+ totalAddedCall: number;
6
+ totalRemovedCall: number;
7
+ totalRttLt50Measurements: number;
8
+ totalRttLt150Measurements: number;
9
+ totalRttLt300Measurements: number;
10
+ totalRttGtOrEq300Measurements: number;
11
+ totalClientIssues: number;
12
+ };
13
+ //# sourceMappingURL=ObserverSummary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObserverSummary.d.ts","sourceRoot":"","sources":["../src/ObserverSummary.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,+BAA+B,EAAE,MAAM,CAAC;IACxC,sBAAsB,EAAE,MAAM,CAAC;IAE/B,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IAEzB,wBAAwB,EAAE,MAAM,CAAC;IACjC,yBAAyB,EAAE,MAAM,CAAC;IAClC,yBAAyB,EAAE,MAAM,CAAC;IAClC,6BAA6B,EAAE,MAAM,CAAC;IAEtC,iBAAiB,EAAE,MAAM,CAAC;CAC1B,CAAA"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,8 +1,17 @@
1
1
  export type Middleware<T> = (input: T, next: (nextInput: T) => void) => void;
2
2
  export interface Processor<T> {
3
+ finalCallback?: Callback<T>;
3
4
  process(value: T): void;
4
5
  addMiddleware(...middlewares: Middleware<T>[]): Processor<T>;
5
6
  removeMiddleware(...middlewares: Middleware<T>[]): Processor<T>;
6
7
  }
7
- export declare function createProcessor<T>(): Processor<T>;
8
+ type Callback<T> = (input: T) => void;
9
+ export declare class MiddlewareProcessor<T> implements Processor<T> {
10
+ private stack;
11
+ finalCallback?: Callback<T>;
12
+ addMiddleware(...middlewares: Middleware<T>[]): Processor<T>;
13
+ removeMiddleware(...middlewares: Middleware<T>[]): Processor<T>;
14
+ process(value: T): void;
15
+ }
16
+ export {};
8
17
  //# sourceMappingURL=Middleware.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Middleware.d.ts","sourceRoot":"","sources":["../../src/common/Middleware.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAC3B,KAAK,EAAE,CAAC,EACR,IAAI,EAAE,CAAC,SAAS,EAAE,CAAC,KAAK,IAAI,KACxB,IAAI,CAAC;AAEV,MAAM,WAAW,SAAS,CAAC,CAAC;IAC3B,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IACxB,aAAa,CAAC,GAAG,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAC7D,gBAAgB,CAAC,GAAG,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;CAChE;AAED,wBAAgB,eAAe,CAAC,CAAC,KAC9B,SAAS,CAAC,CAAC,CAAC,CA2Cd"}
1
+ {"version":3,"file":"Middleware.d.ts","sourceRoot":"","sources":["../../src/common/Middleware.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAC3B,KAAK,EAAE,CAAC,EACR,IAAI,EAAE,CAAC,SAAS,EAAE,CAAC,KAAK,IAAI,KACxB,IAAI,CAAC;AAEV,MAAM,WAAW,SAAS,CAAC,CAAC;IAC3B,aAAa,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5B,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IACxB,aAAa,CAAC,GAAG,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAC7D,gBAAgB,CAAC,GAAG,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;CAChE;AAED,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;AAoCtC,qBAAa,mBAAmB,CAAC,CAAC,CAAE,YAAW,SAAS,CAAC,CAAC,CAAC;IAC1D,OAAO,CAAC,KAAK,CAAuB;IAC7B,aAAa,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE5B,aAAa,CAAC,GAAG,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC;IAQ5D,gBAAgB,CAAC,GAAG,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC;IAc/D,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI;CAS9B"}
@@ -1,41 +1,60 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createProcessor = void 0;
4
- function createProcessor() {
5
- const stack = [];
6
- const result = {
7
- addMiddleware: (...middlewares) => {
8
- if (middlewares && 0 < middlewares.length) {
9
- stack.push(...middlewares);
10
- }
11
- return result;
12
- },
13
- removeMiddleware: (...middlewares) => {
14
- if (middlewares && 0 < middlewares.length) {
15
- for (const process of middlewares) {
16
- const index = stack.indexOf(process);
17
- if (0 < index)
18
- stack.splice(index, 1);
3
+ exports.MiddlewareProcessor = void 0;
4
+ class Executor {
5
+ stack;
6
+ finalCallback;
7
+ done = false;
8
+ index = 0;
9
+ prevIndex = -1;
10
+ constructor(stack, finalCallback) {
11
+ this.stack = stack;
12
+ this.finalCallback = finalCallback;
13
+ }
14
+ // Executes the middleware stack
15
+ execute(input) {
16
+ if (this.index <= this.prevIndex) {
17
+ throw new Error('Middleware must call next() only once!');
18
+ }
19
+ else if (this.done) {
20
+ throw new Error('Middleware stack has already been executed!');
21
+ }
22
+ this.prevIndex = this.index;
23
+ const middleware = this.stack[this.index];
24
+ this.index++;
25
+ if (middleware) {
26
+ return middleware(input, (nextInput) => this.execute(nextInput));
27
+ }
28
+ this.done = true;
29
+ this.finalCallback?.(input);
30
+ }
31
+ }
32
+ class MiddlewareProcessor {
33
+ stack = [];
34
+ finalCallback;
35
+ addMiddleware(...middlewares) {
36
+ if (middlewares && middlewares.length > 0) {
37
+ this.stack.push(...middlewares);
38
+ }
39
+ return this;
40
+ }
41
+ removeMiddleware(...middlewares) {
42
+ if (middlewares && middlewares.length > 0) {
43
+ for (const middleware of middlewares) {
44
+ const index = this.stack.indexOf(middleware);
45
+ if (index >= 0) {
46
+ this.stack.splice(index, 1);
19
47
  }
20
48
  }
21
- return result;
22
- },
23
- process: (value) => {
24
- let prevIndex = -1;
25
- const execute = (index, input) => {
26
- if (index <= prevIndex) {
27
- throw new Error('middleware must call next() only once!');
28
- }
29
- prevIndex = index;
30
- const middleware = stack[index];
31
- if (!middleware)
32
- return;
33
- const next = (nextInput) => execute(index + 1, nextInput);
34
- return middleware(input, next);
35
- };
36
- return execute(0, value);
37
- },
38
- };
39
- return result;
49
+ }
50
+ return this;
51
+ }
52
+ process(value) {
53
+ if (this.stack.length === 0) {
54
+ return this.finalCallback?.(value);
55
+ }
56
+ const executor = new Executor(this.stack, this.finalCallback);
57
+ executor.execute(value);
58
+ }
40
59
  }
41
- exports.createProcessor = createProcessor;
60
+ exports.MiddlewareProcessor = MiddlewareProcessor;
@@ -1,4 +1,3 @@
1
- export type LogLevel = 'trace' | 'debug' | 'info' | 'warn' | 'error' | 'silent';
2
1
  export interface Logger {
3
2
  trace(...args: any[]): void;
4
3
  debug(...args: any[]): void;
@@ -6,8 +5,13 @@ export interface Logger {
6
5
  warn(...args: any[]): void;
7
6
  error(...args: any[]): void;
8
7
  }
9
- export declare function setLogLevel(level: LogLevel): void;
10
- export declare const getLogLevel: () => LogLevel;
11
- export declare function forwardLogsTo(logger: Logger | null): void;
8
+ export interface ObserverLogger {
9
+ trace(module: string, ...args: any[]): void;
10
+ debug(module: string, ...args: any[]): void;
11
+ info(module: string, ...args: any[]): void;
12
+ warn(module: string, ...args: any[]): void;
13
+ error(module: string, ...args: any[]): void;
14
+ }
12
15
  export declare function createLogger(moduleName: string): Logger;
16
+ export declare function setObserverLogger(logger: ObserverLogger): void;
13
17
  //# sourceMappingURL=logger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/common/logger.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEhF,MAAM,WAAW,MAAM;IAEtB,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAE5B,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAE5B,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAE3B,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAE3B,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;CAC5B;AAiBD,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,QAO1C;AAED,eAAO,MAAM,WAAW,gBAEvB,CAAC;AAEF,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,QAElD;AAcD,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CA+BvD"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/common/logger.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,MAAM;IAEtB,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAE5B,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAE5B,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAE3B,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAE3B,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc;IAE9B,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAE5C,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAE5C,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAE3C,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAE3C,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;CAC5C;AA8BD,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAuBvD;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,QAEvD"}
@@ -1,74 +1,50 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createLogger = exports.forwardLogsTo = exports.getLogLevel = exports.setLogLevel = void 0;
4
- let logLevel = 'error';
5
- const loggers = new Map();
6
- let target = {
7
- // eslint-disable-next-line no-console
8
- trace: (...args) => console.log(...args),
9
- // eslint-disable-next-line no-console
10
- debug: (...args) => console.log(...args),
11
- // eslint-disable-next-line no-console
12
- info: (...args) => console.log(...args),
13
- // eslint-disable-next-line no-console
14
- warn: (...args) => console.warn(...args),
15
- // eslint-disable-next-line no-console
16
- error: (...args) => console.error(...args),
17
- };
18
- function setLogLevel(level) {
19
- logLevel = level;
20
- const moduleNames = Array.from(loggers.keys());
21
- loggers.clear();
22
- moduleNames.forEach((moduleName) => createLogger(moduleName));
23
- }
24
- exports.setLogLevel = setLogLevel;
25
- const getLogLevel = () => {
26
- return logLevel;
27
- };
28
- exports.getLogLevel = getLogLevel;
29
- function forwardLogsTo(logger) {
30
- target = logger;
31
- }
32
- exports.forwardLogsTo = forwardLogsTo;
33
- const COLORS = {
34
- black: '\x1b[30m',
35
- red: '\x1b[31m',
36
- green: '\x1b[32m',
37
- yellow: '\x1b[33m',
38
- blue: '\x1b[34m',
39
- magenta: '\x1b[35m',
40
- cyan: '\x1b[36m',
41
- white: '\x1b[37m',
42
- default: '\x1b[39m',
43
- };
44
- function createLogger(moduleName) {
45
- if (loggers.has(moduleName)) {
3
+ exports.setObserverLogger = exports.createLogger = void 0;
4
+ let mainLogger = new class {
5
+ trace = () => void 0;
6
+ // trace(module: string, ...args: any[]) {
7
+ // // eslint-disable-next-line no-console
8
+ // console.log(`[TRACE] ${module}`, ...args);
9
+ // }
10
+ debug(module, ...args) {
46
11
  // eslint-disable-next-line no-console
47
- console.warn(`Logger for module ${moduleName} already exists`);
12
+ console.log(`[DEBUG] ${module}`, ...args);
48
13
  }
49
- const trace = logLevel === 'trace' ? (message, ...args) => {
50
- target === null || target === void 0 ? void 0 : target.trace(`${COLORS.magenta}[TRACE]${COLORS.default} ${moduleName} ${message}`, ...args);
51
- } : () => void 0;
52
- const debug = logLevel === 'trace' || logLevel === 'debug' ? (message, ...args) => {
53
- target === null || target === void 0 ? void 0 : target.debug(`${COLORS.cyan}[DEBUG]${COLORS.default} ${moduleName} ${message}`, ...args);
54
- } : () => void 0;
55
- const info = logLevel === 'trace' || logLevel === 'debug' || logLevel === 'info' ? (message, ...args) => {
56
- target === null || target === void 0 ? void 0 : target.info(`${COLORS.green}[INFO]${COLORS.default} ${moduleName} ${message}`, ...args);
57
- } : () => void 0;
58
- const warn = logLevel === 'trace' || logLevel === 'debug' || logLevel === 'info' || logLevel === 'warn' ? (message, ...args) => {
59
- target === null || target === void 0 ? void 0 : target.warn(`${COLORS.yellow}[WARN]${COLORS.default} ${moduleName} ${message}`, ...args);
60
- } : () => void 0;
61
- const error = logLevel === 'trace' || logLevel === 'debug' || logLevel === 'info' || logLevel === 'warn' || logLevel === 'error' ? (message, ...args) => {
62
- target === null || target === void 0 ? void 0 : target.error(`${COLORS.red}[ERROR]${COLORS.default} ${moduleName} ${message}`, ...args);
63
- } : () => void 0;
64
- const logger = {
65
- trace,
66
- debug,
67
- info,
68
- warn,
69
- error,
70
- };
71
- loggers.set(moduleName, logger);
72
- return logger;
14
+ info(module, ...args) {
15
+ // eslint-disable-next-line no-console
16
+ console.info(`[INFO] ${module}`, ...args);
17
+ }
18
+ warn(module, ...args) {
19
+ // eslint-disable-next-line no-console
20
+ console.warn(`[WARN] ${module}`, ...args);
21
+ }
22
+ error(module, ...args) {
23
+ // eslint-disable-next-line no-console
24
+ console.error(`[ERROR] ${module}`, ...args);
25
+ }
26
+ }();
27
+ function createLogger(moduleName) {
28
+ return new class {
29
+ trace(...args) {
30
+ mainLogger.trace(moduleName, ...args);
31
+ }
32
+ debug(...args) {
33
+ mainLogger.debug(moduleName, ...args);
34
+ }
35
+ info(...args) {
36
+ mainLogger.info(moduleName, ...args);
37
+ }
38
+ warn(...args) {
39
+ mainLogger.warn(moduleName, ...args);
40
+ }
41
+ error(...args) {
42
+ mainLogger.error(moduleName, ...args);
43
+ }
44
+ }();
73
45
  }
74
46
  exports.createLogger = createLogger;
47
+ function setObserverLogger(logger) {
48
+ mainLogger = logger;
49
+ }
50
+ exports.setObserverLogger = setObserverLogger;
@@ -1,24 +1,3 @@
1
- import { CallEventReport, CallMetaReport, ClientDataChannelReport, ClientExtensionReport, IceCandidatePairReport, InboundAudioTrackReport, InboundVideoTrackReport, ObserverEventReport, OutboundAudioTrackReport, OutboundVideoTrackReport, PeerConnectionTransportReport, SfuEventReport, SfuExtensionReport, SfuInboundRtpPadReport, SfuMetaReport, SfuOutboundRtpPadReport, SfuSctpStreamReport, SFUTransportReport } from '@observertc/report-schemas-js';
2
1
  export type MediaKind = 'audio' | 'video';
3
2
  export type SupportedVideoCodecType = 'vp8' | 'vp9' | 'h264' | 'h265';
4
- export interface ObserverSinkContext {
5
- readonly callEventReports: CallEventReport[];
6
- readonly callMetaReports: CallMetaReport[];
7
- readonly clientDataChannelReports: ClientDataChannelReport[];
8
- readonly clientExtensionReports: ClientExtensionReport[];
9
- readonly iceCandidatePairReports: IceCandidatePairReport[];
10
- readonly inboundAudioTrackReports: InboundAudioTrackReport[];
11
- readonly inboundVideoTrackReports: InboundVideoTrackReport[];
12
- readonly peerConnectionTransportReports: PeerConnectionTransportReport[];
13
- readonly observerEventReports: ObserverEventReport[];
14
- readonly outboundAudioTrackReports: OutboundAudioTrackReport[];
15
- readonly outboundVideoTrackReports: OutboundVideoTrackReport[];
16
- readonly sfuEventReports: SfuEventReport[];
17
- readonly sfuExtensionReports: SfuExtensionReport[];
18
- readonly sfuInboundRtpPadReports: SfuInboundRtpPadReport[];
19
- readonly sfuOutboundRtpPadReports: SfuOutboundRtpPadReport[];
20
- readonly sfuSctpStreamReports: SfuSctpStreamReport[];
21
- readonly sfuTransportReports: SFUTransportReport[];
22
- readonly sfuMetaReports: SfuMetaReport[];
23
- }
24
3
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,eAAe,EACf,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EACxB,6BAA6B,EAC7B,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,aAAa,EACb,uBAAuB,EACvB,mBAAmB,EACnB,kBAAkB,EAClB,MAAM,+BAA+B,CAAC;AAEvC,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;AAC1C,MAAM,MAAM,uBAAuB,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;AAItE,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,gBAAgB,EAAE,eAAe,EAAE,CAAC;IAC7C,QAAQ,CAAC,eAAe,EAAE,cAAc,EAAE,CAAC;IAC3C,QAAQ,CAAC,wBAAwB,EAAE,uBAAuB,EAAE,CAAC;IAC7D,QAAQ,CAAC,sBAAsB,EAAE,qBAAqB,EAAE,CAAC;IACzD,QAAQ,CAAC,uBAAuB,EAAE,sBAAsB,EAAE,CAAC;IAC3D,QAAQ,CAAC,wBAAwB,EAAE,uBAAuB,EAAE,CAAC;IAC7D,QAAQ,CAAC,wBAAwB,EAAE,uBAAuB,EAAE,CAAC;IAC7D,QAAQ,CAAC,8BAA8B,EAAE,6BAA6B,EAAE,CAAC;IACzE,QAAQ,CAAC,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;IACrD,QAAQ,CAAC,yBAAyB,EAAE,wBAAwB,EAAE,CAAC;IAC/D,QAAQ,CAAC,yBAAyB,EAAE,wBAAwB,EAAE,CAAC;IAC/D,QAAQ,CAAC,eAAe,EAAE,cAAc,EAAE,CAAC;IAC3C,QAAQ,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,CAAC;IACnD,QAAQ,CAAC,uBAAuB,EAAE,sBAAsB,EAAE,CAAC;IAC3D,QAAQ,CAAC,wBAAwB,EAAE,uBAAuB,EAAE,CAAC;IAC7D,QAAQ,CAAC,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;IACrD,QAAQ,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,CAAC;IACnD,QAAQ,CAAC,cAAc,EAAE,aAAa,EAAE,CAAC;CACzC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;AAC1C,MAAM,MAAM,uBAAuB,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC"}
@@ -1,2 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ // export type EvaluatorMiddleware = Middleware<EvaluatorContext>;