Przeglądaj źródła

fix(remotecontrol): Logging

master
hristoterezov 8 lat temu
rodzic
commit
e693554961

+ 8
- 0
modules/remotecontrol/Controller.js Wyświetl plik

1
 /* global $, JitsiMeetJS, APP */
1
 /* global $, JitsiMeetJS, APP */
2
+const logger = require("jitsi-meet-logger").getLogger(__filename);
2
 import * as KeyCodes from "../keycode/keycode";
3
 import * as KeyCodes from "../keycode/keycode";
3
 import {EVENT_TYPES, REMOTE_CONTROL_EVENT_TYPE, PERMISSIONS_ACTIONS}
4
 import {EVENT_TYPES, REMOTE_CONTROL_EVENT_TYPE, PERMISSIONS_ACTIONS}
4
     from "../../service/remotecontrol/Constants";
5
     from "../../service/remotecontrol/Constants";
76
         if(!this.enabled) {
77
         if(!this.enabled) {
77
             return Promise.reject(new Error("Remote control is disabled!"));
78
             return Promise.reject(new Error("Remote control is disabled!"));
78
         }
79
         }
80
+        logger.debug("Requsting remote control permissions from: " + userId);
79
         return new Promise((resolve, reject) => {
81
         return new Promise((resolve, reject) => {
80
             const clearRequest = () => {
82
             const clearRequest = () => {
81
                 this.requestedParticipant = null;
83
                 this.requestedParticipant = null;
135
             switch(remoteControlEvent.action) {
137
             switch(remoteControlEvent.action) {
136
                 case PERMISSIONS_ACTIONS.grant: {
138
                 case PERMISSIONS_ACTIONS.grant: {
137
                     this.controlledParticipant = userId;
139
                     this.controlledParticipant = userId;
140
+                    logger.debug("Remote control permissions granted to: "
141
+                        + userId);
138
                     this._start();
142
                     this._start();
139
                     return true;
143
                     return true;
140
                 }
144
                 }
170
      * listeners. Disables keyboard events.
174
      * listeners. Disables keyboard events.
171
      */
175
      */
172
     _start() {
176
     _start() {
177
+        logger.log("Starting remote control controller.");
173
         APP.UI.addListener(UIEvents.LARGE_VIDEO_ID_CHANGED,
178
         APP.UI.addListener(UIEvents.LARGE_VIDEO_ID_CHANGED,
174
             this._largeVideoChangedListener);
179
             this._largeVideoChangedListener);
175
         APP.conference.addConferenceListener(
180
         APP.conference.addConferenceListener(
191
         if(!this.enabled || this.isCollectingEvents) {
196
         if(!this.enabled || this.isCollectingEvents) {
192
             return;
197
             return;
193
         }
198
         }
199
+        logger.log("Resuming remote control controller.");
194
         this.isCollectingEvents = true;
200
         this.isCollectingEvents = true;
195
         APP.keyboardshortcut.enable(false);
201
         APP.keyboardshortcut.enable(false);
196
         this.area = $("#largeVideoWrapper");
202
         this.area = $("#largeVideoWrapper");
230
         if(!this.controlledParticipant) {
236
         if(!this.controlledParticipant) {
231
             return;
237
             return;
232
         }
238
         }
239
+        logger.log("Stopping remote control controller.");
233
         APP.UI.removeListener(UIEvents.LARGE_VIDEO_ID_CHANGED,
240
         APP.UI.removeListener(UIEvents.LARGE_VIDEO_ID_CHANGED,
234
             this._largeVideoChangedListener);
241
             this._largeVideoChangedListener);
235
         APP.conference.removeConferenceListener(
242
         APP.conference.removeConferenceListener(
276
         if(!this.controlledParticipant) {
283
         if(!this.controlledParticipant) {
277
             return;
284
             return;
278
         }
285
         }
286
+        logger.log("Pausing remote control controller.");
279
         this.isCollectingEvents = false;
287
         this.isCollectingEvents = false;
280
         APP.keyboardshortcut.enable(true);
288
         APP.keyboardshortcut.enable(true);
281
         this.area.off( "mousemove" );
289
         this.area.off( "mousemove" );

+ 8
- 0
modules/remotecontrol/Receiver.js Wyświetl plik

1
 /* global APP, JitsiMeetJS, interfaceConfig */
1
 /* global APP, JitsiMeetJS, interfaceConfig */
2
+const logger = require("jitsi-meet-logger").getLogger(__filename);
2
 import {DISCO_REMOTE_CONTROL_FEATURE, REMOTE_CONTROL_EVENT_TYPE, EVENT_TYPES,
3
 import {DISCO_REMOTE_CONTROL_FEATURE, REMOTE_CONTROL_EVENT_TYPE, EVENT_TYPES,
3
     PERMISSIONS_ACTIONS} from "../../service/remotecontrol/Constants";
4
     PERMISSIONS_ACTIONS} from "../../service/remotecontrol/Constants";
4
 import RemoteControlParticipant from "./RemoteControlParticipant";
5
 import RemoteControlParticipant from "./RemoteControlParticipant";
33
             this.enabled = enabled;
34
             this.enabled = enabled;
34
         }
35
         }
35
         if(enabled === true) {
36
         if(enabled === true) {
37
+            logger.log("Remote control receiver enabled.");
36
             // Announce remote control support.
38
             // Announce remote control support.
37
             APP.connection.addFeature(DISCO_REMOTE_CONTROL_FEATURE, true);
39
             APP.connection.addFeature(DISCO_REMOTE_CONTROL_FEATURE, true);
38
             APP.conference.addConferenceListener(
40
             APP.conference.addConferenceListener(
39
                 ConferenceEvents.ENDPOINT_MESSAGE_RECEIVED,
41
                 ConferenceEvents.ENDPOINT_MESSAGE_RECEIVED,
40
                 this._remoteControlEventsListener);
42
                 this._remoteControlEventsListener);
41
         } else {
43
         } else {
44
+            logger.log("Remote control receiver disabled.");
42
             this._stop(true);
45
             this._stop(true);
43
             APP.connection.removeFeature(DISCO_REMOTE_CONTROL_FEATURE);
46
             APP.connection.removeFeature(DISCO_REMOTE_CONTROL_FEATURE);
44
             APP.conference.removeConferenceListener(
47
             APP.conference.removeConferenceListener(
58
         if(!this.controller) {
61
         if(!this.controller) {
59
             return;
62
             return;
60
         }
63
         }
64
+        logger.log("Remote control receiver stop.");
61
         this.controller = null;
65
         this.controller = null;
62
         APP.conference.removeConferenceListener(ConferenceEvents.USER_LEFT,
66
         APP.conference.removeConferenceListener(ConferenceEvents.USER_LEFT,
63
             this._userLeftListener);
67
             this._userLeftListener);
114
                 return;
118
                 return;
115
             }
119
             }
116
             APP.API.sendRemoteControlEvent(remoteControlEvent);
120
             APP.API.sendRemoteControlEvent(remoteControlEvent);
121
+        } else if(event.type === REMOTE_CONTROL_EVENT_TYPE) {
122
+            logger.debug("Remote control event is ignored because remote "
123
+                + "control is disabled", event);
117
         }
124
         }
118
     }
125
     }
119
 
126
 
128
             APP.conference.addConferenceListener(ConferenceEvents.USER_LEFT,
135
             APP.conference.addConferenceListener(ConferenceEvents.USER_LEFT,
129
                 this._userLeftListener);
136
                 this._userLeftListener);
130
             this.controller = userId;
137
             this.controller = userId;
138
+            logger.debug("Remote control permissions granted to: " + userId);
131
             if(!APP.conference.isSharingScreen) {
139
             if(!APP.conference.isSharingScreen) {
132
                 APP.conference.toggleScreenSharing();
140
                 APP.conference.toggleScreenSharing();
133
                 APP.conference.screenSharingPromise.then(() => {
141
                 APP.conference.screenSharingPromise.then(() => {

+ 5
- 0
modules/remotecontrol/RemoteControl.js Wyświetl plik

1
 /* global APP, config */
1
 /* global APP, config */
2
+const logger = require("jitsi-meet-logger").getLogger(__filename);
2
 import Controller from "./Controller";
3
 import Controller from "./Controller";
3
 import Receiver from "./Receiver";
4
 import Receiver from "./Receiver";
4
 import {EVENT_TYPES, DISCO_REMOTE_CONTROL_FEATURE}
5
 import {EVENT_TYPES, DISCO_REMOTE_CONTROL_FEATURE}
28
             || !APP.conference.isDesktopSharingEnabled) {
29
             || !APP.conference.isDesktopSharingEnabled) {
29
             return;
30
             return;
30
         }
31
         }
32
+        logger.log("Initializing remote control.");
31
         this.initialized = true;
33
         this.initialized = true;
32
         APP.API.init({
34
         APP.API.init({
33
             forceEnable: true,
35
             forceEnable: true,
67
      * the wrapper application.
69
      * the wrapper application.
68
      */
70
      */
69
     _onRemoteControlSupported() {
71
     _onRemoteControlSupported() {
72
+        logger.log("Remote Control supported.");
70
         if(!config.disableRemoteControl) {
73
         if(!config.disableRemoteControl) {
71
             this.enabled = true;
74
             this.enabled = true;
72
             if(this.initialized) {
75
             if(this.initialized) {
73
                 this.receiver.enable(true);
76
                 this.receiver.enable(true);
74
             }
77
             }
78
+        } else {
79
+            logger.log("Remote Control disabled.");
75
         }
80
         }
76
     }
81
     }
77
 
82
 

+ 7
- 1
modules/remotecontrol/RemoteControlParticipant.js Wyświetl plik

1
 /* global APP */
1
 /* global APP */
2
+const logger = require("jitsi-meet-logger").getLogger(__filename);
2
 import {REMOTE_CONTROL_EVENT_TYPE}
3
 import {REMOTE_CONTROL_EVENT_TYPE}
3
     from "../../service/remotecontrol/Constants";
4
     from "../../service/remotecontrol/Constants";
4
 
5
 
24
      * @param {Function} onDataChannelFail handler for data channel failure.
25
      * @param {Function} onDataChannelFail handler for data channel failure.
25
      */
26
      */
26
     _sendRemoteControlEvent(to, event, onDataChannelFail = () => {}) {
27
     _sendRemoteControlEvent(to, event, onDataChannelFail = () => {}) {
27
-        if(!this.enabled || !to)
28
+        if(!this.enabled || !to) {
29
+            logger.warn("Remote control: Skip sending remote control event."
30
+                + " Params:", this.enable, to);
28
             return;
31
             return;
32
+        }
29
         try{
33
         try{
30
             APP.conference.sendEndpointMessage(to,
34
             APP.conference.sendEndpointMessage(to,
31
                 {type: REMOTE_CONTROL_EVENT_TYPE, event});
35
                 {type: REMOTE_CONTROL_EVENT_TYPE, event});
32
         } catch (e) {
36
         } catch (e) {
37
+            logger.error("Failed to send EndpointMessage via the datachannels",
38
+                e);
33
             onDataChannelFail(e);
39
             onDataChannelFail(e);
34
         }
40
         }
35
     }
41
     }

Ładowanie…
Anuluj
Zapisz