@webex/plugin-meetings 3.0.0-beta.13 → 3.0.0-beta.15

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 (252) hide show
  1. package/UPGRADING.md +9 -9
  2. package/browsers.js +19 -24
  3. package/dist/common/browser-detection.js +1 -0
  4. package/dist/common/browser-detection.js.map +1 -1
  5. package/dist/common/collection.js.map +1 -1
  6. package/dist/common/errors/captcha-error.js +5 -5
  7. package/dist/common/errors/captcha-error.js.map +1 -1
  8. package/dist/common/errors/intent-to-join.js +5 -5
  9. package/dist/common/errors/intent-to-join.js.map +1 -1
  10. package/dist/common/errors/join-meeting.js +6 -6
  11. package/dist/common/errors/join-meeting.js.map +1 -1
  12. package/dist/common/errors/media.js +5 -5
  13. package/dist/common/errors/media.js.map +1 -1
  14. package/dist/common/errors/parameter.js +5 -5
  15. package/dist/common/errors/parameter.js.map +1 -1
  16. package/dist/common/errors/password-error.js +5 -5
  17. package/dist/common/errors/password-error.js.map +1 -1
  18. package/dist/common/errors/permission.js +4 -4
  19. package/dist/common/errors/permission.js.map +1 -1
  20. package/dist/common/errors/reconnection.js +5 -5
  21. package/dist/common/errors/reconnection.js.map +1 -1
  22. package/dist/common/errors/stats.js +5 -5
  23. package/dist/common/errors/stats.js.map +1 -1
  24. package/dist/common/errors/webex-errors.js.map +1 -1
  25. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  26. package/dist/common/events/events-scope.js.map +1 -1
  27. package/dist/common/events/events.js.map +1 -1
  28. package/dist/common/events/trigger-proxy.js.map +1 -1
  29. package/dist/common/events/util.js.map +1 -1
  30. package/dist/common/logs/logger-proxy.js.map +1 -1
  31. package/dist/common/logs/request.js.map +1 -1
  32. package/dist/config.js.map +1 -1
  33. package/dist/constants.js.map +1 -1
  34. package/dist/index.js.map +1 -1
  35. package/dist/locus-info/controlsUtils.js.map +1 -1
  36. package/dist/locus-info/fullState.js.map +1 -1
  37. package/dist/locus-info/hostUtils.js.map +1 -1
  38. package/dist/locus-info/index.js +11 -8
  39. package/dist/locus-info/index.js.map +1 -1
  40. package/dist/locus-info/infoUtils.js.map +1 -1
  41. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  42. package/dist/locus-info/parser.js +2 -1
  43. package/dist/locus-info/parser.js.map +1 -1
  44. package/dist/locus-info/selfUtils.js +2 -1
  45. package/dist/locus-info/selfUtils.js.map +1 -1
  46. package/dist/media/index.js.map +1 -1
  47. package/dist/media/internal-media-core-wrapper.js.map +1 -1
  48. package/dist/media/properties.js.map +1 -1
  49. package/dist/media/util.js +1 -1
  50. package/dist/media/util.js.map +1 -1
  51. package/dist/mediaQualityMetrics/config.js.map +1 -1
  52. package/dist/meeting/effectsState.js +1 -1
  53. package/dist/meeting/effectsState.js.map +1 -1
  54. package/dist/meeting/in-meeting-actions.js.map +1 -1
  55. package/dist/meeting/index.js +118 -89
  56. package/dist/meeting/index.js.map +1 -1
  57. package/dist/meeting/muteState.js +1 -1
  58. package/dist/meeting/muteState.js.map +1 -1
  59. package/dist/meeting/request.js +25 -0
  60. package/dist/meeting/request.js.map +1 -1
  61. package/dist/meeting/request.type.js +8 -0
  62. package/dist/meeting/request.type.js.map +1 -0
  63. package/dist/meeting/state.js +5 -5
  64. package/dist/meeting/state.js.map +1 -1
  65. package/dist/meeting/util.js.map +1 -1
  66. package/dist/meeting-info/collection.js.map +1 -1
  67. package/dist/meeting-info/index.js +2 -2
  68. package/dist/meeting-info/index.js.map +1 -1
  69. package/dist/meeting-info/meeting-info-v2.js +48 -48
  70. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  71. package/dist/meeting-info/request.js.map +1 -1
  72. package/dist/meeting-info/util.js.map +1 -1
  73. package/dist/meeting-info/utilv2.js +1 -1
  74. package/dist/meeting-info/utilv2.js.map +1 -1
  75. package/dist/meetings/collection.js.map +1 -1
  76. package/dist/meetings/index.js +251 -250
  77. package/dist/meetings/index.js.map +1 -1
  78. package/dist/meetings/request.js +2 -2
  79. package/dist/meetings/request.js.map +1 -1
  80. package/dist/meetings/util.js +14 -14
  81. package/dist/meetings/util.js.map +1 -1
  82. package/dist/member/index.js +31 -31
  83. package/dist/member/index.js.map +1 -1
  84. package/dist/member/util.js.map +1 -1
  85. package/dist/members/collection.js.map +1 -1
  86. package/dist/members/index.js +43 -43
  87. package/dist/members/index.js.map +1 -1
  88. package/dist/members/request.js.map +1 -1
  89. package/dist/members/util.js.map +1 -1
  90. package/dist/metrics/config.js.map +1 -1
  91. package/dist/metrics/constants.js.map +1 -1
  92. package/dist/metrics/index.js +23 -20
  93. package/dist/metrics/index.js.map +1 -1
  94. package/dist/multistream/multistreamMedia.js +2 -1
  95. package/dist/multistream/multistreamMedia.js.map +1 -1
  96. package/dist/multistream/receiveSlot.js.map +1 -1
  97. package/dist/multistream/receiveSlotManager.js +2 -0
  98. package/dist/multistream/receiveSlotManager.js.map +1 -1
  99. package/dist/multistream/remoteMedia.js.map +1 -1
  100. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  101. package/dist/multistream/remoteMediaManager.js.map +1 -1
  102. package/dist/networkQualityMonitor/index.js +8 -8
  103. package/dist/networkQualityMonitor/index.js.map +1 -1
  104. package/dist/personal-meeting-room/index.js +7 -7
  105. package/dist/personal-meeting-room/index.js.map +1 -1
  106. package/dist/personal-meeting-room/request.js.map +1 -1
  107. package/dist/personal-meeting-room/util.js.map +1 -1
  108. package/dist/reachability/index.js.map +1 -1
  109. package/dist/reachability/request.js.map +1 -1
  110. package/dist/reactions/reactions.js.map +1 -1
  111. package/dist/reactions/reactions.type.js +3 -1
  112. package/dist/reactions/reactions.type.js.map +1 -1
  113. package/dist/reconnection-manager/index.js +4 -4
  114. package/dist/reconnection-manager/index.js.map +1 -1
  115. package/dist/roap/index.js +5 -5
  116. package/dist/roap/index.js.map +1 -1
  117. package/dist/roap/request.js.map +1 -1
  118. package/dist/roap/turnDiscovery.js.map +1 -1
  119. package/dist/statsAnalyzer/global.js.map +1 -1
  120. package/dist/statsAnalyzer/index.js.map +1 -1
  121. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  122. package/dist/transcription/index.js +4 -1
  123. package/dist/transcription/index.js.map +1 -1
  124. package/internal-README.md +7 -6
  125. package/package.json +18 -18
  126. package/src/common/browser-detection.ts +9 -6
  127. package/src/common/collection.ts +3 -1
  128. package/src/common/errors/captcha-error.ts +6 -6
  129. package/src/common/errors/intent-to-join.ts +6 -6
  130. package/src/common/errors/join-meeting.ts +12 -8
  131. package/src/common/errors/media.ts +6 -6
  132. package/src/common/errors/parameter.ts +9 -6
  133. package/src/common/errors/password-error.ts +6 -6
  134. package/src/common/errors/permission.ts +5 -5
  135. package/src/common/errors/reconnection.ts +6 -6
  136. package/src/common/errors/stats.ts +6 -6
  137. package/src/common/errors/webex-errors.ts +7 -5
  138. package/src/common/errors/webex-meetings-error.ts +1 -1
  139. package/src/common/events/events-scope.ts +5 -1
  140. package/src/common/events/events.ts +5 -1
  141. package/src/common/events/trigger-proxy.ts +8 -3
  142. package/src/common/events/util.ts +1 -2
  143. package/src/common/logs/logger-proxy.ts +21 -10
  144. package/src/common/logs/request.ts +11 -8
  145. package/src/config.ts +11 -11
  146. package/src/constants.ts +1 -1
  147. package/src/index.js +1 -1
  148. package/src/locus-info/controlsUtils.ts +34 -24
  149. package/src/locus-info/fullState.ts +15 -11
  150. package/src/locus-info/hostUtils.ts +4 -3
  151. package/src/locus-info/index.ts +25 -34
  152. package/src/locus-info/infoUtils.ts +12 -4
  153. package/src/locus-info/mediaSharesUtils.ts +4 -4
  154. package/src/locus-info/parser.ts +45 -68
  155. package/src/locus-info/selfUtils.ts +106 -57
  156. package/src/media/index.ts +123 -135
  157. package/src/media/internal-media-core-wrapper.ts +2 -2
  158. package/src/media/properties.ts +30 -20
  159. package/src/media/util.ts +1 -1
  160. package/src/mediaQualityMetrics/config.ts +46 -46
  161. package/src/meeting/effectsState.ts +35 -35
  162. package/src/meeting/in-meeting-actions.ts +7 -3
  163. package/src/meeting/index.ts +1576 -1291
  164. package/src/meeting/muteState.ts +62 -31
  165. package/src/meeting/request.ts +174 -113
  166. package/src/meeting/request.type.ts +11 -0
  167. package/src/meeting/state.ts +45 -30
  168. package/src/meeting/util.ts +101 -70
  169. package/src/meeting-info/collection.ts +2 -1
  170. package/src/meeting-info/index.ts +32 -30
  171. package/src/meeting-info/meeting-info-v2.ts +106 -108
  172. package/src/meeting-info/request.ts +9 -3
  173. package/src/meeting-info/util.ts +54 -46
  174. package/src/meeting-info/utilv2.ts +59 -53
  175. package/src/meetings/collection.ts +1 -1
  176. package/src/meetings/index.ts +512 -440
  177. package/src/meetings/request.ts +26 -24
  178. package/src/meetings/util.ts +29 -29
  179. package/src/member/index.ts +55 -49
  180. package/src/member/util.ts +26 -13
  181. package/src/members/collection.ts +0 -1
  182. package/src/members/index.ts +182 -126
  183. package/src/members/request.ts +46 -14
  184. package/src/members/util.ts +44 -42
  185. package/src/metrics/config.ts +254 -81
  186. package/src/metrics/constants.ts +0 -2
  187. package/src/metrics/index.ts +84 -71
  188. package/src/multistream/multistreamMedia.ts +1 -0
  189. package/src/multistream/receiveSlot.ts +1 -0
  190. package/src/multistream/receiveSlotManager.ts +1 -0
  191. package/src/multistream/remoteMedia.ts +1 -1
  192. package/src/multistream/remoteMediaGroup.ts +2 -1
  193. package/src/multistream/remoteMediaManager.ts +3 -0
  194. package/src/networkQualityMonitor/index.ts +20 -23
  195. package/src/personal-meeting-room/index.ts +12 -16
  196. package/src/personal-meeting-room/request.ts +10 -3
  197. package/src/personal-meeting-room/util.ts +3 -3
  198. package/src/reachability/index.ts +61 -59
  199. package/src/reachability/request.ts +36 -32
  200. package/src/reactions/reactions.ts +4 -4
  201. package/src/reactions/reactions.type.ts +4 -3
  202. package/src/reconnection-manager/index.ts +139 -84
  203. package/src/roap/index.ts +46 -38
  204. package/src/roap/request.ts +44 -31
  205. package/src/roap/turnDiscovery.ts +59 -30
  206. package/src/statsAnalyzer/global.ts +30 -33
  207. package/src/statsAnalyzer/index.ts +432 -175
  208. package/src/statsAnalyzer/mqaUtil.ts +178 -72
  209. package/src/transcription/index.ts +34 -32
  210. package/test/integration/spec/journey.js +663 -462
  211. package/test/integration/spec/space-meeting.js +318 -203
  212. package/test/integration/spec/transcription.js +6 -7
  213. package/test/unit/spec/common/browser-detection.js +9 -28
  214. package/test/unit/spec/fixture/locus.js +92 -90
  215. package/test/unit/spec/locus-info/controlsUtils.js +5 -5
  216. package/test/unit/spec/locus-info/embeddedAppsUtils.js +8 -6
  217. package/test/unit/spec/locus-info/index.js +1 -2
  218. package/test/unit/spec/locus-info/infoUtils.js +26 -33
  219. package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +88 -430
  220. package/test/unit/spec/locus-info/lib/SeqCmp.json +513 -685
  221. package/test/unit/spec/locus-info/parser.js +3 -9
  222. package/test/unit/spec/locus-info/selfConstant.js +72 -103
  223. package/test/unit/spec/locus-info/selfUtils.js +21 -12
  224. package/test/unit/spec/meeting/effectsState.js +36 -46
  225. package/test/unit/spec/meeting/in-meeting-actions.ts +2 -3
  226. package/test/unit/spec/meeting/index.js +1342 -684
  227. package/test/unit/spec/meeting/muteState.js +42 -33
  228. package/test/unit/spec/meeting/request.js +75 -45
  229. package/test/unit/spec/meeting/utils.js +78 -53
  230. package/test/unit/spec/meeting-info/meetinginfov2.js +100 -73
  231. package/test/unit/spec/meeting-info/request.js +7 -9
  232. package/test/unit/spec/meeting-info/util.js +11 -12
  233. package/test/unit/spec/meeting-info/utilv2.js +110 -74
  234. package/test/unit/spec/meetings/collection.js +1 -1
  235. package/test/unit/spec/meetings/index.js +438 -257
  236. package/test/unit/spec/meetings/utils.js +14 -12
  237. package/test/unit/spec/member/index.js +0 -1
  238. package/test/unit/spec/member/util.js +5 -6
  239. package/test/unit/spec/members/index.js +104 -54
  240. package/test/unit/spec/members/request.js +29 -20
  241. package/test/unit/spec/members/utils.js +8 -5
  242. package/test/unit/spec/metrics/index.js +16 -21
  243. package/test/unit/spec/networkQualityMonitor/index.js +21 -15
  244. package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +2 -7
  245. package/test/unit/spec/reachability/index.ts +9 -11
  246. package/test/unit/spec/reconnection-manager/index.js +16 -18
  247. package/test/unit/spec/roap/turnDiscovery.ts +22 -19
  248. package/test/unit/spec/stats-analyzer/index.js +25 -20
  249. package/test/utils/cmr.js +44 -42
  250. package/test/utils/testUtils.js +83 -74
  251. package/test/utils/webex-config.js +18 -18
  252. package/test/utils/webex-test-users.js +53 -50
@@ -1 +1 @@
1
- {"version":3,"names":["intervals","audioReceive","common","direction","isMain","mariFecEnabled","mariQosEnabled","multistreamEnabled","dtlsBitrate","dtlsPackets","fecBitrate","fecPackets","maxBitrate","mediaHopByHopLost","rtcpBitrate","rtcpPackets","rtpBitrate","rtpHopByHopLost","rtpPackets","rtpRecovered","rtxBitrate","rtxPackets","srtcpUnprotectErrors","srtpUnprotectErrors","stunBitrate","stunPackets","transportType","streams","codec","concealedFrames","csi","maxConcealRunLength","optimalBitrate","optimalFrameRate","receivedBitrate","receivedFrameRate","renderedFrameRate","requestedBitrate","requestedFrameRate","rtpEndToEndLost","maxRtpJitter","meanRtpJitter","ssci","audioTransmit","availableBitrate","queueDelay","remoteJitter","remoteLossRate","remoteReceiveRate","roundTripTime","requestedFrames","transmittedBitrate","transmittedFrameRate","intervalMetadata","peerReflexiveIP","peripherals","processAverageCPU","processMaximumCPU","systemAverageCPU","systemMaximumCPU","intervalNumber","videoReceive","rtpJitter","h264CodecProfile","isActiveSpeaker","optimalFrameSize","receivedFrameSize","receivedHeight","receivedKeyFrames","receivedKeyFramesForRequest","receivedKeyFramesSourceChange","receivedKeyFramesUnknown","receivedWidth","requestedFrameSize","requestedKeyFrames","videoTransmit","duplicateSsci","isAvatar","isHardwareEncoded","localConfigurationChanges","maxFrameQp","maxNoiseLevel","minRegionQp","remoteConfigurationChanges","transmittedFrameSize","transmittedHeight","transmittedKeyFrames","transmittedKeyFramesClient","transmittedKeyFramesConfigurationChange","transmittedKeyFramesFeedback","transmittedKeyFramesLocalDrop","transmittedKeyFramesOtherLayer","transmittedKeyFramesPeriodic","transmittedKeyFramesSceneChange","transmittedKeyFramesStartup","transmittedKeyFramesUnknown","transmittedWidth"],"sources":["config.ts"],"sourcesContent":["export default {\n intervals: [\n {\n audioReceive: [\n {\n common: {\n common: {\n direction: 'inactive',\n isMain: true,\n mariFecEnabled: false,\n mariQosEnabled: false,\n multistreamEnabled: false\n },\n dtlsBitrate: 0,\n dtlsPackets: 0,\n fecBitrate: 0,\n fecPackets: 0,\n maxBitrate: 0,\n mediaHopByHopLost: 0,\n rtcpBitrate: 0,\n rtcpPackets: 0,\n rtpBitrate: 0,\n rtpHopByHopLost: 0,\n rtpPackets: 0,\n rtpRecovered: 0,\n rtxBitrate: 0,\n rtxPackets: 0,\n srtcpUnprotectErrors: 0,\n srtpUnprotectErrors: 0,\n stunBitrate: 0,\n stunPackets: 0,\n transportType: 'UDP'\n },\n streams: [\n {\n common: {\n codec: 'opus',\n concealedFrames: 0,\n csi: [],\n maxConcealRunLength: 0,\n optimalBitrate: 0,\n optimalFrameRate: 0,\n receivedBitrate: 0,\n receivedFrameRate: 0,\n renderedFrameRate: 0,\n requestedBitrate: 0,\n requestedFrameRate: 0,\n rtpEndToEndLost: 0,\n maxRtpJitter: 0,\n meanRtpJitter: 0,\n rtpPackets: 0,\n ssci: 0\n }\n }\n ]\n }\n ],\n audioTransmit: [\n {\n common: {\n availableBitrate: 0,\n common: {\n direction: 'inactive',\n isMain: true,\n mariFecEnabled: false,\n mariQosEnabled: false,\n multistreamEnabled: false\n },\n dtlsBitrate: 0,\n dtlsPackets: 0,\n fecBitrate: 0,\n fecPackets: 0,\n maxBitrate: 0,\n queueDelay: 0,\n remoteJitter: 0,\n remoteLossRate: 0,\n remoteReceiveRate: 0,\n roundTripTime: 0,\n rtcpBitrate: 0,\n rtcpPackets: 0,\n rtpBitrate: 0,\n rtpPackets: 0,\n rtxBitrate: 0,\n rtxPackets: 0,\n stunBitrate: 0,\n stunPackets: 0,\n transportType: 'UDP'\n },\n streams: [\n {\n common: {\n codec: 'opus',\n requestedBitrate: 0,\n requestedFrames: 0,\n rtpPackets: 0,\n ssci: 0,\n transmittedBitrate: 0,\n transmittedFrameRate: 0\n }\n }\n ]\n }\n ],\n intervalMetadata: {\n peerReflexiveIP: '0.0.0.0',\n peripherals: [],\n processAverageCPU: 0,\n processMaximumCPU: 0,\n systemAverageCPU: 0,\n systemMaximumCPU: 0\n },\n intervalNumber: 0,\n videoReceive: [\n {\n common: {\n common: {\n direction: 'inactive',\n isMain: true, // Not avaliable\n mariFecEnabled: true, // Not avaliable\n mariQosEnabled: true, // Not avaliable\n multistreamEnabled: true// Not avaliable\n },\n dtlsBitrate: 0, // Not avaliable\n dtlsPackets: 0, // Not avaliable\n fecBitrate: 0, // Not avaliable\n fecPackets: 0, // Not avaliable\n maxBitrate: 0,\n mediaHopByHopLost: 0,\n rtcpBitrate: 0, // Not avaliable\n rtcpPackets: 0, // Not avaliable\n rtpBitrate: 0,\n rtpHopByHopLost: 0,\n rtpPackets: 0,\n rtpRecovered: 0, // Not avaliable\n rtxBitrate: 0, // Not avaliable\n rtxPackets: 0, // Not avaliable\n srtcpUnprotectErrors: 0, // Not avaliable\n srtpUnprotectErrors: 0, // Not avaliable\n stunBitrate: 0, // Not avaliable\n stunPackets: 0, // Not avaliable\n transportType: 'UDP'\n },\n streams: [\n {\n common: {\n codec: 'H264',\n concealedFrames: 0, // Not avaliable\n csi: [], // Not avaliable\n maxConcealRunLength: 0, // Not avaliable\n optimalBitrate: 0,\n optimalFrameRate: 0,\n receivedBitrate: 0,\n receivedFrameRate: 0,\n renderedFrameRate: 0, // Not avaliable\n requestedBitrate: 0,\n requestedFrameRate: 0,\n rtpEndToEndLost: 0,\n rtpJitter: 0,\n rtpPackets: 0,\n ssci: 0// Not avaliable\n },\n h264CodecProfile: 'BP',\n isActiveSpeaker: true,\n optimalFrameSize: 0, // Not avaliable\n receivedFrameSize: 0,\n receivedHeight: 0,\n receivedKeyFrames: 0,\n receivedKeyFramesForRequest: 0,\n receivedKeyFramesSourceChange: 0,\n receivedKeyFramesUnknown: 0,\n receivedWidth: 0,\n requestedFrameSize: 0,\n requestedKeyFrames: 0\n }\n ]\n },\n {\n common: {\n common: {\n direction: 'inactive',\n isMain: false, // Not avaliable\n mariFecEnabled: true, // Not avaliable\n mariQosEnabled: true, // Not avaliable\n multistreamEnabled: true// Not avaliable\n },\n dtlsBitrate: 0, // Not avaliable\n dtlsPackets: 0, // Not avaliable\n fecBitrate: 0, // Not avaliable\n fecPackets: 0, // Not avaliable\n maxBitrate: 0,\n mediaHopByHopLost: 0,\n rtcpBitrate: 0, // Not avaliable\n rtcpPackets: 0, // Not avaliable\n rtpBitrate: 0,\n rtpHopByHopLost: 0,\n rtpPackets: 0,\n rtpRecovered: 0, // Not avaliable\n rtxBitrate: 0, // Not avaliable\n rtxPackets: 0, // Not avaliable\n srtcpUnprotectErrors: 0, // Not avaliable\n srtpUnprotectErrors: 0, // Not avaliable\n stunBitrate: 0, // Not avaliable\n stunPackets: 0, // Not avaliable\n transportType: 'UDP'\n },\n streams: [\n {\n common: {\n codec: 'H264',\n concealedFrames: 0, // Not avaliable\n csi: [], // Not avaliable\n maxConcealRunLength: 0, // Not avaliable\n optimalBitrate: 0,\n optimalFrameRate: 0,\n receivedBitrate: 0,\n receivedFrameRate: 0,\n renderedFrameRate: 0, // Not avaliable\n requestedBitrate: 0,\n requestedFrameRate: 0,\n rtpEndToEndLost: 0,\n rtpJitter: 0,\n rtpPackets: 0,\n ssci: 0// Not avaliable\n },\n h264CodecProfile: 'BP',\n isActiveSpeaker: true,\n optimalFrameSize: 0, // Not avaliable\n receivedFrameSize: 0,\n receivedHeight: 0,\n receivedKeyFrames: 0,\n receivedKeyFramesForRequest: 0,\n receivedKeyFramesSourceChange: 0,\n receivedKeyFramesUnknown: 0,\n receivedWidth: 0,\n requestedFrameSize: 0,\n requestedKeyFrames: 0\n }\n ]\n }\n ],\n videoTransmit: [\n {\n common: {\n availableBitrate: 0, // Not avaliable currently hardcoded\n common: {\n direction: 'inactive',\n isMain: true,\n mariFecEnabled: false, // Not avaliable\n mariQosEnabled: false, // Not avaliable\n multistreamEnabled: false// Not avaliable\n },\n dtlsBitrate: 0, // Not avaliable\n dtlsPackets: 0, // Not avaliable\n fecBitrate: 0, // Not avaliable\n fecPackets: 0, // TODO: check inbound-rtp// Not avaliable\n maxBitrate: 0, // Currently hardcoded\n queueDelay: 0, // outboundRtp.totalPacketSentDelay // TODO: check if totalInterFrameDelay/ packetSentDelay/ jitterBufferDalay\n remoteJitter: 0, // remoteInboundRtp.jitter\n remoteLossRate: 0, // comparedResults.lossRate\n remoteReceiveRate: 0, // compareResults.packetsLost\n roundTripTime: 0, // compareResults.roundTripTime\n rtcpBitrate: 0, // Dont have access to it\n rtcpPackets: 0, // Dont have access to rtcp\n rtpBitrate: 0, // Dont have access\n rtpPackets: 0, // outboundRtp.packetsSent\n rtxBitrate: 0, // Dont have access to it\n rtxPackets: 0, // Dont have access to it\n stunBitrate: 0, // Dont have access to it\n stunPackets: 0, // Dont have access to it\n transportType: 'UDP' // TODO: need to calculate\n },\n streams: [\n {\n common: {\n codec: 'H264',\n duplicateSsci: 0, // Not Avaliable\n requestedBitrate: 0, // TODO: from remote SDP\n requestedFrames: 0, // TODO: from remote SDP\n rtpPackets: 0, // same as rtp packets\n ssci: 0,\n transmittedBitrate: 0, // TODO: get in the candidate pair\n transmittedFrameRate: 0 // TODO: from track info\n },\n h264CodecProfile: 'BP', // TODO: from localSDP\n isAvatar: false, // Not Avaliable\n isHardwareEncoded: false, // Not Avaliable\n localConfigurationChanges: 2, // Not Avaliable\n maxFrameQp: 0, // Not Avaliable\n maxNoiseLevel: 0, // Not Avaliable\n minRegionQp: 0, // Not Avaliable\n remoteConfigurationChanges: 0, // Not Avaliable\n requestedFrameSize: 0, // TODO: from remote SDP\n requestedKeyFrames: 0, // outbound Fir request\n transmittedFrameSize: 0, // Not Avaliable\n transmittedHeight: 0,\n transmittedKeyFrames: 0, // Key frames encoded\n transmittedKeyFramesClient: 0, // Not Avaliable\n transmittedKeyFramesConfigurationChange: 0, // Not Avaliable\n transmittedKeyFramesFeedback: 0, // Not Avaliable\n transmittedKeyFramesLocalDrop: 0, // Not Avaliable\n transmittedKeyFramesOtherLayer: 0, // Not Avaliable\n transmittedKeyFramesPeriodic: 0, // Not Avaliable\n transmittedKeyFramesSceneChange: 0, // Not Avaliable\n transmittedKeyFramesStartup: 0, // Not Avaliable\n transmittedKeyFramesUnknown: 0, // Not Avaliable\n transmittedWidth: 0\n }\n ]\n },\n { // sceen sharing\n common: {\n availableBitrate: 0, // Not avaliable currently hardcoded\n common: {\n direction: 'inactive',\n isMain: false,\n mariFecEnabled: false, // Not avaliable\n mariQosEnabled: false, // Not avaliable\n multistreamEnabled: false// Not avaliable\n },\n dtlsBitrate: 0, // Not avaliable\n dtlsPackets: 0, // Not avaliable\n fecBitrate: 0, // Not avaliable\n fecPackets: 0, // TODO: check inbound-rtp// Not avaliable\n maxBitrate: 0, // Currently hardcoded\n queueDelay: 0, // outboundRtp.totalPacketSentDelay // TODO: check if totalInterFrameDelay/ packetSentDelay/ jitterBufferDalay\n remoteJitter: 0, // remoteInboundRtp.jitter\n remoteLossRate: 0, // comparedResults.lossRate\n remoteReceiveRate: 0, // compareResults.packetsLost\n roundTripTime: 0, // compareResults.roundTripTime\n rtcpBitrate: 0, // Dont have access to it\n rtcpPackets: 0, // Dont have access to rtcp\n rtpBitrate: 0, // Dont have access\n rtpPackets: 0, // outboundRtp.packetsSent\n rtxBitrate: 0, // Dont have access to it\n rtxPackets: 0, // Dont have access to it\n stunBitrate: 0, // Dont have access to it\n stunPackets: 0, // Dont have access to it\n transportType: 'UDP' // TODO: need to calculate\n },\n streams: [\n {\n common: {\n codec: 'H264',\n duplicateSsci: 0, // Not Avaliable\n requestedBitrate: 0, // TODO: from remote SDP\n requestedFrames: 0, // TODO: from remote SDP\n rtpPackets: 0, // same as rtp packets\n ssci: 0,\n transmittedBitrate: 0, // TODO: get in the candidate pair\n transmittedFrameRate: 0 // TODO: from track info\n },\n h264CodecProfile: 'BP', // TODO: from localSDP\n isAvatar: false, // Not Avaliable\n isHardwareEncoded: false, // Not Avaliable\n localConfigurationChanges: 2, // Not Avaliable\n maxFrameQp: 0, // Not Avaliable\n maxNoiseLevel: 0, // Not Avaliable\n minRegionQp: 0, // Not Avaliable\n remoteConfigurationChanges: 0, // Not Avaliable\n requestedFrameSize: 0, // TODO: from remote SDP\n requestedKeyFrames: 0, // outbound Fir request\n transmittedFrameSize: 0, // Not Avaliable\n transmittedHeight: 0,\n transmittedKeyFrames: 0, // Key frames encoded\n transmittedKeyFramesClient: 0, // Not Avaliable\n transmittedKeyFramesConfigurationChange: 0, // Not Avaliable\n transmittedKeyFramesFeedback: 0, // Not Avaliable\n transmittedKeyFramesLocalDrop: 0, // Not Avaliable\n transmittedKeyFramesOtherLayer: 0, // Not Avaliable\n transmittedKeyFramesPeriodic: 0, // Not Avaliable\n transmittedKeyFramesSceneChange: 0, // Not Avaliable\n transmittedKeyFramesStartup: 0, // Not Avaliable\n transmittedKeyFramesUnknown: 0, // Not Avaliable\n transmittedWidth: 0\n }\n ]\n }\n ]\n }\n ]\n};\n\n"],"mappings":"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"}
1
+ {"version":3,"names":["intervals","audioReceive","common","direction","isMain","mariFecEnabled","mariQosEnabled","multistreamEnabled","dtlsBitrate","dtlsPackets","fecBitrate","fecPackets","maxBitrate","mediaHopByHopLost","rtcpBitrate","rtcpPackets","rtpBitrate","rtpHopByHopLost","rtpPackets","rtpRecovered","rtxBitrate","rtxPackets","srtcpUnprotectErrors","srtpUnprotectErrors","stunBitrate","stunPackets","transportType","streams","codec","concealedFrames","csi","maxConcealRunLength","optimalBitrate","optimalFrameRate","receivedBitrate","receivedFrameRate","renderedFrameRate","requestedBitrate","requestedFrameRate","rtpEndToEndLost","maxRtpJitter","meanRtpJitter","ssci","audioTransmit","availableBitrate","queueDelay","remoteJitter","remoteLossRate","remoteReceiveRate","roundTripTime","requestedFrames","transmittedBitrate","transmittedFrameRate","intervalMetadata","peerReflexiveIP","peripherals","processAverageCPU","processMaximumCPU","systemAverageCPU","systemMaximumCPU","intervalNumber","videoReceive","rtpJitter","h264CodecProfile","isActiveSpeaker","optimalFrameSize","receivedFrameSize","receivedHeight","receivedKeyFrames","receivedKeyFramesForRequest","receivedKeyFramesSourceChange","receivedKeyFramesUnknown","receivedWidth","requestedFrameSize","requestedKeyFrames","videoTransmit","duplicateSsci","isAvatar","isHardwareEncoded","localConfigurationChanges","maxFrameQp","maxNoiseLevel","minRegionQp","remoteConfigurationChanges","transmittedFrameSize","transmittedHeight","transmittedKeyFrames","transmittedKeyFramesClient","transmittedKeyFramesConfigurationChange","transmittedKeyFramesFeedback","transmittedKeyFramesLocalDrop","transmittedKeyFramesOtherLayer","transmittedKeyFramesPeriodic","transmittedKeyFramesSceneChange","transmittedKeyFramesStartup","transmittedKeyFramesUnknown","transmittedWidth"],"sources":["config.ts"],"sourcesContent":["export default {\n intervals: [\n {\n audioReceive: [\n {\n common: {\n common: {\n direction: 'inactive',\n isMain: true,\n mariFecEnabled: false,\n mariQosEnabled: false,\n multistreamEnabled: false,\n },\n dtlsBitrate: 0,\n dtlsPackets: 0,\n fecBitrate: 0,\n fecPackets: 0,\n maxBitrate: 0,\n mediaHopByHopLost: 0,\n rtcpBitrate: 0,\n rtcpPackets: 0,\n rtpBitrate: 0,\n rtpHopByHopLost: 0,\n rtpPackets: 0,\n rtpRecovered: 0,\n rtxBitrate: 0,\n rtxPackets: 0,\n srtcpUnprotectErrors: 0,\n srtpUnprotectErrors: 0,\n stunBitrate: 0,\n stunPackets: 0,\n transportType: 'UDP',\n },\n streams: [\n {\n common: {\n codec: 'opus',\n concealedFrames: 0,\n csi: [],\n maxConcealRunLength: 0,\n optimalBitrate: 0,\n optimalFrameRate: 0,\n receivedBitrate: 0,\n receivedFrameRate: 0,\n renderedFrameRate: 0,\n requestedBitrate: 0,\n requestedFrameRate: 0,\n rtpEndToEndLost: 0,\n maxRtpJitter: 0,\n meanRtpJitter: 0,\n rtpPackets: 0,\n ssci: 0,\n },\n },\n ],\n },\n ],\n audioTransmit: [\n {\n common: {\n availableBitrate: 0,\n common: {\n direction: 'inactive',\n isMain: true,\n mariFecEnabled: false,\n mariQosEnabled: false,\n multistreamEnabled: false,\n },\n dtlsBitrate: 0,\n dtlsPackets: 0,\n fecBitrate: 0,\n fecPackets: 0,\n maxBitrate: 0,\n queueDelay: 0,\n remoteJitter: 0,\n remoteLossRate: 0,\n remoteReceiveRate: 0,\n roundTripTime: 0,\n rtcpBitrate: 0,\n rtcpPackets: 0,\n rtpBitrate: 0,\n rtpPackets: 0,\n rtxBitrate: 0,\n rtxPackets: 0,\n stunBitrate: 0,\n stunPackets: 0,\n transportType: 'UDP',\n },\n streams: [\n {\n common: {\n codec: 'opus',\n requestedBitrate: 0,\n requestedFrames: 0,\n rtpPackets: 0,\n ssci: 0,\n transmittedBitrate: 0,\n transmittedFrameRate: 0,\n },\n },\n ],\n },\n ],\n intervalMetadata: {\n peerReflexiveIP: '0.0.0.0',\n peripherals: [],\n processAverageCPU: 0,\n processMaximumCPU: 0,\n systemAverageCPU: 0,\n systemMaximumCPU: 0,\n },\n intervalNumber: 0,\n videoReceive: [\n {\n common: {\n common: {\n direction: 'inactive',\n isMain: true, // Not avaliable\n mariFecEnabled: true, // Not avaliable\n mariQosEnabled: true, // Not avaliable\n multistreamEnabled: true, // Not avaliable\n },\n dtlsBitrate: 0, // Not avaliable\n dtlsPackets: 0, // Not avaliable\n fecBitrate: 0, // Not avaliable\n fecPackets: 0, // Not avaliable\n maxBitrate: 0,\n mediaHopByHopLost: 0,\n rtcpBitrate: 0, // Not avaliable\n rtcpPackets: 0, // Not avaliable\n rtpBitrate: 0,\n rtpHopByHopLost: 0,\n rtpPackets: 0,\n rtpRecovered: 0, // Not avaliable\n rtxBitrate: 0, // Not avaliable\n rtxPackets: 0, // Not avaliable\n srtcpUnprotectErrors: 0, // Not avaliable\n srtpUnprotectErrors: 0, // Not avaliable\n stunBitrate: 0, // Not avaliable\n stunPackets: 0, // Not avaliable\n transportType: 'UDP',\n },\n streams: [\n {\n common: {\n codec: 'H264',\n concealedFrames: 0, // Not avaliable\n csi: [], // Not avaliable\n maxConcealRunLength: 0, // Not avaliable\n optimalBitrate: 0,\n optimalFrameRate: 0,\n receivedBitrate: 0,\n receivedFrameRate: 0,\n renderedFrameRate: 0, // Not avaliable\n requestedBitrate: 0,\n requestedFrameRate: 0,\n rtpEndToEndLost: 0,\n rtpJitter: 0,\n rtpPackets: 0,\n ssci: 0, // Not avaliable\n },\n h264CodecProfile: 'BP',\n isActiveSpeaker: true,\n optimalFrameSize: 0, // Not avaliable\n receivedFrameSize: 0,\n receivedHeight: 0,\n receivedKeyFrames: 0,\n receivedKeyFramesForRequest: 0,\n receivedKeyFramesSourceChange: 0,\n receivedKeyFramesUnknown: 0,\n receivedWidth: 0,\n requestedFrameSize: 0,\n requestedKeyFrames: 0,\n },\n ],\n },\n {\n common: {\n common: {\n direction: 'inactive',\n isMain: false, // Not avaliable\n mariFecEnabled: true, // Not avaliable\n mariQosEnabled: true, // Not avaliable\n multistreamEnabled: true, // Not avaliable\n },\n dtlsBitrate: 0, // Not avaliable\n dtlsPackets: 0, // Not avaliable\n fecBitrate: 0, // Not avaliable\n fecPackets: 0, // Not avaliable\n maxBitrate: 0,\n mediaHopByHopLost: 0,\n rtcpBitrate: 0, // Not avaliable\n rtcpPackets: 0, // Not avaliable\n rtpBitrate: 0,\n rtpHopByHopLost: 0,\n rtpPackets: 0,\n rtpRecovered: 0, // Not avaliable\n rtxBitrate: 0, // Not avaliable\n rtxPackets: 0, // Not avaliable\n srtcpUnprotectErrors: 0, // Not avaliable\n srtpUnprotectErrors: 0, // Not avaliable\n stunBitrate: 0, // Not avaliable\n stunPackets: 0, // Not avaliable\n transportType: 'UDP',\n },\n streams: [\n {\n common: {\n codec: 'H264',\n concealedFrames: 0, // Not avaliable\n csi: [], // Not avaliable\n maxConcealRunLength: 0, // Not avaliable\n optimalBitrate: 0,\n optimalFrameRate: 0,\n receivedBitrate: 0,\n receivedFrameRate: 0,\n renderedFrameRate: 0, // Not avaliable\n requestedBitrate: 0,\n requestedFrameRate: 0,\n rtpEndToEndLost: 0,\n rtpJitter: 0,\n rtpPackets: 0,\n ssci: 0, // Not avaliable\n },\n h264CodecProfile: 'BP',\n isActiveSpeaker: true,\n optimalFrameSize: 0, // Not avaliable\n receivedFrameSize: 0,\n receivedHeight: 0,\n receivedKeyFrames: 0,\n receivedKeyFramesForRequest: 0,\n receivedKeyFramesSourceChange: 0,\n receivedKeyFramesUnknown: 0,\n receivedWidth: 0,\n requestedFrameSize: 0,\n requestedKeyFrames: 0,\n },\n ],\n },\n ],\n videoTransmit: [\n {\n common: {\n availableBitrate: 0, // Not avaliable currently hardcoded\n common: {\n direction: 'inactive',\n isMain: true,\n mariFecEnabled: false, // Not avaliable\n mariQosEnabled: false, // Not avaliable\n multistreamEnabled: false, // Not avaliable\n },\n dtlsBitrate: 0, // Not avaliable\n dtlsPackets: 0, // Not avaliable\n fecBitrate: 0, // Not avaliable\n fecPackets: 0, // TODO: check inbound-rtp// Not avaliable\n maxBitrate: 0, // Currently hardcoded\n queueDelay: 0, // outboundRtp.totalPacketSentDelay // TODO: check if totalInterFrameDelay/ packetSentDelay/ jitterBufferDalay\n remoteJitter: 0, // remoteInboundRtp.jitter\n remoteLossRate: 0, // comparedResults.lossRate\n remoteReceiveRate: 0, // compareResults.packetsLost\n roundTripTime: 0, // compareResults.roundTripTime\n rtcpBitrate: 0, // Dont have access to it\n rtcpPackets: 0, // Dont have access to rtcp\n rtpBitrate: 0, // Dont have access\n rtpPackets: 0, // outboundRtp.packetsSent\n rtxBitrate: 0, // Dont have access to it\n rtxPackets: 0, // Dont have access to it\n stunBitrate: 0, // Dont have access to it\n stunPackets: 0, // Dont have access to it\n transportType: 'UDP', // TODO: need to calculate\n },\n streams: [\n {\n common: {\n codec: 'H264',\n duplicateSsci: 0, // Not Avaliable\n requestedBitrate: 0, // TODO: from remote SDP\n requestedFrames: 0, // TODO: from remote SDP\n rtpPackets: 0, // same as rtp packets\n ssci: 0,\n transmittedBitrate: 0, // TODO: get in the candidate pair\n transmittedFrameRate: 0, // TODO: from track info\n },\n h264CodecProfile: 'BP', // TODO: from localSDP\n isAvatar: false, // Not Avaliable\n isHardwareEncoded: false, // Not Avaliable\n localConfigurationChanges: 2, // Not Avaliable\n maxFrameQp: 0, // Not Avaliable\n maxNoiseLevel: 0, // Not Avaliable\n minRegionQp: 0, // Not Avaliable\n remoteConfigurationChanges: 0, // Not Avaliable\n requestedFrameSize: 0, // TODO: from remote SDP\n requestedKeyFrames: 0, // outbound Fir request\n transmittedFrameSize: 0, // Not Avaliable\n transmittedHeight: 0,\n transmittedKeyFrames: 0, // Key frames encoded\n transmittedKeyFramesClient: 0, // Not Avaliable\n transmittedKeyFramesConfigurationChange: 0, // Not Avaliable\n transmittedKeyFramesFeedback: 0, // Not Avaliable\n transmittedKeyFramesLocalDrop: 0, // Not Avaliable\n transmittedKeyFramesOtherLayer: 0, // Not Avaliable\n transmittedKeyFramesPeriodic: 0, // Not Avaliable\n transmittedKeyFramesSceneChange: 0, // Not Avaliable\n transmittedKeyFramesStartup: 0, // Not Avaliable\n transmittedKeyFramesUnknown: 0, // Not Avaliable\n transmittedWidth: 0,\n },\n ],\n },\n {\n // sceen sharing\n common: {\n availableBitrate: 0, // Not avaliable currently hardcoded\n common: {\n direction: 'inactive',\n isMain: false,\n mariFecEnabled: false, // Not avaliable\n mariQosEnabled: false, // Not avaliable\n multistreamEnabled: false, // Not avaliable\n },\n dtlsBitrate: 0, // Not avaliable\n dtlsPackets: 0, // Not avaliable\n fecBitrate: 0, // Not avaliable\n fecPackets: 0, // TODO: check inbound-rtp// Not avaliable\n maxBitrate: 0, // Currently hardcoded\n queueDelay: 0, // outboundRtp.totalPacketSentDelay // TODO: check if totalInterFrameDelay/ packetSentDelay/ jitterBufferDalay\n remoteJitter: 0, // remoteInboundRtp.jitter\n remoteLossRate: 0, // comparedResults.lossRate\n remoteReceiveRate: 0, // compareResults.packetsLost\n roundTripTime: 0, // compareResults.roundTripTime\n rtcpBitrate: 0, // Dont have access to it\n rtcpPackets: 0, // Dont have access to rtcp\n rtpBitrate: 0, // Dont have access\n rtpPackets: 0, // outboundRtp.packetsSent\n rtxBitrate: 0, // Dont have access to it\n rtxPackets: 0, // Dont have access to it\n stunBitrate: 0, // Dont have access to it\n stunPackets: 0, // Dont have access to it\n transportType: 'UDP', // TODO: need to calculate\n },\n streams: [\n {\n common: {\n codec: 'H264',\n duplicateSsci: 0, // Not Avaliable\n requestedBitrate: 0, // TODO: from remote SDP\n requestedFrames: 0, // TODO: from remote SDP\n rtpPackets: 0, // same as rtp packets\n ssci: 0,\n transmittedBitrate: 0, // TODO: get in the candidate pair\n transmittedFrameRate: 0, // TODO: from track info\n },\n h264CodecProfile: 'BP', // TODO: from localSDP\n isAvatar: false, // Not Avaliable\n isHardwareEncoded: false, // Not Avaliable\n localConfigurationChanges: 2, // Not Avaliable\n maxFrameQp: 0, // Not Avaliable\n maxNoiseLevel: 0, // Not Avaliable\n minRegionQp: 0, // Not Avaliable\n remoteConfigurationChanges: 0, // Not Avaliable\n requestedFrameSize: 0, // TODO: from remote SDP\n requestedKeyFrames: 0, // outbound Fir request\n transmittedFrameSize: 0, // Not Avaliable\n transmittedHeight: 0,\n transmittedKeyFrames: 0, // Key frames encoded\n transmittedKeyFramesClient: 0, // Not Avaliable\n transmittedKeyFramesConfigurationChange: 0, // Not Avaliable\n transmittedKeyFramesFeedback: 0, // Not Avaliable\n transmittedKeyFramesLocalDrop: 0, // Not Avaliable\n transmittedKeyFramesOtherLayer: 0, // Not Avaliable\n transmittedKeyFramesPeriodic: 0, // Not Avaliable\n transmittedKeyFramesSceneChange: 0, // Not Avaliable\n transmittedKeyFramesStartup: 0, // Not Avaliable\n transmittedKeyFramesUnknown: 0, // Not Avaliable\n transmittedWidth: 0,\n },\n ],\n },\n ],\n },\n ],\n};\n"],"mappings":";;;;;;;;;eAAe;EACbA,SAAS,EAAE,CACT;IACEC,YAAY,EAAE,CACZ;MACEC,MAAM,EAAE;QACNA,MAAM,EAAE;UACNC,SAAS,EAAE,UADL;UAENC,MAAM,EAAE,IAFF;UAGNC,cAAc,EAAE,KAHV;UAINC,cAAc,EAAE,KAJV;UAKNC,kBAAkB,EAAE;QALd,CADF;QAQNC,WAAW,EAAE,CARP;QASNC,WAAW,EAAE,CATP;QAUNC,UAAU,EAAE,CAVN;QAWNC,UAAU,EAAE,CAXN;QAYNC,UAAU,EAAE,CAZN;QAaNC,iBAAiB,EAAE,CAbb;QAcNC,WAAW,EAAE,CAdP;QAeNC,WAAW,EAAE,CAfP;QAgBNC,UAAU,EAAE,CAhBN;QAiBNC,eAAe,EAAE,CAjBX;QAkBNC,UAAU,EAAE,CAlBN;QAmBNC,YAAY,EAAE,CAnBR;QAoBNC,UAAU,EAAE,CApBN;QAqBNC,UAAU,EAAE,CArBN;QAsBNC,oBAAoB,EAAE,CAtBhB;QAuBNC,mBAAmB,EAAE,CAvBf;QAwBNC,WAAW,EAAE,CAxBP;QAyBNC,WAAW,EAAE,CAzBP;QA0BNC,aAAa,EAAE;MA1BT,CADV;MA6BEC,OAAO,EAAE,CACP;QACEzB,MAAM,EAAE;UACN0B,KAAK,EAAE,MADD;UAENC,eAAe,EAAE,CAFX;UAGNC,GAAG,EAAE,EAHC;UAINC,mBAAmB,EAAE,CAJf;UAKNC,cAAc,EAAE,CALV;UAMNC,gBAAgB,EAAE,CANZ;UAONC,eAAe,EAAE,CAPX;UAQNC,iBAAiB,EAAE,CARb;UASNC,iBAAiB,EAAE,CATb;UAUNC,gBAAgB,EAAE,CAVZ;UAWNC,kBAAkB,EAAE,CAXd;UAYNC,eAAe,EAAE,CAZX;UAaNC,YAAY,EAAE,CAbR;UAcNC,aAAa,EAAE,CAdT;UAeNvB,UAAU,EAAE,CAfN;UAgBNwB,IAAI,EAAE;QAhBA;MADV,CADO;IA7BX,CADY,CADhB;IAuDEC,aAAa,EAAE,CACb;MACEzC,MAAM,EAAE;QACN0C,gBAAgB,EAAE,CADZ;QAEN1C,MAAM,EAAE;UACNC,SAAS,EAAE,UADL;UAENC,MAAM,EAAE,IAFF;UAGNC,cAAc,EAAE,KAHV;UAINC,cAAc,EAAE,KAJV;UAKNC,kBAAkB,EAAE;QALd,CAFF;QASNC,WAAW,EAAE,CATP;QAUNC,WAAW,EAAE,CAVP;QAWNC,UAAU,EAAE,CAXN;QAYNC,UAAU,EAAE,CAZN;QAaNC,UAAU,EAAE,CAbN;QAcNiC,UAAU,EAAE,CAdN;QAeNC,YAAY,EAAE,CAfR;QAgBNC,cAAc,EAAE,CAhBV;QAiBNC,iBAAiB,EAAE,CAjBb;QAkBNC,aAAa,EAAE,CAlBT;QAmBNnC,WAAW,EAAE,CAnBP;QAoBNC,WAAW,EAAE,CApBP;QAqBNC,UAAU,EAAE,CArBN;QAsBNE,UAAU,EAAE,CAtBN;QAuBNE,UAAU,EAAE,CAvBN;QAwBNC,UAAU,EAAE,CAxBN;QAyBNG,WAAW,EAAE,CAzBP;QA0BNC,WAAW,EAAE,CA1BP;QA2BNC,aAAa,EAAE;MA3BT,CADV;MA8BEC,OAAO,EAAE,CACP;QACEzB,MAAM,EAAE;UACN0B,KAAK,EAAE,MADD;UAENS,gBAAgB,EAAE,CAFZ;UAGNa,eAAe,EAAE,CAHX;UAINhC,UAAU,EAAE,CAJN;UAKNwB,IAAI,EAAE,CALA;UAMNS,kBAAkB,EAAE,CANd;UAONC,oBAAoB,EAAE;QAPhB;MADV,CADO;IA9BX,CADa,CAvDjB;IAqGEC,gBAAgB,EAAE;MAChBC,eAAe,EAAE,SADD;MAEhBC,WAAW,EAAE,EAFG;MAGhBC,iBAAiB,EAAE,CAHH;MAIhBC,iBAAiB,EAAE,CAJH;MAKhBC,gBAAgB,EAAE,CALF;MAMhBC,gBAAgB,EAAE;IANF,CArGpB;IA6GEC,cAAc,EAAE,CA7GlB;IA8GEC,YAAY,EAAE,CACZ;MACE3D,MAAM,EAAE;QACNA,MAAM,EAAE;UACNC,SAAS,EAAE,UADL;UAENC,MAAM,EAAE,IAFF;UAEQ;UACdC,cAAc,EAAE,IAHV;UAGgB;UACtBC,cAAc,EAAE,IAJV;UAIgB;UACtBC,kBAAkB,EAAE,IALd,CAKoB;;QALpB,CADF;QAQNC,WAAW,EAAE,CARP;QAQU;QAChBC,WAAW,EAAE,CATP;QASU;QAChBC,UAAU,EAAE,CAVN;QAUS;QACfC,UAAU,EAAE,CAXN;QAWS;QACfC,UAAU,EAAE,CAZN;QAaNC,iBAAiB,EAAE,CAbb;QAcNC,WAAW,EAAE,CAdP;QAcU;QAChBC,WAAW,EAAE,CAfP;QAeU;QAChBC,UAAU,EAAE,CAhBN;QAiBNC,eAAe,EAAE,CAjBX;QAkBNC,UAAU,EAAE,CAlBN;QAmBNC,YAAY,EAAE,CAnBR;QAmBW;QACjBC,UAAU,EAAE,CApBN;QAoBS;QACfC,UAAU,EAAE,CArBN;QAqBS;QACfC,oBAAoB,EAAE,CAtBhB;QAsBmB;QACzBC,mBAAmB,EAAE,CAvBf;QAuBkB;QACxBC,WAAW,EAAE,CAxBP;QAwBU;QAChBC,WAAW,EAAE,CAzBP;QAyBU;QAChBC,aAAa,EAAE;MA1BT,CADV;MA6BEC,OAAO,EAAE,CACP;QACEzB,MAAM,EAAE;UACN0B,KAAK,EAAE,MADD;UAENC,eAAe,EAAE,CAFX;UAEc;UACpBC,GAAG,EAAE,EAHC;UAGG;UACTC,mBAAmB,EAAE,CAJf;UAIkB;UACxBC,cAAc,EAAE,CALV;UAMNC,gBAAgB,EAAE,CANZ;UAONC,eAAe,EAAE,CAPX;UAQNC,iBAAiB,EAAE,CARb;UASNC,iBAAiB,EAAE,CATb;UASgB;UACtBC,gBAAgB,EAAE,CAVZ;UAWNC,kBAAkB,EAAE,CAXd;UAYNC,eAAe,EAAE,CAZX;UAaNuB,SAAS,EAAE,CAbL;UAcN5C,UAAU,EAAE,CAdN;UAeNwB,IAAI,EAAE,CAfA,CAeG;;QAfH,CADV;QAkBEqB,gBAAgB,EAAE,IAlBpB;QAmBEC,eAAe,EAAE,IAnBnB;QAoBEC,gBAAgB,EAAE,CApBpB;QAoBuB;QACrBC,iBAAiB,EAAE,CArBrB;QAsBEC,cAAc,EAAE,CAtBlB;QAuBEC,iBAAiB,EAAE,CAvBrB;QAwBEC,2BAA2B,EAAE,CAxB/B;QAyBEC,6BAA6B,EAAE,CAzBjC;QA0BEC,wBAAwB,EAAE,CA1B5B;QA2BEC,aAAa,EAAE,CA3BjB;QA4BEC,kBAAkB,EAAE,CA5BtB;QA6BEC,kBAAkB,EAAE;MA7BtB,CADO;IA7BX,CADY,EAgEZ;MACExE,MAAM,EAAE;QACNA,MAAM,EAAE;UACNC,SAAS,EAAE,UADL;UAENC,MAAM,EAAE,KAFF;UAES;UACfC,cAAc,EAAE,IAHV;UAGgB;UACtBC,cAAc,EAAE,IAJV;UAIgB;UACtBC,kBAAkB,EAAE,IALd,CAKoB;;QALpB,CADF;QAQNC,WAAW,EAAE,CARP;QAQU;QAChBC,WAAW,EAAE,CATP;QASU;QAChBC,UAAU,EAAE,CAVN;QAUS;QACfC,UAAU,EAAE,CAXN;QAWS;QACfC,UAAU,EAAE,CAZN;QAaNC,iBAAiB,EAAE,CAbb;QAcNC,WAAW,EAAE,CAdP;QAcU;QAChBC,WAAW,EAAE,CAfP;QAeU;QAChBC,UAAU,EAAE,CAhBN;QAiBNC,eAAe,EAAE,CAjBX;QAkBNC,UAAU,EAAE,CAlBN;QAmBNC,YAAY,EAAE,CAnBR;QAmBW;QACjBC,UAAU,EAAE,CApBN;QAoBS;QACfC,UAAU,EAAE,CArBN;QAqBS;QACfC,oBAAoB,EAAE,CAtBhB;QAsBmB;QACzBC,mBAAmB,EAAE,CAvBf;QAuBkB;QACxBC,WAAW,EAAE,CAxBP;QAwBU;QAChBC,WAAW,EAAE,CAzBP;QAyBU;QAChBC,aAAa,EAAE;MA1BT,CADV;MA6BEC,OAAO,EAAE,CACP;QACEzB,MAAM,EAAE;UACN0B,KAAK,EAAE,MADD;UAENC,eAAe,EAAE,CAFX;UAEc;UACpBC,GAAG,EAAE,EAHC;UAGG;UACTC,mBAAmB,EAAE,CAJf;UAIkB;UACxBC,cAAc,EAAE,CALV;UAMNC,gBAAgB,EAAE,CANZ;UAONC,eAAe,EAAE,CAPX;UAQNC,iBAAiB,EAAE,CARb;UASNC,iBAAiB,EAAE,CATb;UASgB;UACtBC,gBAAgB,EAAE,CAVZ;UAWNC,kBAAkB,EAAE,CAXd;UAYNC,eAAe,EAAE,CAZX;UAaNuB,SAAS,EAAE,CAbL;UAcN5C,UAAU,EAAE,CAdN;UAeNwB,IAAI,EAAE,CAfA,CAeG;;QAfH,CADV;QAkBEqB,gBAAgB,EAAE,IAlBpB;QAmBEC,eAAe,EAAE,IAnBnB;QAoBEC,gBAAgB,EAAE,CApBpB;QAoBuB;QACrBC,iBAAiB,EAAE,CArBrB;QAsBEC,cAAc,EAAE,CAtBlB;QAuBEC,iBAAiB,EAAE,CAvBrB;QAwBEC,2BAA2B,EAAE,CAxB/B;QAyBEC,6BAA6B,EAAE,CAzBjC;QA0BEC,wBAAwB,EAAE,CA1B5B;QA2BEC,aAAa,EAAE,CA3BjB;QA4BEC,kBAAkB,EAAE,CA5BtB;QA6BEC,kBAAkB,EAAE;MA7BtB,CADO;IA7BX,CAhEY,CA9GhB;IA8OEC,aAAa,EAAE,CACb;MACEzE,MAAM,EAAE;QACN0C,gBAAgB,EAAE,CADZ;QACe;QACrB1C,MAAM,EAAE;UACNC,SAAS,EAAE,UADL;UAENC,MAAM,EAAE,IAFF;UAGNC,cAAc,EAAE,KAHV;UAGiB;UACvBC,cAAc,EAAE,KAJV;UAIiB;UACvBC,kBAAkB,EAAE,KALd,CAKqB;;QALrB,CAFF;QASNC,WAAW,EAAE,CATP;QASU;QAChBC,WAAW,EAAE,CAVP;QAUU;QAChBC,UAAU,EAAE,CAXN;QAWS;QACfC,UAAU,EAAE,CAZN;QAYS;QACfC,UAAU,EAAE,CAbN;QAaS;QACfiC,UAAU,EAAE,CAdN;QAcS;QACfC,YAAY,EAAE,CAfR;QAeW;QACjBC,cAAc,EAAE,CAhBV;QAgBa;QACnBC,iBAAiB,EAAE,CAjBb;QAiBgB;QACtBC,aAAa,EAAE,CAlBT;QAkBY;QAClBnC,WAAW,EAAE,CAnBP;QAmBU;QAChBC,WAAW,EAAE,CApBP;QAoBU;QAChBC,UAAU,EAAE,CArBN;QAqBS;QACfE,UAAU,EAAE,CAtBN;QAsBS;QACfE,UAAU,EAAE,CAvBN;QAuBS;QACfC,UAAU,EAAE,CAxBN;QAwBS;QACfG,WAAW,EAAE,CAzBP;QAyBU;QAChBC,WAAW,EAAE,CA1BP;QA0BU;QAChBC,aAAa,EAAE,KA3BT,CA2BgB;;MA3BhB,CADV;MA8BEC,OAAO,EAAE,CACP;QACEzB,MAAM,EAAE;UACN0B,KAAK,EAAE,MADD;UAENgD,aAAa,EAAE,CAFT;UAEY;UAClBvC,gBAAgB,EAAE,CAHZ;UAGe;UACrBa,eAAe,EAAE,CAJX;UAIc;UACpBhC,UAAU,EAAE,CALN;UAKS;UACfwB,IAAI,EAAE,CANA;UAONS,kBAAkB,EAAE,CAPd;UAOiB;UACvBC,oBAAoB,EAAE,CARhB,CAQmB;;QARnB,CADV;QAWEW,gBAAgB,EAAE,IAXpB;QAW0B;QACxBc,QAAQ,EAAE,KAZZ;QAYmB;QACjBC,iBAAiB,EAAE,KAbrB;QAa4B;QAC1BC,yBAAyB,EAAE,CAd7B;QAcgC;QAC9BC,UAAU,EAAE,CAfd;QAeiB;QACfC,aAAa,EAAE,CAhBjB;QAgBoB;QAClBC,WAAW,EAAE,CAjBf;QAiBkB;QAChBC,0BAA0B,EAAE,CAlB9B;QAkBiC;QAC/BV,kBAAkB,EAAE,CAnBtB;QAmByB;QACvBC,kBAAkB,EAAE,CApBtB;QAoByB;QACvBU,oBAAoB,EAAE,CArBxB;QAqB2B;QACzBC,iBAAiB,EAAE,CAtBrB;QAuBEC,oBAAoB,EAAE,CAvBxB;QAuB2B;QACzBC,0BAA0B,EAAE,CAxB9B;QAwBiC;QAC/BC,uCAAuC,EAAE,CAzB3C;QAyB8C;QAC5CC,4BAA4B,EAAE,CA1BhC;QA0BmC;QACjCC,6BAA6B,EAAE,CA3BjC;QA2BoC;QAClCC,8BAA8B,EAAE,CA5BlC;QA4BqC;QACnCC,4BAA4B,EAAE,CA7BhC;QA6BmC;QACjCC,+BAA+B,EAAE,CA9BnC;QA8BsC;QACpCC,2BAA2B,EAAE,CA/B/B;QA+BkC;QAChCC,2BAA2B,EAAE,CAhC/B;QAgCkC;QAChCC,gBAAgB,EAAE;MAjCpB,CADO;IA9BX,CADa,EAqEb;MACE;MACA9F,MAAM,EAAE;QACN0C,gBAAgB,EAAE,CADZ;QACe;QACrB1C,MAAM,EAAE;UACNC,SAAS,EAAE,UADL;UAENC,MAAM,EAAE,KAFF;UAGNC,cAAc,EAAE,KAHV;UAGiB;UACvBC,cAAc,EAAE,KAJV;UAIiB;UACvBC,kBAAkB,EAAE,KALd,CAKqB;;QALrB,CAFF;QASNC,WAAW,EAAE,CATP;QASU;QAChBC,WAAW,EAAE,CAVP;QAUU;QAChBC,UAAU,EAAE,CAXN;QAWS;QACfC,UAAU,EAAE,CAZN;QAYS;QACfC,UAAU,EAAE,CAbN;QAaS;QACfiC,UAAU,EAAE,CAdN;QAcS;QACfC,YAAY,EAAE,CAfR;QAeW;QACjBC,cAAc,EAAE,CAhBV;QAgBa;QACnBC,iBAAiB,EAAE,CAjBb;QAiBgB;QACtBC,aAAa,EAAE,CAlBT;QAkBY;QAClBnC,WAAW,EAAE,CAnBP;QAmBU;QAChBC,WAAW,EAAE,CApBP;QAoBU;QAChBC,UAAU,EAAE,CArBN;QAqBS;QACfE,UAAU,EAAE,CAtBN;QAsBS;QACfE,UAAU,EAAE,CAvBN;QAuBS;QACfC,UAAU,EAAE,CAxBN;QAwBS;QACfG,WAAW,EAAE,CAzBP;QAyBU;QAChBC,WAAW,EAAE,CA1BP;QA0BU;QAChBC,aAAa,EAAE,KA3BT,CA2BgB;;MA3BhB,CAFV;MA+BEC,OAAO,EAAE,CACP;QACEzB,MAAM,EAAE;UACN0B,KAAK,EAAE,MADD;UAENgD,aAAa,EAAE,CAFT;UAEY;UAClBvC,gBAAgB,EAAE,CAHZ;UAGe;UACrBa,eAAe,EAAE,CAJX;UAIc;UACpBhC,UAAU,EAAE,CALN;UAKS;UACfwB,IAAI,EAAE,CANA;UAONS,kBAAkB,EAAE,CAPd;UAOiB;UACvBC,oBAAoB,EAAE,CARhB,CAQmB;;QARnB,CADV;QAWEW,gBAAgB,EAAE,IAXpB;QAW0B;QACxBc,QAAQ,EAAE,KAZZ;QAYmB;QACjBC,iBAAiB,EAAE,KAbrB;QAa4B;QAC1BC,yBAAyB,EAAE,CAd7B;QAcgC;QAC9BC,UAAU,EAAE,CAfd;QAeiB;QACfC,aAAa,EAAE,CAhBjB;QAgBoB;QAClBC,WAAW,EAAE,CAjBf;QAiBkB;QAChBC,0BAA0B,EAAE,CAlB9B;QAkBiC;QAC/BV,kBAAkB,EAAE,CAnBtB;QAmByB;QACvBC,kBAAkB,EAAE,CApBtB;QAoByB;QACvBU,oBAAoB,EAAE,CArBxB;QAqB2B;QACzBC,iBAAiB,EAAE,CAtBrB;QAuBEC,oBAAoB,EAAE,CAvBxB;QAuB2B;QACzBC,0BAA0B,EAAE,CAxB9B;QAwBiC;QAC/BC,uCAAuC,EAAE,CAzB3C;QAyB8C;QAC5CC,4BAA4B,EAAE,CA1BhC;QA0BmC;QACjCC,6BAA6B,EAAE,CA3BjC;QA2BoC;QAClCC,8BAA8B,EAAE,CA5BlC;QA4BqC;QACnCC,4BAA4B,EAAE,CA7BhC;QA6BmC;QACjCC,+BAA+B,EAAE,CA9BnC;QA8BsC;QACpCC,2BAA2B,EAAE,CA/B/B;QA+BkC;QAChCC,2BAA2B,EAAE,CAhC/B;QAgCkC;QAChCC,gBAAgB,EAAE;MAjCpB,CADO;IA/BX,CArEa;EA9OjB,CADS;AADE,C"}
@@ -41,7 +41,7 @@ var createEffectsState = function createEffectsState(type) {
41
41
  return new EffectsState(type);
42
42
  };
43
43
  /* The purpose of this class is to manage the effects state(for eg., BNR).
44
- */
44
+ */
45
45
 
46
46
 
47
47
  var EffectsState = /*#__PURE__*/function () {
@@ -1 +1 @@
1
- {"version":3,"names":["createEffectsState","type","LoggerProxy","logger","info","EffectsState","effectType","state","bnr","enabled","BNR_STATUS","NOT_ENABLED","callToWebrtcBNRInProgress","pendingPromiseResolve","pendingPromiseReject","isEnable","meeting","resolve","reject","enableBNR","disableBNR","ENABLED","e","isBnrEnabled","warn","resolvePromise","SHOULD_ENABLE","audioStream","MediaUtil","createMediaStream","mediaProperties","audioTrack","updateAudio","sendAudio","receiveAudio","mediaDirection","stream","Metrics","sendBehavioralMetric","BEHAVIORAL_METRICS","ENABLE_BNR_SUCCESS","error","ENABLE_BNR_FAILURE","reason","message","stack","rejectPromise","SHOULD_DISABLE","WebRTCMedia","Effects","BNR","DISABLE_BNR_SUCCESS","DISABLE_BNR_FAILURE"],"sources":["effectsState.ts"],"sourcesContent":["/* eslint-disable no-param-reassign */\nimport {Media as WebRTCMedia} from '@webex/internal-media-core';\n\nimport BEHAVIORAL_METRICS from '../metrics/constants';\nimport Metrics from '../metrics';\nimport MediaUtil from '../media/util';\nimport LoggerProxy from '../common/logs/logger-proxy';\nimport {BNR_STATUS} from '../constants';\n\nconst createEffectsState = (type: any) => {\n LoggerProxy.logger.info(`Meeting:effectState#createEffectsState --> creating effectsState for effect ${type}`);\n\n return new EffectsState(type);\n};\n\n/* The purpose of this class is to manage the effects state(for eg., BNR).\n*/\nclass EffectsState {\n effectType: any;\n pendingPromiseReject: any;\n pendingPromiseResolve: any;\n state: any;\n\n constructor(type: any) {\n this.effectType = type;\n this.state = {\n bnr: {\n enabled: BNR_STATUS.NOT_ENABLED\n },\n callToWebrtcBNRInProgress: false\n };\n // these 2 hold the resolve, reject methods for the promise we returned to the client in last handleClientRequest() call\n this.pendingPromiseResolve = null;\n this.pendingPromiseReject = null;\n }\n\n /**\n * @memberof EffectsState\n * @param {Boolean} [isEnable] true for enableBNR, false for disableBNR request\n * @param {Object} [meeting] the meeting object\n * @returns {Promise}\n */\n async handleClientRequest(isEnable?: boolean, meeting?: object) {\n return new Promise((resolve, reject) => {\n if (this.pendingPromiseResolve) {\n // resolve the last promise we returned to the client as the client has issued a new request that has superseded the previous one\n this.pendingPromiseResolve();\n }\n this.pendingPromiseResolve = resolve;\n this.pendingPromiseReject = reject;\n\n if (isEnable) this.enableBNR(meeting);\n else this.disableBNR(meeting);\n });\n }\n\n /**\n * Internal API to return status of BNR\n * @memberof EffectsState\n * @returns {Boolean}\n * @public\n * @memberof Meeting\n */\n public isBnrEnabled() {\n return this.state.bnr.enabled === BNR_STATUS.ENABLED;\n }\n\n resolvePromise() {\n if (this.pendingPromiseResolve) {\n this.pendingPromiseResolve(true);\n }\n this.pendingPromiseResolve = null;\n this.pendingPromiseReject = null;\n }\n\n rejectPromise(e) {\n if (this.pendingPromiseReject) {\n this.pendingPromiseReject(e);\n }\n this.pendingPromiseResolve = null;\n this.pendingPromiseReject = null;\n }\n\n /**\n * enableBNR API\n * @param {Object} meeting the meeting object\n * @returns {Promise<Boolean>}\n * @public\n * @memberof EffectsState\n */\n public async enableBNR(meeting: any) {\n LoggerProxy.logger.info('Meeting:effectState#enableBNR. Enable BNR called');\n\n if (this.isBnrEnabled()) {\n LoggerProxy.logger.warn('Meeting:index#enableBNR. BNR is already enabled');\n\n return this.resolvePromise();\n }\n\n if (this.state.callToWebrtcBNRInProgress) {\n LoggerProxy.logger.warn('Meeting:effectState#enableBNR. Call to WebRTC in progress, we need to wait for it to complete');\n\n return this.resolvePromise();\n }\n\n const {bnr} = this.state;\n\n try {\n bnr.enabled = BNR_STATUS.SHOULD_ENABLE;\n this.state.callToWebrtcBNRInProgress = true;\n const audioStream = MediaUtil.createMediaStream([meeting.mediaProperties.audioTrack]);\n\n LoggerProxy.logger.info('Meeting:effectState#enableBNR. MediaStream created from meeting & sent to updateAudio');\n await meeting.updateAudio({\n sendAudio: true,\n receiveAudio: meeting.mediaProperties.mediaDirection.receiveAudio,\n stream: audioStream\n });\n\n LoggerProxy.logger.info('Meeting:effectState#enableBNR. Updated meeting audio with bnr enabled track');\n bnr.enabled = BNR_STATUS.ENABLED;\n this.state.callToWebrtcBNRInProgress = false;\n Metrics.sendBehavioralMetric(\n BEHAVIORAL_METRICS.ENABLE_BNR_SUCCESS,\n );\n }\n catch (error) {\n bnr.enabled = BNR_STATUS.NOT_ENABLED;\n this.state.callToWebrtcBNRInProgress = false;\n LoggerProxy.logger.error('Meeting:index#enableBNR.', error);\n\n Metrics.sendBehavioralMetric(\n BEHAVIORAL_METRICS.ENABLE_BNR_FAILURE,\n {\n reason: error.message,\n stack: error.stack\n }\n );\n this.rejectPromise(error);\n\n throw error;\n }\n\n return this.resolvePromise();\n }\n\n /**\n * disableBNR API\n * @param {Object} meeting the meeting object\n * @returns {Promise<Boolean>}\n * @public\n * @memberof EffectsState\n */\n public async disableBNR(meeting: any) {\n LoggerProxy.logger.info('Meeting:effectState#disableBNR. Disable BNR called');\n\n const {bnr} = this.state;\n\n try {\n if (this.state.callToWebrtcBNRInProgress) {\n LoggerProxy.logger.info('Meeting:effectState#disableBNR. Call to WebRTC in progress, we need to wait for it to complete');\n\n return this.resolvePromise();\n }\n\n bnr.enabled = BNR_STATUS.SHOULD_DISABLE;\n this.state.callToWebrtcBNRInProgress = true;\n\n // @ts-ignore - disableBNR does not expect an argument\n const audioTrack = WebRTCMedia.Effects.BNR.disableBNR(meeting.mediaProperties.audioTrack);\n\n const audioStream = MediaUtil.createMediaStream([audioTrack]);\n\n LoggerProxy.logger.info('Meeting:effectState#disableBNR. Raw media track obtained from WebRTC & sent to updateAudio');\n\n await meeting.updateAudio({\n sendAudio: true,\n receiveAudio: meeting.mediaProperties.mediaDirection.receiveAudio,\n stream: audioStream\n });\n\n bnr.enabled = BNR_STATUS.NOT_ENABLED;\n\n this.state.callToWebrtcBNRInProgress = false;\n\n Metrics.sendBehavioralMetric(\n BEHAVIORAL_METRICS.DISABLE_BNR_SUCCESS\n );\n }\n catch (error) {\n bnr.enabled = BNR_STATUS.ENABLED;\n this.state.callToWebrtcBNRInProgress = false;\n LoggerProxy.logger.error(`Meeting:index#disableBNR. ${error}`);\n\n Metrics.sendBehavioralMetric(\n BEHAVIORAL_METRICS.DISABLE_BNR_FAILURE,\n {\n reason: error.message,\n stack: error.stack\n }\n );\n this.rejectPromise(error);\n\n throw error;\n }\n\n return this.resolvePromise();\n }\n}\n\nexport default createEffectsState;\n"],"mappings":"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"}
1
+ {"version":3,"names":["createEffectsState","type","LoggerProxy","logger","info","EffectsState","effectType","state","bnr","enabled","BNR_STATUS","NOT_ENABLED","callToWebrtcBNRInProgress","pendingPromiseResolve","pendingPromiseReject","isEnable","meeting","resolve","reject","enableBNR","disableBNR","ENABLED","e","isBnrEnabled","warn","resolvePromise","SHOULD_ENABLE","audioStream","MediaUtil","createMediaStream","mediaProperties","audioTrack","updateAudio","sendAudio","receiveAudio","mediaDirection","stream","Metrics","sendBehavioralMetric","BEHAVIORAL_METRICS","ENABLE_BNR_SUCCESS","error","ENABLE_BNR_FAILURE","reason","message","stack","rejectPromise","SHOULD_DISABLE","WebRTCMedia","Effects","BNR","DISABLE_BNR_SUCCESS","DISABLE_BNR_FAILURE"],"sources":["effectsState.ts"],"sourcesContent":["/* eslint-disable no-param-reassign */\nimport {Media as WebRTCMedia} from '@webex/internal-media-core';\n\nimport BEHAVIORAL_METRICS from '../metrics/constants';\nimport Metrics from '../metrics';\nimport MediaUtil from '../media/util';\nimport LoggerProxy from '../common/logs/logger-proxy';\nimport {BNR_STATUS} from '../constants';\n\nconst createEffectsState = (type: any) => {\n LoggerProxy.logger.info(\n `Meeting:effectState#createEffectsState --> creating effectsState for effect ${type}`\n );\n\n return new EffectsState(type);\n};\n\n/* The purpose of this class is to manage the effects state(for eg., BNR).\n */\nclass EffectsState {\n effectType: any;\n pendingPromiseReject: any;\n pendingPromiseResolve: any;\n state: any;\n\n constructor(type: any) {\n this.effectType = type;\n this.state = {\n bnr: {\n enabled: BNR_STATUS.NOT_ENABLED,\n },\n callToWebrtcBNRInProgress: false,\n };\n // these 2 hold the resolve, reject methods for the promise we returned to the client in last handleClientRequest() call\n this.pendingPromiseResolve = null;\n this.pendingPromiseReject = null;\n }\n\n /**\n * @memberof EffectsState\n * @param {Boolean} [isEnable] true for enableBNR, false for disableBNR request\n * @param {Object} [meeting] the meeting object\n * @returns {Promise}\n */\n async handleClientRequest(isEnable?: boolean, meeting?: object) {\n return new Promise((resolve, reject) => {\n if (this.pendingPromiseResolve) {\n // resolve the last promise we returned to the client as the client has issued a new request that has superseded the previous one\n this.pendingPromiseResolve();\n }\n this.pendingPromiseResolve = resolve;\n this.pendingPromiseReject = reject;\n\n if (isEnable) this.enableBNR(meeting);\n else this.disableBNR(meeting);\n });\n }\n\n /**\n * Internal API to return status of BNR\n * @memberof EffectsState\n * @returns {Boolean}\n * @public\n * @memberof Meeting\n */\n public isBnrEnabled() {\n return this.state.bnr.enabled === BNR_STATUS.ENABLED;\n }\n\n resolvePromise() {\n if (this.pendingPromiseResolve) {\n this.pendingPromiseResolve(true);\n }\n this.pendingPromiseResolve = null;\n this.pendingPromiseReject = null;\n }\n\n rejectPromise(e) {\n if (this.pendingPromiseReject) {\n this.pendingPromiseReject(e);\n }\n this.pendingPromiseResolve = null;\n this.pendingPromiseReject = null;\n }\n\n /**\n * enableBNR API\n * @param {Object} meeting the meeting object\n * @returns {Promise<Boolean>}\n * @public\n * @memberof EffectsState\n */\n public async enableBNR(meeting: any) {\n LoggerProxy.logger.info('Meeting:effectState#enableBNR. Enable BNR called');\n\n if (this.isBnrEnabled()) {\n LoggerProxy.logger.warn('Meeting:index#enableBNR. BNR is already enabled');\n\n return this.resolvePromise();\n }\n\n if (this.state.callToWebrtcBNRInProgress) {\n LoggerProxy.logger.warn(\n 'Meeting:effectState#enableBNR. Call to WebRTC in progress, we need to wait for it to complete'\n );\n\n return this.resolvePromise();\n }\n\n const {bnr} = this.state;\n\n try {\n bnr.enabled = BNR_STATUS.SHOULD_ENABLE;\n this.state.callToWebrtcBNRInProgress = true;\n const audioStream = MediaUtil.createMediaStream([meeting.mediaProperties.audioTrack]);\n\n LoggerProxy.logger.info(\n 'Meeting:effectState#enableBNR. MediaStream created from meeting & sent to updateAudio'\n );\n await meeting.updateAudio({\n sendAudio: true,\n receiveAudio: meeting.mediaProperties.mediaDirection.receiveAudio,\n stream: audioStream,\n });\n\n LoggerProxy.logger.info(\n 'Meeting:effectState#enableBNR. Updated meeting audio with bnr enabled track'\n );\n bnr.enabled = BNR_STATUS.ENABLED;\n this.state.callToWebrtcBNRInProgress = false;\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.ENABLE_BNR_SUCCESS);\n } catch (error) {\n bnr.enabled = BNR_STATUS.NOT_ENABLED;\n this.state.callToWebrtcBNRInProgress = false;\n LoggerProxy.logger.error('Meeting:index#enableBNR.', error);\n\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.ENABLE_BNR_FAILURE, {\n reason: error.message,\n stack: error.stack,\n });\n this.rejectPromise(error);\n\n throw error;\n }\n\n return this.resolvePromise();\n }\n\n /**\n * disableBNR API\n * @param {Object} meeting the meeting object\n * @returns {Promise<Boolean>}\n * @public\n * @memberof EffectsState\n */\n public async disableBNR(meeting: any) {\n LoggerProxy.logger.info('Meeting:effectState#disableBNR. Disable BNR called');\n\n const {bnr} = this.state;\n\n try {\n if (this.state.callToWebrtcBNRInProgress) {\n LoggerProxy.logger.info(\n 'Meeting:effectState#disableBNR. Call to WebRTC in progress, we need to wait for it to complete'\n );\n\n return this.resolvePromise();\n }\n\n bnr.enabled = BNR_STATUS.SHOULD_DISABLE;\n this.state.callToWebrtcBNRInProgress = true;\n\n // @ts-ignore - disableBNR does not expect an argument\n const audioTrack = WebRTCMedia.Effects.BNR.disableBNR(meeting.mediaProperties.audioTrack);\n\n const audioStream = MediaUtil.createMediaStream([audioTrack]);\n\n LoggerProxy.logger.info(\n 'Meeting:effectState#disableBNR. Raw media track obtained from WebRTC & sent to updateAudio'\n );\n\n await meeting.updateAudio({\n sendAudio: true,\n receiveAudio: meeting.mediaProperties.mediaDirection.receiveAudio,\n stream: audioStream,\n });\n\n bnr.enabled = BNR_STATUS.NOT_ENABLED;\n\n this.state.callToWebrtcBNRInProgress = false;\n\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.DISABLE_BNR_SUCCESS);\n } catch (error) {\n bnr.enabled = BNR_STATUS.ENABLED;\n this.state.callToWebrtcBNRInProgress = false;\n LoggerProxy.logger.error(`Meeting:index#disableBNR. ${error}`);\n\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.DISABLE_BNR_FAILURE, {\n reason: error.message,\n stack: error.stack,\n });\n this.rejectPromise(error);\n\n throw error;\n }\n\n return this.resolvePromise();\n }\n}\n\nexport default createEffectsState;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AAPA;AASA,IAAMA,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,IAAD,EAAe;EACxCC,oBAAA,CAAYC,MAAZ,CAAmBC,IAAnB,uFACiFH,IADjF;;EAIA,OAAO,IAAII,YAAJ,CAAiBJ,IAAjB,CAAP;AACD,CAND;AAQA;AACA;;;IACMI,Y;EAMJ,sBAAYJ,IAAZ,EAAuB;IAAA;IAAA;IAAA;IAAA;IAAA;IACrB,KAAKK,UAAL,GAAkBL,IAAlB;IACA,KAAKM,KAAL,GAAa;MACXC,GAAG,EAAE;QACHC,OAAO,EAAEC,sBAAA,CAAWC;MADjB,CADM;MAIXC,yBAAyB,EAAE;IAJhB,CAAb,CAFqB,CAQrB;;IACA,KAAKC,qBAAL,GAA6B,IAA7B;IACA,KAAKC,oBAAL,GAA4B,IAA5B;EACD;EAED;AACF;AACA;AACA;AACA;AACA;;;;;;yGACE,iBAA0BC,QAA1B,EAA8CC,OAA9C;QAAA;;QAAA;UAAA;YAAA;cAAA;gBAAA,iCACS,qBAAY,UAACC,OAAD,EAAUC,MAAV,EAAqB;kBACtC,IAAI,KAAI,CAACL,qBAAT,EAAgC;oBAC9B;oBACA,KAAI,CAACA,qBAAL;kBACD;;kBACD,KAAI,CAACA,qBAAL,GAA6BI,OAA7B;kBACA,KAAI,CAACH,oBAAL,GAA4BI,MAA5B;kBAEA,IAAIH,QAAJ,EAAc,KAAI,CAACI,SAAL,CAAeH,OAAf,EAAd,KACK,KAAI,CAACI,UAAL,CAAgBJ,OAAhB;gBACN,CAVM,CADT;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;IAcA;AACF;AACA;AACA;AACA;AACA;AACA;;;;WACE,wBAAsB;MACpB,OAAO,KAAKT,KAAL,CAAWC,GAAX,CAAeC,OAAf,KAA2BC,sBAAA,CAAWW,OAA7C;IACD;;;WAED,0BAAiB;MACf,IAAI,KAAKR,qBAAT,EAAgC;QAC9B,KAAKA,qBAAL,CAA2B,IAA3B;MACD;;MACD,KAAKA,qBAAL,GAA6B,IAA7B;MACA,KAAKC,oBAAL,GAA4B,IAA5B;IACD;;;WAED,uBAAcQ,CAAd,EAAiB;MACf,IAAI,KAAKR,oBAAT,EAA+B;QAC7B,KAAKA,oBAAL,CAA0BQ,CAA1B;MACD;;MACD,KAAKT,qBAAL,GAA6B,IAA7B;MACA,KAAKC,oBAAL,GAA4B,IAA5B;IACD;IAED;AACF;AACA;AACA;AACA;AACA;AACA;;;;;+FACE,kBAAuBE,OAAvB;QAAA;QAAA;UAAA;YAAA;cAAA;gBACEd,oBAAA,CAAYC,MAAZ,CAAmBC,IAAnB,CAAwB,kDAAxB;;gBADF,KAGM,KAAKmB,YAAL,EAHN;kBAAA;kBAAA;gBAAA;;gBAIIrB,oBAAA,CAAYC,MAAZ,CAAmBqB,IAAnB,CAAwB,iDAAxB;;gBAJJ,kCAMW,KAAKC,cAAL,EANX;;cAAA;gBAAA,KASM,KAAKlB,KAAL,CAAWK,yBATjB;kBAAA;kBAAA;gBAAA;;gBAUIV,oBAAA,CAAYC,MAAZ,CAAmBqB,IAAnB,CACE,+FADF;;gBAVJ,kCAcW,KAAKC,cAAL,EAdX;;cAAA;gBAiBSjB,GAjBT,GAiBgB,KAAKD,KAjBrB,CAiBSC,GAjBT;gBAAA;gBAoBIA,GAAG,CAACC,OAAJ,GAAcC,sBAAA,CAAWgB,aAAzB;gBACA,KAAKnB,KAAL,CAAWK,yBAAX,GAAuC,IAAvC;gBACMe,WAtBV,GAsBwBC,aAAA,CAAUC,iBAAV,CAA4B,CAACb,OAAO,CAACc,eAAR,CAAwBC,UAAzB,CAA5B,CAtBxB;;gBAwBI7B,oBAAA,CAAYC,MAAZ,CAAmBC,IAAnB,CACE,uFADF;;gBAxBJ;gBAAA,OA2BUY,OAAO,CAACgB,WAAR,CAAoB;kBACxBC,SAAS,EAAE,IADa;kBAExBC,YAAY,EAAElB,OAAO,CAACc,eAAR,CAAwBK,cAAxB,CAAuCD,YAF7B;kBAGxBE,MAAM,EAAET;gBAHgB,CAApB,CA3BV;;cAAA;gBAiCIzB,oBAAA,CAAYC,MAAZ,CAAmBC,IAAnB,CACE,6EADF;;gBAGAI,GAAG,CAACC,OAAJ,GAAcC,sBAAA,CAAWW,OAAzB;gBACA,KAAKd,KAAL,CAAWK,yBAAX,GAAuC,KAAvC;;gBACAyB,gBAAA,CAAQC,oBAAR,CAA6BC,kBAAA,CAAmBC,kBAAhD;;gBAtCJ;gBAAA;;cAAA;gBAAA;gBAAA;gBAwCIhC,GAAG,CAACC,OAAJ,GAAcC,sBAAA,CAAWC,WAAzB;gBACA,KAAKJ,KAAL,CAAWK,yBAAX,GAAuC,KAAvC;;gBACAV,oBAAA,CAAYC,MAAZ,CAAmBsC,KAAnB,CAAyB,0BAAzB;;gBAEAJ,gBAAA,CAAQC,oBAAR,CAA6BC,kBAAA,CAAmBG,kBAAhD,EAAoE;kBAClEC,MAAM,EAAE,aAAMC,OADoD;kBAElEC,KAAK,EAAE,aAAMA;gBAFqD,CAApE;;gBAIA,KAAKC,aAAL;gBAhDJ;;cAAA;gBAAA,kCAqDS,KAAKrB,cAAL,EArDT;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;IAwDA;AACF;AACA;AACA;AACA;AACA;AACA;;;;;gGACE,kBAAwBT,OAAxB;QAAA;QAAA;UAAA;YAAA;cAAA;gBACEd,oBAAA,CAAYC,MAAZ,CAAmBC,IAAnB,CAAwB,oDAAxB;;gBAEOI,GAHT,GAGgB,KAAKD,KAHrB,CAGSC,GAHT;gBAAA;;gBAAA,KAMQ,KAAKD,KAAL,CAAWK,yBANnB;kBAAA;kBAAA;gBAAA;;gBAOMV,oBAAA,CAAYC,MAAZ,CAAmBC,IAAnB,CACE,gGADF;;gBAPN,kCAWa,KAAKqB,cAAL,EAXb;;cAAA;gBAcIjB,GAAG,CAACC,OAAJ,GAAcC,sBAAA,CAAWqC,cAAzB;gBACA,KAAKxC,KAAL,CAAWK,yBAAX,GAAuC,IAAvC,CAfJ,CAiBI;;gBACMmB,UAlBV,GAkBuBiB,wBAAA,CAAYC,OAAZ,CAAoBC,GAApB,CAAwB9B,UAAxB,CAAmCJ,OAAO,CAACc,eAAR,CAAwBC,UAA3D,CAlBvB;gBAoBUJ,WApBV,GAoBwBC,aAAA,CAAUC,iBAAV,CAA4B,CAACE,UAAD,CAA5B,CApBxB;;gBAsBI7B,oBAAA,CAAYC,MAAZ,CAAmBC,IAAnB,CACE,4FADF;;gBAtBJ;gBAAA,OA0BUY,OAAO,CAACgB,WAAR,CAAoB;kBACxBC,SAAS,EAAE,IADa;kBAExBC,YAAY,EAAElB,OAAO,CAACc,eAAR,CAAwBK,cAAxB,CAAuCD,YAF7B;kBAGxBE,MAAM,EAAET;gBAHgB,CAApB,CA1BV;;cAAA;gBAgCInB,GAAG,CAACC,OAAJ,GAAcC,sBAAA,CAAWC,WAAzB;gBAEA,KAAKJ,KAAL,CAAWK,yBAAX,GAAuC,KAAvC;;gBAEAyB,gBAAA,CAAQC,oBAAR,CAA6BC,kBAAA,CAAmBY,mBAAhD;;gBApCJ;gBAAA;;cAAA;gBAAA;gBAAA;gBAsCI3C,GAAG,CAACC,OAAJ,GAAcC,sBAAA,CAAWW,OAAzB;gBACA,KAAKd,KAAL,CAAWK,yBAAX,GAAuC,KAAvC;;gBACAV,oBAAA,CAAYC,MAAZ,CAAmBsC,KAAnB;;gBAEAJ,gBAAA,CAAQC,oBAAR,CAA6BC,kBAAA,CAAmBa,mBAAhD,EAAqE;kBACnET,MAAM,EAAE,aAAMC,OADqD;kBAEnEC,KAAK,EAAE,aAAMA;gBAFsD,CAArE;;gBAIA,KAAKC,aAAL;gBA9CJ;;cAAA;gBAAA,kCAmDS,KAAKrB,cAAL,EAnDT;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;;;eAuDazB,kB"}
@@ -1 +1 @@
1
- {"version":3,"names":["InMeetingActions","MEETINGS","canInviteNewParticipants","canAdmitParticipant","canLock","canUnlock","canAssignHost","canStartRecording","canPauseRecording","canResumeRecording","canStopRecording","canRaiseHand","canLowerAllHands","canLowerSomeoneElsesHand","bothLeaveAndEndMeetingAvailable","canEnableClosedCaption","canStartTranscribing","canStopTranscribing","isClosedCaptionActive","isWebexAssistantActive","canViewCaptionPanel","isRealTimeTranslationEnabled","canSelectSpokenLanguages","waitingForOthersToJoin","actions","old","get","changed","forEach","actionKey","actionValue","undefined"],"sources":["in-meeting-actions.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {\n MEETINGS\n} from '../constants';\n\n/**\n * IInMeetingActions\n * Type for In-Meeting Actions\n */\ninterface IInMeetingActions {\n canInviteNewParticipants?: boolean;\n canAdmitParticipant?: boolean;\n canLock?: boolean;\n canUnlock?: boolean;\n canAssignHost?: boolean;\n canStartRecording?: boolean;\n canPauseRecording?: boolean;\n canResumeRecording?: boolean;\n canStopRecording?: boolean;\n canRaiseHand?: boolean;\n canLowerAllHands?: boolean;\n canLowerSomeoneElsesHand?: boolean;\n bothLeaveAndEndMeetingAvailable?: boolean;\n canEnableClosedCaption?: boolean;\n canStartTranscribing?: boolean;\n canStopTranscribing?: boolean;\n isClosedCaptionActive?: boolean;\n isWebexAssistantActive?: boolean;\n canViewCaptionPanel?: boolean;\n isRealTimeTranslationEnabled?: boolean;\n canSelectSpokenLanguages?: boolean;\n waitingForOthersToJoin?: boolean;\n}\n\n/**\n * @class InMeetingActions\n */\nexport default class InMeetingActions implements IInMeetingActions {\n namespace = MEETINGS;\n\n canInviteNewParticipants = null;\n\n canAdmitParticipant = null;\n\n canLock = null;\n\n canUnlock = null;\n\n canAssignHost = null;\n\n canStartRecording = null;\n\n canPauseRecording = null;\n\n canResumeRecording = null;\n\n canStopRecording = null;\n\n canRaiseHand = null;\n\n canLowerAllHands = null;\n\n canLowerSomeoneElsesHand = null;\n\n bothLeaveAndEndMeetingAvailable = null;\n\n canEnableClosedCaption = null;\n\n canStartTranscribing = null;\n\n canStopTranscribing = null;\n\n isClosedCaptionActive = null;\n\n isWebexAssistantActive = null;\n\n canViewCaptionPanel = null;\n\n isRealTimeTranslationEnabled = null;\n\n canSelectSpokenLanguages = null;\n\n waitingForOthersToJoin = null;\n\n /**\n * Returns all meeting action options\n * @returns {Object}\n */\n get = (): IInMeetingActions => ({\n canInviteNewParticipants: this.canInviteNewParticipants,\n canAdmitParticipant: this.canAdmitParticipant,\n canLock: this.canLock,\n canUnlock: this.canUnlock,\n canAssignHost: this.canAssignHost,\n canStartRecording: this.canStartRecording,\n canPauseRecording: this.canPauseRecording,\n canResumeRecording: this.canResumeRecording,\n canStopRecording: this.canStopRecording,\n canRaiseHand: this.canRaiseHand,\n canLowerAllHands: this.canLowerAllHands,\n canLowerSomeoneElsesHand: this.canLowerSomeoneElsesHand,\n bothLeaveAndEndMeetingAvailable: this.bothLeaveAndEndMeetingAvailable,\n canEnableClosedCaption: this.canEnableClosedCaption,\n canStartTranscribing: this.canStartTranscribing,\n canStopTranscribing: this.canStopTranscribing,\n isClosedCaptionActive: this.isClosedCaptionActive,\n isWebexAssistantActive: this.isWebexAssistantActive,\n canViewCaptionPanel: this.canViewCaptionPanel,\n isRealTimeTranslationEnabled: this.isRealTimeTranslationEnabled,\n canSelectSpokenLanguages: this.canSelectSpokenLanguages,\n waitingForOthersToJoin: this.waitingForOthersToJoin,\n });\n\n set = (actions: Partial<IInMeetingActions>) => {\n const old = this.get();\n\n let changed = false;\n\n Object.keys(old).forEach((actionKey) => {\n const actionValue = actions[actionKey];\n\n if (actionValue !== undefined && actionValue !== old[actionKey]) {\n changed = true;\n this[actionKey] = actionValue;\n }\n });\n\n return changed;\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAIA;;AAJA;AACA;AACA;;AAmCA;AACA;AACA;IACqBA,gB;;;;mDACPC,mB;kEAEe,I;6DAEL,I;iDAEZ,I;mDAEE,I;uDAEI,I;2DAEI,I;2DAEA,I;4DAEC,I;0DAEF,I;sDAEJ,I;0DAEI,I;kEAEQ,I;yEAEO,I;gEAET,I;8DAEF,I;6DAED,I;+DAEE,I;gEAEC,I;6DAEH,I;sEAES,I;kEAEJ,I;gEAEF,I;6CAMnB;IAAA,OAA0B;MAC9BC,wBAAwB,EAAE,KAAI,CAACA,wBADD;MAE9BC,mBAAmB,EAAE,KAAI,CAACA,mBAFI;MAG9BC,OAAO,EAAE,KAAI,CAACA,OAHgB;MAI9BC,SAAS,EAAE,KAAI,CAACA,SAJc;MAK9BC,aAAa,EAAE,KAAI,CAACA,aALU;MAM9BC,iBAAiB,EAAE,KAAI,CAACA,iBANM;MAO9BC,iBAAiB,EAAE,KAAI,CAACA,iBAPM;MAQ9BC,kBAAkB,EAAE,KAAI,CAACA,kBARK;MAS9BC,gBAAgB,EAAE,KAAI,CAACA,gBATO;MAU9BC,YAAY,EAAE,KAAI,CAACA,YAVW;MAW9BC,gBAAgB,EAAE,KAAI,CAACA,gBAXO;MAY9BC,wBAAwB,EAAE,KAAI,CAACA,wBAZD;MAa9BC,+BAA+B,EAAE,KAAI,CAACA,+BAbR;MAc9BC,sBAAsB,EAAE,KAAI,CAACA,sBAdC;MAe9BC,oBAAoB,EAAE,KAAI,CAACA,oBAfG;MAgB9BC,mBAAmB,EAAE,KAAI,CAACA,mBAhBI;MAiB9BC,qBAAqB,EAAE,KAAI,CAACA,qBAjBE;MAkB9BC,sBAAsB,EAAE,KAAI,CAACA,sBAlBC;MAmB9BC,mBAAmB,EAAE,KAAI,CAACA,mBAnBI;MAoB9BC,4BAA4B,EAAE,KAAI,CAACA,4BApBL;MAqB9BC,wBAAwB,EAAE,KAAI,CAACA,wBArBD;MAsB9BC,sBAAsB,EAAE,KAAI,CAACA;IAtBC,CAA1B;EAAA,C;6CAyBA,UAACC,OAAD,EAAyC;IAC7C,IAAMC,GAAG,GAAG,KAAI,CAACC,GAAL,EAAZ;;IAEA,IAAIC,OAAO,GAAG,KAAd;IAEA,mBAAYF,GAAZ,EAAiBG,OAAjB,CAAyB,UAACC,SAAD,EAAe;MACtC,IAAMC,WAAW,GAAGN,OAAO,CAACK,SAAD,CAA3B;;MAEA,IAAIC,WAAW,KAAKC,SAAhB,IAA6BD,WAAW,KAAKL,GAAG,CAACI,SAAD,CAApD,EAAiE;QAC/DF,OAAO,GAAG,IAAV;QACA,KAAI,CAACE,SAAD,CAAJ,GAAkBC,WAAlB;MACD;IACF,CAPD;IASA,OAAOH,OAAP;EACD,C"}
1
+ {"version":3,"names":["InMeetingActions","MEETINGS","canInviteNewParticipants","canAdmitParticipant","canLock","canUnlock","canAssignHost","canStartRecording","canPauseRecording","canResumeRecording","canStopRecording","canRaiseHand","canLowerAllHands","canLowerSomeoneElsesHand","bothLeaveAndEndMeetingAvailable","canEnableClosedCaption","canStartTranscribing","canStopTranscribing","isClosedCaptionActive","isWebexAssistantActive","canViewCaptionPanel","isRealTimeTranslationEnabled","canSelectSpokenLanguages","waitingForOthersToJoin","actions","old","get","changed","forEach","actionKey","actionValue","undefined"],"sources":["in-meeting-actions.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {MEETINGS} from '../constants';\n\n/**\n * IInMeetingActions\n * Type for In-Meeting Actions\n */\ninterface IInMeetingActions {\n canInviteNewParticipants?: boolean;\n canAdmitParticipant?: boolean;\n canLock?: boolean;\n canUnlock?: boolean;\n canAssignHost?: boolean;\n canStartRecording?: boolean;\n canPauseRecording?: boolean;\n canResumeRecording?: boolean;\n canStopRecording?: boolean;\n canRaiseHand?: boolean;\n canLowerAllHands?: boolean;\n canLowerSomeoneElsesHand?: boolean;\n bothLeaveAndEndMeetingAvailable?: boolean;\n canEnableClosedCaption?: boolean;\n canStartTranscribing?: boolean;\n canStopTranscribing?: boolean;\n isClosedCaptionActive?: boolean;\n isWebexAssistantActive?: boolean;\n canViewCaptionPanel?: boolean;\n isRealTimeTranslationEnabled?: boolean;\n canSelectSpokenLanguages?: boolean;\n waitingForOthersToJoin?: boolean;\n}\n\n/**\n * @class InMeetingActions\n */\nexport default class InMeetingActions implements IInMeetingActions {\n namespace = MEETINGS;\n\n canInviteNewParticipants = null;\n\n canAdmitParticipant = null;\n\n canLock = null;\n\n canUnlock = null;\n\n canAssignHost = null;\n\n canStartRecording = null;\n\n canPauseRecording = null;\n\n canResumeRecording = null;\n\n canStopRecording = null;\n\n canRaiseHand = null;\n\n canLowerAllHands = null;\n\n canLowerSomeoneElsesHand = null;\n\n bothLeaveAndEndMeetingAvailable = null;\n\n canEnableClosedCaption = null;\n\n canStartTranscribing = null;\n\n canStopTranscribing = null;\n\n isClosedCaptionActive = null;\n\n isWebexAssistantActive = null;\n\n canViewCaptionPanel = null;\n\n isRealTimeTranslationEnabled = null;\n\n canSelectSpokenLanguages = null;\n\n waitingForOthersToJoin = null;\n\n /**\n * Returns all meeting action options\n * @returns {Object}\n */\n get = (): IInMeetingActions => ({\n canInviteNewParticipants: this.canInviteNewParticipants,\n canAdmitParticipant: this.canAdmitParticipant,\n canLock: this.canLock,\n canUnlock: this.canUnlock,\n canAssignHost: this.canAssignHost,\n canStartRecording: this.canStartRecording,\n canPauseRecording: this.canPauseRecording,\n canResumeRecording: this.canResumeRecording,\n canStopRecording: this.canStopRecording,\n canRaiseHand: this.canRaiseHand,\n canLowerAllHands: this.canLowerAllHands,\n canLowerSomeoneElsesHand: this.canLowerSomeoneElsesHand,\n bothLeaveAndEndMeetingAvailable: this.bothLeaveAndEndMeetingAvailable,\n canEnableClosedCaption: this.canEnableClosedCaption,\n canStartTranscribing: this.canStartTranscribing,\n canStopTranscribing: this.canStopTranscribing,\n isClosedCaptionActive: this.isClosedCaptionActive,\n isWebexAssistantActive: this.isWebexAssistantActive,\n canViewCaptionPanel: this.canViewCaptionPanel,\n isRealTimeTranslationEnabled: this.isRealTimeTranslationEnabled,\n canSelectSpokenLanguages: this.canSelectSpokenLanguages,\n waitingForOthersToJoin: this.waitingForOthersToJoin,\n });\n\n /**\n *\n * @param actions\n * @returns\n */\n\n set = (actions: Partial<IInMeetingActions>) => {\n const old = this.get();\n\n let changed = false;\n\n Object.keys(old).forEach((actionKey) => {\n const actionValue = actions[actionKey];\n\n if (actionValue !== undefined && actionValue !== old[actionKey]) {\n changed = true;\n this[actionKey] = actionValue;\n }\n });\n\n return changed;\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAIA;;AAJA;AACA;AACA;;AAiCA;AACA;AACA;IACqBA,gB;;;;mDACPC,mB;kEAEe,I;6DAEL,I;iDAEZ,I;mDAEE,I;uDAEI,I;2DAEI,I;2DAEA,I;4DAEC,I;0DAEF,I;sDAEJ,I;0DAEI,I;kEAEQ,I;yEAEO,I;gEAET,I;8DAEF,I;6DAED,I;+DAEE,I;gEAEC,I;6DAEH,I;sEAES,I;kEAEJ,I;gEAEF,I;6CAMnB;IAAA,OAA0B;MAC9BC,wBAAwB,EAAE,KAAI,CAACA,wBADD;MAE9BC,mBAAmB,EAAE,KAAI,CAACA,mBAFI;MAG9BC,OAAO,EAAE,KAAI,CAACA,OAHgB;MAI9BC,SAAS,EAAE,KAAI,CAACA,SAJc;MAK9BC,aAAa,EAAE,KAAI,CAACA,aALU;MAM9BC,iBAAiB,EAAE,KAAI,CAACA,iBANM;MAO9BC,iBAAiB,EAAE,KAAI,CAACA,iBAPM;MAQ9BC,kBAAkB,EAAE,KAAI,CAACA,kBARK;MAS9BC,gBAAgB,EAAE,KAAI,CAACA,gBATO;MAU9BC,YAAY,EAAE,KAAI,CAACA,YAVW;MAW9BC,gBAAgB,EAAE,KAAI,CAACA,gBAXO;MAY9BC,wBAAwB,EAAE,KAAI,CAACA,wBAZD;MAa9BC,+BAA+B,EAAE,KAAI,CAACA,+BAbR;MAc9BC,sBAAsB,EAAE,KAAI,CAACA,sBAdC;MAe9BC,oBAAoB,EAAE,KAAI,CAACA,oBAfG;MAgB9BC,mBAAmB,EAAE,KAAI,CAACA,mBAhBI;MAiB9BC,qBAAqB,EAAE,KAAI,CAACA,qBAjBE;MAkB9BC,sBAAsB,EAAE,KAAI,CAACA,sBAlBC;MAmB9BC,mBAAmB,EAAE,KAAI,CAACA,mBAnBI;MAoB9BC,4BAA4B,EAAE,KAAI,CAACA,4BApBL;MAqB9BC,wBAAwB,EAAE,KAAI,CAACA,wBArBD;MAsB9BC,sBAAsB,EAAE,KAAI,CAACA;IAtBC,CAA1B;EAAA,C;6CA+BA,UAACC,OAAD,EAAyC;IAC7C,IAAMC,GAAG,GAAG,KAAI,CAACC,GAAL,EAAZ;;IAEA,IAAIC,OAAO,GAAG,KAAd;IAEA,mBAAYF,GAAZ,EAAiBG,OAAjB,CAAyB,UAACC,SAAD,EAAe;MACtC,IAAMC,WAAW,GAAGN,OAAO,CAACK,SAAD,CAA3B;;MAEA,IAAIC,WAAW,KAAKC,SAAhB,IAA6BD,WAAW,KAAKL,GAAG,CAACI,SAAD,CAApD,EAAiE;QAC/DF,OAAO,GAAG,IAAV;QACA,KAAI,CAACE,SAAD,CAAJ,GAAkBC,WAAlB;MACD;IACF,CAPD;IASA,OAAOH,OAAP;EACD,C"}
@@ -86,11 +86,11 @@ var _media = _interopRequireDefault(require("../media"));
86
86
 
87
87
  var _properties = _interopRequireDefault(require("../media/properties"));
88
88
 
89
- var _state = _interopRequireDefault(require("../meeting/state"));
89
+ var _state = _interopRequireDefault(require("./state"));
90
90
 
91
- var _muteState = _interopRequireDefault(require("../meeting/muteState"));
91
+ var _muteState = _interopRequireDefault(require("./muteState"));
92
92
 
93
- var _effectsState = _interopRequireDefault(require("../meeting/effectsState"));
93
+ var _effectsState = _interopRequireDefault(require("./effectsState"));
94
94
 
95
95
  var _locusInfo = _interopRequireDefault(require("../locus-info"));
96
96
 
@@ -100,11 +100,11 @@ var _config = require("../metrics/config");
100
100
 
101
101
  var _reconnectionManager = _interopRequireDefault(require("../reconnection-manager"));
102
102
 
103
- var _request = _interopRequireDefault(require("../meeting/request"));
103
+ var _request = _interopRequireDefault(require("./request"));
104
104
 
105
105
  var _index2 = _interopRequireDefault(require("../members/index"));
106
106
 
107
- var _util = _interopRequireDefault(require("../meeting/util"));
107
+ var _util = _interopRequireDefault(require("./util"));
108
108
 
109
109
  var _util2 = _interopRequireDefault(require("../media/util"));
110
110
 
@@ -193,21 +193,21 @@ var MEDIA_UPDATE_TYPE = {
193
193
  */
194
194
 
195
195
  /**
196
- * AudioVideo
197
- * @typedef {Object} AudioVideo
198
- * @property {Object} audio
199
- * @property {String} audio.deviceId
200
- * @property {Object} video
201
- * @property {String} video.deviceId
202
- * @property {String} video.localVideoQuality // [240p, 360p, 480p, 720p, 1080p]
203
- */
196
+ * AudioVideo
197
+ * @typedef {Object} AudioVideo
198
+ * @property {Object} audio
199
+ * @property {String} audio.deviceId
200
+ * @property {Object} video
201
+ * @property {String} video.deviceId
202
+ * @property {String} video.localVideoQuality // [240p, 360p, 480p, 720p, 1080p]
203
+ */
204
204
 
205
205
  /**
206
- * SharePreferences
207
- * @typedef {Object} SharePreferences
208
- * @property {Object} [shareConstraints]
209
- * @property {Boolean} [highFrameRate]
210
- */
206
+ * SharePreferences
207
+ * @typedef {Object} SharePreferences
208
+ * @property {Object} [shareConstraints]
209
+ * @property {Boolean} [highFrameRate]
210
+ */
211
211
 
212
212
  /**
213
213
  * JoinOptions
@@ -238,36 +238,36 @@ var MEDIA_UPDATE_TYPE = {
238
238
  */
239
239
 
240
240
  /**
241
- * Meeting State Change Event
242
- * Emitted when ever there is a meeting state change
243
- * @event meeting:stateChange
244
- * @instance
245
- * @type {Object}
246
- * @property {String} currentState current state of the meeting
247
- * @property {String} previousState previous state of the meeting
248
- * @memberof Meeting
249
- */
241
+ * Meeting State Change Event
242
+ * Emitted when ever there is a meeting state change
243
+ * @event meeting:stateChange
244
+ * @instance
245
+ * @type {Object}
246
+ * @property {String} currentState current state of the meeting
247
+ * @property {String} previousState previous state of the meeting
248
+ * @memberof Meeting
249
+ */
250
250
 
251
251
  /**
252
- * Media Ready Event
253
- * Emitted when a stream is ready to be rendered
254
- * @event media:ready
255
- * @instance
256
- * @type {Object}
257
- * @property {MediaStream} stream the media stream
258
- * @property {String} type what type of stream, remote, local
259
- * @memberof Meeting
260
- */
252
+ * Media Ready Event
253
+ * Emitted when a stream is ready to be rendered
254
+ * @event media:ready
255
+ * @instance
256
+ * @type {Object}
257
+ * @property {MediaStream} stream the media stream
258
+ * @property {String} type what type of stream, remote, local
259
+ * @memberof Meeting
260
+ */
261
261
 
262
262
  /**
263
- * Media Stopped Event
264
- * Emitted when a stream has stopped sending
265
- * @event media:stopped
266
- * @instance
267
- * @type {Object}
268
- * @property {String} type what type of stream, remote, local
269
- * @memberof Meeting
270
- */
263
+ * Media Stopped Event
264
+ * Emitted when a stream has stopped sending
265
+ * @event media:stopped
266
+ * @instance
267
+ * @type {Object}
268
+ * @property {String} type what type of stream, remote, local
269
+ * @memberof Meeting
270
+ */
271
271
 
272
272
  /**
273
273
  * Meeting Ringing Event
@@ -425,42 +425,42 @@ var MEDIA_UPDATE_TYPE = {
425
425
  */
426
426
 
427
427
  /**
428
- * Reconnection Starting Event
429
- * Emitted when reconnection of media to the active meeting was successful
430
- * @event meeting:reconnectionStarting
431
- * @instance
432
- * @memberof Meeting
433
- */
428
+ * Reconnection Starting Event
429
+ * Emitted when reconnection of media to the active meeting was successful
430
+ * @event meeting:reconnectionStarting
431
+ * @instance
432
+ * @memberof Meeting
433
+ */
434
434
 
435
435
  /**
436
- * Reconnection Success Event
437
- * Emitted when reconnection of media to the active meeting was successful
438
- * @event meeting:reconnectionSuccess
439
- * @instance
440
- * @type {Object}
441
- * @property {Object} reconnect
442
- * @memberof Meeting
443
- */
436
+ * Reconnection Success Event
437
+ * Emitted when reconnection of media to the active meeting was successful
438
+ * @event meeting:reconnectionSuccess
439
+ * @instance
440
+ * @type {Object}
441
+ * @property {Object} reconnect
442
+ * @memberof Meeting
443
+ */
444
444
 
445
445
  /**
446
- * Reconnection Failure Event
447
- * Emitted when reconnection of media to the active meeting was successful
448
- * @event meeting:reconnectionFailure
449
- * @instance
450
- * @type {Object}
451
- * @property {Error} error
452
- * @memberof Meeting
453
- */
446
+ * Reconnection Failure Event
447
+ * Emitted when reconnection of media to the active meeting was successful
448
+ * @event meeting:reconnectionFailure
449
+ * @instance
450
+ * @type {Object}
451
+ * @property {Error} error
452
+ * @memberof Meeting
453
+ */
454
454
 
455
455
  /**
456
- * Meeting network quality event
457
- * Emitted on each interval of retrieving stats Analyzer data
458
- * @event network:quality
459
- * @type {Object}
460
- * @property {string} mediaType {video|audio}
461
- * @property {number} networkQualityScore - {1|0} 1 indicates acceptable uplink 0 indicates unacceptable uplink based on threshold
462
- * @memberof Meeting
463
- */
456
+ * Meeting network quality event
457
+ * Emitted on each interval of retrieving stats Analyzer data
458
+ * @event network:quality
459
+ * @type {Object}
460
+ * @property {string} mediaType {video|audio}
461
+ * @property {number} networkQualityScore - {1|0} 1 indicates acceptable uplink 0 indicates unacceptable uplink based on threshold
462
+ * @memberof Meeting
463
+ */
464
464
 
465
465
  /**
466
466
  * @description Meeting is the crux of the plugin
@@ -480,7 +480,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
480
480
  * @param {Object} options
481
481
  * @constructor
482
482
  * @memberof Meeting
483
- */
483
+ */
484
484
  function Meeting(attrs, _options) {
485
485
  var _this;
486
486
 
@@ -684,6 +684,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
684
684
  return _media.default.getDevices();
685
685
  });
686
686
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleRoapFailure", function (error) {
687
+ // eslint-disable-next-line @typescript-eslint/no-shadow
687
688
  var sendBehavioralMetric = function sendBehavioralMetric(metricName, error, correlationId) {
688
689
  var _error$cause;
689
690
 
@@ -855,7 +856,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
855
856
  _this.mediaProperties.webrtcMediaConnection.on(_internalMediaCore.MediaConnection.Event.REMOTE_TRACK_ADDED, function (event) {
856
857
  _loggerProxy.default.logger.log("Meeting:index#setupMediaConnectionListeners --> REMOTE_TRACK_ADDED event received for webrtcMediaConnection: ".concat((0, _stringify.default)(event)));
857
858
 
858
- var mediaTrack = event.track;
859
+ var mediaTrack = event.track; // eslint-disable-next-line @typescript-eslint/no-shadow
860
+
859
861
  var eventType;
860
862
 
861
863
  switch (event.type) {
@@ -1544,7 +1546,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1544
1546
  * @type {InMeetingActions}
1545
1547
  * @public
1546
1548
  * @memberof Meeting
1547
- */
1549
+ */
1548
1550
 
1549
1551
  _this.inMeetingActions = new _inMeetingActions.default();
1550
1552
  /**
@@ -3463,6 +3465,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3463
3465
  * @returns {void}
3464
3466
  * @inner
3465
3467
  */
3468
+ // eslint-disable-next-line @typescript-eslint/no-shadow
3466
3469
 
3467
3470
  var triggerMediaStoppedEvent = function triggerMediaStoppedEvent(mediaType) {
3468
3471
  _triggerProxy.default.trigger(_this20, {
@@ -6435,18 +6438,18 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6435
6438
  });
6436
6439
  }
6437
6440
  /**
6438
- *
6439
- * NOTE: this method can only be used with transcoded meetings, for multistream use publishTrack()
6440
- *
6441
- * @param {Object} options parameter
6442
- * @param {Boolean} options.sendAudio send audio from the display share
6443
- * @param {Boolean} options.sendShare send video from the display share
6444
- * @param {Object} options.sharePreferences
6445
- * @param {MediaTrackConstraints} options.sharePreferences.shareConstraints constraints to apply to video
6446
- * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackConstraints}
6447
- * @param {Boolean} options.sharePreferences.highFrameRate if shareConstraints isn't provided, set default values based off of this boolean
6448
- * @returns {Promise}
6449
- */
6441
+ *
6442
+ * NOTE: this method can only be used with transcoded meetings, for multistream use publishTrack()
6443
+ *
6444
+ * @param {Object} options parameter
6445
+ * @param {Boolean} options.sendAudio send audio from the display share
6446
+ * @param {Boolean} options.sendShare send video from the display share
6447
+ * @param {Object} options.sharePreferences
6448
+ * @param {MediaTrackConstraints} options.sharePreferences.shareConstraints constraints to apply to video
6449
+ * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackConstraints}
6450
+ * @param {Boolean} options.sharePreferences.highFrameRate if shareConstraints isn't provided, set default values based off of this boolean
6451
+ * @returns {Promise}
6452
+ */
6450
6453
 
6451
6454
  }, {
6452
6455
  key: "shareScreen",
@@ -7009,6 +7012,32 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7009
7012
 
7010
7013
  return _promise.default.reject(new Error('Error sending reaction, service url not found.'));
7011
7014
  }
7015
+ /**
7016
+ * Method to enable or disable reactions inside the meeting.
7017
+ *
7018
+ * @param {boolean} enable - enable or disable reactions
7019
+ * @returns {Promise}
7020
+ * @public
7021
+ * @memberof Meeting
7022
+ */
7023
+
7024
+ }, {
7025
+ key: "toggleReactions",
7026
+ value: function toggleReactions(enable) {
7027
+ var _this$locusInfo3, _this$locusInfo3$cont, _this$locusInfo3$cont2;
7028
+
7029
+ var isEnabled = (_this$locusInfo3 = this.locusInfo) === null || _this$locusInfo3 === void 0 ? void 0 : (_this$locusInfo3$cont = _this$locusInfo3.controls) === null || _this$locusInfo3$cont === void 0 ? void 0 : (_this$locusInfo3$cont2 = _this$locusInfo3$cont.reactions) === null || _this$locusInfo3$cont2 === void 0 ? void 0 : _this$locusInfo3$cont2.enabled;
7030
+
7031
+ if (isEnabled && enable || !isEnabled && !enable) {
7032
+ return _promise.default.resolve("Reactions are already ".concat(isEnabled ? 'enabled' : 'disabled', "."));
7033
+ }
7034
+
7035
+ return this.meetingRequest.toggleReactions({
7036
+ enable: enable,
7037
+ locusUrl: this.locusUrl,
7038
+ requestingParticipantId: this.members.selfId
7039
+ });
7040
+ }
7012
7041
  }]);
7013
7042
  return Meeting;
7014
7043
  }(_webexCore.StatelessWebexPlugin);