| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
The official BigBlueButton PHP API Client provides a developer-friendly wrapper to interact with the BigBlueButton API. Built for PHP 8.2+, this library simplifies integration and management of BigBlueButton servers in your PHP applications.
Install the library via Composer:
composer require bigbluebutton/bigbluebutton-api-phpUsage instructions and the full API documentation live in the mdBook documentation (build it locally with mdbook build docs).
Bugs and feature requests are tracked on GitHub
To build the documentation you need to install Rust and mdbook
curl https://sh.rustup.rs -sSf | sh -s -- -y
source "$HOME/.cargo/env"
cargo install mdbookSee the contributing documentation for the full workflow.
Please use the GitHub Issues tracker to report bugs or suggest new features.
This project follows strict code quality checks before allowing commits. Here's how to contribute effectively:
# Using Composer alias
composer code-fix
# Or directly
PHP_CS_FIXER_IGNORE_ENV=1 ./vendor/bin/php-cs-fixer fix --allow-risky yescomposer code-check
# Or
./vendor/bin/phpstan analyse# using an alias
composer code-test
# or the same w/o alias
./vendor/bin/phpunitTo run a specific test:
# using an alias
$ composer code-test -- --filter BigBlueButtonTest::testApiVersion
# or the same w/o alias
$ ./vendor/bin/phpunit --filter BigBlueButtonTest::testApiVersionTo generate a code coverage report (requires a coverage driver such as Xdebug or PCOV, stored in ./var/coverage/):
composer code-coverageRegular test runs (composer code-test) do not collect coverage and therefore do not require a coverage driver.
To connect tests to your own BigBlueButton server, copy .env to .env.local and configure:
BBB_SERVER_BASE_URL=https://your-bbb-server.example.com/bigbluebutton/
BBB_SECRET=your-secretThe library uses curl by default and has no HTTP client dependency. Alternatively, inject any PSR-18 client with its PSR-17 factories:
use BigBlueButton\BigBlueButton;
use GuzzleHttp\Client;
use GuzzleHttp\Psr7\HttpFactory;
$factory = new HttpFactory();
$bbb = BigBlueButton::createWithHttpClient(
new Client(['timeout' => 10]),
$factory,
$factory,
'https://your-bbb-server.example.com/bigbluebutton/',
'your-secret',
);See the HTTP Client documentation for more examples (Guzzle, Symfony HttpClient, php-http) and behavioral notes.
We use CaptainHook to enforce code quality:
You can manually run all pre-commit checks to avoid errors:
composer code-fix
composer code-check
composer code-testDo not skip checks using --no-verify unless absolutely necessary.
CaptainHook should be installed automatically after the first composer install. If not:
vendor/bin/captainhook installThis project follows Semantic Versioning (MAJOR.MINOR.PATCH):
Releases are published as git tags in the x.x.x format without a v prefix (like the existing 2.3.1) and are summarized in CHANGELOG.md. When preparing a release, move the changelog's [Unreleased] section to the new version and tag the release commit.
This project is licensed under the terms of the LGPL-3.0.
| Back | FazBrowse Home | New Git URL |