|
|
@@ -7,8 +7,10 @@ import { $iq, $msg, $pres, Strophe } from 'strophe.js';
|
|
7
|
7
|
import * as JitsiTranscriptionStatus from '../../JitsiTranscriptionStatus';
|
|
8
|
8
|
import { MediaType } from '../../service/RTC/MediaType';
|
|
9
|
9
|
import { VideoType } from '../../service/RTC/VideoType';
|
|
|
10
|
+import AuthenticationEvents from '../../service/authentication/AuthenticationEvents';
|
|
10
|
11
|
import { XMPPEvents } from '../../service/xmpp/XMPPEvents';
|
|
11
|
12
|
import Settings from '../settings/Settings';
|
|
|
13
|
+import EventEmitterForwarder from '../util/EventEmitterForwarder';
|
|
12
|
14
|
import GlobalOnErrorHandler from '../util/GlobalOnErrorHandler';
|
|
13
|
15
|
import Listenable from '../util/Listenable';
|
|
14
|
16
|
|
|
|
@@ -168,7 +170,15 @@ export default class ChatRoom extends Listenable {
|
|
168
|
170
|
this.focusMucJid = null;
|
|
169
|
171
|
this.noBridgeAvailable = false;
|
|
170
|
172
|
this.options = options || {};
|
|
171
|
|
- this.moderator = new Moderator(this.xmpp, this.eventEmitter, xmpp.options);
|
|
|
173
|
+ this.moderator = new Moderator(this.xmpp, xmpp.options);
|
|
|
174
|
+
|
|
|
175
|
+ this.eventsForwarder = new EventEmitterForwarder(this.moderator, this.eventEmitter);
|
|
|
176
|
+ this.eventsForwarder.forward(AuthenticationEvents.IDENTITY_UPDATED, AuthenticationEvents.IDENTITY_UPDATED);
|
|
|
177
|
+ this.eventsForwarder.forward(XMPPEvents.REDIRECTED, XMPPEvents.REDIRECTED);
|
|
|
178
|
+ this.eventsForwarder.forward(XMPPEvents.AUTHENTICATION_REQUIRED, XMPPEvents.AUTHENTICATION_REQUIRED);
|
|
|
179
|
+ this.eventsForwarder.forward(XMPPEvents.FOCUS_DISCONNECTED, XMPPEvents.FOCUS_DISCONNECTED);
|
|
|
180
|
+ this.eventsForwarder.forward(XMPPEvents.RESERVATION_ERROR, XMPPEvents.RESERVATION_ERROR);
|
|
|
181
|
+
|
|
172
|
182
|
if (typeof this.options.enableLobby === 'undefined' || this.options.enableLobby) {
|
|
173
|
183
|
this.lobby = new Lobby(this);
|
|
174
|
184
|
}
|
|
|
@@ -1823,6 +1833,13 @@ export default class ChatRoom extends Listenable {
|
|
1823
|
1833
|
this._removeConnListeners.forEach(remove => remove());
|
|
1824
|
1834
|
this._removeConnListeners = [];
|
|
1825
|
1835
|
|
|
|
1836
|
+ this.eventsForwarder.removeListeners(
|
|
|
1837
|
+ AuthenticationEvents.IDENTITY_UPDATED,
|
|
|
1838
|
+ XMPPEvents.REDIRECTED,
|
|
|
1839
|
+ XMPPEvents.AUTHENTICATION_REQUIRED,
|
|
|
1840
|
+ XMPPEvents.FOCUS_DISCONNECTED,
|
|
|
1841
|
+ XMPPEvents.RESERVATION_ERROR);
|
|
|
1842
|
+
|
|
1826
|
1843
|
this.joined = false;
|
|
1827
|
1844
|
this.inProgressEmitted = false;
|
|
1828
|
1845
|
}
|