sage_bbb
is a Python package designed to simplify interaction with the BigBlueButton (BBB) API. BigBlueButton is an open-source web conferencing system ideal for virtual classrooms, online meetings, and remote collaboration.
- Meeting Management: Create, join, end, and retrieve meeting information.
- Recording Management: Access, publish, unpublish, and delete recordings.
- Configuration Management: Customize the BigBlueButton environment.
- URL Validation and Checksum Generation: Ensure secure API requests.
-
Create a Virtual Environment:
python -m venv .venv
-
Activate the Virtual Environment:
- On Windows:
.venv\Scripts\activate
- On macOS and Linux:
source .venv/bin/activate
- On Windows:
-
Install the Package:
pip install python-sage-bbb
-
Install Poetry: Follow the official installation instructions at the Poetry website.
-
Create a New Project (Optional):
poetry new myproject cd myproject
-
Add the Package as a Dependency:
poetry add python-sage-bbb
-
Activate the Virtual Environment:
poetry shell
To verify the installation, run a simple script to import the package:
from sage_bbb.services.client import BigBlueButtonClient
# Initialize the client
bbb_client = BigBlueButtonClient(
"https://your-bbb-server.com/bigbluebutton/api/",
"your-security-salt",
)
# Check connection
connection_status = bbb_client.check_connection()
print(f"Connection Status: {connection_status}")
-
Import the necessary modules:
from sage_bbb.services.client import BigBlueButtonClient
-
Initialize the client:
bbb_client = BigBlueButtonClient( "http://your-bbb-server.com/bigbluebutton/api/", "your-security-salt", )
-
Check the connection:
connection_status = bbb_client.check_connection() print(f"Connection Status: {connection_status}")
-
Create a new meeting:
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}")
-
Join the meeting as a moderator:
join_url_moderator = bbb_client.meetings.join_meeting( meeting_id="random-9887584", full_name="Moderator", password="mp" ) print(f"Join URL (Moderator): {join_url_moderator}")
-
Join the meeting as an attendee:
join_url_attendee = bbb_client.meetings.join_meeting( meeting_id="random-9887584", full_name="Attendee", password="ap" ) print(f"Join URL (Attendee): {join_url_attendee}")
- helpers: Contains the
Meeting
dataclass for managing meeting-related data. - services: Includes modules for client, configurations, factory, meetings, and recordings.
- utils: Provides utility classes for URL validation and checksum generation.
Contributions are welcome! Please refer to the CONTRIBUTING.md file for guidelines.
This project is licensed under the MIT License - see the LICENSE file for details.
Enhance your virtual collaboration experiences with sage_bbb
by integrating BigBlueButton’s powerful features into your own applications and automating routine tasks.