openvidu-server: recordingStarted alwasy sent to CDR/Webhook

pull/375/head
pabloFuente 2019-06-24 17:21:26 +02:00
parent e5e9d1f4cc
commit a073f73a8b
5 changed files with 11 additions and 10 deletions

View File

@ -423,8 +423,6 @@ public class SessionEventsHandler {
public void sendRecordingStartedNotification(Session session, Recording recording) { public void sendRecordingStartedNotification(Session session, Recording recording) {
CDR.recordRecordingStarted(session.getSessionId(), recording);
// Filter participants by roles according to "openvidu.recording.notification" // Filter participants by roles according to "openvidu.recording.notification"
Set<Participant> filteredParticipants = this.filterParticipantsByRole( Set<Participant> filteredParticipants = this.filterParticipantsByRole(
this.openviduConfig.getRolesFromRecordingNotification(), session.getParticipants()); this.openviduConfig.getRolesFromRecordingNotification(), session.getParticipants());

View File

@ -37,7 +37,6 @@ import com.github.dockerjava.api.model.Volume;
import io.openvidu.client.OpenViduException; import io.openvidu.client.OpenViduException;
import io.openvidu.client.OpenViduException.Code; import io.openvidu.client.OpenViduException.Code;
import io.openvidu.java.client.Recording.Status;
import io.openvidu.java.client.RecordingLayout; import io.openvidu.java.client.RecordingLayout;
import io.openvidu.java.client.RecordingProperties; import io.openvidu.java.client.RecordingProperties;
import io.openvidu.server.OpenViduServer; import io.openvidu.server.OpenViduServer;
@ -99,7 +98,6 @@ public class ComposedRecordingService extends RecordingService {
return this.stopRecordingWithVideo(session, recording, reason); return this.stopRecordingWithVideo(session, recording, reason);
} else { } else {
recording = this.sealRecordingMetadataFileAsProcessing(recording); recording = this.sealRecordingMetadataFileAsProcessing(recording);
this.cdr.recordRecordingStatusChanged(session.getSessionId(), recording, Status.processing);
return this.stopRecordingAudioOnly(session, recording, reason, 0); return this.stopRecordingAudioOnly(session, recording, reason, 0);
} }
} }

View File

@ -92,7 +92,7 @@ public class RecordingManager {
@Autowired @Autowired
private KmsManager kmsManager; private KmsManager kmsManager;
@Autowired @Autowired
private CallDetailRecord cdr; private CallDetailRecord cdr;
@ -118,7 +118,8 @@ public class RecordingManager {
this.dockerManager = new DockerManager(); this.dockerManager = new DockerManager();
this.composedRecordingService = new ComposedRecordingService(this, recordingDownloader, openviduConfig, cdr); this.composedRecordingService = new ComposedRecordingService(this, recordingDownloader, openviduConfig, cdr);
this.singleStreamRecordingService = new SingleStreamRecordingService(this, recordingDownloader, openviduConfig, cdr); this.singleStreamRecordingService = new SingleStreamRecordingService(this, recordingDownloader, openviduConfig,
cdr);
log.info("Recording module required: Downloading openvidu/openvidu-recording:" log.info("Recording module required: Downloading openvidu/openvidu-recording:"
+ openviduConfig.getOpenViduRecordingVersion() + " Docker image (350MB aprox)"); + openviduConfig.getOpenViduRecordingVersion() + " Docker image (350MB aprox)");
@ -185,6 +186,9 @@ public class RecordingManager {
throw e; throw e;
} }
this.updateRecordingManagerCollections(session, recording); this.updateRecordingManagerCollections(session, recording);
this.cdr.recordRecordingStarted(session.getSessionId(), recording);
if (!(OutputMode.COMPOSED.equals(properties.outputMode()) && properties.hasVideo())) { if (!(OutputMode.COMPOSED.equals(properties.outputMode()) && properties.hasVideo())) {
// Directly send recording started notification for all cases except for // Directly send recording started notification for all cases except for
// COMPOSED recordings with video (will be sent on first RECORDER subscriber) // COMPOSED recordings with video (will be sent on first RECORDER subscriber)

View File

@ -24,6 +24,7 @@ import org.slf4j.LoggerFactory;
import io.openvidu.client.OpenViduException; import io.openvidu.client.OpenViduException;
import io.openvidu.client.OpenViduException.Code; import io.openvidu.client.OpenViduException.Code;
import io.openvidu.java.client.Recording.Status;
import io.openvidu.java.client.RecordingLayout; import io.openvidu.java.client.RecordingLayout;
import io.openvidu.java.client.RecordingProperties; import io.openvidu.java.client.RecordingProperties;
import io.openvidu.server.cdr.CallDetailRecord; import io.openvidu.server.cdr.CallDetailRecord;
@ -89,8 +90,10 @@ public abstract class RecordingService {
protected Recording sealRecordingMetadataFileAsProcessing(Recording recording) { protected Recording sealRecordingMetadataFileAsProcessing(Recording recording) {
final String entityFile = this.openviduConfig.getOpenViduRecordingPath() + recording.getId() + "/" final String entityFile = this.openviduConfig.getOpenViduRecordingPath() + recording.getId() + "/"
+ RecordingManager.RECORDING_ENTITY_FILE + recording.getId(); + RecordingManager.RECORDING_ENTITY_FILE + recording.getId();
return this.sealRecordingMetadataFile(recording, 0, 0, io.openvidu.java.client.Recording.Status.processing, Recording rec = this.sealRecordingMetadataFile(recording, 0, 0,
entityFile); io.openvidu.java.client.Recording.Status.processing, entityFile);
this.cdr.recordRecordingStatusChanged(recording.getSessionId(), recording, Status.processing);
return rec;
} }
/** /**

View File

@ -52,7 +52,6 @@ import com.google.gson.JsonObject;
import io.openvidu.client.OpenViduException; import io.openvidu.client.OpenViduException;
import io.openvidu.client.OpenViduException.Code; import io.openvidu.client.OpenViduException.Code;
import io.openvidu.java.client.Recording.Status;
import io.openvidu.java.client.RecordingProperties; import io.openvidu.java.client.RecordingProperties;
import io.openvidu.server.cdr.CallDetailRecord; import io.openvidu.server.cdr.CallDetailRecord;
import io.openvidu.server.config.OpenviduConfig; import io.openvidu.server.config.OpenviduConfig;
@ -133,7 +132,6 @@ public class SingleStreamRecordingService extends RecordingService {
@Override @Override
public Recording stopRecording(Session session, Recording recording, EndReason reason) { public Recording stopRecording(Session session, Recording recording, EndReason reason) {
recording = this.sealRecordingMetadataFileAsProcessing(recording); recording = this.sealRecordingMetadataFileAsProcessing(recording);
this.cdr.recordRecordingStatusChanged(session.getSessionId(), recording, Status.processing);
return this.stopRecording(session, recording, reason, 0); return this.stopRecording(session, recording, reason, 0);
} }