Skip to content
Snippets Groups Projects
Commit 540ce10c authored by Pedro Beschorner Marin's avatar Pedro Beschorner Marin Committed by Anton Georgiev
Browse files

Recording external video events

parent ddc7a974
No related branches found
No related tags found
No related merge requests found
......@@ -36,7 +36,7 @@ class UpdateExternalVideoRecordEvent extends AbstractExternalVideoRecordEvent {
eventMap.put(TIME, time.toString)
}
def setState(state: Int) {
def setState(state: Boolean) {
eventMap.put(STATE, state.toString)
}
}
......
......@@ -7,7 +7,7 @@ case class StartExternalVideoPubMsgBody(externalVideoUrl: String)
object UpdateExternalVideoPubMsg { val NAME = "UpdateExternalVideoPubMsg" }
case class UpdateExternalVideoPubMsg(header: BbbClientMsgHeader, body: UpdateExternalVideoPubMsgBody) extends StandardMsg
case class UpdateExternalVideoPubMsgBody(status: String, rate: Double, time: Double, state: Int)
case class UpdateExternalVideoPubMsgBody(status: String, rate: Double, time: Double, state: Boolean)
object StopExternalVideoPubMsg { val NAME = "StopExternalVideoPubMsg" }
case class StopExternalVideoPubMsg(header: BbbClientMsgHeader, body: StopExternalVideoPubMsgBody) extends StandardMsg
......@@ -20,7 +20,7 @@ case class StartExternalVideoEvtMsgBody(externalVideoUrl: String)
object UpdateExternalVideoEvtMsg { val NAME = "UpdateExternalVideoEvtMsg" }
case class UpdateExternalVideoEvtMsg(header: BbbClientMsgHeader, body: UpdateExternalVideoEvtMsgBody) extends BbbCoreMsg
case class UpdateExternalVideoEvtMsgBody(status: String, rate: Double, time: Double, state: Int)
case class UpdateExternalVideoEvtMsgBody(status: String, rate: Double, time: Double, state: Boolean)
object StopExternalVideoEvtMsg { val NAME = "StopExternalVideoEvtMsg" }
case class StopExternalVideoEvtMsg(header: BbbClientMsgHeader, body: StopExternalVideoEvtMsgBody) extends BbbCoreMsg
......
......@@ -21,7 +21,7 @@ export default function emitExternalVideoEvent(options) {
check(playerStatus, {
rate: Match.Maybe(Number),
time: Match.Maybe(Number),
state: Match.Maybe(Number),
state: Match.Maybe(Boolean),
});
let rate = playerStatus.rate || 0;
......
import { Meteor } from 'meteor/meteor';
import { check } from 'meteor/check';
import Logger from '/imports/startup/server/logger';
import RedisPubSub from '/imports/startup/server/redis';
export default function updateExternalVideoStatus(credentials, options) {
const REDIS_CONFIG = Meteor.settings.private.redis;
const CHANNEL = REDIS_CONFIG.channels.toAkkaApps;
const EVENT_NAME = 'UpdateExternalVideoStatusMsg';
const { meetingId, requesterUserId } = credentials;
const { eventName, playerStatus } = options;
check(meetingId, String);
check(requesterUserId, String);
const payload = { eventName, playerStatus };
Logger.info(`User id=${requesterUserId} sending video status: ${eventName} for meeting ${meetingId}`);
return RedisPubSub.publishUserMessage(CHANNEL, EVENT_NAME, meetingId, requesterUserId, payload);
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment