Skip to main content

A Python client library for interacting with BigBlueButton API, enabling the creation and management of online meetings, recordings, and configurations.

Project description

sage_bbb

Black Pylint

Table of Contents

Introduction

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.

Features

  • 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.

Installation

Using pip

  1. Create a Virtual Environment:

    python -m venv .venv
    
  2. Activate the Virtual Environment:

    • On Windows:
      .venv\Scripts\activate
      
    • On macOS and Linux:
      source .venv/bin/activate
      
  3. Install the Package:

    pip install python-sage-bbb
    

Using Poetry

  1. Install Poetry: Follow the official installation instructions at the Poetry website.

  2. Create a New Project (Optional):

    poetry new myproject
    cd myproject
    
  3. Add the Package as a Dependency:

    poetry add python-sage-bbb
    
  4. Activate the Virtual Environment:

    poetry shell
    

Usage

Verifying Installation

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}")

Creating a Meeting

  1. Import the necessary modules:

    from sage_bbb.services.client import BigBlueButtonClient
    
  2. Initialize the client:

    bbb_client = BigBlueButtonClient(
        "http://your-bbb-server.com/bigbluebutton/api/",
        "your-security-salt",
    )
    
  3. Check the connection:

    connection_status = bbb_client.check_connection()
    print(f"Connection Status: {connection_status}")
    
  4. 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}")
    

Package Structure

  • 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.

Contributing

Contributions are welcome! Please refer to the CONTRIBUTING.md file for guidelines.

License

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python_sage_bbb-0.1.1.tar.gz (10.3 kB view hashes)

Uploaded Source

Built Distribution

python_sage_bbb-0.1.1-py3-none-any.whl (12.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page