Author: solomax
Date: Fri Jan 13 08:09:25 2017
New Revision: 1778506
URL: http://svn.apache.org/viewvc?rev=1778506&view=rev
Log:
[OPENMEETINGS-1376] AV autostarted on enter to conf room, another attemp to
handle 'bad' settings
Modified:
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/base/hibernate/hibRtmpConnection.lzx
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/base/mainMethods.lzx
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/commonVideoViewContentSWF10.lzx
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/video/editRecordStreamSWF10.lzx
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/activity/RoomActivityIcon.java
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/activity/RoomActivityIcon.java
Modified:
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/base/hibernate/hibRtmpConnection.lzx
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/base/hibernate/hibRtmpConnection.lzx?rev=1778506&r1=1778505&r2=1778506&view=diff
==============================================================================
---
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/base/hibernate/hibRtmpConnection.lzx
(original)
+++
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/base/hibernate/hibRtmpConnection.lzx
Fri Jan 13 08:09:25 2017
@@ -462,6 +462,11 @@
hib.userobject = user;
canvas.currentRoomObj = value[1];
parent.getCurrentRoomClient.doCall();
+
+ canvas.commonVideoViewContent.ensureAVsettings(
+
canvas.myConfigSet.getPointer().xpathQuery('config/availableCameraResolutions/resolution[@isDefault="true"]/@width')
+ ,
canvas.myConfigSet.getPointer().xpathQuery('config/availableCameraResolutions/resolution[@isDefault="true"]/@height')
+ );
} else {
new lz.labelerrorPopup(canvas, {errorlabelid:
1599});
}
Modified:
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/base/mainMethods.lzx
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/base/mainMethods.lzx?rev=1778506&r1=1778505&r2=1778506&view=diff
==============================================================================
---
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/base/mainMethods.lzx
(original)
+++
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/base/mainMethods.lzx
Fri Jan 13 08:09:25 2017
@@ -125,11 +125,6 @@
this.setAttribute('protocol',canvas.myConfigSet.getPointer().xpathQuery('config/protocol/text()'));
this.setAttribute('proxyType',canvas.myConfigSet.getPointer().xpathQuery('config/proxyType/text()'));
- canvas.commonVideoViewContent.ensureAVsettings(
-
canvas.myConfigSet.getPointer().xpathQuery('config/availableCameraResolutions/resolution[@isDefault="true"]/@width')
- ,
canvas.myConfigSet.getPointer().xpathQuery('config/availableCameraResolutions/resolution[@isDefault="true"]/@height')
- );
-
//set user color
canvas.currentusercolor = canvas.getColorForUser();
Modified:
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/commonVideoViewContentSWF10.lzx
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/commonVideoViewContentSWF10.lzx?rev=1778506&r1=1778505&r2=1778506&view=diff
==============================================================================
---
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/commonVideoViewContentSWF10.lzx
(original)
+++
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/commonVideoViewContentSWF10.lzx
Fri Jan 13 08:09:25 2017
@@ -706,7 +706,6 @@
<method name="storeAVsettings" args="cam, mic, w, h">
<![CDATA[
- //if ($debug) Debug.write("sharedobject store:: [width,
height] : [" + w + ", " + h + "]");
var t:SharedObject = SharedObject.getLocal('userdata');
var g = t.data;
if (!g) g = new Array();
@@ -715,6 +714,7 @@
g["width"] = w;
g["height"] = h;
t.flush();
+ //if ($debug) Debug.write("sharedobject store:: ", g);
syncAVsettings(g);
]]>
</method>
Modified:
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/video/editRecordStreamSWF10.lzx
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/video/editRecordStreamSWF10.lzx?rev=1778506&r1=1778505&r2=1778506&view=diff
==============================================================================
---
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/video/editRecordStreamSWF10.lzx
(original)
+++
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/video/editRecordStreamSWF10.lzx
Fri Jan 13 08:09:25 2017
@@ -207,8 +207,8 @@
<method name="selectListItem" args="combo, selected, select">
if (selected != null) {
combo.selectItem(selected);
- } else if (select) {
- combo.selectItemAt(0);
+ } else {
+ combo.selectItemAt(select ? 1 : 0);
}
</method>
Modified:
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java?rev=1778506&r1=1778505&r2=1778506&view=diff
==============================================================================
---
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
(original)
+++
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
Fri Jan 13 08:09:25 2017
@@ -80,6 +80,7 @@ public class RoomSidebar extends Panel {
private final SelfIconsPanel selfRights;
private final ConfirmableAjaxBorder confirmKick;
private boolean showFiles;
+ private boolean avInited = false;
private Client kickedClient;
private final ListView<Client> users = new ListView<Client>("user", new
ArrayList<Client>()) {
private static final long serialVersionUID = 1L;
@@ -168,37 +169,7 @@ public class RoomSidebar extends Panel {
}
Activity a =
Activity.valueOf(getRequest().getRequestParameters().getParameterValue(PARAM_ACTIVITY).toString());
Client c = getOnlineClient(uid);
- if (c == null) {
- return;
- }
- if (!activityAllowed(c, a, room.getRoom()) &&
room.getClient().hasRight(Right.moderator)) {
- if (a == Activity.broadcastA || a ==
Activity.broadcastAV) {
-
c.getRights().add(Room.Right.audio);
- }
- if (!room.getRoom().isAudioOnly() && (a
== Activity.broadcastV || a == Activity.broadcastAV)) {
-
c.getRights().add(Room.Right.video);
- }
- }
- if (activityAllowed(c, a, room.getRoom())) {
- if (a == Activity.broadcastA &&
!c.isMicEnabled()) {
- return;
- }
- if (a == Activity.broadcastV &&
!c.isCamEnabled()) {
- return;
- }
- if (a == Activity.broadcastAV &&
!c.isMicEnabled() && !c.isCamEnabled()) {
- return;
- }
- Pod pod = c.getPod();
-
c.setPod(getRequest().getRequestParameters().getParameterValue(PARAM_POD).toOptionalInteger());
- if (pod != Pod.none && pod !=
c.getPod()) {
- //pod has changed, no need to
toggle
- c.set(a);
- } else {
- c.toggle(a);
- }
- room.broadcast(target, c);
- }
+ toggleActivity(c, a, target);
} catch (Exception e) {
log.error("Unexpected exception while toggle
'activity'", e);
}
@@ -212,12 +183,19 @@ public class RoomSidebar extends Panel {
StringValue s =
getRequest().getRequestParameters().getParameterValue(PARAM_SETTINGS);
if (!s.isEmpty()) {
JSONObject o = new JSONObject(s.toString());
- room.getClient().setCam(o.optInt("cam", -1));
- room.getClient().setMic(o.optInt("mic", -1));
+ Client c = room.getClient();
+ c.setCam(o.optInt("cam", -1));
+ c.setMic(o.optInt("mic", -1));
boolean interview = Room.Type.interview ==
room.getRoom().getType();
- room.getClient().setWidth(interview ? 320 :
o.optInt("width"));
- room.getClient().setHeight(interview ? 260 :
o.optInt("height"));
- room.broadcast(target, room.getClient());
+ c.setWidth(interview ? 320 : o.optInt("width"));
+ c.setHeight(interview ? 260 :
o.optInt("height"));
+ if (!avInited) {
+ avInited = true;
+ if (Room.Type.conference ==
room.getRoom().getType()) {
+ toggleActivity(c,
Activity.broadcastAV, target);
+ }
+ }
+ room.broadcast(target, c);
}
}
};
@@ -336,6 +314,40 @@ public class RoomSidebar extends Panel {
upload.open(handler);
}
+ public void toggleActivity(Client c, Activity a, AjaxRequestTarget
target) {
+ if (c == null) {
+ return;
+ }
+ if (!activityAllowed(c, a, room.getRoom()) &&
room.getClient().hasRight(Right.moderator)) {
+ if (a == Activity.broadcastA || a ==
Activity.broadcastAV) {
+ c.getRights().add(Room.Right.audio);
+ }
+ if (!room.getRoom().isAudioOnly() && (a ==
Activity.broadcastV || a == Activity.broadcastAV)) {
+ c.getRights().add(Room.Right.video);
+ }
+ }
+ if (activityAllowed(c, a, room.getRoom())) {
+ if (a == Activity.broadcastA && !c.isMicEnabled()) {
+ return;
+ }
+ if (a == Activity.broadcastV && !c.isCamEnabled()) {
+ return;
+ }
+ if (a == Activity.broadcastAV && !c.isMicEnabled() &&
!c.isCamEnabled()) {
+ return;
+ }
+ Pod pod = c.getPod();
+
c.setPod(getRequest().getRequestParameters().getParameterValue(PARAM_POD).toOptionalInteger());
+ if (pod != Pod.none && pod != c.getPod()) {
+ //pod has changed, no need to toggle
+ c.set(a);
+ } else {
+ c.toggle(a);
+ }
+ room.broadcast(target, c);
+ }
+ }
+
public static boolean activityAllowed(Client c, Activity a, Room room) {
boolean r = false;
switch (a) {
Modified:
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/activity/RoomActivityIcon.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/activity/RoomActivityIcon.java?rev=1778506&r1=1778505&r2=1778506&view=diff
==============================================================================
---
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/activity/RoomActivityIcon.java
(original)
+++
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/activity/RoomActivityIcon.java
Fri Jan 13 08:09:25 2017
@@ -18,6 +18,7 @@
*/
package org.apache.openmeetings.web.room.sidebar.icon.activity;
+import static
org.apache.openmeetings.web.room.sidebar.RoomSidebar.activityAllowed;
import static
org.apache.openmeetings.web.room.sidebar.RoomSidebar.FUNC_TOGGLE_ACTIVITY;
import org.apache.openmeetings.db.entity.room.Room;
@@ -25,7 +26,6 @@ import org.apache.openmeetings.web.app.C
import org.apache.openmeetings.web.app.Client.Activity;
import org.apache.openmeetings.web.app.Client.Pod;
import org.apache.openmeetings.web.room.RoomPanel;
-import org.apache.openmeetings.web.room.sidebar.RoomSidebar;
import org.apache.openmeetings.web.room.sidebar.icon.ClientIcon;
public abstract class RoomActivityIcon extends ClientIcon {
@@ -47,7 +47,7 @@ public abstract class RoomActivityIcon e
protected boolean visible() {
return Room.Type.interview != room.getRoom().getType()
- && RoomSidebar.activityAllowed(client,
activity, room.getRoom());
+ && activityAllowed(client, activity,
room.getRoom());
}
@Override
Modified:
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java?rev=1778506&r1=1778505&r2=1778506&view=diff
==============================================================================
---
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
(original)
+++
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
Fri Jan 13 08:09:25 2017
@@ -80,6 +80,7 @@ public class RoomSidebar extends Panel {
private final SelfIconsPanel selfRights;
private final ConfirmableAjaxBorder confirmKick;
private boolean showFiles;
+ private boolean avInited = false;
private Client kickedClient;
private final ListView<Client> users = new ListView<Client>("user", new
ArrayList<Client>()) {
private static final long serialVersionUID = 1L;
@@ -168,37 +169,7 @@ public class RoomSidebar extends Panel {
}
Activity a =
Activity.valueOf(getRequest().getRequestParameters().getParameterValue(PARAM_ACTIVITY).toString());
Client c = getOnlineClient(uid);
- if (c == null) {
- return;
- }
- if (!activityAllowed(c, a, room.getRoom()) &&
room.getClient().hasRight(Right.moderator)) {
- if (a == Activity.broadcastA || a ==
Activity.broadcastAV) {
-
c.getRights().add(Room.Right.audio);
- }
- if (!room.getRoom().isAudioOnly() && (a
== Activity.broadcastV || a == Activity.broadcastAV)) {
-
c.getRights().add(Room.Right.video);
- }
- }
- if (activityAllowed(c, a, room.getRoom())) {
- if (a == Activity.broadcastA &&
!c.isMicEnabled()) {
- return;
- }
- if (a == Activity.broadcastV &&
!c.isCamEnabled()) {
- return;
- }
- if (a == Activity.broadcastAV &&
!c.isMicEnabled() && !c.isCamEnabled()) {
- return;
- }
- Pod pod = c.getPod();
-
c.setPod(getRequest().getRequestParameters().getParameterValue(PARAM_POD).toOptionalInteger());
- if (pod != Pod.none && pod !=
c.getPod()) {
- //pod has changed, no need to
toggle
- c.set(a);
- } else {
- c.toggle(a);
- }
- room.broadcast(target, c);
- }
+ toggleActivity(c, a, target);
} catch (Exception e) {
log.error("Unexpected exception while toggle
'activity'", e);
}
@@ -212,12 +183,19 @@ public class RoomSidebar extends Panel {
StringValue s =
getRequest().getRequestParameters().getParameterValue(PARAM_SETTINGS);
if (!s.isEmpty()) {
JSONObject o = new JSONObject(s.toString());
- room.getClient().setCam(o.optInt("cam", -1));
- room.getClient().setMic(o.optInt("mic", -1));
+ Client c = room.getClient();
+ c.setCam(o.optInt("cam", -1));
+ c.setMic(o.optInt("mic", -1));
boolean interview = Room.Type.interview ==
room.getRoom().getType();
- room.getClient().setWidth(interview ? 320 :
o.optInt("width"));
- room.getClient().setHeight(interview ? 260 :
o.optInt("height"));
- room.broadcast(target, room.getClient());
+ c.setWidth(interview ? 320 : o.optInt("width"));
+ c.setHeight(interview ? 260 :
o.optInt("height"));
+ if (!avInited) {
+ avInited = true;
+ if (Room.Type.conference ==
room.getRoom().getType()) {
+ toggleActivity(c,
Activity.broadcastAV, target);
+ }
+ }
+ room.broadcast(target, c);
}
}
};
@@ -336,6 +314,40 @@ public class RoomSidebar extends Panel {
upload.open(handler);
}
+ public void toggleActivity(Client c, Activity a, AjaxRequestTarget
target) {
+ if (c == null) {
+ return;
+ }
+ if (!activityAllowed(c, a, room.getRoom()) &&
room.getClient().hasRight(Right.moderator)) {
+ if (a == Activity.broadcastA || a ==
Activity.broadcastAV) {
+ c.getRights().add(Room.Right.audio);
+ }
+ if (!room.getRoom().isAudioOnly() && (a ==
Activity.broadcastV || a == Activity.broadcastAV)) {
+ c.getRights().add(Room.Right.video);
+ }
+ }
+ if (activityAllowed(c, a, room.getRoom())) {
+ if (a == Activity.broadcastA && !c.isMicEnabled()) {
+ return;
+ }
+ if (a == Activity.broadcastV && !c.isCamEnabled()) {
+ return;
+ }
+ if (a == Activity.broadcastAV && !c.isMicEnabled() &&
!c.isCamEnabled()) {
+ return;
+ }
+ Pod pod = c.getPod();
+
c.setPod(getRequest().getRequestParameters().getParameterValue(PARAM_POD).toOptionalInteger());
+ if (pod != Pod.none && pod != c.getPod()) {
+ //pod has changed, no need to toggle
+ c.set(a);
+ } else {
+ c.toggle(a);
+ }
+ room.broadcast(target, c);
+ }
+ }
+
public static boolean activityAllowed(Client c, Activity a, Room room) {
boolean r = false;
switch (a) {
Modified:
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/activity/RoomActivityIcon.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/activity/RoomActivityIcon.java?rev=1778506&r1=1778505&r2=1778506&view=diff
==============================================================================
---
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/activity/RoomActivityIcon.java
(original)
+++
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/activity/RoomActivityIcon.java
Fri Jan 13 08:09:25 2017
@@ -18,6 +18,7 @@
*/
package org.apache.openmeetings.web.room.sidebar.icon.activity;
+import static
org.apache.openmeetings.web.room.sidebar.RoomSidebar.activityAllowed;
import static
org.apache.openmeetings.web.room.sidebar.RoomSidebar.FUNC_TOGGLE_ACTIVITY;
import org.apache.openmeetings.db.entity.room.Room;
@@ -25,7 +26,6 @@ import org.apache.openmeetings.web.app.C
import org.apache.openmeetings.web.app.Client.Activity;
import org.apache.openmeetings.web.app.Client.Pod;
import org.apache.openmeetings.web.room.RoomPanel;
-import org.apache.openmeetings.web.room.sidebar.RoomSidebar;
import org.apache.openmeetings.web.room.sidebar.icon.ClientIcon;
public abstract class RoomActivityIcon extends ClientIcon {
@@ -47,7 +47,7 @@ public abstract class RoomActivityIcon e
protected boolean visible() {
return Room.Type.interview != room.getRoom().getType()
- && RoomSidebar.activityAllowed(client,
activity, room.getRoom());
+ && activityAllowed(client, activity,
room.getRoom());
}
@Override