diff --git a/conference.js b/conference.js
index f3824129e..4164267a4 100644
--- a/conference.js
+++ b/conference.js
@@ -16,7 +16,7 @@ import UIEvents from './service/UI/UIEvents';
import UIUtil from './modules/UI/util/UIUtil';
import * as JitsiMeetConferenceEvents from './ConferenceEvents';
-import { initAnalytics } from './react/features/analytics';
+import { initAnalytics, sendEvent } from './react/features/analytics';
import EventEmitter from "events";
@@ -1315,7 +1315,7 @@ export default {
promise = createLocalTracksF({ devices: ['video'] })
.then(([stream]) => this.useVideoStream(stream))
.then(() => {
- JitsiMeetJS.analytics.sendEvent(
+ sendEvent(
'conference.sharingDesktop.stop');
logger.log('switched back to local video');
if (!this.localVideo && wasVideoMuted) {
@@ -1486,7 +1486,7 @@ export default {
return this.useVideoStream(stream);
}).then(() => {
this.videoSwitchInProgress = false;
- JitsiMeetJS.analytics.sendEvent('conference.sharingDesktop.start');
+ sendEvent('conference.sharingDesktop.start');
logger.log('sharing local desktop');
}).catch(error => {
this.videoSwitchInProgress = false;
@@ -1753,7 +1753,7 @@ export default {
room.selectParticipant(id);
} catch (e) {
- JitsiMeetJS.analytics.sendEvent(
+ sendEvent(
'selectParticipant.failed');
reportError(e);
}
@@ -1973,7 +1973,7 @@ export default {
// Longer delays will be caused by something else and will just
// poison the data.
if (delay < 2000) {
- JitsiMeetJS.analytics.sendEvent('stream.switch.delay',
+ sendEvent('stream.switch.delay',
{value: delay});
}
});
@@ -2005,7 +2005,7 @@ export default {
APP.UI.addListener(
UIEvents.VIDEO_DEVICE_CHANGED,
(cameraDeviceId) => {
- JitsiMeetJS.analytics.sendEvent('settings.changeDevice.video');
+ sendEvent('settings.changeDevice.video');
createLocalTracksF({
devices: ['video'],
cameraDeviceId: cameraDeviceId,
@@ -2033,7 +2033,7 @@ export default {
APP.UI.addListener(
UIEvents.AUDIO_DEVICE_CHANGED,
(micDeviceId) => {
- JitsiMeetJS.analytics.sendEvent(
+ sendEvent(
'settings.changeDevice.audioIn');
createLocalTracksF({
devices: ['audio'],
@@ -2054,7 +2054,7 @@ export default {
APP.UI.addListener(
UIEvents.AUDIO_OUTPUT_DEVICE_CHANGED,
(audioOutputDeviceId) => {
- JitsiMeetJS.analytics.sendEvent(
+ sendEvent(
'settings.changeDevice.audioOut');
APP.settings.setAudioOutputDeviceId(audioOutputDeviceId)
.then(() => logger.log('changed audio output device'))
@@ -2361,9 +2361,7 @@ export default {
* NOTE: Should be used after conference.init
*/
logEvent(name, value, label) {
- if (JitsiMeetJS.analytics) {
- JitsiMeetJS.analytics.sendEvent(name, {value, label});
- }
+ sendEvent(name, {value, label});
if (room) {
room.sendApplicationLog(JSON.stringify({name, value, label}));
}
diff --git a/modules/UI/recording/Recording.js b/modules/UI/recording/Recording.js
index 82ccdbdef..696d5b48e 100644
--- a/modules/UI/recording/Recording.js
+++ b/modules/UI/recording/Recording.js
@@ -1,4 +1,4 @@
-/* global APP, $, config, interfaceConfig, JitsiMeetJS */
+/* global APP, $, config, interfaceConfig */
/*
* Copyright @ 2015 Atlassian Pty Ltd
*
@@ -23,6 +23,9 @@ import VideoLayout from '../videolayout/VideoLayout';
import {
JitsiRecordingStatus
} from '../../../react/features/base/lib-jitsi-meet';
+import {
+ sendEvent
+} from '../../../react/features/analytics';
import { setToolboxEnabled } from '../../../react/features/toolbox';
import { setNotificationsEnabled } from '../../../react/features/notifications';
import {
@@ -437,7 +440,7 @@ var Recording = {
return;
}
- JitsiMeetJS.analytics.sendEvent('recording.clicked');
+ sendEvent('recording.clicked');
switch (this.currentState) {
case JitsiRecordingStatus.ON:
case JitsiRecordingStatus.RETRYING:
@@ -445,7 +448,7 @@ var Recording = {
_showStopRecordingPrompt(this.recordingType).then(
() => {
this.eventEmitter.emit(UIEvents.RECORDING_TOGGLED);
- JitsiMeetJS.analytics.sendEvent('recording.stopped');
+ sendEvent('recording.stopped');
},
() => {});
break;
@@ -457,19 +460,19 @@ var Recording = {
this.eventEmitter.emit(
UIEvents.RECORDING_TOGGLED,
{ streamId });
- JitsiMeetJS.analytics.sendEvent('recording.started');
+ sendEvent('recording.started');
}).catch(reason => {
if (reason !== APP.UI.messageHandler.CANCEL)
logger.error(reason);
else
- JitsiMeetJS.analytics.sendEvent('recording.canceled');
+ sendEvent('recording.canceled');
});
else {
if (this.predefinedToken) {
this.eventEmitter.emit(
UIEvents.RECORDING_TOGGLED,
{ token: this.predefinedToken });
- JitsiMeetJS.analytics.sendEvent('recording.started');
+ sendEvent('recording.started');
return;
}
@@ -477,12 +480,12 @@ var Recording = {
this.eventEmitter.emit(
UIEvents.RECORDING_TOGGLED,
{ token });
- JitsiMeetJS.analytics.sendEvent('recording.started');
+ sendEvent('recording.started');
}).catch(reason => {
if (reason !== APP.UI.messageHandler.CANCEL)
logger.error(reason);
else
- JitsiMeetJS.analytics.sendEvent('recording.canceled');
+ sendEvent('recording.canceled');
});
}
break;
diff --git a/modules/UI/shared_video/SharedVideo.js b/modules/UI/shared_video/SharedVideo.js
index 8b5da3392..338d11810 100644
--- a/modules/UI/shared_video/SharedVideo.js
+++ b/modules/UI/shared_video/SharedVideo.js
@@ -1,5 +1,4 @@
-/* global $, APP, YT, onPlayerReady, onPlayerStateChange, onPlayerError,
-JitsiMeetJS */
+/* global $, APP, YT, onPlayerReady, onPlayerStateChange, onPlayerError */
const logger = require("jitsi-meet-logger").getLogger(__filename);
import UIUtil from '../util/UIUtil';
@@ -9,6 +8,7 @@ import VideoLayout from "../videolayout/VideoLayout";
import LargeContainer from '../videolayout/LargeContainer';
import Filmstrip from '../videolayout/Filmstrip';
+import { sendEvent } from '../../../react/features/analytics';
import {
participantJoined,
participantLeft
@@ -79,11 +79,11 @@ export default class SharedVideoManager {
url => {
this.emitter.emit(
UIEvents.UPDATE_SHARED_VIDEO, url, 'start');
- JitsiMeetJS.analytics.sendEvent('sharedvideo.started');
+ sendEvent('sharedvideo.started');
},
err => {
logger.log('SHARED VIDEO CANCELED', err);
- JitsiMeetJS.analytics.sendEvent('sharedvideo.canceled');
+ sendEvent('sharedvideo.canceled');
}
);
return;
@@ -102,7 +102,7 @@ export default class SharedVideoManager {
}
this.emitter.emit(
UIEvents.UPDATE_SHARED_VIDEO, this.url, 'stop');
- JitsiMeetJS.analytics.sendEvent('sharedvideo.stoped');
+ sendEvent('sharedvideo.stoped');
},
() => {});
} else {
@@ -114,7 +114,7 @@ export default class SharedVideoManager {
dialog = null;
}
);
- JitsiMeetJS.analytics.sendEvent('sharedvideo.alreadyshared');
+ sendEvent('sharedvideo.alreadyshared');
}
}
@@ -218,7 +218,7 @@ export default class SharedVideoManager {
self.smartAudioMute();
} else if (event.data == YT.PlayerState.PAUSED) {
self.smartAudioUnmute();
- JitsiMeetJS.analytics.sendEvent('sharedvideo.paused');
+ sendEvent('sharedvideo.paused');
}
self.fireSharedVideoEvent(event.data == YT.PlayerState.PAUSED);
};
@@ -248,7 +248,7 @@ export default class SharedVideoManager {
else if (event.data.volume <=0 || event.data.muted) {
self.smartAudioUnmute();
}
- JitsiMeetJS.analytics.sendEvent('sharedvideo.volumechanged');
+ sendEvent('sharedvideo.volumechanged');
};
window.onPlayerReady = function(event) {
diff --git a/modules/UI/side_pannels/profile/Profile.js b/modules/UI/side_pannels/profile/Profile.js
index f12ba99d0..16048d4a8 100644
--- a/modules/UI/side_pannels/profile/Profile.js
+++ b/modules/UI/side_pannels/profile/Profile.js
@@ -1,8 +1,10 @@
-/* global $, APP, JitsiMeetJS */
+/* global $, APP */
import UIUtil from "../../util/UIUtil";
import UIEvents from "../../../../service/UI/UIEvents";
import Settings from '../../../settings/Settings';
+import { sendEvent } from '../../../../react/features/analytics';
+
const sidePanelsContainerId = 'sideToolbarContainer';
const htmlStr = `
@@ -74,7 +76,7 @@ export default {
// LOGIN
function loginClicked () {
- JitsiMeetJS.analytics.sendEvent('authenticate.login.clicked');
+ sendEvent('authenticate.login.clicked');
emitter.emit(UIEvents.AUTH_CLICKED);
}
@@ -84,7 +86,7 @@ export default {
function logoutClicked () {
let titleKey = "dialog.logoutTitle";
let msgKey = "dialog.logoutQuestion";
- JitsiMeetJS.analytics.sendEvent('authenticate.logout.clicked');
+ sendEvent('authenticate.logout.clicked');
// Ask for confirmation
APP.UI.messageHandler.openTwoButtonDialog({
titleKey: titleKey,
diff --git a/modules/UI/videolayout/Filmstrip.js b/modules/UI/videolayout/Filmstrip.js
index 4dac9e00e..f9dd7d934 100644
--- a/modules/UI/videolayout/Filmstrip.js
+++ b/modules/UI/videolayout/Filmstrip.js
@@ -1,10 +1,12 @@
-/* global $, APP, JitsiMeetJS, interfaceConfig */
+/* global $, APP, interfaceConfig */
import { setFilmstripVisibility } from '../../../react/features/filmstrip';
import UIEvents from "../../../service/UI/UIEvents";
import UIUtil from "../util/UIUtil";
+import { sendEvent } from '../../../react/features/analytics';
+
const Filmstrip = {
/**
*
@@ -141,7 +143,7 @@ const Filmstrip = {
return;
}
if (sendAnalytics) {
- JitsiMeetJS.analytics.sendEvent('toolbar.filmstrip.toggled');
+ sendEvent('toolbar.filmstrip.toggled');
}
this.filmstrip.toggleClass("hidden");
diff --git a/modules/keyboardshortcut/keyboardshortcut.js b/modules/keyboardshortcut/keyboardshortcut.js
index dc9922707..18d160745 100644
--- a/modules/keyboardshortcut/keyboardshortcut.js
+++ b/modules/keyboardshortcut/keyboardshortcut.js
@@ -1,6 +1,7 @@
-/* global APP, $, JitsiMeetJS, interfaceConfig */
+/* global APP, $, interfaceConfig */
import { toggleDialog } from '../../react/features/base/dialog';
+import { sendEvent } from '../../react/features/analytics';
import { SpeakerStats } from '../../react/features/speaker-stats';
/**
@@ -20,20 +21,20 @@ function initGlobalShortcuts() {
});
KeyboardShortcut.registerShortcut("?", null, function() {
- JitsiMeetJS.analytics.sendEvent("shortcut.shortcut.help");
+ sendEvent("shortcut.shortcut.help");
showKeyboardShortcutsPanel(true);
}, "keyboardShortcuts.toggleShortcuts");
// register SPACE shortcut in two steps to insure visibility of help message
KeyboardShortcut.registerShortcut(" ", null, function() {
- JitsiMeetJS.analytics.sendEvent("shortcut.talk.clicked");
+ sendEvent("shortcut.talk.clicked");
APP.conference.muteAudio(true);
});
KeyboardShortcut._addShortcutToHelp("SPACE","keyboardShortcuts.pushToTalk");
if(!interfaceConfig.filmStripOnly) {
KeyboardShortcut.registerShortcut("T", null, () => {
- JitsiMeetJS.analytics.sendEvent("shortcut.speakerStats.clicked");
+ sendEvent("shortcut.speakerStats.clicked");
APP.store.dispatch(toggleDialog(SpeakerStats, {
conference: APP.conference
}));
diff --git a/react/features/analytics/functions.js b/react/features/analytics/functions.js
index ce7ab8970..6f87d7c58 100644
--- a/react/features/analytics/functions.js
+++ b/react/features/analytics/functions.js
@@ -1,10 +1,15 @@
// @flow
-import JitsiMeetJS, { isAnalyticsEnabled } from '../base/lib-jitsi-meet';
+import JitsiMeetJS, {
+ analytics,
+ isAnalyticsEnabled
+} from '../base/lib-jitsi-meet';
import { getJitsiMeetGlobalNS, loadScript } from '../base/util';
const logger = require('jitsi-meet-logger').getLogger(__filename);
+export const sendEvent = analytics.sendEvent.bind(analytics);
+
/**
* Loads the analytics scripts and inits JitsiMeetJS.analytics by setting
* permanent properties and setting the handlers from the loaded scripts.
@@ -19,8 +24,6 @@ export function initAnalytics({ getState }: { getState: Function }) {
getJitsiMeetGlobalNS().analyticsHandlers = [];
window.analyticsHandlers = []; // Legacy support.
- const { analytics } = JitsiMeetJS;
-
if (!analytics || !isAnalyticsEnabled(getState)) {
return;
}
diff --git a/react/features/base/conference/middleware.js b/react/features/base/conference/middleware.js
index 28c964e02..3688db999 100644
--- a/react/features/base/conference/middleware.js
+++ b/react/features/base/conference/middleware.js
@@ -2,8 +2,8 @@
import UIEvents from '../../../../service/UI/UIEvents';
+import { sendEvent } from '../../analytics';
import { CONNECTION_ESTABLISHED } from '../connection';
-import JitsiMeetJS from '../lib-jitsi-meet';
import { setVideoMuted, VIDEO_MUTISM_AUTHORITY } from '../media';
import {
getLocalParticipant,
@@ -191,7 +191,7 @@ function _pinParticipant(store, next, action) {
videoType = 'remote';
}
- JitsiMeetJS.analytics.sendEvent(
+ sendEvent(
`${actionName}.${videoType}`,
{ value: conference.getParticipantCount() });
}
diff --git a/react/features/base/lib-jitsi-meet/index.js b/react/features/base/lib-jitsi-meet/index.js
index b83f29806..a5c632249 100644
--- a/react/features/base/lib-jitsi-meet/index.js
+++ b/react/features/base/lib-jitsi-meet/index.js
@@ -19,6 +19,8 @@ export const JitsiRecordingStatus = JitsiMeetJS.constants.recordingStatus;
export const JitsiTrackErrors = JitsiMeetJS.errors.track;
export const JitsiTrackEvents = JitsiMeetJS.events.track;
+export const analytics = JitsiMeetJS.analytics;
+
export * from './actions';
export * from './actionTypes';
export * from './constants';
diff --git a/react/features/feedback/components/FeedbackDialog.web.js b/react/features/feedback/components/FeedbackDialog.web.js
index bfa343fba..a9f27ee8d 100644
--- a/react/features/feedback/components/FeedbackDialog.web.js
+++ b/react/features/feedback/components/FeedbackDialog.web.js
@@ -4,9 +4,9 @@ import PropTypes from 'prop-types';
import React, { Component } from 'react';
import { connect } from 'react-redux';
+import { sendEvent } from '../../analytics';
import { Dialog } from '../../base/dialog';
import { translate } from '../../base/i18n';
-import JitsiMeetJS from '../../base/lib-jitsi-meet';
import { cancelFeedback, submitFeedback } from '../actions';
@@ -145,7 +145,7 @@ class FeedbackDialog extends Component {
* @inheritdoc
*/
componentDidMount() {
- JitsiMeetJS.analytics.sendEvent('feedback.open');
+ sendEvent('feedback.open');
}
/**
diff --git a/react/features/invite/components/InviteDialog.web.js b/react/features/invite/components/InviteDialog.web.js
index 5578f8611..940ebaf70 100644
--- a/react/features/invite/components/InviteDialog.web.js
+++ b/react/features/invite/components/InviteDialog.web.js
@@ -2,10 +2,10 @@ import PropTypes from 'prop-types';
import React, { Component } from 'react';
import { connect } from 'react-redux';
+import { sendEvent } from '../../analytics';
import { getInviteURL } from '../../base/connection';
import { Dialog } from '../../base/dialog';
import { translate } from '../../base/i18n';
-import JitsiMeetJS from '../../base/lib-jitsi-meet';
import { getLocalParticipant, PARTICIPANT_ROLE } from '../../base/participants';
import DialInNumbersForm from './DialInNumbersForm';
@@ -51,7 +51,7 @@ class InviteDialog extends Component {
* @inheritdoc
*/
componentWillUnmount() {
- JitsiMeetJS.analytics.sendEvent('toolbar.invite.close');
+ sendEvent('toolbar.invite.close');
}
/**
diff --git a/react/features/remote-video-menu/components/KickButton.js b/react/features/remote-video-menu/components/KickButton.js
index e375880d5..b626b1469 100644
--- a/react/features/remote-video-menu/components/KickButton.js
+++ b/react/features/remote-video-menu/components/KickButton.js
@@ -2,8 +2,8 @@ import PropTypes from 'prop-types';
import React, { Component } from 'react';
import { connect } from 'react-redux';
+import { sendEvent } from '../../analytics';
import { translate } from '../../base/i18n';
-import JitsiMeetJS from '../../base/lib-jitsi-meet';
import { kickParticipant } from '../../base/participants';
import RemoteVideoMenuButton from './RemoteVideoMenuButton';
@@ -83,7 +83,7 @@ class KickButton extends Component {
_onClick() {
const { dispatch, onClick, participantID } = this.props;
- JitsiMeetJS.analytics.sendEvent(
+ sendEvent(
'remotevideomenu.kick',
{
value: 1,
diff --git a/react/features/remote-video-menu/components/MuteButton.js b/react/features/remote-video-menu/components/MuteButton.js
index 36b43bd6e..0b36df352 100644
--- a/react/features/remote-video-menu/components/MuteButton.js
+++ b/react/features/remote-video-menu/components/MuteButton.js
@@ -2,8 +2,8 @@ import PropTypes from 'prop-types';
import React, { Component } from 'react';
import { connect } from 'react-redux';
+import { sendEvent } from '../../analytics';
import { translate } from '../../base/i18n';
-import JitsiMeetJS from '../../base/lib-jitsi-meet';
import { muteRemoteParticipant } from '../../base/participants';
import RemoteVideoMenuButton from './RemoteVideoMenuButton';
@@ -97,7 +97,7 @@ class MuteButton extends Component {
_onClick() {
const { dispatch, onClick, participantID } = this.props;
- JitsiMeetJS.analytics.sendEvent(
+ sendEvent(
'remotevideomenu.mute',
{
value: 1,
diff --git a/react/features/remote-video-menu/components/RemoteControlButton.js b/react/features/remote-video-menu/components/RemoteControlButton.js
index d7e20af9f..2a8785475 100644
--- a/react/features/remote-video-menu/components/RemoteControlButton.js
+++ b/react/features/remote-video-menu/components/RemoteControlButton.js
@@ -1,7 +1,7 @@
import PropTypes from 'prop-types';
import React, { Component } from 'react';
-import JitsiMeetJS from '../../base/lib-jitsi-meet';
+import { sendEvent } from '../../analytics';
import { translate } from '../../base/i18n';
import RemoteVideoMenuButton from './RemoteVideoMenuButton';
@@ -130,7 +130,7 @@ class RemoteControlButton extends Component {
}
if (eventName) {
- JitsiMeetJS.analytics.sendEvent(
+ sendEvent(
`remotevideomenu.remotecontrol.${eventName}`,
{
value: 1,
diff --git a/react/features/toolbox/components/ProfileButton.web.js b/react/features/toolbox/components/ProfileButton.web.js
index 9bf38a302..68af7c6db 100644
--- a/react/features/toolbox/components/ProfileButton.web.js
+++ b/react/features/toolbox/components/ProfileButton.web.js
@@ -4,13 +4,13 @@ import PropTypes from 'prop-types';
import React, { Component } from 'react';
import { connect } from 'react-redux';
+import { sendEvent } from '../../analytics';
import { DEFAULT_AVATAR_RELATIVE_PATH } from '../../base/participants';
import UIEvents from '../../../../service/UI/UIEvents';
import ToolbarButton from './ToolbarButton';
declare var APP: Object;
-declare var JitsiMeetJS: Object;
/**
* The default configuration for the button.
@@ -102,7 +102,7 @@ class ProfileButton extends Component {
*/
_onClick() {
if (!this.props._unclickable) {
- JitsiMeetJS.analytics.sendEvent('toolbar.profile.toggled');
+ sendEvent('toolbar.profile.toggled');
APP.UI.emitEvent(UIEvents.TOGGLE_PROFILE);
}
}
diff --git a/react/features/toolbox/defaultToolbarButtons.web.js b/react/features/toolbox/defaultToolbarButtons.web.js
index 453ddc78a..f4957b95f 100644
--- a/react/features/toolbox/defaultToolbarButtons.web.js
+++ b/react/features/toolbox/defaultToolbarButtons.web.js
@@ -2,6 +2,7 @@
import React from 'react';
+import { sendEvent } from '../analytics';
import { ParticipantCounter } from '../contact-list';
import { openDeviceSelectionDialog } from '../device-selection';
import { InfoDialogButton, openInviteDialog } from '../invite';
@@ -12,7 +13,6 @@ import ProfileButton from './components/ProfileButton';
declare var APP: Object;
declare var interfaceConfig: Object;
-declare var JitsiMeetJS: Object;
/**
* The cache of {@link getDefaultButtons()}.
@@ -42,9 +42,9 @@ export default function getDefaultButtons() {
const newVideoMutedState = !APP.conference.isLocalVideoMuted();
if (newVideoMutedState) {
- JitsiMeetJS.analytics.sendEvent('toolbar.video.enabled');
+ sendEvent('toolbar.video.enabled');
} else {
- JitsiMeetJS.analytics.sendEvent('toolbar.video.disabled');
+ sendEvent('toolbar.video.disabled');
}
APP.UI.emitEvent(UIEvents.VIDEO_MUTED, newVideoMutedState);
},
@@ -64,7 +64,7 @@ export default function getDefaultButtons() {
return;
}
- JitsiMeetJS.analytics.sendEvent('shortcut.videomute.toggled');
+ sendEvent('shortcut.videomute.toggled');
APP.conference.toggleVideoMuted();
},
shortcutDescription: 'keyboardShortcuts.videoMute',
@@ -81,13 +81,13 @@ export default function getDefaultButtons() {
,
id: 'toolbar_button_chat',
onClick() {
- JitsiMeetJS.analytics.sendEvent('toolbar.chat.toggled');
+ sendEvent('toolbar.chat.toggled');
APP.UI.emitEvent(UIEvents.TOGGLE_CHAT);
},
shortcut: 'C',
shortcutAttr: 'toggleChatPopover',
shortcutFunc() {
- JitsiMeetJS.analytics.sendEvent('shortcut.chat.toggled');
+ sendEvent('shortcut.chat.toggled');
APP.UI.toggleChat();
},
shortcutDescription: 'keyboardShortcuts.toggleChat',
@@ -104,7 +104,7 @@ export default function getDefaultButtons() {
enabled: true,
id: 'toolbar_contact_list',
onClick() {
- JitsiMeetJS.analytics.sendEvent(
+ sendEvent(
'toolbar.contacts.toggled');
APP.UI.emitEvent(UIEvents.TOGGLE_CONTACT_LIST);
},
@@ -121,9 +121,9 @@ export default function getDefaultButtons() {
id: 'toolbar_button_desktopsharing',
onClick() {
if (APP.conference.isSharingScreen) {
- JitsiMeetJS.analytics.sendEvent('toolbar.screen.disabled');
+ sendEvent('toolbar.screen.disabled');
} else {
- JitsiMeetJS.analytics.sendEvent('toolbar.screen.enabled');
+ sendEvent('toolbar.screen.enabled');
}
APP.UI.emitEvent(UIEvents.TOGGLE_SCREENSHARING);
},
@@ -137,7 +137,7 @@ export default function getDefaultButtons() {
shortcut: 'D',
shortcutAttr: 'toggleDesktopSharingPopover',
shortcutFunc() {
- JitsiMeetJS.analytics.sendEvent('shortcut.screen.toggled');
+ sendEvent('shortcut.screen.toggled');
// eslint-disable-next-line no-empty-function
APP.conference.toggleScreenSharing().catch(() => {});
@@ -157,7 +157,7 @@ export default function getDefaultButtons() {
},
id: 'toolbar_button_fodeviceselection',
onClick(dispatch: Function) {
- JitsiMeetJS.analytics.sendEvent(
+ sendEvent(
'toolbar.fodeviceselection.toggled');
dispatch(openDeviceSelectionDialog());
@@ -177,7 +177,7 @@ export default function getDefaultButtons() {
hidden: true,
id: 'toolbar_button_dialpad',
onClick() {
- JitsiMeetJS.analytics.sendEvent('toolbar.sip.dialpad.clicked');
+ sendEvent('toolbar.sip.dialpad.clicked');
},
tooltipKey: 'toolbar.dialpad'
},
@@ -191,7 +191,7 @@ export default function getDefaultButtons() {
hidden: true,
id: 'toolbar_button_etherpad',
onClick() {
- JitsiMeetJS.analytics.sendEvent('toolbar.etherpad.clicked');
+ sendEvent('toolbar.etherpad.clicked');
APP.UI.emitEvent(UIEvents.ETHERPAD_CLICKED);
},
tooltipKey: 'toolbar.etherpad'
@@ -205,7 +205,7 @@ export default function getDefaultButtons() {
enabled: true,
id: 'toolbar_button_fullScreen',
onClick() {
- JitsiMeetJS.analytics.sendEvent('toolbar.fullscreen.enabled');
+ sendEvent('toolbar.fullscreen.enabled');
APP.UI.emitEvent(UIEvents.TOGGLE_FULLSCREEN);
},
@@ -213,7 +213,7 @@ export default function getDefaultButtons() {
shortcutAttr: 'toggleFullscreenPopover',
shortcutDescription: 'keyboardShortcuts.fullScreen',
shortcutFunc() {
- JitsiMeetJS.analytics.sendEvent('shortcut.fullscreen.toggled');
+ sendEvent('shortcut.fullscreen.toggled');
APP.UI.toggleFullScreen();
},
tooltipKey: 'toolbar.fullscreen'
@@ -229,7 +229,7 @@ export default function getDefaultButtons() {
isDisplayed: () => true,
id: 'toolbar_button_hangup',
onClick() {
- JitsiMeetJS.analytics.sendEvent('toolbar.hangup');
+ sendEvent('toolbar.hangup');
APP.UI.emitEvent(UIEvents.HANGUP);
},
tooltipKey: 'toolbar.hangup'
@@ -252,7 +252,7 @@ export default function getDefaultButtons() {
enabled: true,
id: 'toolbar_button_link',
onClick(dispatch: Function) {
- JitsiMeetJS.analytics.sendEvent('toolbar.invite.clicked');
+ sendEvent('toolbar.invite.clicked');
dispatch(openInviteDialog());
},
@@ -280,12 +280,11 @@ export default function getDefaultButtons() {
APP.UI.showCustomToolbarPopup(
'microphone', 'unableToUnmutePopup', true, 5000);
} else {
- JitsiMeetJS.analytics
- .sendEvent('toolbar.audio.unmuted');
+ sendEvent('toolbar.audio.unmuted');
APP.UI.emitEvent(UIEvents.AUDIO_MUTED, false, true);
}
} else {
- JitsiMeetJS.analytics.sendEvent('toolbar.audio.muted');
+ sendEvent('toolbar.audio.muted');
APP.UI.emitEvent(UIEvents.AUDIO_MUTED, true, true);
}
},
@@ -306,7 +305,7 @@ export default function getDefaultButtons() {
shortcut: 'M',
shortcutAttr: 'mutePopover',
shortcutFunc() {
- JitsiMeetJS.analytics.sendEvent('shortcut.audiomute.toggled');
+ sendEvent('shortcut.audiomute.toggled');
APP.conference.toggleAudioMuted();
},
shortcutDescription: 'keyboardShortcuts.mute',
@@ -329,14 +328,14 @@ export default function getDefaultButtons() {
enabled: true,
id: 'toolbar_button_raisehand',
onClick() {
- JitsiMeetJS.analytics.sendEvent('toolbar.raiseHand.clicked');
+ sendEvent('toolbar.raiseHand.clicked');
APP.conference.maybeToggleRaisedHand();
},
shortcut: 'R',
shortcutAttr: 'raiseHandPopover',
shortcutDescription: 'keyboardShortcuts.raiseHand',
shortcutFunc() {
- JitsiMeetJS.analytics.sendEvent('shortcut.raisehand.clicked');
+ sendEvent('shortcut.raisehand.clicked');
APP.conference.maybeToggleRaisedHand();
},
tooltipKey: 'toolbar.raiseHand'
@@ -364,7 +363,7 @@ export default function getDefaultButtons() {
enabled: true,
id: 'toolbar_button_settings',
onClick() {
- JitsiMeetJS.analytics.sendEvent('toolbar.settings.toggled');
+ sendEvent('toolbar.settings.toggled');
APP.UI.emitEvent(UIEvents.TOGGLE_SETTINGS);
},
sideContainerId: 'settings_container',
@@ -379,7 +378,7 @@ export default function getDefaultButtons() {
enabled: true,
id: 'toolbar_button_sharedvideo',
onClick() {
- JitsiMeetJS.analytics.sendEvent('toolbar.sharedvideo.clicked');
+ sendEvent('toolbar.sharedvideo.clicked');
APP.UI.emitEvent(UIEvents.SHARED_VIDEO_CLICKED);
},
popups: [