Getting Started
Requirements
- PHP 8.2 or above.
- curl extension.
- mbstring extension.
- SimpleXML extension (ext-simplexml).
- JSON extension (ext-json).
The library itself has no runtime package dependencies. It sends requests with curl by default; alternatively you can inject any PSR-18 http client.
Installation
bigbluebutton-api-php can be installed via Composer CLI
composer require bigbluebutton/bigbluebutton-api-php
or by editing composer.json
{
"require": {
"bigbluebutton/bigbluebutton-api-php": "^3.0"
}
}
Configuration
The library reads the connection settings from two environment variables:
BBB_SERVER_BASE_URL=https://your-bbb-server.example.com/bigbluebutton/
BBB_SECRET=your-secret
You get both from your BigBlueButton server with bbb-conf --secret (see Server Configuration). In Laravel, add them to your .env; in other frameworks use the mechanism your application provides.
Alternatively, pass both values explicitly to the constructor:
use BigBlueButton\BigBlueButton;
$bbb = new BigBlueButton('https://your-bbb-server.example.com/bigbluebutton/', 'your-secret');
First call
A simple usage example that creates a meeting:
use BigBlueButton\BigBlueButton;
use BigBlueButton\Parameters\CreateMeetingParameters;
$bbb = new BigBlueButton();
$createMeetingParams = new CreateMeetingParameters('bbb-meeting-uid-65', 'BigBlueButton API Meeting');
$response = $bbb->createMeeting($createMeetingParams);
echo 'Created Meeting with ID: ' . $response->getMeetingId();
From here, continue with the Meetings chapter and the Full Usage Sample.