Creating a Meeting
To create a meeting using the python-sage-bbb package, follow these steps:
Import the necessary modules:
from sage_bbb.services.client import BigBlueButtonClient
Initialize the client:
Initialize the client with your BigBlueButton server URL and security salt. Replace the placeholder values with your actual server URL and security salt.
bbb_client = BigBlueButtonClient( "http://your-bbb-server.com/bigbluebutton/api/", "your-security-salt", )
Check the connection:
Before creating a meeting, you can check the connection to ensure everything is set up correctly.
connection_status = bbb_client.check_connection() print(f"Connection Status: {connection_status}")
Create a new meeting:
Use the
create_meetingmethod to create a new meeting. You can specify various parameters such as the meeting name, meeting ID, attendee and moderator passwords, and whether to enable recording.new_meeting = bbb_client.meetings.create_meeting( name="Test Meeting", meeting_id="random-9887584", attendee_pw="ap", moderator_pw="mp", record=True, # Enable recording autoStartRecording=True, allowStartStopRecording=True ) print(f"New Meeting: {new_meeting}")
This will create a new meeting on your BigBlueButton server. You can customize the meeting by passing additional parameters as described in the BigBlueButton API documentation.
Create Meeting Parameters
The following table lists the parameters you can use when creating a meeting:
Param Name |
Type |
Description |
|---|---|---|
|
String |
A name for the meeting. |
|
String |
A meeting ID that can be used to identify this meeting by the 3rd-party application. Must be unique. |
|
String |
[DEPRECATED] The password for attendees. |
|
String |
[DEPRECATED] The password for moderators. |
|
String |
A welcome message that gets displayed on the chat window when the participant joins. |
|
String |
The dial access number that participants can call in using regular phone. |
|
String |
Voice conference number for the FreeSWITCH voice conference associated with this meeting. |
|
Number |
The maximum number of users allowed to join the conference at the same time. |
|
String |
The URL that the BigBlueButton client will go to after users click the OK button on the ‘You have been logged out’ message. |
|
Boolean |
Setting ‘record=true’ instructs the BigBlueButton server to record the media and events in the session for later playback. |
|
Number |
The maximum length (in minutes) for the meeting. |
|
Boolean |
Must be set to true to create a breakout room. |
|
String |
Must be provided when creating a breakout room. |
|
Number |
The sequence number of the breakout room. |
|
Boolean |
If set to true, the client will give the user the choice to choose the breakout rooms they want to join. |
|
String |
Pass one or more metadata values when creating a meeting. |
|
String |
Display a message to all moderators in the public chat. |
|
Boolean |
Automatically start recording when the first user joins. |
|
Boolean |
Allow the user to start/stop recording. |
|
Boolean |
Setting webcamsOnlyForModerator=true will cause all webcams shared by viewers to only appear for moderators. |
|
String |
Set the banner text in the client. |
|
String |
Set the banner background color in the client. |
|
Boolean |
Setting true will mute all users when the meeting starts. |
|
Boolean |
Allow moderators to unmute other users in the meeting. |
|
Boolean |
Prevent users from sharing their camera in the meeting. |
|
Boolean |
Only allow users to join in listen-only mode. |
|
Boolean |
Disable private chats in the meeting. |
|
Boolean |
Disable public chat in the meeting. |
|
Boolean |
Disable notes in the meeting. |
|
Boolean |
Prevent viewers from seeing other viewers in the user list. |
|
Boolean |
Apply lock settings to users when they join. |
|
Boolean |
Prevent viewers from seeing other viewers’ cursor when multi-user whiteboard is on. |
|
Enum |
Set the guest policy for the meeting. |
|
Boolean |
Automatically end the meeting when no moderators are present. |
|
Enum |
Set the default layout for the meeting. |
|
Boolean |
Enable the Learning Dashboard for the meeting. |
|
Boolean |
Allow moderators to close other users’ cameras. |
|
Boolean |
Allow users to join meetings without session cookie validation. |
|
Boolean |
Disable virtual backgrounds for all users in the meeting. |
|
Number |
Defines the max number of webcams a single user can share simultaneously. |
|
Number |
Defines the max number of webcams a meeting can have simultaneously. |
|
Number |
Automatically end meeting if no user joins within a specified period after meeting creation. |
|
Number |
Automatically end meeting a specified number of minutes after the last user leaves. |
|
String |
Pre-defined groups to automatically assign students to breakout rooms. |
|
String |
URL to an image displayed above the participants list. |
|
String |
Comma-separated list of features to disable in a meeting. |
|
String |
Comma-separated list of features to exclude from being disabled. |
|
Boolean |
Whether to override the default presentation with a pre-uploaded presentation. |
|
Boolean |
Display a modal to collect recording consent from users when recording starts. |
|
String |
URL to an external application for uploading presentation files. |
|
String |
Description of how to use an external application to upload presentation files. |
|
Boolean |
Capture media for the full duration of the meeting if recording is enabled. |
|
String |
URL to a pre-uploaded presentation file. |
|
String |
Name of the pre-uploaded presentation. |
|
Boolean |
Allow moderators to promote guests to moderators. |
For more details on the create API call, refer to the BigBlueButton API documentation.