You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2016/09/18 12:01:46 UTC
svn commit: r1761322 [2/2] - in /openmeetings/application:
branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/
branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/
branches/3.2.x/open...
Modified: openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/RecordingConverter.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/RecordingConverter.java?rev=1761322&r1=1761321&r2=1761322&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/RecordingConverter.java (original)
+++ openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/RecordingConverter.java Sun Sep 18 12:01:46 2016
@@ -26,6 +26,7 @@ import static org.apache.openmeetings.ut
import java.io.File;
import java.util.ArrayList;
import java.util.List;
+import java.util.UUID;
import org.apache.openmeetings.db.dao.file.FileItemLogDao;
import org.apache.openmeetings.db.dao.record.RecordingDao;
@@ -36,6 +37,7 @@ import org.apache.openmeetings.db.entity
import org.apache.openmeetings.util.OmFileHelper;
import org.apache.openmeetings.util.process.ConverterProcessResult;
import org.apache.openmeetings.util.process.ProcessHelper;
+import org.apache.wicket.util.string.Strings;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
@@ -54,10 +56,10 @@ public class RecordingConverter extends
private String FFMPEG_MAP_PARAM = ":";
@Override
- public void startConversion(Long recordingId) {
- Recording recording = recordingDao.get(recordingId);
- if (recording == null) {
- log.warn("Conversion is NOT started. Recording with ID {} is not found", recordingId);
+ public void startConversion(Long id) {
+ Recording r = recordingDao.get(id);
+ if (r == null) {
+ log.warn("Conversion is NOT started. Recording with ID {} is not found", id);
return;
}
try {
@@ -65,28 +67,31 @@ public class RecordingConverter extends
FFMPEG_MAP_PARAM = ".";
}
- String finalNamePrefix = recordingFileName + recordingId;
- log.debug("recording " + recording.getId());
+ String finalNamePrefix = recordingFileName + id;
+ log.debug("recording " + r.getId());
- List<ConverterProcessResult> returnLog = new ArrayList<>();
+ List<ConverterProcessResult> logs = new ArrayList<>();
List<File> waveFiles = new ArrayList<>();
- File streamFolder = getStreamFolder(recording);
+ File streamFolder = getStreamFolder(r);
- RecordingMetaData screenMetaData = metaDataDao.getScreenMetaDataByRecording(recording.getId());
+ RecordingMetaData screenMetaData = metaDataDao.getScreenMetaDataByRecording(r.getId());
if (screenMetaData == null) {
- throw new Exception("screenMetaData is Null recordingId " + recording.getId());
+ throw new Exception("screenMetaData is Null recordingId " + r.getId());
}
if (screenMetaData.getStreamStatus() == Status.NONE) {
throw new Exception("Stream has not been started, error in recording");
}
- recording.setStatus(Recording.Status.CONVERTING);
- recording = recordingDao.update(recording);
+ if (Strings.isEmpty(r.getHash())) {
+ r.setHash(UUID.randomUUID().toString());
+ }
+ r.setStatus(Recording.Status.CONVERTING);
+ r = recordingDao.update(r);
screenMetaData = waitForTheStream(screenMetaData.getId());
- stripAudioFirstPass(recording, returnLog, waveFiles, streamFolder);
+ stripAudioFirstPass(r, logs, waveFiles, streamFolder);
// Merge Wave to Full Length
File wav = new File(streamFolder, screenMetaData.getStreamName() + "_FINAL_WAVE.wav");
@@ -96,17 +101,17 @@ public class RecordingConverter extends
} else if (waveFiles.size() > 0) {
String[] argv_full_sox = mergeAudioToWaves(waveFiles, wav);
- returnLog.add(ProcessHelper.executeScript("mergeAudioToWaves", argv_full_sox));
+ logs.add(ProcessHelper.executeScript("mergeAudioToWaves", argv_full_sox));
} else {
// create default Audio to merge it. strip to content length
- String outputWav = new File(getStreamsHibernateDir(), "one_second.wav").getCanonicalPath();
+ String oneSecWav = new File(getStreamsHibernateDir(), "one_second.wav").getCanonicalPath();
// Calculate delta at beginning
- double deltaPadding = diffSeconds(recording.getRecordEnd(), recording.getRecordStart());
+ double duration = diffSeconds(r.getRecordEnd(), r.getRecordStart());
- String[] argv_full_sox = new String[] { getPathToSoX(), outputWav, wav.getCanonicalPath(), "pad", "0", "" + deltaPadding };
+ String[] cmd = new String[] { getPathToSoX(), oneSecWav, wav.getCanonicalPath(), "pad", "0", "" + duration };
- returnLog.add(ProcessHelper.executeScript("generateSampleAudio", argv_full_sox));
+ logs.add(ProcessHelper.executeScript("generateSampleAudio", cmd));
}
screenMetaData.setFullWavAudioData(wav.getName());
metaDataDao.update(screenMetaData);
@@ -115,15 +120,15 @@ public class RecordingConverter extends
String inputScreenFullFlv = new File(streamFolder, OmFileHelper.getName(screenMetaData.getStreamName(), EXTENSION_FLV)).getCanonicalPath();
- File flv = recording.getFile(EXTENSION_FLV);
+ File flv = r.getFile(EXTENSION_FLV);
// ffmpeg -vcodec flv -qscale 9.5 -r 25 -ar 22050 -ab 32k -s 320x240
// -i 65318fb5c54b1bc1b1bca077b493a914_28_12_2009_23_38_17_FINAL_WAVE.wav
// -i 65318fb5c54b1bc1b1bca077b493a914_28_12_2009_23_38_17.flv
// final1.flv
- int flvWidth = recording.getWidth();
- int flvHeight = recording.getHeight();
+ int flvWidth = r.getWidth();
+ int flvHeight = r.getHeight();
log.debug("flvWidth -1- " + flvWidth);
log.debug("flvHeight -1- " + flvHeight);
@@ -134,11 +139,11 @@ public class RecordingConverter extends
log.debug("flvWidth -2- " + flvWidth);
log.debug("flvHeight -2- " + flvHeight);
- recording.setFlvWidth(flvWidth);
- recording.setFlvHeight(flvHeight);
+ r.setFlvWidth(flvWidth);
+ r.setFlvHeight(flvHeight);
- String[] argv_fullFLV = new String[] { getPathToFFMPEG(), "-y",//
- "-itsoffset", formatMillis(diff(screenMetaData.getRecordStart(), recording.getRecordStart())),
+ String[] cmdFlv = new String[] { getPathToFFMPEG(), "-y",//
+ "-itsoffset", formatMillis(diff(screenMetaData.getRecordStart(), r.getRecordStart())),
"-i", inputScreenFullFlv, "-i", wav.getCanonicalPath(), "-ar", "22050", //
"-acodec", "libmp3lame", //
"-ab", "32k", //
@@ -148,41 +153,39 @@ public class RecordingConverter extends
"-map", "1" + FFMPEG_MAP_PARAM + "0", //
flv.getCanonicalPath() };
- returnLog.add(ProcessHelper.executeScript("generateFullFLV", argv_fullFLV));
-
- recording.setHash(flv.getName());
+ logs.add(ProcessHelper.executeScript("generateFullFLV", cmdFlv));
// Extract first Image for preview purpose
// ffmpeg -i movie.flv -vcodec mjpeg -vframes 1 -an -f rawvideo -s
// 320x240 movie.jpg
- File outPutJpeg = new File(getStreamsHibernateDir(), finalNamePrefix + ".jpg");
+ File jpg = new File(getStreamsHibernateDir(), finalNamePrefix + ".jpg");
- String[] argv_previewFLV = new String[] { //
+ String[] cmdJpg = new String[] { //
getPathToFFMPEG(), "-y",//
"-i", flv.getCanonicalPath(), //
"-vcodec", "mjpeg", //
"-vframes", "1", "-an", //
"-f", "rawvideo", //
"-s", flvWidth + "x" + flvHeight, //
- outPutJpeg.getCanonicalPath() };
+ jpg.getCanonicalPath() };
- returnLog.add(ProcessHelper.executeScript("previewFullFLV", argv_previewFLV));
+ logs.add(ProcessHelper.executeScript("previewFullFLV", cmdJpg));
- File alternateDownload = new File(getStreamsHibernateDir(), finalNamePrefix + ".avi");
+ File avi = new File(getStreamsHibernateDir(), finalNamePrefix + ".avi");
- String[] argv_alternateDownload = new String[] { getPathToFFMPEG(), "-y", "-i", flv.getCanonicalPath(), "-vcodec",
- "copy", alternateDownload.getCanonicalPath() };
+ String[] cmdAvi = new String[] { getPathToFFMPEG(), "-y", "-i", flv.getCanonicalPath(), "-vcodec",
+ "copy", avi.getCanonicalPath() };
- returnLog.add(ProcessHelper.executeScript("alternateDownload", argv_alternateDownload));
+ logs.add(ProcessHelper.executeScript("alternateDownload", cmdAvi));
- updateDuration(recording);
- convertToMp4(recording, returnLog);
- recording.setStatus(Recording.Status.PROCESSED);
+ updateDuration(r);
+ convertToMp4(r, logs);
+ r.setStatus(Recording.Status.PROCESSED);
- logDao.delete(recording);
- for (ConverterProcessResult returnMap : returnLog) {
- logDao.add("generateFFMPEG", recording, returnMap);
+ logDao.delete(r);
+ for (ConverterProcessResult returnMap : logs) {
+ logDao.add("generateFFMPEG", r, returnMap);
}
// Delete Wave Files
@@ -194,8 +197,8 @@ public class RecordingConverter extends
} catch (Exception err) {
log.error("[startConversion]", err);
- recording.setStatus(Recording.Status.ERROR);
+ r.setStatus(Recording.Status.ERROR);
}
- recordingDao.update(recording);
+ recordingDao.update(r);
}
}
Modified: openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java?rev=1761322&r1=1761321&r2=1761322&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java (original)
+++ openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java Sun Sep 18 12:01:46 2016
@@ -19,11 +19,17 @@
package org.apache.openmeetings.core.data.file;
import static org.apache.openmeetings.util.OmFileHelper.thumbImagePrefix;
+import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_JPG;
+import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_MP4;
import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
import java.io.File;
import java.io.InputStream;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.HashSet;
import java.util.List;
+import java.util.Set;
import java.util.UUID;
import org.apache.commons.transaction.util.FileHelper;
Modified: openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceLibrary.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceLibrary.java?rev=1761322&r1=1761321&r2=1761322&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceLibrary.java (original)
+++ openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceLibrary.java Sun Sep 18 12:01:46 2016
@@ -19,7 +19,6 @@
package org.apache.openmeetings.core.remote;
import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_MP4;
-import static org.apache.openmeetings.util.OmFileHelper.WB_VIDEO_FILE_PREFIX;
import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
import java.io.File;
@@ -228,7 +227,7 @@ public class ConferenceLibrary implement
File targetFolder = OmFileHelper.getStreamsSubDir(roomId);
- File target = new File(targetFolder, OmFileHelper.getName(WB_VIDEO_FILE_PREFIX + fileId, EXTENSION_MP4));
+ File target = new File(targetFolder, mp4.getName());
if (mp4.exists() && !target.exists()) {
FileHelper.copy(mp4, target);
}
Modified: openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/red5/ScopeApplicationAdapter.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/red5/ScopeApplicationAdapter.java?rev=1761322&r1=1761321&r2=1761322&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/red5/ScopeApplicationAdapter.java (original)
+++ openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/red5/ScopeApplicationAdapter.java Sun Sep 18 12:01:46 2016
@@ -1394,7 +1394,7 @@ public class ScopeApplicationAdapter ext
type // 0
, url // urlname
, "--dummy--" // baseurl
- , fi.getHash() // fileName //3
+ , fi.getName() // fileName //3
, "--dummy--" // moduleName //4
, "--dummy--" // parentPath //5
, "--dummy--" // room //6
@@ -1433,7 +1433,7 @@ public class ScopeApplicationAdapter ext
, size.x // 4: 416
, size.y // 5: 240
, 0 // 6: 1 // z-index
- , null // 7: null //TODO
+ , fi.getHash() // 7: null //TODO
, 0 // 8: 0 //TODO // counter
, 0 // 9: 0 //TODO // x
, 0 // 10: 0 //TODO // y
Modified: openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java?rev=1761322&r1=1761321&r2=1761322&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java (original)
+++ openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java Sun Sep 18 12:01:46 2016
@@ -222,7 +222,7 @@ public class RoomDao implements IDataPro
}
public Room getUserRoom(Long ownerId, Room.Type type, String name) {
- log.debug("getRoomByOwnerAndTypeId : " + ownerId + " || " + type);
+ log.debug("getUserRoom : " + ownerId + " || " + type);
Room room = null;
List<Room> ll = em.createNamedQuery("getRoomByOwnerAndTypeId", Room.class).setParameter("ownerId", ownerId).setParameter("type", type).getResultList();
if (ll.size() > 0) {
Modified: openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItem.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItem.java?rev=1761322&r1=1761321&r2=1761322&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItem.java (original)
+++ openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItem.java Sun Sep 18 12:01:46 2016
@@ -22,6 +22,9 @@ import static org.apache.openmeetings.ut
import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_MP4;
import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_SWF;
import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_WML;
+import static org.apache.openmeetings.util.OmFileHelper.getStreamsHibernateDir;
+import static org.apache.openmeetings.util.OmFileHelper.getUploadFilesDir;
+import static org.apache.openmeetings.util.OmFileHelper.getUploadWmlDir;
import java.io.File;
import java.util.Date;
@@ -35,7 +38,6 @@ import javax.persistence.Transient;
import javax.xml.bind.annotation.XmlType;
import org.apache.openmeetings.db.entity.IDataProviderEntity;
-import org.apache.openmeetings.util.OmFileHelper;
import org.simpleframework.xml.Element;
@MappedSuperclass
@@ -218,15 +220,17 @@ public abstract class FileItem implement
public final File getFile(String ext) {
File f = null;
if (getHash() != null) {
- File d = new File(OmFileHelper.getUploadFilesDir(), getHash());
+ File d = new File(getUploadFilesDir(), getHash());
switch (getType()) {
case WmlFile:
- f = new File(OmFileHelper.getUploadWmlDir(), String.format("%s.%s", getHash(), ext == null ? EXTENSION_WML : ext));
+ f = new File(getUploadWmlDir(), String.format("%s.%s", getHash(), ext == null ? EXTENSION_WML : ext));
break;
case Image:
f = new File(d, String.format("%s.%s", getHash(), ext == null ? EXTENSION_JPG : ext));
break;
case Recording:
+ f = new File(getStreamsHibernateDir(), String.format("%s.%s", getHash(), ext == null ? EXTENSION_MP4 : ext));
+ break;
case Video:
f = new File(d, String.format("%s.%s", getHash(), ext == null ? EXTENSION_MP4 : ext));
break;
Modified: openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItemLog.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItemLog.java?rev=1761322&r1=1761321&r2=1761322&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItemLog.java (original)
+++ openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItemLog.java Sun Sep 18 12:01:46 2016
@@ -41,7 +41,7 @@ import org.apache.openmeetings.db.entity
@Entity
@NamedQueries({
@NamedQuery(name = "getFileLogsByFile", query = "SELECT fl FROM FileItemLog fl WHERE fl.fileId = :fileId AND fl.fileType = :type"),
- @NamedQuery(name = "countErrorFileLogsByFile", query = "SELECT COUNT(fl) FROM FileItemLog fl WHERE fl.fileId = :fileId AND fl.fileType = :type AND fl.exitCode <> '0'"),
+ @NamedQuery(name = "countErrorFileLogsByFile", query = "SELECT COUNT(fl) FROM FileItemLog fl WHERE fl.fileId = :fileId AND fl.fileType = :type AND fl.exitCode <> 0"),
@NamedQuery(name = "deleteErrorFileLogsByFile", query = "DELETE FROM FileItemLog fl WHERE fl.fileId = :fileId AND fl.fileType = :type") })
@Table(name = "file_log")
public class FileItemLog implements IDataProviderEntity {
Modified: openmeetings/application/trunk/openmeetings-util/src/main/java/org/apache/openmeetings/util/StoredFile.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-util/src/main/java/org/apache/openmeetings/util/StoredFile.java?rev=1761322&r1=1761321&r2=1761322&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-util/src/main/java/org/apache/openmeetings/util/StoredFile.java (original)
+++ openmeetings/application/trunk/openmeetings-util/src/main/java/org/apache/openmeetings/util/StoredFile.java Sun Sep 18 12:01:46 2016
@@ -18,6 +18,8 @@
*/
package org.apache.openmeetings.util;
+import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_JPG;
+import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_MP4;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
@@ -43,7 +45,7 @@ public class StoredFile {
private static final Set<String> chartExtensions = new HashSet<>(Arrays.asList("xchart"));
- private static final Set<String> asIsExtensions = new HashSet<>(Arrays.asList("jpg", "xchart"));
+ private static final Set<String> asIsExtensions = new HashSet<>(Arrays.asList(EXTENSION_MP4, EXTENSION_JPG, "xchart"));
private final String name;
private final String ext;
Modified: openmeetings/application/trunk/openmeetings-web/src/main/webapp/WEB-INF/classes/openmeetings-applicationContext.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/webapp/WEB-INF/classes/openmeetings-applicationContext.xml?rev=1761322&r1=1761321&r2=1761322&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/webapp/WEB-INF/classes/openmeetings-applicationContext.xml (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/webapp/WEB-INF/classes/openmeetings-applicationContext.xml Sun Sep 18 12:01:46 2016
@@ -81,7 +81,6 @@
<bean id="fileservice.service" class="org.apache.openmeetings.core.remote.ConferenceLibrary" />
<bean id="openmeetings.FileProcessor" class="org.apache.openmeetings.core.data.file.FileProcessor" />
<bean id="openmeetings.FlvExplorerConverter" class="org.apache.openmeetings.core.converter.FlvExplorerConverter" />
- <bean id="conferenceservice.service" class="org.apache.openmeetings.core.remote.ConferenceService" />
<bean id="recordingservice.service" class="org.apache.openmeetings.core.remote.RecordingService" />
<bean id="mobile.service" class="org.apache.openmeetings.core.remote.MobileService" />
<bean id="openmeetings.RecordingConverterTask" class="org.apache.openmeetings.core.data.record.converter.RecordingConverterTask" />
Modified: openmeetings/application/trunk/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java?rev=1761322&r1=1761321&r2=1761322&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java (original)
+++ openmeetings/application/trunk/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java Sun Sep 18 12:01:46 2016
@@ -41,7 +41,7 @@ import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;
import org.apache.cxf.feature.Features;
-import org.apache.openmeetings.core.remote.ConferenceService;
+import org.apache.openmeetings.core.session.SessionManager;
import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
import org.apache.openmeetings.db.dao.server.SOAPLoginDao;
import org.apache.openmeetings.db.dao.server.SessiondataDao;
@@ -91,7 +91,7 @@ public class UserWebService implements U
@Autowired
private SessiondataDao sessionDao;
@Autowired
- private ConferenceService conferenceService;
+ private SessionManager sessionManager;
/* (non-Javadoc)
* @see org.apache.openmeetings.webservice.cluster.UserService#login(java.lang.String, java.lang.String)
@@ -347,7 +347,7 @@ public class UserWebService implements U
public int count(@WebParam(name="sid") @QueryParam("sid") String sid, @WebParam(name="roomid") @PathParam("roomid") Long roomId) {
Sessiondata sd = sessionDao.check(sid);
if (AuthLevelUtil.hasUserLevel(userDao.getRights(sd.getUserId()))) {
- return conferenceService.getRoomClientsListByRoomId(roomId).size();
+ return sessionManager.getClientListByRoom(roomId).size();
}
return -1;
}