forked from External/greenlight
fix recording update channel and routes
This commit is contained in:
parent
c70ad42d8b
commit
9667e3757b
|
@ -62,13 +62,13 @@
|
|||
};
|
||||
|
||||
$(document).on("turbolinks:load", function() {
|
||||
// disable meeting updates if enabled from a previous page
|
||||
if (App.meeting_update) {
|
||||
disableMeetingUpdates();
|
||||
}
|
||||
if ($("body[data-controller=landing]").get(0)) {
|
||||
if ($("body[data-action=rooms]").get(0)) {
|
||||
// disable meeting updates if enabled from a previous page
|
||||
if (App.meeting_update) {
|
||||
disableMeetingUpdates();
|
||||
}
|
||||
if ($(".page-wrapper.rooms").data('main-room') === false) {
|
||||
if (!$(".page-wrapper.rooms").data('main-room')) {
|
||||
enableMeetingUpdates();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -16,10 +16,11 @@
|
|||
|
||||
(function() {
|
||||
|
||||
var initRooms = function() {
|
||||
App.messages = App.cable.subscriptions.create({
|
||||
var enableRecordingUpdates = function() {
|
||||
App.recording_update = App.cable.subscriptions.create({
|
||||
channel: 'RecordingUpdatesChannel',
|
||||
encrypted_id: $(".page-wrapper").data('id')
|
||||
admin_id: $(".page-wrapper.rooms").data('admin-id'),
|
||||
meeting_id: $(".page-wrapper.rooms").data('id')
|
||||
},
|
||||
{
|
||||
received: function(data) {
|
||||
|
@ -57,10 +58,19 @@
|
|||
});
|
||||
};
|
||||
|
||||
var disableRecordingUpdates = function() {
|
||||
App.recording_update.unsubscribe();
|
||||
delete App.recording_update
|
||||
};
|
||||
|
||||
$(document).on("turbolinks:load", function() {
|
||||
// disable recording updates if enabled from a previous page
|
||||
if (App.recording_update) {
|
||||
disableRecordingUpdates();
|
||||
}
|
||||
if ($("body[data-controller=landing]").get(0)) {
|
||||
if ($("body[data-action=rooms]").get(0)) {
|
||||
initRooms();
|
||||
enableRecordingUpdates();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
|
@ -16,6 +16,11 @@
|
|||
|
||||
class RecordingUpdatesChannel < ApplicationCable::Channel
|
||||
def subscribed
|
||||
stream_from "#{params[:encrypted_id]}_recording_updates_channel"
|
||||
full_id = if params[:meeting_id].present?
|
||||
"#{params[:admin_id]}-#{params[:meeting_id]}"
|
||||
else
|
||||
params[:admin_id]
|
||||
end
|
||||
stream_from "#{full_id}_recording_updates_channel"
|
||||
end
|
||||
end
|
||||
|
|
|
@ -28,17 +28,20 @@ Rails.application.routes.draw do
|
|||
# There are two resources [meetings|rooms]
|
||||
# meetings offer a landing page for NON authenticated users to create and join session in BigBlueButton
|
||||
# rooms offer a customized landing page for authenticated users to create and join session in BigBlueButton
|
||||
get '/:resource/:id', to: 'landing#resource', as: :resource
|
||||
get '/:resource/:id/join', to: 'bbb#join', as: :bbb_join, defaults: {format: 'json'}
|
||||
|
||||
get '/rooms/:room_id/recordings', to: 'bbb#recordings', defaults: {format: 'json'}
|
||||
post '/:resource/:id/callback', to: 'bbb#callback' #, defaults: {format: 'json'}
|
||||
patch '/rooms/:id/recordings/:record_id', to: 'bbb#update_recordings', defaults: {format: 'json'}
|
||||
delete '/rooms/:id/recordings/:record_id', to: 'bbb#delete_recordings', defaults: {format: 'json'}
|
||||
get '/rooms/:room_id/:id', to: 'landing#resource', resource: 'rooms'
|
||||
get '/rooms/:room_id', to: 'landing#resource', resource: 'rooms'
|
||||
delete '/rooms/:room_id/:id/end', to: 'bbb#end', defaults: {format: 'json'}
|
||||
|
||||
get '/:resource/:id', to: 'landing#resource', as: :resource
|
||||
get '/:resource/:id/join', to: 'bbb#join', as: :bbb_join, defaults: {format: 'json'}
|
||||
post '/:resource/:id/callback', to: 'bbb#callback' #, defaults: {format: 'json'}
|
||||
|
||||
get '/:resource/:room_id/:id/wait', to: 'landing#wait_for_moderator'
|
||||
get '/:resource/:room_id/:id/session_status_refresh', to: 'landing#session_status_refresh'
|
||||
delete '/rooms/:room_id/:id/end', to: 'bbb#end', defaults: {format: 'json'}
|
||||
get '/rooms/:room_id/:id', to: 'landing#resource', resource: 'rooms'
|
||||
get '/:resource/:room_id/:id/join', to: 'bbb#join', defaults: {format: 'json'}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue