This is an automated email from the ASF dual-hosted git repository.

solomax pushed a commit to branch OPENMEETINGS-1649-kurento
in repository https://gitbox.apache.org/repos/asf/openmeetings.git


The following commit(s) were added to refs/heads/OPENMEETINGS-1649-kurento by 
this push:
     new 92877b3  [OPENMEETINGS-1649] video sending code is improved, receiving 
is still broken
92877b3 is described below

commit 92877b375770d5d6c62a747f6bc885849b00a210
Author: Maxim Solodovnik <[email protected]>
AuthorDate: Mon Mar 5 23:32:33 2018 +0700

    [OPENMEETINGS-1649] video sending code is improved, receiving is still 
broken
---
 .../org/apache/openmeetings/core/remote/KRoom.java | 24 +++-----
 .../openmeetings/core/remote/KurentoHandler.java   | 38 ++++++-------
 .../apache/openmeetings/db/util/RoomHelper.java    | 16 ------
 .../openmeetings/util/OMContextListener.java       | 18 ++++--
 openmeetings-web/pom.xml                           |  8 +--
 .../apache/openmeetings/web/app/ClientManager.java |  8 ++-
 .../apache/openmeetings/web/room/RoomPanel.java    | 29 ++++++++--
 .../openmeetings/web/room/VideoSettings.java       | 23 +++-----
 .../org/apache/openmeetings/web/room/room-base.js  |  1 -
 .../apache/openmeetings/web/room/video-manager.js  | 66 ++++++----------------
 .../main/webapp/WEB-INF/classes/logback-config.xml |  4 +-
 .../main/webapp/WEB-INF/classes/rebel-remote.xml   | 24 --------
 .../src/main/webapp/WEB-INF/classes/rebel.xml      | 33 -----------
 13 files changed, 98 insertions(+), 194 deletions(-)

diff --git 
a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KRoom.java
 
b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KRoom.java
index 2ed5335..87060da 100644
--- 
a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KRoom.java
+++ 
b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KRoom.java
@@ -61,11 +61,16 @@ public class KRoom implements Closeable {
                this.close();
        }
 
-       public KUser join(final KurentoHandler h, String uid) {
+       public KUser addUser(final KurentoHandler h, String uid) {
                log.info("ROOM {}: adding participant {}", roomId, uid);
                final KUser u = new KUser(h, uid, this.roomId, this.pipeline);
-               joinRoom(h, u);
                participants.put(u.getUid(), u);
+               h.usersByUid.put(u.getUid(), u);
+               return u;
+       }
+
+       public KUser join(final KurentoHandler h, String uid) {
+               KUser u = addUser(h, uid);
                broadcast(h, u);
                return u;
        }
@@ -76,21 +81,6 @@ public class KRoom implements Closeable {
                user.close();
        }
 
-       private Collection<String> joinRoom(final KurentoHandler h, KUser 
newParticipant) {
-               final JSONObject msg = newKurentoMsg();
-               msg.put("id", "newParticipantArrived");
-               msg.put("name", newParticipant.getUid());
-
-               final List<String> participantsList = new 
ArrayList<>(participants.values().size());
-               log.debug("ROOM {}: notifying other participants of new 
participant {}", roomId, newParticipant.getUid());
-
-               for (final KUser participant : participants.values()) {
-                       h.sendClient(participant.getUid(), msg);
-                       participantsList.add(participant.getUid());
-               }
-               return participantsList;
-       }
-
        private void removeParticipant(final KurentoHandler h, String name) {
                participants.remove(name);
 
diff --git 
a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KurentoHandler.java
 
b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KurentoHandler.java
index 0ab11d6..607238f 100644
--- 
a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KurentoHandler.java
+++ 
b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KurentoHandler.java
@@ -39,7 +39,7 @@ public class KurentoHandler {
        public final static String KURENTO_TYPE = "kurento";
        private final KurentoClient client = KurentoClient.create();
        private final Map<Long, KRoom> rooms = new ConcurrentHashMap<>();
-       private final Map<String, KUser> usersByUid = new ConcurrentHashMap<>();
+       final Map<String, KUser> usersByUid = new ConcurrentHashMap<>();
 
        @Autowired
        private IClientManager clientManager;
@@ -48,32 +48,35 @@ public class KurentoHandler {
                final Client c = clientManager.get(uid);
 
                if (c != null) {
-                       log.debug("Incoming message from user '{}': {}", 
c.getUser(), msg);
+                       log.debug("Incoming message from user with ID '{}': 
{}", c.getUserId(), msg);
                } else {
                        log.debug("Incoming message from new user: {}", msg);
                }
-               final KUser user = getByUid(uid);
+               KUser user = getByUid(uid);
                switch (msg.getString("id")) {
                        case "joinRoom":
                                joinRoom(c);
                                break;
                        case "receiveVideoFrom":
-                               final String senderName = 
msg.getString("sender");
-                               final KUser sender = getByUid(senderName);
+                               final String senderUid = 
msg.getString("sender");
+                               final KUser sender = getByUid(senderUid);
                                final String sdpOffer = 
msg.getString("sdpOffer");
+                               if (user == null) {
+                                       KRoom room = getRoom(c.getRoomId());
+                                       user = room.addUser(this, uid);
+                               }
                                user.receiveVideoFrom(this, sender, sdpOffer);
                                break;
-                       case "leaveRoom":
-                               leaveRoom(user);
-                               break;
                        case "onIceCandidate":
                                JSONObject candidate = 
msg.getJSONObject("candidate");
 
-                               if (c != null) {
-                                       IceCandidate cand = new 
IceCandidate(candidate.getString("candidate"),
-                                                       
candidate.getString("sdpMid"), candidate.getInt("sdpMLineIndex"));
-                                       user.addCandidate(cand, 
msg.getString("name"));
+                               if (user == null) {
+                                       KRoom room = getRoom(c.getRoomId());
+                                       user = room.addUser(this, uid);
                                }
+                               IceCandidate cand = new 
IceCandidate(candidate.getString("candidate"),
+                                               candidate.getString("sdpMid"), 
candidate.getInt("sdpMLineIndex"));
+                               user.addCandidate(cand, msg.getString("name"));
                                break;
                        default:
                                break;
@@ -85,22 +88,13 @@ public class KurentoHandler {
 
                KRoom room = getRoom(c.getRoomId());
                clientManager.update(c.addStream(c.getUid()));
-               final KUser user = room.join(this, c.getUid());
-               usersByUid.put(user.getUid(), user);
+               room.join(this, c.getUid());
        }
 
        void sendClient(String uid, JSONObject msg) {
                WebSocketHelper.sendClient(clientManager.get(uid), msg);
        }
 
-       private void leaveRoom(KUser user) {
-               final KRoom room = getRoom(user.getRoomId());
-               room.leave(this, user);
-               if (room.getParticipants().isEmpty()) {
-                       removeRoom(room);
-               }
-       }
-
        /**
         * Looks for a room in the active room list.
         *
diff --git 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/RoomHelper.java 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/RoomHelper.java
index 47cd8cd..a71e2a0 100644
--- 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/RoomHelper.java
+++ 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/RoomHelper.java
@@ -20,7 +20,6 @@ package org.apache.openmeetings.db.util;
 
 import org.apache.openmeetings.db.entity.basic.Client;
 import org.apache.openmeetings.db.entity.room.StreamClient;
-import org.apache.openmeetings.db.manager.IStreamClientManager;
 
 import com.github.openjson.JSONArray;
 import com.github.openjson.JSONObject;
@@ -28,21 +27,6 @@ import com.github.openjson.JSONObject;
 public class RoomHelper {
        private RoomHelper() {}
 
-       public static JSONObject videoJson(Client c, boolean self, String sid, 
IStreamClientManager mgr, String uid) {
-               StreamClient sc = mgr.get(uid);
-               if (sc == null) {
-                       return new JSONObject();
-               }
-               JSONObject o = c.toJson(self)
-                               .put("sid", sid)
-                               .put("uid", sc.getUid())
-                               .put("broadcastId", sc.getBroadcastId())
-                               .put("width", sc.getWidth())
-                               .put("height", sc.getHeight())
-                               .put("type", sc.getType());
-               return addScreenActivities(o, sc);
-       }
-
        public static JSONObject addScreenActivities(JSONObject o, StreamClient 
sc) {
                JSONArray a = new JSONArray();
                if (Client.Type.sharing == sc.getType()) {
diff --git 
a/openmeetings-util/src/main/java/org/apache/openmeetings/util/OMContextListener.java
 
b/openmeetings-util/src/main/java/org/apache/openmeetings/util/OMContextListener.java
index 9f4c1a3..6ca2c90 100644
--- 
a/openmeetings-util/src/main/java/org/apache/openmeetings/util/OMContextListener.java
+++ 
b/openmeetings-util/src/main/java/org/apache/openmeetings/util/OMContextListener.java
@@ -18,6 +18,8 @@
  */
 package org.apache.openmeetings.util;
 
+import java.io.InputStream;
+
 import javax.servlet.ServletContextEvent;
 import javax.servlet.ServletContextListener;
 
@@ -25,24 +27,32 @@ import org.slf4j.LoggerFactory;
 
 import ch.qos.logback.classic.LoggerContext;
 import ch.qos.logback.classic.joran.JoranConfigurator;
-import ch.qos.logback.core.joran.spi.JoranException;
+import ch.qos.logback.core.util.StatusPrinter;
 
 public class OMContextListener implements ServletContextListener {
+       private static final String LOG_DIR_PROP = 
"current_openmeetings_log_dir";
 
        @Override
        public void contextInitialized(ServletContextEvent event) {
                String ctx = pathToName(event);
                System.setProperty("current_openmeetings_context_name", ctx);
+               if (System.getProperty(LOG_DIR_PROP) == null) {
+                       System.setProperty(LOG_DIR_PROP, "log");
+               }
                System.setProperty("webapp.contextPath", String.format("/%s", 
ctx));
+               LoggerContext context = 
(LoggerContext)LoggerFactory.getILoggerFactory();
                try {
-                       LoggerContext context = 
(LoggerContext)LoggerFactory.getILoggerFactory();
                        JoranConfigurator configurator = new 
JoranConfigurator();
                        configurator.setContext(context);
                        context.reset();
-                       configurator.doConfigure("logback-config.xml");
-               } catch (JoranException je) {
+                       try (InputStream cfgIs = 
getClass().getResourceAsStream("/logback-config.xml")) {
+                               configurator.doConfigure(cfgIs);
+                       }
+               } catch (Exception e) {
+                       e.printStackTrace();
                        // StatusPrinter will handle this
                }
+               StatusPrinter.printInCaseOfErrorsOrWarnings(context);
                //System.setProperty("logback.configurationFile", 
"logback-config.xml");
        }
 
diff --git a/openmeetings-web/pom.xml b/openmeetings-web/pom.xml
index adc3bb5..ad26952 100644
--- a/openmeetings-web/pom.xml
+++ b/openmeetings-web/pom.xml
@@ -476,12 +476,12 @@
                                        
<artifactId>jetty-maven-plugin</artifactId>
                                        <version>${jetty9.version}</version>
                                        <configuration>
-                                               <!--systemProperties>
+                                               <systemProperties>
                                                        <systemProperty>
-                                                               
<name>logback.configurationFile</name>
-                                                               
<value>${project.build.directory}/${project.build.finalName}/WEB-INF/classes/logback-config.xml</value>
+                                                               
<name>current_openmeetings_log_dir</name>
+                                                               
<value>${project.build.directory}</value>
                                                        </systemProperty>
-                                               </systemProperties-->
+                                               </systemProperties>
                                                <webApp>
                                                        
<contextPath>/openmeetings</contextPath>
                                                </webApp>
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java
index f64d813..86162e2 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java
@@ -147,7 +147,6 @@ public class ClientManager implements IClientManager {
        }
 
        public IClient removeFromRoom(IClient _c) {
-               /*
                Long roomId = _c.getRoomId();
                log.debug("Removing online room client: {}, room: {}", 
_c.getUid(), roomId);
                if (roomId != null) {
@@ -157,25 +156,28 @@ public class ClientManager implements IClientManager {
                                clients.remove(_c.getUid());
                                rooms.put(roomId, clients);
                        }
+                       /* FIXME TODO KurentoHandler
                        if (_c instanceof StreamClient) {
                                StreamClient sc = (StreamClient)_c;
                                if (Client.Type.mobile != sc.getType() && 
Client.Type.sip != sc.getType()) {
                                        scopeAdapter.roomLeaveByScope(_c, 
roomId);
                                }
                        }
+                        */
                        if (_c instanceof Client) {
-                               scopeAdapter.dropSharing(_c, roomId);
+                               //FIXME TODO scopeAdapter.dropSharing(_c, 
roomId);
                                Client c = (Client)_c;
+                               /* FIXME TODO
                                IScope sc = scopeAdapter.getChildScope(roomId);
                                for (String uid : c.getStreams()) {
                                        scopeAdapter.sendMessageById("quit", 
uid, sc);
                                }
+                               */
                                c.setRoom(null);
                                c.clear();
                                update(c);
                        }
                }
-               */
                return _c;
        }
 
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
index f5076bb..724b6f9 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.web.room;
 
-import static org.apache.openmeetings.db.util.RoomHelper.videoJson;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.ATTR_CLASS;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getDateFormat;
@@ -165,9 +164,8 @@ public class RoomPanel extends BasePanel {
                        boolean hasStreams = false;
                        Client _c = getClient();
                        for (Client c: cm.listByRoom(getRoom().getId())) {
-                               boolean self = _c.getUid().equals(c.getUid());
                                for (String uid : c.getStreams()) {
-                                       JSONObject jo = videoJson(c, self, 
c.getSid(), getBean(StreamClientManager.class), uid);
+                                       JSONObject jo = videoJson(c, 
c.getSid(), uid);
                                        
sb.append(String.format("VideoManager.play(%s);", jo));
                                        hasStreams = true;
                                }
@@ -502,7 +500,7 @@ public class RoomPanel extends BasePanel {
                                                boolean self = 
_c.getSid().equals(c.getSid());
                                                StreamClientManager mgr = 
getBean(StreamClientManager.class);
                                                if (!self || Client.Type.room 
!= mgr.get(uid).getType()) { // stream from others or self external video
-                                                       JSONObject jo = 
videoJson(c, false, _c.getSid(), mgr, uid);
+                                                       JSONObject jo = 
videoJson(c, _c.getSid(), uid);
                                                        
handler.appendJavaScript(String.format("VideoManager.play(%s);", jo));
                                                }
                                                if (self) {
@@ -859,4 +857,27 @@ public class RoomPanel extends BasePanel {
        public boolean isInterview() {
                return interview;
        }
+
+       public JSONObject videoJson(Client c, String sid, String uid) {
+               /*
+               TODO streams
+               StreamClient sc = mgr.get(uid);
+               if (sc == null) {
+                       return new JSONObject();
+               }
+               */
+               JSONObject o = c.toJson(getUid().equals(c.getUid()))
+                               .put("sid", sid)
+                               .put("uid", c.getUid())
+                                /*TODO
+                                .put("uid", sc.getUid())
+                               .put("broadcastId", sc.getBroadcastId())
+                               .put("width", sc.getWidth())
+                               .put("height", sc.getHeight())
+                               .put("type", sc.getType());
+               return addScreenActivities(o, sc);
+               */
+                               ;
+               return o;
+       }
 }
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/VideoSettings.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/VideoSettings.java
index ac99731..afcc981 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/VideoSettings.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/VideoSettings.java
@@ -18,24 +18,12 @@
  */
 package org.apache.openmeetings.web.room;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.FLASH_PORT;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.FLASH_SECURE;
-import static 
org.apache.openmeetings.util.OpenmeetingsVariables.FLASH_SSL_PORT;
-import static org.apache.openmeetings.web.app.Application.NAME_ATTR_KEY;
-import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.wicket.RuntimeConfigurationType.DEVELOPMENT;
 
 import java.net.URL;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
 
-import org.apache.openmeetings.db.dao.room.RoomDao;
 import org.apache.openmeetings.util.OmFileHelper;
-import org.apache.openmeetings.util.OpenmeetingsVariables;
 import org.apache.openmeetings.web.app.Application;
-import org.apache.openmeetings.web.app.StreamClientManager;
 import org.apache.openmeetings.web.util.ExtendedClientProperties;
 import org.apache.wicket.markup.head.IHeaderResponse;
 import org.apache.wicket.markup.head.JavaScriptHeaderItem;
@@ -47,7 +35,6 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONObject;
-import com.hazelcast.core.Member;
 
 public class VideoSettings extends Panel {
        private static final long serialVersionUID = 1L;
@@ -66,14 +53,16 @@ public class VideoSettings extends Panel {
                response.render(new 
PriorityHeaderItem(JavaScriptHeaderItem.forReference(SETTINGS_JS_REFERENCE)));
        }
 
+       /* FIXME TODO
        private static String getUri(String protocol, String host, Object port, 
String app) {
                return String.format("%s://%s:%s/%s", protocol, host, port, 
app);
        }
+       */
 
        public static JSONObject getInitJson(ExtendedClientProperties cp, Long 
roomId, String sid) {
                String scope = roomId == null ? OmFileHelper.HIBERNATE : 
String.valueOf(roomId);
-               JSONObject gs = OpenmeetingsVariables.getRoomSettings();
-               JSONObject s = new JSONObject(gs.toString())
+               //FIXME TODO JSONObject gs = 
OpenmeetingsVariables.getRoomSettings();
+               JSONObject s = new JSONObject()//FIXME TODO new 
JSONObject(gs.toString())
                                .put("sid", sid)
                                .put("debug", DEVELOPMENT == 
Application.get().getConfigurationType())
                                .put("wmode", cp.isBrowserInternetExplorer() && 
cp.getBrowserVersionMajor() == 11 ? "opaque" : "direct");
@@ -81,6 +70,7 @@ public class VideoSettings extends Panel {
                        URL url = new URL(cp.getCodebase());
                        String path = url.getPath();
                        path = path.substring(1, path.indexOf('/', 2) + 1) + 
scope;
+                       /* FIXME TODO
                        String host = getHost(roomId, url.getHost());
                        int port = url.getPort() > -1 ? url.getPort() : 
url.getDefaultPort();
                        if (gs.getBoolean(FLASH_SECURE)) {
@@ -90,12 +80,14 @@ public class VideoSettings extends Panel {
                                s.put(URL, getUri("rtmp", host, 
gs.getString(FLASH_PORT), path));
                                s.put(FALLBACK, getUri("rtmpt", host, port, 
path));
                        }
+                       */
                } catch (Exception e) {
                        log.error("Error while constructing video settings 
parameters", e);
                }
                return s;
        }
 
+       /* FIXME TODO
        private static String getHost(Long roomId, String _host) {
                if (roomId == null) {
                        return _host;
@@ -127,4 +119,5 @@ public class VideoSettings extends Panel {
                }
                return result == null ? _host : result.getAddress().getHost();
        }
+       */
 }
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room-base.js 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room-base.js
index 1be25a1..7a9f0d3 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room-base.js
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room-base.js
@@ -179,7 +179,6 @@ var Room = (function() {
                }
                if (typeof(VideoManager) === 'object') {
                        VideoManager.destroy();
-                       window.VideoManager = undefined;
                }
                if (typeof(VideoSettings) === 'object') {
                        VideoSettings.close();
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/video-manager.js
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/video-manager.js
index ed9ea1a..25e8410 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/video-manager.js
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/video-manager.js
@@ -4,10 +4,6 @@ var VideoManager = (function() {
        let share, inited = false;
 
 /*FIXME TODO*/
-       function onNewParticipant(request) {
-               receiveVideo(request.uid);
-       }
-
        function onVideoResponse(m) {
                const w = $('#' + VideoUtil.getVid(m.uid))
                        , v = w.data()
@@ -49,48 +45,25 @@ var VideoManager = (function() {
                                }
                                
this.generateOffer(v.offerToReceiveVideo.bind(v));
                        }));
-               // TODO FIXME msg.data.forEach(receiveVideo);
        }
 
-       function leaveRoom() {
-               sendMessage({
-                       id : 'leaveRoom'
-               });
-
-               for ( var key in participants) {
-                       participants[key].dispose();
-               }
-
-               document.getElementById('join').style.display = 'block';
-               document.getElementById('room').style.display = 'none';
-       }
-
-       function receiveVideo(sender) {
-               var participant = new Participant(sender);
-               participants[sender] = participant;
-               var video = participant.getVideoElement();
-
-               var options = {
-             remoteVideo: video,
-             onicecandidate: participant.onIceCandidate.bind(participant)
-           }
-
-               participant.rtcPeer = new 
kurentoUtils.WebRtcPeer.WebRtcPeerRecvonly(options,
-                               function (error) {
-                                 if(error) {
-                                         return console.error(error);
-                                 }
-                                 this.generateOffer 
(participant.offerToReceiveVideo.bind(participant));
-               });;
-       }
-
-       function onParticipantLeft(request) {
-               console.log('Participant ' + request.uid + ' left');
-               var participant = participants[request.uid];
-               participant.dispose();
-               delete participants[request.uid];
+       function receiveVideo(uid) {
+               const w = $('#' + VideoUtil.getVid(uid))
+                       , v = w.data()
+                       , cl = v.client();
+               v.setPeer(new kurentoUtils.WebRtcPeer.WebRtcPeerRecvonly(
+                       {
+                               remoteVideo: v.video()
+                               , onicecandidate: v.onIceCandidate.bind(v)
+                       }
+                       , function (error) {
+                               if(error) {
+                                       return console.error(error);
+                               }
+                               
this.generateOffer(v.offerToReceiveVideo.bind(v));
+                       }
+               ));
        }
-
        /*FIXME TODO*/
 
        function _onWsMessage(jqEvent, msg) {
@@ -106,12 +79,6 @@ var VideoManager = (function() {
                                        case 'broadcast':
                                                onBroadcast(m);
                                                break;
-                                       case 'newParticipantArrived':
-                                               onNewParticipant(m);
-                                               break;
-                                       case 'participantLeft':
-                                               onParticipantLeft(m);
-                                               break;
                                        case 'videoResponse':
                                                onVideoResponse(m);
                                                break;
@@ -216,6 +183,7 @@ var VideoManager = (function() {
                        });
                } else if ('sharing' !== c.type) {
                        Video().init(c, 
VideoUtil.getPos(VideoUtil.getRects(VID_SEL), c.width, c.height + 25));
+                       receiveVideo(c.uid);
                }
        }
        function _close(uid, showShareBtn) {
diff --git 
a/openmeetings-web/src/main/webapp/WEB-INF/classes/logback-config.xml 
b/openmeetings-web/src/main/webapp/WEB-INF/classes/logback-config.xml
index 6463b06..cd7cb85 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/logback-config.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/logback-config.xml
@@ -24,7 +24,7 @@
        <jmxConfigurator contextName="${current_openmeetings_context_name}" />
 
        <appender name="FILE" 
class="ch.qos.logback.core.rolling.RollingFileAppender">
-               <File>log/${current_openmeetings_context_name}.log</File>
+               
<File>${current_openmeetings_log_dir}/${current_openmeetings_context_name}.log</File>
                <Append>false</Append>
                <Encoding>UTF-8</Encoding>
                <BufferedIO>false</BufferedIO>
@@ -47,7 +47,7 @@
        </appender>
        <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
                <layout class="ch.qos.logback.classic.PatternLayout">
-                       <pattern>%5p %d{MM-dd HH:mm:ss.SSS } %r %L %c{15} 
[%.15thread] - %m%n</pattern>
+                       <pattern>%highlight(%-5level) %d{MM-dd HH:mm:ss.SSS } 
%cyan(%c{15}:%L [%.15thread]) - %m%n</pattern>
                </layout>
        </appender>
        <logger name="com.mchange.v2" level="ERROR" />
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/rebel-remote.xml 
b/openmeetings-web/src/main/webapp/WEB-INF/classes/rebel-remote.xml
deleted file mode 100644
index 25f4a7f..0000000
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/rebel-remote.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements.  See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership.  The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied.  See the License for the
-  specific language governing permissions and limitations
-  under the License.
-
--->
-<rebel-remote>
-       <id>Openmeetings</id>
-       <url>http://localhost:5080/openmeetings/</url>
-</rebel-remote>
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/rebel.xml 
b/openmeetings-web/src/main/webapp/WEB-INF/classes/rebel.xml
deleted file mode 100644
index a693fbe..0000000
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/rebel.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements.  See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership.  The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied.  See the License for the
-  specific language governing permissions and limitations
-  under the License.
-
--->
-<application
-               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
-               xmlns="http://www.zeroturnaround.com";
-               xsi:schemaLocation="http://www.zeroturnaround.com 
https://update.zeroturnaround.com/alderaan/rebel-2_0.xsd";>
-       <classpath>
-               <dir name="${project.root}/build/classes/eclipse"/>
-       </classpath>
-       <web>
-               <link target="/">
-                       <dir name="${project.root}/main/webapp"/>
-               </link>
-       </web>
-</application>

-- 
To stop receiving notification emails like this one, please contact
[email protected].

Reply via email to