Skip to content
Snippets Groups Projects
Commit d6b22822 authored by Ghazi Triki's avatar Ghazi Triki
Browse files

Improve java and webrtc screensharing logs.

parent f33f4bc3
No related branches found
No related tags found
No related merge requests found
......@@ -70,7 +70,7 @@ package org.bigbluebutton.core
return false;
}
public static function setUserEjected():void {
public static function setUserEjected():void {
LiveMeeting.inst().me.ejectedFromMeeting = true;
}
......@@ -302,19 +302,19 @@ package org.bigbluebutton.core
public static function isAnyoneLocked():Boolean {
return LiveMeeting.inst().users.isAnyUserLocked();
}
public static function initLogData():Object {
var logData:Object = new Object();
if (getInternalMeetingID() != null) {
logData.user = UsersUtil.getUserData();
}
logData.sessionToken = getUserSession();
logData.connections = BBB.initConnectionManager().getConnectionIds();
var now:Date = new Date();
logData.utcTime = now.getTime();
logData.tzOffsetMin = now.getTimezoneOffset();
logData.connections = BBB.initConnectionManager().getConnectionIds();
var now:Date = new Date();
logData.utcTime = now.getTime();
logData.tzOffsetMin = now.getTimezoneOffset();
return logData;
}
......
......@@ -18,8 +18,10 @@
*/
package org.bigbluebutton.modules.screenshare.managers
{
import com.asfusion.mate.events.Dispatcher;
import com.asfusion.mate.events.Dispatcher;
import flash.external.ExternalInterface;
import org.as3commons.logging.api.ILogger;
import org.as3commons.logging.api.getClassLogger;
import org.bigbluebutton.core.Options;
......@@ -73,7 +75,12 @@ package org.bigbluebutton.modules.screenshare.managers
/*viewer being told there is no more stream*/
public function handleStreamStopEvent(args:Object):void {
LOGGER.debug("WebRTCDeskshareManager::handleStreamStopEvent");
var logData:Object = UsersUtil.initLogData();
logData.type = "webrtc";
logData.tags = ["screenshare"];
logData.logCode = "screenshare_stopped_stream";
LOGGER.info(JSON.stringify(logData));
sharing = false;
viewWindowManager.handleViewWindowCloseEvent();
}
......@@ -85,7 +92,12 @@ package org.bigbluebutton.modules.screenshare.managers
}
private function stopWebRTCDeskshare():void {
LOGGER.debug("WebRTCDeskshareManager::stopWebRTCDeskshare");
var logData:Object = UsersUtil.initLogData();
logData.type = "webrtc";
logData.tags = ["screenshare"];
logData.logCode = "screenshare_stop_request";
LOGGER.info(JSON.stringify(logData));
viewWindowManager.stopViewing();
/* close the sharing window. The sharing window can also be open when going through
......@@ -113,7 +125,11 @@ package org.bigbluebutton.modules.screenshare.managers
/*handle start sharing event*/
public function startSharing():void {
LOGGER.debug("WebRTCDeskshareManager::handleStartSharingEvent");
var logData:Object = UsersUtil.initLogData();
logData.type = "webrtc";
logData.tags = ["screenshare"];
logData.logCode = "screenshare_start_request";
LOGGER.info(JSON.stringify(logData));
publishWindowManager.startSharing();
}
......@@ -135,19 +151,23 @@ package org.bigbluebutton.modules.screenshare.managers
var isPresenter:Boolean = UsersUtil.amIPresenter();
LOGGER.debug("Received start viewing command when isPresenter==[{0}]",[isPresenter]);
var logData:Object = UsersUtil.initLogData();
logData.type = "webrtc";
logData.tags = ["screenshare"];
logData.logCode = "screenshare_start_stream";
LOGGER.info(JSON.stringify(logData));
if(isPresenter && usingWebRTC) {
publishWindowManager.startViewing(e.rtmp, e.videoWidth, e.videoHeight);
globalDispatcher.dispatchEvent(new DeskshareToolbarEvent(DeskshareToolbarEvent.START));
} else {
if (!options.offerWebRTC || e == null || e.rtmp == null) {
return;
}
viewWindowManager.startViewing(e.rtmp, e.videoWidth, e.videoHeight);
}
sharing = true; //TODO must uncomment this for the non-webrtc desktop share
sharing = true; //TODO must uncomment this for the non-webrtc desktop share
}
public function handleRequestStartSharingEvent(event:RequestToStartSharing):void {
......
......@@ -19,9 +19,10 @@
package org.bigbluebutton.modules.screenshare.managers
{
import com.asfusion.mate.events.Dispatcher;
import flash.events.TimerEvent;
import flash.utils.Timer;
import com.asfusion.mate.events.Dispatcher;
import flash.utils.Timer;
import org.as3commons.logging.api.ILogger;
import org.as3commons.logging.api.getClassLogger;
import org.bigbluebutton.common.IBbbModuleWindow;
......
......@@ -192,22 +192,22 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
}
private function handleStartShareRequestSuccessEvent(event:StartShareRequestSuccessEvent):void {
var logData:Object = UsersUtil.initLogData();
logData.session = ScreenshareModel.getInstance().session;
logData.streamId = ScreenshareModel.getInstance().streamId;
logData.tags = ["screenshare"];
logData.logCode = "screenshare_request_success";
LOGGER.warn(JSON.stringify(logData));
var logData:Object = UsersUtil.initLogData();
logData.session = ScreenshareModel.getInstance().session;
logData.streamId = ScreenshareModel.getInstance().streamId;
logData.tags = ["screenshare"];
logData.logCode = "screenshare_request_success";
LOGGER.warn(JSON.stringify(logData));
}
private function handleScreenShareShareStoppedEvent(event:ShareStoppedEvent):void {
var logData:Object = UsersUtil.initLogData();
logData.reason = event.reason;
logData.session = ScreenshareModel.getInstance().session;
logData.streamId = ScreenshareModel.getInstance().streamId;
logData.tags = ["screenshare"];
logData.logCode = "screenshare_end_reason";
LOGGER.warn(JSON.stringify(logData));
var logData:Object = UsersUtil.initLogData();
logData.reason = event.reason;
logData.session = ScreenshareModel.getInstance().session;
logData.streamId = ScreenshareModel.getInstance().streamId;
logData.tags = ["screenshare"];
logData.logCode = "screenshare_end_reason";
LOGGER.warn(JSON.stringify(logData));
var showReason:Boolean = false;
......@@ -232,38 +232,41 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
cancelBtn.visible = cancelBtn.includeInLayout = true;
startBtn.visible = startBtn.includeInLayout = false;
stopBtn.visible = stopBtn.includeInLayout = false;
} else {
closeWindow();
}
}
private function handleScreenSharePausedEvent(event:ScreenSharePausedEvent):void {
if (videoWrapper != null && video != null && video.parent == videoWrapper) {
videoWrapper.removeChild(video);
if (paused) {
var logData:Object = UsersUtil.initLogData();
logData.tags = ["screenshare"];
logData.session = ScreenshareModel.getInstance().session;
logData.streamId = ScreenshareModel.getInstance().streamId;
logData.logCode = "screenshare_paused";
LOGGER.warn(JSON.stringify(logData));
pauseBtn.enabled = true;
pauseBtn.visible = pauseBtn.includeInLayout = false;
restartBtn.visible = restartBtn.includeInLayout = true;
pauseBox.visible = pauseBox.includeInLayout = true;
videoWrapper.visible = videoWrapper.includeInLayout = false;
} else {
switchView(true);
private function handleScreenSharePausedEvent(event:ScreenSharePausedEvent):void {
if (videoWrapper != null && video != null && video.parent == videoWrapper) {
videoWrapper.removeChild(video);
if (paused) {
var logData:Object = UsersUtil.initLogData();
logData.tags = ["screenshare"];
logData.session = ScreenshareModel.getInstance().session;
logData.streamId = ScreenshareModel.getInstance().streamId;
logData.logCode = "screenshare_paused";
LOGGER.warn(JSON.stringify(logData));
pauseBtn.enabled = true;
pauseBtn.visible = pauseBtn.includeInLayout = false;
restartBtn.visible = restartBtn.includeInLayout = true;
pauseBox.visible = pauseBox.includeInLayout = true;
videoWrapper.visible = videoWrapper.includeInLayout = false;
} else {
switchView(true);
}
}
}
}
}
public function shareScreen(fullScreen:Boolean):void {
var logData:Object = UsersUtil.initLogData();
logData.type = "java";
logData.tags = ["screenshare"];
logData.logCode = "screenshare_start_request";
LOGGER.info(JSON.stringify(logData));
startBtn.enabled = false;
var shareStartEvent:ShareStartEvent = new ShareStartEvent();
dispatchEvent(shareStartEvent);
......@@ -277,18 +280,24 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
var authToken:String = ScreenshareModel.getInstance().authToken;
var jnlp: String = ScreenshareModel.getInstance().jnlp;
var logData:Object = UsersUtil.initLogData();
logData.tags = ["screenshare"];
logData.session = ScreenshareModel.getInstance().session;
logData.streamId = ScreenshareModel.getInstance().streamId;
logData.logCode = "screenshare_start_sharing";
logData.token = authToken;
LOGGER.warn(JSON.stringify(logData));
var logData:Object = UsersUtil.initLogData();
logData.tags = ["screenshare"];
logData.session = ScreenshareModel.getInstance().session;
logData.streamId = ScreenshareModel.getInstance().streamId;
logData.logCode = "screenshare_start_sharing";
logData.token = authToken;
LOGGER.warn(JSON.stringify(logData));
ExternalInterface.call("startScreensharing", jnlp, UsersUtil.getInternalMeetingID(), authToken, fullScreen);
}
public function stopSharing():void {;
public function stopSharing():void {
var logData:Object = UsersUtil.initLogData();
logData.type = "java";
logData.tags = ["screenshare"];
logData.logCode = "screenshare_stop_request";
LOGGER.info(JSON.stringify(logData));
if (streaming) {
stopStream();
}
......@@ -298,11 +307,15 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
sharingFullScreen = false;
streaming = false;
//closeWindow();
}
public function pauseSharing():void {
var logData:Object = UsersUtil.initLogData();
logData.type = "java";
logData.tags = ["screenshare"];
logData.logCode = "screenshare_pause_request";
LOGGER.info(JSON.stringify(logData));
if (!paused) {
paused = true;
if (streaming) {
......@@ -335,7 +348,6 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
}
private function handleStartViewStreamEvent(event:ViewStreamEvent):void{
var width: int = ScreenshareModel.getInstance().width;
var height: int = ScreenshareModel.getInstance().height;
var streamId: String = ScreenshareModel.getInstance().streamId;
......@@ -343,6 +355,11 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
}
private function startPreviewStream(nc:NetConnection, streamId:String, capWidth:Number, capHeight:Number):void{
var logData:Object = UsersUtil.initLogData();
logData.type = "java";
logData.tags = ["screenshare"];
logData.logCode = "screenshare_start_preview";
LOGGER.info(JSON.stringify(logData));
switchView(false);
......@@ -393,10 +410,21 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
}
public function onMetaData(info:Object):void{
LOGGER.debug("metadata: width=" + info.width + " height=" + info.height);
var logData:Object = UsersUtil.initLogData();
logData.type = "java";
logData.tags = ["screenshare"];
logData.logCode = "screenshare_metadata";
logData.metadata = info;
LOGGER.debug(JSON.stringify(logData));
}
private function stopStream():void{
var logData:Object = UsersUtil.initLogData();
logData.type = "java";
logData.tags = ["screenshare"];
logData.logCode = "screenshare_stop_stream";
LOGGER.info(JSON.stringify(logData));
streaming = false;
captureHeight = Capabilities.screenResolutionY;
captureWidth = Capabilities.screenResolutionX;
......@@ -404,7 +432,12 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
}
private function onAsyncError(e:AsyncErrorEvent):void{
LOGGER.debug("VIdeoWindow::asyncerror " + e.toString());
var logData:Object = UsersUtil.initLogData();
logData.type = "java";
logData.tags = ["screenshare"];
logData.logCode = "screenshare_async_error";
logData.error = e.toString();
LOGGER.warn(JSON.stringify(logData));
}
private function onNetStatus(e:NetStatusEvent):void{
......@@ -431,7 +464,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
dispatchEvent(new ShareWindowEvent(ShareWindowEvent.CLOSE));
if (!soundPlayed) {
trace("playing from java publish window");
LOGGER.debug("playing from java publish window");
var tSC:SoundChannel = noticeSound.play(0, 0, new SoundTransform(0.25));
soundPlayed = true;
}
......@@ -441,7 +474,6 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
shareScreen(sharingFullScreen);
}
/*
* Override the close handler. We want the Event Map to send a message to
* the MDIManager to close this window;
......@@ -473,12 +505,12 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
shareTypeProvider = [ResourceUtil.getInstance().getString('bbb.screensharePublish.shareType.fullScreen'),
ResourceUtil.getInstance().getString('bbb.screensharePublish.shareType.region')];
var options:ScreenshareOptions = Options.getOptions(ScreenshareOptions) as ScreenshareOptions;
if (options.shareRegionDefault) {
shareTypeProvider = [ResourceUtil.getInstance().getString('bbb.screensharePublish.shareType.region'),
ResourceUtil.getInstance().getString('bbb.screensharePublish.shareType.fullScreen')];
}
var options:ScreenshareOptions = Options.getOptions(ScreenshareOptions) as ScreenshareOptions;
if (options.shareRegionDefault) {
shareTypeProvider = [ResourceUtil.getInstance().getString('bbb.screensharePublish.shareType.region'),
ResourceUtil.getInstance().getString('bbb.screensharePublish.shareType.fullScreen')];
}
setHelpText();
}
......@@ -556,14 +588,14 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
}
private function onStartButtonClick():void {
var options:ScreenshareOptions = Options.getOptions(ScreenshareOptions) as ScreenshareOptions;
if (options.shareRegionDefault) {
// Region is first option in dropdown.
shareScreen(shareTypeCombo.selectedIndex != 0);
} else {
// Fullscreen is first option in dropdown.
shareScreen(shareTypeCombo.selectedIndex == 0);
}
var options:ScreenshareOptions = Options.getOptions(ScreenshareOptions) as ScreenshareOptions;
if (options.shareRegionDefault) {
// Region is first option in dropdown.
shareScreen(shareTypeCombo.selectedIndex != 0);
} else {
// Fullscreen is first option in dropdown.
shareScreen(shareTypeCombo.selectedIndex == 0);
}
}
private function switchView(showHelp:Boolean):void {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment