Skip to main content

A module for reading bbb meetings from bbb servers

Project description

bbbmeetings

A Library that helps with reading information regarding Big Blue Button via the BBB-API. The goal of bbbmeetings is to make it easy to generate stats about one or more BBB-Instances.

It was a non-goal to create a full coverage of the BBB-API, for ending meetings, creating meetings, managing recordings etc.

Installation

Via pip

pip install bbbmeetings

Usage

First we need to create a BBB Server. To allow the connection with that server you need to know its secret, which can be found using bbb-conf -- secret as mentioned here. You can create a server like this:

from bbbmeetings import BBBServer
server = BBBServer(host="https://bbb.example.org", secret="!#%Random!#$%Fsecret!#$%")

For convenience bbbmeetings offers a way of treating multiple servers as one server:

from bbbmeetings import BBBServers, BBBServer

# Create a BBBServers Object from multiple BBBServer-Objects
servers = BBBServers.from_list([
        BBBServer("https://bbb1.example.org", "!#%Random!#$%Fsecret!#$%"),
        BBBServer("https://bbb2.example.org", "!#%Random!#$%Fsecret!#$%"),
        BBBServer("https://bbb3.example.org", "!#%Random!#$%Fsecret!#$%"),
        BBBServer("https://bbb4.example.org", "!#%Random!#$%Fsecret!#$%"),
        BBBServer("https://bbb5.example.org", "!#%Random!#$%Fsecret!#$%"),
    ])

Most methods on BBBServer and BBBServers are the same, but in the following examples I will use servers to showcase how this module may be used:

# Get a list of meetings running on all servers and print all details about them
for meeting in servers.meetings:
    print(meeting)

You can also get some numbers directly (in this case I use python's formatting strings):

print(f"On all servers there are {servers.people} people in {servers.n_meetings} meetings. {servers.video_active} people have their webcam on, {servers.connected_with_mic} connected with mic. There are {servers.moderators} moderators.")

If you want to have a list of all people in all meetings on all servers run:

print(f"The names of everyone on all servers are {', '.join([a.name for a in servers.attendees])}")

If you just want a list with the names of Presenters you can run:

presenter_names = [a.name for a in servers.attendees if a.isPresenter]

Or if you want to know the longest running meeting:

print(f"Longest running meeting is {servers.longest_duration.name} with a duration of {servers.longest_duration.duration}")

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

bbbmeetings-0.1.5.tar.gz (6.9 kB view hashes)

Uploaded Source

Built Distribution

bbbmeetings-0.1.5-py3-none-any.whl (7.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