Merge remote branch 'origin/master' into poll-access
This commit is contained in:
commit
1557318b32
@ -113,17 +113,32 @@ public class WhiteboardApplication extends MultiThreadedApplicationAdapter imple
|
||||
connInvokerService.sendMessage(m);
|
||||
}
|
||||
|
||||
private static final String TEXT_CREATED = "textCreated";
|
||||
private static final String TEXT_TYPE = "text";
|
||||
private static final String PENCIL_TYPE = "pencil";
|
||||
private static final String RECTANGLE_TYPE = "rectangle";
|
||||
private static final String ELLIPSE_TYPE = "ellipse";
|
||||
private static final String TRIANGLE_TYPE = "triangle";
|
||||
private static final String LINE_TYPE = "line";
|
||||
|
||||
public void sendAnnotation(Annotation annotation) {
|
||||
String status = annotation.getStatus();
|
||||
|
||||
if("textCreated".equals(status) || "DRAW_START".equals(status) || "DRAW_UPDATE".equals(status) || "DRAW_END".equals(status) ) {
|
||||
|
||||
if ("textCreated".equals(status)) {
|
||||
roomManager.getRoom(getMeetingId()).addAnnotation(annotation);
|
||||
} else if (PENCIL_TYPE.equals(annotation.getType()) && "DRAW_START".equals(status)) {
|
||||
roomManager.getRoom(getMeetingId()).addAnnotation(annotation);
|
||||
} else if ("DRAW_END".equals(status) && (RECTANGLE_TYPE.equals(annotation.getType())
|
||||
|| ELLIPSE_TYPE.equals(annotation.getType())
|
||||
|| TRIANGLE_TYPE.equals(annotation.getType())
|
||||
|| LINE_TYPE.equals(annotation.getType()))) {
|
||||
roomManager.getRoom(getMeetingId()).addAnnotation(annotation);
|
||||
} else {
|
||||
if ("text".equals(annotation.getType())) {
|
||||
roomManager.getRoom(getMeetingId()).modifyText(annotation);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
ClientMessage m = new ClientMessage(ClientMessage.BROADCAST, getMeetingId(), "WhiteboardNewAnnotationCommand", annotation.getAnnotation());
|
||||
connInvokerService.sendMessage(m);
|
||||
}
|
||||
|
@ -226,7 +226,7 @@
|
||||
|
||||
private function removeCursor():void {
|
||||
CursorManager.removeCursor(CursorManager.currentCursorID);
|
||||
doMouseUp(null);
|
||||
// doMouseUp(null);
|
||||
}
|
||||
|
||||
/** Inherited from org.bigbluebutton.common.IBbbCanvas*/
|
||||
|
@ -327,8 +327,41 @@ class ApiController {
|
||||
|
||||
session.setMaxInactiveInterval(SESSION_TIMEOUT);
|
||||
|
||||
log.info("Successfully joined. Redirecting to ${paramsProcessorUtil.getDefaultClientUrl()}");
|
||||
redirect(url: paramsProcessorUtil.getDefaultClientUrl())
|
||||
//check if exists the param redirect
|
||||
boolean redirectClient = true;
|
||||
String clientURL = paramsProcessorUtil.getDefaultClientUrl();
|
||||
|
||||
if(!StringUtils.isEmpty(params.redirect))
|
||||
{
|
||||
try{
|
||||
redirectClient = Boolean.parseBoolean(params.redirect);
|
||||
}catch(Exception e){
|
||||
redirectClient = true;
|
||||
}
|
||||
}
|
||||
if(!StringUtils.isEmpty(params.clientURL)){
|
||||
clientURL = params.clientURL;
|
||||
}
|
||||
|
||||
if(redirectClient){
|
||||
log.info("Successfully joined. Redirecting to ${paramsProcessorUtil.getDefaultClientUrl()}");
|
||||
redirect(url: clientURL);
|
||||
}
|
||||
else{
|
||||
log.info("Successfully joined. Sending XML response.");
|
||||
response.addHeader("Cache-Control", "no-cache")
|
||||
withFormat {
|
||||
xml {
|
||||
render(contentType:"text/xml") {
|
||||
response() {
|
||||
returncode(RESP_CODE_SUCCESS)
|
||||
messageKey("successfullyJoined")
|
||||
message("You have joined successfully.")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*******************************************
|
||||
|
@ -57,7 +57,7 @@ module BigBlueButton
|
||||
# create_blank_video(15, 1000, canvas.jpg, blank-video.flv)
|
||||
def self.create_blank_deskshare_video(length, rate, blank_canvas, video_out)
|
||||
BigBlueButton.logger.info("Task: Creating blank deskshare video")
|
||||
command = "ffmpeg -loop_input -t #{length} -i #{blank_canvas} -loglevel fatal -v -10 -r #{rate} -vcodec flashsv #{video_out}"
|
||||
command = "ffmpeg -loop 1 -t #{length} -i #{blank_canvas} -loglevel fatal -v -10 -r #{rate} -vcodec flashsv #{video_out}"
|
||||
BigBlueButton.execute(command)
|
||||
# TODO: check for result, raise exception when there is an error
|
||||
end
|
||||
@ -71,7 +71,7 @@ module BigBlueButton
|
||||
# create_blank_video(15, 1000, canvas.jpg, blank-video.flv)
|
||||
def self.create_blank_video(length, rate, blank_canvas, video_out)
|
||||
BigBlueButton.logger.info("Task: Creating blank video")
|
||||
command = "ffmpeg -y -loop_input -t #{length} -i #{blank_canvas} -loglevel fatal -v -10 -r #{rate} #{video_out}"
|
||||
command = "ffmpeg -y -loop 1 -t #{length} -i #{blank_canvas} -loglevel fatal -v -10 -r #{rate} #{video_out}"
|
||||
BigBlueButton.execute(command)
|
||||
# TODO: check for result, raise exception when there is an error
|
||||
end
|
||||
|
@ -67,7 +67,7 @@ if not FileTest.directory?(target_dir)
|
||||
|
||||
metadata = BigBlueButton::Events.get_meeting_metadata("#{temp_dir}/#{meeting_id}/events.xml")
|
||||
|
||||
dublincore_data = { :title => metadata[:title.to_s],
|
||||
dublincore_data = { :title => metadata[:title.to_s].nil? ? meeting_id : metadata[:title.to_s],
|
||||
:subject => metadata[:subject.to_s],
|
||||
:description => metadata[:description.to_s],
|
||||
:creator => metadata[:creator.to_s],
|
||||
|
Loading…
Reference in New Issue
Block a user