فاما سرورFama Server
مستندات API BigBlueButton به شما امکان میدهد تا با استفاده از API، جلسات و کلاسهای BigBlueButton را به صورت برنامهنویسی مدیریت کنید. در اینجا، تمامی اطلاعات مورد نیاز برای کار با API BigBlueButton، از جمله ایجاد کلاس، مدیریت کلاسها، ارتباط با API، اتمام کلاس، مدیریت زمان، دریافت اطلاعات کلاس، دریافت ویدیوهای ضبط شده و تنظیم کلیدهای API به تفصیل شرح داده شده است.
برای استفاده از API BigBlueButton، نیاز به کلید اشتراکی (Shared Secret) دارید که در فایل پیکربندی سرور BigBlueButton تنظیم میشود.
فایل پیکربندی (bbb-web.properties):
/etc/bigbluebutton/bbb-web.properties
bbb-secret
) در این فایل تعریف شده است.با دستور زیر هم میتوانید کلید را پیدا کنید.
sudo bbb-conf --secret
bigbluebutton.web.api.secret=YOUR_BBB_SECRET
برای ایجاد یک جلسه جدید، از تابع create
استفاده میکنید. این تابع نیاز به پارامترهای زیر دارد:
مثال درخواست API:
GET https://your-bbb-domain.com/bigbluebutton/api/create ?name=Test%20Meeting &meetingID=test-meeting &moderatorPW=moderator123 &attendeePW=attendee123 &checksum=CHECKSUM
تولید Checksum:
Checksum باید با استفاده از الگوریتم SHA-1 تولید شود. فرمت تولید Checksum به صورت زیر است:
$secret = "YOUR_BBB_SECRET"; $name = "Test Meeting"; $meetingID = "test-meeting"; $moderatorPW = "moderator123"; $attendeePW = "attendee123"; $checksum = sha1("create{$secret}name={$name}&meetingID={$meetingID}&moderatorPW={$moderatorPW}&attendeePW={$attendeePW}");
PHP Example:
<?php function createMeeting($meetingID, $name, $moderatorPW, $attendeePW) { $bbb_url = "https://your-bbb-domain.com/bigbluebutton/api/"; $bbb_secret = "YOUR_BBB_SECRET"; $checksum = sha1("create{$bbb_secret}name={$name}&meetingID={$meetingID}&moderatorPW={$moderatorPW}&attendeePW={$attendeePW}"); $api_url = "{$bbb_url}create?name={$name}&meetingID={$meetingID}&moderatorPW={$moderatorPW}&attendeePW={$attendeePW}&checksum={$checksum}"; $response = file_get_contents($api_url); return $response; } ?>
برای دریافت اطلاعات یک جلسه، از تابع getMeetingInfo
استفاده میکنید. پارامتر مورد نیاز:
مثال درخواست API:
GET https://your-bbb-domain.com/bigbluebutton/api/getMeetingInfo ?meetingID=test-meeting &checksum=CHECKSUM
تولید Checksum:
$checksum = sha1("getMeetingInfo{$secret}meetingID={$meetingID}");
PHP Example:
<?php function getMeetingInfo($meetingID) { $bbb_url = "https://your-bbb-domain.com/bigbluebutton/api/"; $bbb_secret = "YOUR_BBB_SECRET"; $checksum = sha1("getMeetingInfo{$bbb_secret}meetingID={$meetingID}"); $api_url = "{$bbb_url}getMeetingInfo?meetingID={$meetingID}&checksum={$checksum}"; $response = file_get_contents($api_url); return $response; } ?>
برای پایان دادن به یک جلسه، از تابع end
استفاده میکنید.
مثال درخواست API:
GET https://your-bbb-domain.com/bigbluebutton/api/end ?meetingID=test-meeting &checksum=CHECKSUM
تولید Checksum:
$checksum = sha1("end{$secret}meetingID={$meetingID}");
PHP Example:
<?php function endMeeting($meetingID) { $bbb_url = "https://your-bbb-domain.com/bigbluebutton/api/"; $bbb_secret = "YOUR_BBB_SECRET"; $checksum = sha1("end{$bbb_secret}meetingID={$meetingID}"); $api_url = "{$bbb_url}end?meetingID={$meetingID}&checksum={$checksum}"; $response = file_get_contents($api_url); return $response; } ?>
BigBlueButton به طور مستقیم پارامترهای زمان را در API نمیپذیرد، اما شما میتوانید زمان شروع و پایان جلسه را هنگام ایجاد جلسه تعیین کنید و با استفاده از سیستمهای زمانبندی خارجی، زمانها را مدیریت کنید.
برای دریافت فهرست ویدیوهای ضبط شده، از تابع getRecordings
استفاده کنید.
مثال درخواست API:
GET https://your-bbb-domain.com/bigbluebutton/api/getRecordings ?meetingID=test-meeting &checksum=CHECKSUM
تولید Checksum:
$checksum = sha1("getRecordings{$secret}meetingID={$meetingID}");
PHP Example:
<?php function getRecordings($meetingID) { $bbb_url = "https://your-bbb-domain.com/bigbluebutton/api/"; $bbb_secret = "YOUR_BBB_SECRET"; $checksum = sha1("getRecordings{$bbb_secret}meetingID={$meetingID}"); $api_url = "{$bbb_url}getRecordings?meetingID={$meetingID}&checksum={$checksum}"; $response = file_get_contents($api_url); return $response; } ?>
برای مدیریت کاربران، شما باید از API های BigBlueButton برای افزودن و حذف کاربران در جلسات استفاده کنید. BigBlueButton امکانات خاصی برای مدیریت کاربران از طریق API ارائه میدهد، و شما باید از توابع create
, getMeetingInfo
, و end
برای انجام این کار استفاده کنید.
برای اطلاعات بیشتر درباره API BigBlueButton و نحوه استفاده از آن، به مستندات زیر مراجعه کنید