@abrar71/lib-jitsi-meet 0.0.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 (350) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +26 -0
  3. package/dist/esm/JitsiConference.js +3692 -0
  4. package/dist/esm/JitsiConference.js.map +1 -0
  5. package/dist/esm/JitsiConferenceErrors.js +126 -0
  6. package/dist/esm/JitsiConferenceErrors.js.map +1 -0
  7. package/dist/esm/JitsiConferenceEventManager.js +424 -0
  8. package/dist/esm/JitsiConferenceEventManager.js.map +1 -0
  9. package/dist/esm/JitsiConferenceEvents.js +431 -0
  10. package/dist/esm/JitsiConferenceEvents.js.map +1 -0
  11. package/dist/esm/JitsiConnection.js +187 -0
  12. package/dist/esm/JitsiConnection.js.map +1 -0
  13. package/dist/esm/JitsiConnectionErrors.js +52 -0
  14. package/dist/esm/JitsiConnectionErrors.js.map +1 -0
  15. package/dist/esm/JitsiConnectionEvents.js +57 -0
  16. package/dist/esm/JitsiConnectionEvents.js.map +1 -0
  17. package/dist/esm/JitsiMediaDevices.js +221 -0
  18. package/dist/esm/JitsiMediaDevices.js.map +1 -0
  19. package/dist/esm/JitsiMediaDevicesEvents.js +29 -0
  20. package/dist/esm/JitsiMediaDevicesEvents.js.map +1 -0
  21. package/dist/esm/JitsiMeetJS.js +499 -0
  22. package/dist/esm/JitsiMeetJS.js.map +1 -0
  23. package/dist/esm/JitsiParticipant.js +323 -0
  24. package/dist/esm/JitsiParticipant.js.map +1 -0
  25. package/dist/esm/JitsiTrackError.js +122 -0
  26. package/dist/esm/JitsiTrackError.js.map +1 -0
  27. package/dist/esm/JitsiTrackErrors.js +91 -0
  28. package/dist/esm/JitsiTrackErrors.js.map +1 -0
  29. package/dist/esm/JitsiTrackEvents.js +60 -0
  30. package/dist/esm/JitsiTrackEvents.js.map +1 -0
  31. package/dist/esm/JitsiTranscriptionStatus.js +15 -0
  32. package/dist/esm/JitsiTranscriptionStatus.js.map +1 -0
  33. package/dist/esm/modules/RTC/BridgeChannel.js +398 -0
  34. package/dist/esm/modules/RTC/BridgeChannel.js.map +1 -0
  35. package/dist/esm/modules/RTC/JitsiLocalTrack.js +896 -0
  36. package/dist/esm/modules/RTC/JitsiLocalTrack.js.map +1 -0
  37. package/dist/esm/modules/RTC/JitsiRemoteTrack.js +427 -0
  38. package/dist/esm/modules/RTC/JitsiRemoteTrack.js.map +1 -0
  39. package/dist/esm/modules/RTC/JitsiTrack.js +453 -0
  40. package/dist/esm/modules/RTC/JitsiTrack.js.map +1 -0
  41. package/dist/esm/modules/RTC/MockClasses.js +388 -0
  42. package/dist/esm/modules/RTC/MockClasses.js.map +1 -0
  43. package/dist/esm/modules/RTC/RTC.js +658 -0
  44. package/dist/esm/modules/RTC/RTC.js.map +1 -0
  45. package/dist/esm/modules/RTC/RTCUtils.js +762 -0
  46. package/dist/esm/modules/RTC/RTCUtils.js.map +1 -0
  47. package/dist/esm/modules/RTC/ScreenObtainer.js +380 -0
  48. package/dist/esm/modules/RTC/ScreenObtainer.js.map +1 -0
  49. package/dist/esm/modules/RTC/TPCUtils.js +803 -0
  50. package/dist/esm/modules/RTC/TPCUtils.js.map +1 -0
  51. package/dist/esm/modules/RTC/TraceablePeerConnection.js +2223 -0
  52. package/dist/esm/modules/RTC/TraceablePeerConnection.js.map +1 -0
  53. package/dist/esm/modules/RTCStats/DefaulLogStorage.js +35 -0
  54. package/dist/esm/modules/RTCStats/DefaulLogStorage.js.map +1 -0
  55. package/dist/esm/modules/RTCStats/RTCStats.js +219 -0
  56. package/dist/esm/modules/RTCStats/RTCStats.js.map +1 -0
  57. package/dist/esm/modules/RTCStats/RTCStatsEvents.js +92 -0
  58. package/dist/esm/modules/RTCStats/RTCStatsEvents.js.map +1 -0
  59. package/dist/esm/modules/RTCStats/interfaces.js +2 -0
  60. package/dist/esm/modules/RTCStats/interfaces.js.map +1 -0
  61. package/dist/esm/modules/browser/BrowserCapabilities.js +345 -0
  62. package/dist/esm/modules/browser/BrowserCapabilities.js.map +1 -0
  63. package/dist/esm/modules/browser/index.js +3 -0
  64. package/dist/esm/modules/browser/index.js.map +1 -0
  65. package/dist/esm/modules/connectivity/ConnectionQuality.js +389 -0
  66. package/dist/esm/modules/connectivity/ConnectionQuality.js.map +1 -0
  67. package/dist/esm/modules/connectivity/IceFailedHandling.js +84 -0
  68. package/dist/esm/modules/connectivity/IceFailedHandling.js.map +1 -0
  69. package/dist/esm/modules/connectivity/NetworkInfo.js +49 -0
  70. package/dist/esm/modules/connectivity/NetworkInfo.js.map +1 -0
  71. package/dist/esm/modules/connectivity/TrackStreamingStatus.js +453 -0
  72. package/dist/esm/modules/connectivity/TrackStreamingStatus.js.map +1 -0
  73. package/dist/esm/modules/detection/ActiveDeviceDetector.js +79 -0
  74. package/dist/esm/modules/detection/ActiveDeviceDetector.js.map +1 -0
  75. package/dist/esm/modules/detection/DetectionEvents.js +58 -0
  76. package/dist/esm/modules/detection/DetectionEvents.js.map +1 -0
  77. package/dist/esm/modules/detection/NoAudioSignalDetection.js +127 -0
  78. package/dist/esm/modules/detection/NoAudioSignalDetection.js.map +1 -0
  79. package/dist/esm/modules/detection/P2PDominantSpeakerDetection.js +47 -0
  80. package/dist/esm/modules/detection/P2PDominantSpeakerDetection.js.map +1 -0
  81. package/dist/esm/modules/detection/TrackVADEmitter.js +190 -0
  82. package/dist/esm/modules/detection/TrackVADEmitter.js.map +1 -0
  83. package/dist/esm/modules/detection/VADAudioAnalyser.js +199 -0
  84. package/dist/esm/modules/detection/VADAudioAnalyser.js.map +1 -0
  85. package/dist/esm/modules/detection/VADNoiseDetection.js +168 -0
  86. package/dist/esm/modules/detection/VADNoiseDetection.js.map +1 -0
  87. package/dist/esm/modules/detection/VADReportingService.js +203 -0
  88. package/dist/esm/modules/detection/VADReportingService.js.map +1 -0
  89. package/dist/esm/modules/detection/VADTalkMutedDetection.js +131 -0
  90. package/dist/esm/modules/detection/VADTalkMutedDetection.js.map +1 -0
  91. package/dist/esm/modules/e2ee/Context.js +274 -0
  92. package/dist/esm/modules/e2ee/Context.js.map +1 -0
  93. package/dist/esm/modules/e2ee/E2EEContext.js +158 -0
  94. package/dist/esm/modules/e2ee/E2EEContext.js.map +1 -0
  95. package/dist/esm/modules/e2ee/E2EEErrors.js +10 -0
  96. package/dist/esm/modules/e2ee/E2EEErrors.js.map +1 -0
  97. package/dist/esm/modules/e2ee/E2EEncryption.js +87 -0
  98. package/dist/esm/modules/e2ee/E2EEncryption.js.map +1 -0
  99. package/dist/esm/modules/e2ee/ExternallyManagedKeyHandler.js +24 -0
  100. package/dist/esm/modules/e2ee/ExternallyManagedKeyHandler.js.map +1 -0
  101. package/dist/esm/modules/e2ee/KeyHandler.js +137 -0
  102. package/dist/esm/modules/e2ee/KeyHandler.js.map +1 -0
  103. package/dist/esm/modules/e2ee/ManagedKeyHandler.js +182 -0
  104. package/dist/esm/modules/e2ee/ManagedKeyHandler.js.map +1 -0
  105. package/dist/esm/modules/e2ee/OlmAdapter.js +860 -0
  106. package/dist/esm/modules/e2ee/OlmAdapter.js.map +1 -0
  107. package/dist/esm/modules/e2ee/SAS.js +128 -0
  108. package/dist/esm/modules/e2ee/SAS.js.map +1 -0
  109. package/dist/esm/modules/e2ee/Worker.js +102 -0
  110. package/dist/esm/modules/e2ee/Worker.js.map +1 -0
  111. package/dist/esm/modules/e2ee/crypto-utils.js +53 -0
  112. package/dist/esm/modules/e2ee/crypto-utils.js.map +1 -0
  113. package/dist/esm/modules/e2ee/utils.js +15 -0
  114. package/dist/esm/modules/e2ee/utils.js.map +1 -0
  115. package/dist/esm/modules/e2eping/e2eping.js +314 -0
  116. package/dist/esm/modules/e2eping/e2eping.js.map +1 -0
  117. package/dist/esm/modules/flags/FeatureFlags.js +36 -0
  118. package/dist/esm/modules/flags/FeatureFlags.js.map +1 -0
  119. package/dist/esm/modules/litemode/LiteModeContext.js +50 -0
  120. package/dist/esm/modules/litemode/LiteModeContext.js.map +1 -0
  121. package/dist/esm/modules/proxyconnection/CustomSignalingLayer.js +98 -0
  122. package/dist/esm/modules/proxyconnection/CustomSignalingLayer.js.map +1 -0
  123. package/dist/esm/modules/proxyconnection/ProxyConnectionPC.js +348 -0
  124. package/dist/esm/modules/proxyconnection/ProxyConnectionPC.js.map +1 -0
  125. package/dist/esm/modules/proxyconnection/ProxyConnectionService.js +279 -0
  126. package/dist/esm/modules/proxyconnection/ProxyConnectionService.js.map +1 -0
  127. package/dist/esm/modules/proxyconnection/constants.js +14 -0
  128. package/dist/esm/modules/proxyconnection/constants.js.map +1 -0
  129. package/dist/esm/modules/qualitycontrol/CodecSelection.js +222 -0
  130. package/dist/esm/modules/qualitycontrol/CodecSelection.js.map +1 -0
  131. package/dist/esm/modules/qualitycontrol/MockClasses.js +120 -0
  132. package/dist/esm/modules/qualitycontrol/MockClasses.js.map +1 -0
  133. package/dist/esm/modules/qualitycontrol/QualityController.js +366 -0
  134. package/dist/esm/modules/qualitycontrol/QualityController.js.map +1 -0
  135. package/dist/esm/modules/qualitycontrol/ReceiveAudioController.js +73 -0
  136. package/dist/esm/modules/qualitycontrol/ReceiveAudioController.js.map +1 -0
  137. package/dist/esm/modules/qualitycontrol/ReceiveVideoController.js +216 -0
  138. package/dist/esm/modules/qualitycontrol/ReceiveVideoController.js.map +1 -0
  139. package/dist/esm/modules/qualitycontrol/SendVideoController.js +133 -0
  140. package/dist/esm/modules/qualitycontrol/SendVideoController.js.map +1 -0
  141. package/dist/esm/modules/recording/JibriSession.js +279 -0
  142. package/dist/esm/modules/recording/JibriSession.js.map +1 -0
  143. package/dist/esm/modules/recording/RecordingManager.js +257 -0
  144. package/dist/esm/modules/recording/RecordingManager.js.map +1 -0
  145. package/dist/esm/modules/recording/recordingConstants.js +21 -0
  146. package/dist/esm/modules/recording/recordingConstants.js.map +1 -0
  147. package/dist/esm/modules/recording/recordingXMLUtils.js +69 -0
  148. package/dist/esm/modules/recording/recordingXMLUtils.js.map +1 -0
  149. package/dist/esm/modules/red/red.js +108 -0
  150. package/dist/esm/modules/red/red.js.map +1 -0
  151. package/dist/esm/modules/sdp/LocalSdpMunger.js +143 -0
  152. package/dist/esm/modules/sdp/LocalSdpMunger.js.map +1 -0
  153. package/dist/esm/modules/sdp/RtxModifier.js +179 -0
  154. package/dist/esm/modules/sdp/RtxModifier.js.map +1 -0
  155. package/dist/esm/modules/sdp/SDP.js +848 -0
  156. package/dist/esm/modules/sdp/SDP.js.map +1 -0
  157. package/dist/esm/modules/sdp/SDPDiffer.js +96 -0
  158. package/dist/esm/modules/sdp/SDPDiffer.js.map +1 -0
  159. package/dist/esm/modules/sdp/SDPUtil.js +798 -0
  160. package/dist/esm/modules/sdp/SDPUtil.js.map +1 -0
  161. package/dist/esm/modules/sdp/SampleSdpStrings.js +589 -0
  162. package/dist/esm/modules/sdp/SampleSdpStrings.js.map +1 -0
  163. package/dist/esm/modules/sdp/SdpSimulcast.js +196 -0
  164. package/dist/esm/modules/sdp/SdpSimulcast.js.map +1 -0
  165. package/dist/esm/modules/sdp/SdpTransformUtil.js +337 -0
  166. package/dist/esm/modules/sdp/SdpTransformUtil.js.map +1 -0
  167. package/dist/esm/modules/sdp/constants.js +2 -0
  168. package/dist/esm/modules/sdp/constants.js.map +1 -0
  169. package/dist/esm/modules/settings/Settings.js +95 -0
  170. package/dist/esm/modules/settings/Settings.js.map +1 -0
  171. package/dist/esm/modules/statistics/AnalyticsAdapter.js +277 -0
  172. package/dist/esm/modules/statistics/AnalyticsAdapter.js.map +1 -0
  173. package/dist/esm/modules/statistics/AvgRTPStatsReporter.js +817 -0
  174. package/dist/esm/modules/statistics/AvgRTPStatsReporter.js.map +1 -0
  175. package/dist/esm/modules/statistics/LocalStatsCollector.js +149 -0
  176. package/dist/esm/modules/statistics/LocalStatsCollector.js.map +1 -0
  177. package/dist/esm/modules/statistics/PreCallTest.js +15 -0
  178. package/dist/esm/modules/statistics/PreCallTest.js.map +1 -0
  179. package/dist/esm/modules/statistics/RTPStatsCollector.js +601 -0
  180. package/dist/esm/modules/statistics/RTPStatsCollector.js.map +1 -0
  181. package/dist/esm/modules/statistics/SpeakerStats.js +163 -0
  182. package/dist/esm/modules/statistics/SpeakerStats.js.map +1 -0
  183. package/dist/esm/modules/statistics/SpeakerStatsCollector.js +161 -0
  184. package/dist/esm/modules/statistics/SpeakerStatsCollector.js.map +1 -0
  185. package/dist/esm/modules/statistics/constants.js +7 -0
  186. package/dist/esm/modules/statistics/constants.js.map +1 -0
  187. package/dist/esm/modules/statistics/statistics.js +362 -0
  188. package/dist/esm/modules/statistics/statistics.js.map +1 -0
  189. package/dist/esm/modules/util/AsyncQueue.js +102 -0
  190. package/dist/esm/modules/util/AsyncQueue.js.map +1 -0
  191. package/dist/esm/modules/util/Deferred.js +41 -0
  192. package/dist/esm/modules/util/Deferred.js.map +1 -0
  193. package/dist/esm/modules/util/EventEmitter.js +17 -0
  194. package/dist/esm/modules/util/EventEmitter.js.map +1 -0
  195. package/dist/esm/modules/util/EventEmitterForwarder.js +52 -0
  196. package/dist/esm/modules/util/EventEmitterForwarder.js.map +1 -0
  197. package/dist/esm/modules/util/Listenable.js +106 -0
  198. package/dist/esm/modules/util/Listenable.js.map +1 -0
  199. package/dist/esm/modules/util/MathUtil.js +103 -0
  200. package/dist/esm/modules/util/MathUtil.js.map +1 -0
  201. package/dist/esm/modules/util/RandomUtil.js +66 -0
  202. package/dist/esm/modules/util/RandomUtil.js.map +1 -0
  203. package/dist/esm/modules/util/Retry.js +15 -0
  204. package/dist/esm/modules/util/Retry.js.map +1 -0
  205. package/dist/esm/modules/util/ScriptUtil.js +58 -0
  206. package/dist/esm/modules/util/ScriptUtil.js.map +1 -0
  207. package/dist/esm/modules/util/StringUtils.js +21 -0
  208. package/dist/esm/modules/util/StringUtils.js.map +1 -0
  209. package/dist/esm/modules/util/TestUtils.js +14 -0
  210. package/dist/esm/modules/util/TestUtils.js.map +1 -0
  211. package/dist/esm/modules/util/UsernameGenerator.js +436 -0
  212. package/dist/esm/modules/util/UsernameGenerator.js.map +1 -0
  213. package/dist/esm/modules/util/XMLUtils.js +135 -0
  214. package/dist/esm/modules/util/XMLUtils.js.map +1 -0
  215. package/dist/esm/modules/version/ComponentsVersions.js +52 -0
  216. package/dist/esm/modules/version/ComponentsVersions.js.map +1 -0
  217. package/dist/esm/modules/videosipgw/JitsiVideoSIPGWSession.js +137 -0
  218. package/dist/esm/modules/videosipgw/JitsiVideoSIPGWSession.js.map +1 -0
  219. package/dist/esm/modules/videosipgw/VideoSIPGW.js +102 -0
  220. package/dist/esm/modules/videosipgw/VideoSIPGW.js.map +1 -0
  221. package/dist/esm/modules/videosipgw/VideoSIPGWConstants.js +65 -0
  222. package/dist/esm/modules/videosipgw/VideoSIPGWConstants.js.map +1 -0
  223. package/dist/esm/modules/watchRTC/WatchRTC.js +69 -0
  224. package/dist/esm/modules/watchRTC/WatchRTC.js.map +1 -0
  225. package/dist/esm/modules/watchRTC/functions.js +31 -0
  226. package/dist/esm/modules/watchRTC/functions.js.map +1 -0
  227. package/dist/esm/modules/watchRTC/interfaces.js +2 -0
  228. package/dist/esm/modules/watchRTC/interfaces.js.map +1 -0
  229. package/dist/esm/modules/webaudio/AudioMixer.js +74 -0
  230. package/dist/esm/modules/webaudio/AudioMixer.js.map +1 -0
  231. package/dist/esm/modules/webaudio/WebAudioUtils.js +13 -0
  232. package/dist/esm/modules/webaudio/WebAudioUtils.js.map +1 -0
  233. package/dist/esm/modules/xmpp/AVModeration.js +156 -0
  234. package/dist/esm/modules/xmpp/AVModeration.js.map +1 -0
  235. package/dist/esm/modules/xmpp/BreakoutRooms.js +230 -0
  236. package/dist/esm/modules/xmpp/BreakoutRooms.js.map +1 -0
  237. package/dist/esm/modules/xmpp/Caps.js +223 -0
  238. package/dist/esm/modules/xmpp/Caps.js.map +1 -0
  239. package/dist/esm/modules/xmpp/ChatRoom.js +1877 -0
  240. package/dist/esm/modules/xmpp/ChatRoom.js.map +1 -0
  241. package/dist/esm/modules/xmpp/ConnectionPlugin.js +37 -0
  242. package/dist/esm/modules/xmpp/ConnectionPlugin.js.map +1 -0
  243. package/dist/esm/modules/xmpp/FileSharing.js +95 -0
  244. package/dist/esm/modules/xmpp/FileSharing.js.map +1 -0
  245. package/dist/esm/modules/xmpp/JingleHelperFunctions.js +168 -0
  246. package/dist/esm/modules/xmpp/JingleHelperFunctions.js.map +1 -0
  247. package/dist/esm/modules/xmpp/JingleSession.js +166 -0
  248. package/dist/esm/modules/xmpp/JingleSession.js.map +1 -0
  249. package/dist/esm/modules/xmpp/JingleSessionPC.js +1969 -0
  250. package/dist/esm/modules/xmpp/JingleSessionPC.js.map +1 -0
  251. package/dist/esm/modules/xmpp/JingleSessionState.js +23 -0
  252. package/dist/esm/modules/xmpp/JingleSessionState.js.map +1 -0
  253. package/dist/esm/modules/xmpp/Lobby.js +384 -0
  254. package/dist/esm/modules/xmpp/Lobby.js.map +1 -0
  255. package/dist/esm/modules/xmpp/MediaSessionEvents.js +12 -0
  256. package/dist/esm/modules/xmpp/MediaSessionEvents.js.map +1 -0
  257. package/dist/esm/modules/xmpp/MockClasses.js +77 -0
  258. package/dist/esm/modules/xmpp/MockClasses.js.map +1 -0
  259. package/dist/esm/modules/xmpp/Polls.js +87 -0
  260. package/dist/esm/modules/xmpp/Polls.js.map +1 -0
  261. package/dist/esm/modules/xmpp/ResumeTask.js +149 -0
  262. package/dist/esm/modules/xmpp/ResumeTask.js.map +1 -0
  263. package/dist/esm/modules/xmpp/RoomMetadata.js +96 -0
  264. package/dist/esm/modules/xmpp/RoomMetadata.js.map +1 -0
  265. package/dist/esm/modules/xmpp/SignalingLayerImpl.js +313 -0
  266. package/dist/esm/modules/xmpp/SignalingLayerImpl.js.map +1 -0
  267. package/dist/esm/modules/xmpp/StropheErrorHandler.js +53 -0
  268. package/dist/esm/modules/xmpp/StropheErrorHandler.js.map +1 -0
  269. package/dist/esm/modules/xmpp/StropheLastSuccess.js +52 -0
  270. package/dist/esm/modules/xmpp/StropheLastSuccess.js.map +1 -0
  271. package/dist/esm/modules/xmpp/XmppConnection.js +579 -0
  272. package/dist/esm/modules/xmpp/XmppConnection.js.map +1 -0
  273. package/dist/esm/modules/xmpp/moderator.js +524 -0
  274. package/dist/esm/modules/xmpp/moderator.js.map +1 -0
  275. package/dist/esm/modules/xmpp/sha1.js +165 -0
  276. package/dist/esm/modules/xmpp/sha1.js.map +1 -0
  277. package/dist/esm/modules/xmpp/strophe.disco.js +222 -0
  278. package/dist/esm/modules/xmpp/strophe.disco.js.map +1 -0
  279. package/dist/esm/modules/xmpp/strophe.emuc.js +206 -0
  280. package/dist/esm/modules/xmpp/strophe.emuc.js.map +1 -0
  281. package/dist/esm/modules/xmpp/strophe.jingle.js +404 -0
  282. package/dist/esm/modules/xmpp/strophe.jingle.js.map +1 -0
  283. package/dist/esm/modules/xmpp/strophe.logger.js +44 -0
  284. package/dist/esm/modules/xmpp/strophe.logger.js.map +1 -0
  285. package/dist/esm/modules/xmpp/strophe.ping.js +170 -0
  286. package/dist/esm/modules/xmpp/strophe.ping.js.map +1 -0
  287. package/dist/esm/modules/xmpp/strophe.rayo.js +117 -0
  288. package/dist/esm/modules/xmpp/strophe.rayo.js.map +1 -0
  289. package/dist/esm/modules/xmpp/strophe.stream-management.js +365 -0
  290. package/dist/esm/modules/xmpp/strophe.stream-management.js.map +1 -0
  291. package/dist/esm/modules/xmpp/strophe.util.js +116 -0
  292. package/dist/esm/modules/xmpp/strophe.util.js.map +1 -0
  293. package/dist/esm/modules/xmpp/xmpp.js +973 -0
  294. package/dist/esm/modules/xmpp/xmpp.js.map +1 -0
  295. package/dist/esm/service/RTC/BridgeVideoType.js +24 -0
  296. package/dist/esm/service/RTC/BridgeVideoType.js.map +1 -0
  297. package/dist/esm/service/RTC/CameraFacingMode.js +21 -0
  298. package/dist/esm/service/RTC/CameraFacingMode.js.map +1 -0
  299. package/dist/esm/service/RTC/CodecMimeType.js +36 -0
  300. package/dist/esm/service/RTC/CodecMimeType.js.map +1 -0
  301. package/dist/esm/service/RTC/MediaDirection.js +23 -0
  302. package/dist/esm/service/RTC/MediaDirection.js.map +1 -0
  303. package/dist/esm/service/RTC/MediaType.js +20 -0
  304. package/dist/esm/service/RTC/MediaType.js.map +1 -0
  305. package/dist/esm/service/RTC/RTCEvents.js +111 -0
  306. package/dist/esm/service/RTC/RTCEvents.js.map +1 -0
  307. package/dist/esm/service/RTC/ReceiverAudioSubscription.js +27 -0
  308. package/dist/esm/service/RTC/ReceiverAudioSubscription.js.map +1 -0
  309. package/dist/esm/service/RTC/Resolutions.js +56 -0
  310. package/dist/esm/service/RTC/Resolutions.js.map +1 -0
  311. package/dist/esm/service/RTC/SignalingEvents.js +42 -0
  312. package/dist/esm/service/RTC/SignalingEvents.js.map +1 -0
  313. package/dist/esm/service/RTC/SignalingLayer.js +153 -0
  314. package/dist/esm/service/RTC/SignalingLayer.js.map +1 -0
  315. package/dist/esm/service/RTC/StandardVideoQualitySettings.js +180 -0
  316. package/dist/esm/service/RTC/StandardVideoQualitySettings.js.map +1 -0
  317. package/dist/esm/service/RTC/VideoEncoderScalabilityMode.js +36 -0
  318. package/dist/esm/service/RTC/VideoEncoderScalabilityMode.js.map +1 -0
  319. package/dist/esm/service/RTC/VideoType.js +19 -0
  320. package/dist/esm/service/RTC/VideoType.js.map +1 -0
  321. package/dist/esm/service/authentication/AuthenticationEvents.js +13 -0
  322. package/dist/esm/service/authentication/AuthenticationEvents.js.map +1 -0
  323. package/dist/esm/service/connectivity/ConnectionQualityEvents.js +13 -0
  324. package/dist/esm/service/connectivity/ConnectionQualityEvents.js.map +1 -0
  325. package/dist/esm/service/connectivity/Constants.js +3 -0
  326. package/dist/esm/service/connectivity/Constants.js.map +1 -0
  327. package/dist/esm/service/e2eping/E2ePingEvents.js +8 -0
  328. package/dist/esm/service/e2eping/E2ePingEvents.js.map +1 -0
  329. package/dist/esm/service/statistics/AnalyticsEvents.js +521 -0
  330. package/dist/esm/service/statistics/AnalyticsEvents.js.map +1 -0
  331. package/dist/esm/service/statistics/Events.js +36 -0
  332. package/dist/esm/service/statistics/Events.js.map +1 -0
  333. package/dist/esm/service/statistics/constants.js +2 -0
  334. package/dist/esm/service/statistics/constants.js.map +1 -0
  335. package/dist/esm/service/xmpp/XMPPEvents.js +359 -0
  336. package/dist/esm/service/xmpp/XMPPEvents.js.map +1 -0
  337. package/dist/esm/service/xmpp/XMPPExtensioProtocols.js +64 -0
  338. package/dist/esm/service/xmpp/XMPPExtensioProtocols.js.map +1 -0
  339. package/dist/esm/test-setup-polyfill.js +34 -0
  340. package/dist/esm/test-setup-polyfill.js.map +1 -0
  341. package/dist/esm/tools/gen-version.js +15 -0
  342. package/dist/esm/tools/gen-version.js.map +1 -0
  343. package/dist/esm/version.js +3 -0
  344. package/dist/esm/version.js.map +1 -0
  345. package/dist/umd/lib-jitsi-meet.e2ee-worker.js +484 -0
  346. package/dist/umd/lib-jitsi-meet.min.js +3 -0
  347. package/dist/umd/lib-jitsi-meet.min.js.LICENSE.txt +18 -0
  348. package/dist/umd/lib-jitsi-meet.min.map +1 -0
  349. package/package.json +93 -0
  350. package/types/index.d.ts +16180 -0
@@ -0,0 +1,165 @@
1
+ /* eslint-disable */
2
+ /*
3
+ * A JavaScript implementation of the Secure Hash Algorithm, SHA-1, as defined
4
+ * in FIPS PUB 180-1
5
+ * Version 2.1a Copyright Paul Johnston 2000 - 2002.
6
+ * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet
7
+ * Distributed under the BSD License
8
+ * See http://pajhome.org.uk/crypt/md5 for details.
9
+ */
10
+ /* global define */
11
+ /* Some functions and variables have been stripped for use with Strophe */
12
+ /*
13
+ * Calculate the SHA-1 of an array of big-endian words, and a bit length
14
+ */
15
+ function core_sha1(x, len) {
16
+ /* append padding */
17
+ x[len >> 5] |= 0x80 << (24 - len % 32);
18
+ x[((len + 64 >> 9) << 4) + 15] = len;
19
+ var w = new Array(80);
20
+ var a = 1732584193;
21
+ var b = -271733879;
22
+ var c = -1732584194;
23
+ var d = 271733878;
24
+ var e = -1009589776;
25
+ var i, j, t, olda, oldb, oldc, oldd, olde;
26
+ for (i = 0; i < x.length; i += 16) {
27
+ olda = a;
28
+ oldb = b;
29
+ oldc = c;
30
+ oldd = d;
31
+ olde = e;
32
+ for (j = 0; j < 80; j++) {
33
+ if (j < 16) {
34
+ w[j] = x[i + j];
35
+ }
36
+ else {
37
+ w[j] = rol(w[j - 3] ^ w[j - 8] ^ w[j - 14] ^ w[j - 16], 1);
38
+ }
39
+ t = safe_add(safe_add(rol(a, 5), sha1_ft(j, b, c, d)), safe_add(safe_add(e, w[j]), sha1_kt(j)));
40
+ e = d;
41
+ d = c;
42
+ c = rol(b, 30);
43
+ b = a;
44
+ a = t;
45
+ }
46
+ a = safe_add(a, olda);
47
+ b = safe_add(b, oldb);
48
+ c = safe_add(c, oldc);
49
+ d = safe_add(d, oldd);
50
+ e = safe_add(e, olde);
51
+ }
52
+ return [a, b, c, d, e];
53
+ }
54
+ /*
55
+ * Perform the appropriate triplet combination function for the current
56
+ * iteration
57
+ */
58
+ function sha1_ft(t, b, c, d) {
59
+ if (t < 20) {
60
+ return (b & c) | ((~b) & d);
61
+ }
62
+ if (t < 40) {
63
+ return b ^ c ^ d;
64
+ }
65
+ if (t < 60) {
66
+ return (b & c) | (b & d) | (c & d);
67
+ }
68
+ return b ^ c ^ d;
69
+ }
70
+ /*
71
+ * Determine the appropriate additive constant for the current iteration
72
+ */
73
+ function sha1_kt(t) {
74
+ return (t < 20) ? 1518500249 : (t < 40) ? 1859775393 : (t < 60) ? -1894007588 : -899497514;
75
+ }
76
+ /*
77
+ * Calculate the HMAC-SHA1 of a key and some data
78
+ */
79
+ function core_hmac_sha1(key, data) {
80
+ var bkey = str2binb(key);
81
+ if (bkey.length > 16) {
82
+ bkey = core_sha1(bkey, key.length * 8);
83
+ }
84
+ var ipad = new Array(16), opad = new Array(16);
85
+ for (var i = 0; i < 16; i++) {
86
+ ipad[i] = bkey[i] ^ 0x36363636;
87
+ opad[i] = bkey[i] ^ 0x5C5C5C5C;
88
+ }
89
+ var hash = core_sha1(ipad.concat(str2binb(data)), 512 + data.length * 8);
90
+ return core_sha1(opad.concat(hash), 512 + 160);
91
+ }
92
+ /*
93
+ * Add integers, wrapping at 2^32. This uses 16-bit operations internally
94
+ * to work around bugs in some JS interpreters.
95
+ */
96
+ function safe_add(x, y) {
97
+ var lsw = (x & 0xFFFF) + (y & 0xFFFF);
98
+ var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
99
+ return (msw << 16) | (lsw & 0xFFFF);
100
+ }
101
+ /*
102
+ * Bitwise rotate a 32-bit number to the left.
103
+ */
104
+ function rol(num, cnt) {
105
+ return (num << cnt) | (num >>> (32 - cnt));
106
+ }
107
+ /*
108
+ * Convert an 8-bit or 16-bit string to an array of big-endian words
109
+ * In 8-bit function, characters >255 have their hi-byte silently ignored.
110
+ */
111
+ function str2binb(str) {
112
+ var bin = [];
113
+ var mask = 255;
114
+ for (var i = 0; i < str.length * 8; i += 8) {
115
+ bin[i >> 5] |= (str.charCodeAt(i / 8) & mask) << (24 - i % 32);
116
+ }
117
+ return bin;
118
+ }
119
+ /*
120
+ * Convert an array of big-endian words to a base-64 string
121
+ */
122
+ function binb2b64(binarray) {
123
+ var tab = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
124
+ var str = "";
125
+ var triplet, j;
126
+ for (var i = 0; i < binarray.length * 4; i += 3) {
127
+ triplet = (((binarray[i >> 2] >> 8 * (3 - i % 4)) & 0xFF) << 16) |
128
+ (((binarray[i + 1 >> 2] >> 8 * (3 - (i + 1) % 4)) & 0xFF) << 8) |
129
+ ((binarray[i + 2 >> 2] >> 8 * (3 - (i + 2) % 4)) & 0xFF);
130
+ for (j = 0; j < 4; j++) {
131
+ if (i * 8 + j * 6 > binarray.length * 32) {
132
+ str += "=";
133
+ }
134
+ else {
135
+ str += tab.charAt((triplet >> 6 * (3 - j)) & 0x3F);
136
+ }
137
+ }
138
+ }
139
+ return str;
140
+ }
141
+ /*
142
+ * Convert an array of big-endian words to a string
143
+ */
144
+ function binb2str(bin) {
145
+ var str = "";
146
+ var mask = 255;
147
+ for (var i = 0; i < bin.length * 32; i += 8) {
148
+ str += String.fromCharCode((bin[i >> 5] >>> (24 - i % 32)) & mask);
149
+ }
150
+ return str;
151
+ }
152
+ /*
153
+ * These are the functions you'll usually want to call
154
+ * They take string arguments and return either hex or base-64 encoded strings
155
+ */
156
+ const SHA1 = {
157
+ b64_hmac_sha1: function (key, data) { return binb2b64(core_hmac_sha1(key, data)); },
158
+ b64_sha1: function (s) { return binb2b64(core_sha1(str2binb(s), s.length * 8)); },
159
+ binb2str: binb2str,
160
+ core_hmac_sha1: core_hmac_sha1,
161
+ str_hmac_sha1: function (key, data) { return binb2str(core_hmac_sha1(key, data)); },
162
+ str_sha1: function (s) { return binb2str(core_sha1(str2binb(s), s.length * 8)); },
163
+ };
164
+ export { SHA1 as default };
165
+ //# sourceMappingURL=sha1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sha1.js","sourceRoot":"","sources":["../../../../modules/xmpp/sha1.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,222 @@
1
+ /* eslint-disable */
2
+ import { $iq, Strophe } from 'strophe.js';
3
+ import { handleStropheError } from './StropheErrorHandler';
4
+ Strophe.addConnectionPlugin('disco', {
5
+ _connection: null,
6
+ _identities: [],
7
+ _features: [],
8
+ _items: [],
9
+ /** Function: init
10
+ * Plugin init
11
+ *
12
+ * Parameters:
13
+ * (Strophe.Connection) conn - Strophe connection
14
+ */
15
+ init: function (conn) {
16
+ this._connection = conn;
17
+ this._identities = [];
18
+ this._features = [];
19
+ this._items = [];
20
+ // disco info
21
+ conn.addHandler(this._onDiscoInfo.bind(this), Strophe.NS.DISCO_INFO, 'iq', 'get', null, null);
22
+ // disco items
23
+ conn.addHandler(this._onDiscoItems.bind(this), Strophe.NS.DISCO_ITEMS, 'iq', 'get', null, null);
24
+ },
25
+ /** Function: addIdentity
26
+ * See http://xmpp.org/registrar/disco-categories.html
27
+ * Parameters:
28
+ * (String) category - category of identity (like client, automation, etc ...)
29
+ * (String) type - type of identity (like pc, web, bot , etc ...)
30
+ * (String) name - name of identity in natural language
31
+ * (String) lang - lang of name parameter
32
+ *
33
+ * Returns:
34
+ * Boolean
35
+ */
36
+ addIdentity: function (category, type, name, lang) {
37
+ if (typeof name === 'undefined') {
38
+ name = '';
39
+ }
40
+ if (typeof lang === 'undefined') {
41
+ lang = '';
42
+ }
43
+ for (var i = 0; i < this._identities.length; i++) {
44
+ if (this._identities[i].category == category &&
45
+ this._identities[i].type == type &&
46
+ this._identities[i].name == name &&
47
+ this._identities[i].lang == lang) {
48
+ return false;
49
+ }
50
+ }
51
+ this._identities.push({ category: category, type: type, name: name, lang: lang });
52
+ return true;
53
+ },
54
+ /** Function: addFeature
55
+ *
56
+ * Parameters:
57
+ * (String) var_name - feature name (like jabber:iq:version)
58
+ *
59
+ * Returns:
60
+ * boolean
61
+ */
62
+ addFeature: function (var_name) {
63
+ for (var i = 0; i < this._features.length; i++) {
64
+ if (this._features[i] == var_name)
65
+ return false;
66
+ }
67
+ this._features.push(var_name);
68
+ return true;
69
+ },
70
+ /** Function: removeFeature
71
+ *
72
+ * Parameters:
73
+ * (String) var_name - feature name (like jabber:iq:version)
74
+ *
75
+ * Returns:
76
+ * boolean
77
+ */
78
+ removeFeature: function (var_name) {
79
+ for (var i = 0; i < this._features.length; i++) {
80
+ if (this._features[i] === var_name) {
81
+ this._features.splice(i, 1);
82
+ return true;
83
+ }
84
+ }
85
+ return false;
86
+ },
87
+ /** Function: addItem
88
+ *
89
+ * Parameters:
90
+ * (String) jid
91
+ * (String) name
92
+ * (String) node
93
+ * (Function) call_back
94
+ *
95
+ * Returns:
96
+ * boolean
97
+ */
98
+ addItem: function (jid, name, node, call_back) {
99
+ if (node && !call_back)
100
+ return false;
101
+ this._items.push({ jid: jid, name: name, node: node, call_back: call_back });
102
+ return true;
103
+ },
104
+ /** Function: info
105
+ * Info query
106
+ *
107
+ * Parameters:
108
+ * (Function) call_back
109
+ * (String) jid
110
+ * (String) node
111
+ */
112
+ info: function (jid, node, success, error, timeout) {
113
+ var attrs = { xmlns: Strophe.NS.DISCO_INFO };
114
+ if (node)
115
+ attrs.node = node;
116
+ var info = $iq({ from: this._connection.jid,
117
+ to: jid, type: 'get' }).c('query', attrs);
118
+ this._connection.sendIQ(info, success, error ? err => {
119
+ handleStropheError(err, {
120
+ jid,
121
+ node,
122
+ operation: 'disco info query',
123
+ userJid: this._connection.jid
124
+ });
125
+ error(err);
126
+ } : undefined, timeout);
127
+ },
128
+ /** Function: items
129
+ * Items query
130
+ *
131
+ * Parameters:
132
+ * (Function) call_back
133
+ * (String) jid
134
+ * (String) node
135
+ */
136
+ items: function (jid, node, success, error, timeout) {
137
+ var attrs = { xmlns: Strophe.NS.DISCO_ITEMS };
138
+ if (node)
139
+ attrs.node = node;
140
+ var items = $iq({ from: this._connection.jid,
141
+ to: jid, type: 'get' }).c('query', attrs);
142
+ this._connection.sendIQ(items, success, error ? err => {
143
+ handleStropheError(err, {
144
+ jid,
145
+ node,
146
+ operation: 'disco items query',
147
+ userJid: this._connection.jid
148
+ });
149
+ error(err);
150
+ } : undefined, timeout);
151
+ },
152
+ /** PrivateFunction: _buildIQResult
153
+ */
154
+ _buildIQResult: function (stanza, query_attrs) {
155
+ var id = stanza.getAttribute('id');
156
+ var from = stanza.getAttribute('from');
157
+ var iqresult = $iq({ type: 'result', id: id });
158
+ if (from !== null) {
159
+ iqresult.attrs({ to: from });
160
+ }
161
+ return iqresult.c('query', query_attrs);
162
+ },
163
+ /** PrivateFunction: _onDiscoInfo
164
+ * Called when receive info request
165
+ */
166
+ _onDiscoInfo: function (stanza) {
167
+ var node = stanza.getElementsByTagName('query')[0].getAttribute('node');
168
+ var attrs = { xmlns: Strophe.NS.DISCO_INFO };
169
+ var i;
170
+ if (node) {
171
+ attrs.node = node;
172
+ }
173
+ var iqresult = this._buildIQResult(stanza, attrs);
174
+ for (i = 0; i < this._identities.length; i++) {
175
+ attrs = { category: this._identities[i].category,
176
+ type: this._identities[i].type };
177
+ if (this._identities[i].name)
178
+ attrs.name = this._identities[i].name;
179
+ if (this._identities[i].lang)
180
+ attrs['xml:lang'] = this._identities[i].lang;
181
+ iqresult.c('identity', attrs).up();
182
+ }
183
+ for (i = 0; i < this._features.length; i++) {
184
+ iqresult.c('feature', { 'var': this._features[i] }).up();
185
+ }
186
+ this._connection.send(iqresult.tree());
187
+ return true;
188
+ },
189
+ /** PrivateFunction: _onDiscoItems
190
+ * Called when receive items request
191
+ */
192
+ _onDiscoItems: function (stanza) {
193
+ var query_attrs = { xmlns: Strophe.NS.DISCO_ITEMS };
194
+ var node = stanza.getElementsByTagName('query')[0].getAttribute('node');
195
+ var items, i;
196
+ if (node) {
197
+ query_attrs.node = node;
198
+ items = [];
199
+ for (i = 0; i < this._items.length; i++) {
200
+ if (this._items[i].node == node) {
201
+ items = this._items[i].call_back(stanza);
202
+ break;
203
+ }
204
+ }
205
+ }
206
+ else {
207
+ items = this._items;
208
+ }
209
+ var iqresult = this._buildIQResult(stanza, query_attrs);
210
+ for (i = 0; i < items.length; i++) {
211
+ var attrs = { jid: items[i].jid };
212
+ if (items[i].name)
213
+ attrs.name = items[i].name;
214
+ if (items[i].node)
215
+ attrs.node = items[i].node;
216
+ iqresult.c('item', attrs).up();
217
+ }
218
+ this._connection.send(iqresult.tree());
219
+ return true;
220
+ }
221
+ });
222
+ //# sourceMappingURL=strophe.disco.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strophe.disco.js","sourceRoot":"","sources":["../../../../modules/xmpp/strophe.disco.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,206 @@
1
+ import { getLogger } from '@jitsi/logger';
2
+ import { Strophe } from 'strophe.js';
3
+ import { CONNECTION_REDIRECTED } from '../../JitsiConnectionEvents';
4
+ import { XMPPEvents } from '../../service/xmpp/XMPPEvents';
5
+ import { exists, findFirst, getAttribute } from '../util/XMLUtils';
6
+ import ChatRoom from './ChatRoom';
7
+ import { ConnectionPluginListenable } from './ConnectionPlugin';
8
+ const logger = getLogger('xmpp:strophe.emuc');
9
+ /**
10
+ * MUC connection plugin.
11
+ */
12
+ export default class MucConnectionPlugin extends ConnectionPluginListenable {
13
+ /**
14
+ *
15
+ * @param xmpp
16
+ */
17
+ constructor(xmpp) {
18
+ super();
19
+ this.xmpp = xmpp;
20
+ this.rooms = {};
21
+ }
22
+ /**
23
+ *
24
+ * @param connection
25
+ */
26
+ init(connection) {
27
+ super.init(connection);
28
+ // add handlers (just once)
29
+ this.connection.addHandler(this.onPresence.bind(this), null, 'presence', null, null, null, null);
30
+ this.connection.addHandler(this.onPresenceUnavailable.bind(this), null, 'presence', 'unavailable', null);
31
+ this.connection.addHandler(this.onPresenceError.bind(this), null, 'presence', 'error', null);
32
+ this.connection.addHandler(this.onMessage.bind(this), null, 'message', null, null);
33
+ this.connection.addHandler(this.onMute.bind(this), 'http://jitsi.org/jitmeet/audio', 'iq', 'set', null, null);
34
+ this.connection.addHandler(this.onMuteVideo.bind(this), 'http://jitsi.org/jitmeet/video', 'iq', 'set', null, null);
35
+ this.connection.addHandler(this.onMuteDesktop.bind(this), 'http://jitsi.org/jitmeet/desktop', 'iq', 'set', null, null);
36
+ this.connection.addHandler(this.onVisitors.bind(this), 'jitsi:visitors', 'iq', 'set', null, null);
37
+ }
38
+ /**
39
+ *
40
+ * @param jid
41
+ * @param password
42
+ * @param options
43
+ */
44
+ createRoom(jid, password, options) {
45
+ const roomJid = Strophe.getBareJidFromJid(jid);
46
+ if (this.isRoomCreated(roomJid)) {
47
+ const errmsg = 'You are already in the room!';
48
+ logger.error(errmsg);
49
+ throw new Error(errmsg);
50
+ }
51
+ this.rooms[roomJid] = new ChatRoom(this.connection, jid, password, this.xmpp, options);
52
+ this.eventEmitter.emit(XMPPEvents.EMUC_ROOM_ADDED, this.rooms[roomJid]);
53
+ return this.rooms[roomJid];
54
+ }
55
+ /**
56
+ * Check if a room with the passed JID is already created.
57
+ *
58
+ * @param {string} roomJid - The JID of the room.
59
+ * @returns {boolean}
60
+ */
61
+ isRoomCreated(roomJid) {
62
+ return roomJid in this.rooms;
63
+ }
64
+ /**
65
+ *
66
+ * @param jid
67
+ */
68
+ doLeave(jid) {
69
+ this.eventEmitter.emit(XMPPEvents.EMUC_ROOM_REMOVED, this.rooms[jid]);
70
+ delete this.rooms[jid];
71
+ }
72
+ /**
73
+ *
74
+ * @param pres
75
+ */
76
+ onPresence(pres) {
77
+ const from = pres.getAttribute('from');
78
+ // What is this for? A workaround for something?
79
+ if (pres.getAttribute('type')) {
80
+ return true;
81
+ }
82
+ const room = this.rooms[Strophe.getBareJidFromJid(from)];
83
+ if (!room) {
84
+ return true;
85
+ }
86
+ // Parse status.
87
+ // Use *|xmlns to match xmlns attributes across any namespace (CSS Selectors Level 3)
88
+ if (exists(pres, ':scope>x[*|xmlns="http://jabber.org/protocol/muc#user"]>status[code="201"]')) {
89
+ room.createNonAnonymousRoom();
90
+ }
91
+ room.onPresence(pres);
92
+ return true;
93
+ }
94
+ /**
95
+ *
96
+ * @param pres
97
+ */
98
+ onPresenceUnavailable(pres) {
99
+ const from = pres.getAttribute('from');
100
+ const room = this.rooms[Strophe.getBareJidFromJid(from)];
101
+ if (!room) {
102
+ return true;
103
+ }
104
+ room.onPresenceUnavailable(pres, from);
105
+ return true;
106
+ }
107
+ /**
108
+ *
109
+ * @param pres
110
+ */
111
+ onPresenceError(pres) {
112
+ const from = pres.getAttribute('from');
113
+ const room = this.rooms[Strophe.getBareJidFromJid(from)];
114
+ if (!room) {
115
+ return true;
116
+ }
117
+ room.onPresenceError(pres, from);
118
+ return true;
119
+ }
120
+ /**
121
+ *
122
+ * @param msg
123
+ */
124
+ onMessage(msg) {
125
+ // FIXME: this is a hack. but jingle on muc makes nickchanges hard
126
+ const from = msg.getAttribute('from');
127
+ const room = this.rooms[Strophe.getBareJidFromJid(from)];
128
+ if (!room) {
129
+ return true;
130
+ }
131
+ room.onMessage(msg, from);
132
+ return true;
133
+ }
134
+ /**
135
+ * Handle remote mute request from focus.
136
+ *
137
+ * @param iq
138
+ */
139
+ onMute(iq) {
140
+ const from = iq.getAttribute('from');
141
+ const room = this.rooms[Strophe.getBareJidFromJid(from)];
142
+ // Returning false would result in the listener being deregistered by Strophe
143
+ if (!room) {
144
+ return true;
145
+ }
146
+ room.onMute(iq);
147
+ return true;
148
+ }
149
+ /**
150
+ * Handle remote video mute request from focus.
151
+ *
152
+ * @param iq
153
+ */
154
+ onMuteVideo(iq) {
155
+ const from = iq.getAttribute('from');
156
+ const room = this.rooms[Strophe.getBareJidFromJid(from)];
157
+ // Returning false would result in the listener being deregistered by Strophe
158
+ if (!room) {
159
+ return true;
160
+ }
161
+ room.onMuteVideo(iq);
162
+ return true;
163
+ }
164
+ /**
165
+ * Handle remote desktop sharing mute request from focus.
166
+ *
167
+ * @param iq
168
+ */
169
+ onMuteDesktop(iq) {
170
+ const from = iq.getAttribute('from');
171
+ const room = this.rooms[Strophe.getBareJidFromJid(from)];
172
+ // Returning false would result in the listener being deregistered by Strophe
173
+ if (!room) {
174
+ return true;
175
+ }
176
+ room.onMuteDesktop(iq);
177
+ return true;
178
+ }
179
+ /**
180
+ * A visitor IQ is received, pass it to the room.
181
+ * @param iq The received iq.
182
+ * @returns {boolean}
183
+ */
184
+ onVisitors(iq) {
185
+ const from = iq.getAttribute('from');
186
+ const room = this.rooms[Strophe.getBareJidFromJid(from)];
187
+ if (!room) {
188
+ return true;
189
+ }
190
+ // Use *|xmlns to match xmlns attributes across any namespace (CSS Selectors Level 3)
191
+ const visitors = findFirst(iq, ':scope>visitors[*|xmlns="jitsi:visitors"]');
192
+ const response = findFirst(visitors, ':scope>promotion-response');
193
+ if (visitors && response) {
194
+ if (String(getAttribute(response, 'allow')).toLowerCase() === 'true') {
195
+ logger.info('Promotion request accepted. Redirected to main room.');
196
+ this.xmpp.eventEmitter.emit(CONNECTION_REDIRECTED, undefined, getAttribute(visitors, 'focusjid'), getAttribute(response, 'username'));
197
+ }
198
+ else {
199
+ logger.info('Promotion request rejected.');
200
+ this.xmpp.eventEmitter.emit(XMPPEvents.VISITORS_REJECTION);
201
+ }
202
+ }
203
+ return true;
204
+ }
205
+ }
206
+ //# sourceMappingURL=strophe.emuc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strophe.emuc.js","sourceRoot":"","sources":["../../../../modules/xmpp/strophe.emuc.ts"],"names":[],"mappings":"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"}