Post single video script in bigbluebutton bbb-playback-video

422 views
Skip to first unread message

Dharmendra Sinsinwar

unread,
May 18, 2023, 1:45:36 AM5/18/23
to BigBlueButton-dev
by***@Bu***Stream:/usr/local/bigbluebutton/core/scripts$ bbb-record --list-workflows

# Enabled recording processing steps:
#
# archive
# sanity
# captions
# -
# process:presentation
# -
# process:video
# process:presentation
# publish:presentation
# process:video
# publish:video
#
# Available processing scripts:
#
# presentation
# video
 


The following is the image of path /usr/local/bigbluebutton/core/scripts, where all the scripts for recording and playback resides.

I installed bbb-playback-video, but couldn't able to find the post scripts for single video.


Capture.PNG


Dharmendra Sinsinwar

unread,
May 24, 2023, 8:09:31 AM5/24/23
to BigBlueButton-dev

Hello everyone,
I need to find a way to known when the single playback video gets ready, so that I can upload it to the blob storage, rather than keeping  it in the bbb server.

Dharmendra Sinsinwar

unread,
May 24, 2023, 8:20:19 AM5/24/23
to BigBlueButton-dev

I see that, in command sudo bbb-record --watch, under published column it shows first 'presentation' and after some time 'video'.

Jean Pluzo

unread,
May 25, 2023, 6:16:14 AM5/25/23
to BigBlueButton-dev
Hi Dharmendra,

when a recording is finished (published) you'll find the files in /var/bigbluebutton/published/presentation/<meeting-id>.
Perhaps you could create a script that monitors this location and, when a new meeting-id folder appears, notify you (or copy the desired file).
Btw, the single playback file is in /var/bigbluebutton/published/presentation/<meeting-id>/video

Regards,
J.

Dharmendra Sinsinwar

unread,
May 25, 2023, 7:31:16 AM5/25/23
to BigBlueButton-dev
Thanks, I am thinking the thing, like
{ the following script runs after the post_publish_recording_ready_callback.rb file, like system("/usr/local/bigbluebutton/core/scripts/post_publish/CheckVideo.sh #{meeting_id}") }

while true
do

        if [ ffprobe /var/bigbluebutton/published/video/$1/video-0.m4v -hide_banner -loglevel 0; echo $?  -eq 0 ]
then

        curl -X POST -d 'Meeting ID:'$1 https://***.requestcatcher.com/test   
// just for checking
        break
else
        sleep 5
fi

done

But my concern is, whether it's a suitable ( or good) approach.


** and make sure the bash file is owned by bigbluebutton.

Dharmendra Sinsinwar

unread,
May 25, 2023, 12:03:51 PM5/25/23
to BigBlueButton-dev
After playing sometime with the above code,
I got the below error on bbb-conf --check
#
# Warning: found 'Nil' message in recording processing logs.  Possible GEM errors
#
#  https://github.com/bigbluebutton/bigbluebutton/issues/14287
#

may I got this error after running   bbb-record --deleteall.

DistanceLearning.cloud

unread,
May 26, 2023, 7:23:07 AM5/26/23
to BigBlueButton-dev

No need to check,  just put the upload code in post_publish.rb and the recording scripts will execute this automatically when it is published.

 

Also, if you really need to know when the recording states change for a recording,  set a webhook with bbb-webhooks, and every event will be sent to your application real time.

 

Regards,

Stephen

Dharmendra Sinsinwar

unread,
May 29, 2023, 11:21:59 AM5/29/23
to BigBlueButton-dev
Thanks for the feedback, but I want the check condition for the single video made in .m4v format.

I tried this script but it gives me two time hit, one on published and second on single video creation:

#!/bin/bash


while true
do
 
 if [ ffprobe /var/bigbluebutton/published/video/$1/video-0.m4v -hide_banner -loglevel 0; echo $? -eq 0 ]      
then

        curl -X POST -d 'Meeting ID:'$1 https://bbb.requestcatcher.com/test

        break
else
        sleep 5
fi

done


And the second script I used is the :

#!/bin/bash

while true
do

        if [[ -d "/var/bigbluebutton/published/video/$1" ]]
then

        curl -X POST -d 'Meeting ID:'$1 https://bbb.requestcatcher.com/test

        break
else
        sleep 5
fi

done


which doesn't create the single video and got stuck in the time loop.
Reply all
Reply to author
Forward
0 new messages