Skip to content

Commit 2a1e357

Browse files
feat: add new parameters to CreateMeetingParameters for BBB 2.6.9
Two new fields have been added to CreateMeetingParameters: 'disabledFeaturesExclude' and 'recordFullDurationMedia'. With getter and setter methods, these parameters can now be set. The corresponding test cases have also been updated to account for these new fields.
1 parent 1434c04 commit 2a1e357

File tree

3 files changed

+42
-0
lines changed

3 files changed

+42
-0
lines changed

src/Parameters/CreateMeetingParameters.php

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -317,6 +317,16 @@ class CreateMeetingParameters extends MetaParameters
317317
*/
318318
private $disabledFeatures = [];
319319

320+
/**
321+
* @var array
322+
*/
323+
private $disabledFeaturesExclude = [];
324+
325+
/**
326+
* @var bool
327+
*/
328+
private ?bool $recordFullDurationMedia = null;
329+
320330
/**
321331
* @var array
322332
*/
@@ -1436,6 +1446,30 @@ public function setDisabledFeatures(array $disabledFeatures): CreateMeetingParam
14361446
return $this;
14371447
}
14381448

1449+
public function getDisabledFeaturesExclude(): array
1450+
{
1451+
return $this->disabledFeaturesExclude;
1452+
}
1453+
1454+
public function setDisabledFeaturesExclude(array $disabledFeaturesExclude): CreateMeetingParameters
1455+
{
1456+
$this->disabledFeaturesExclude = $disabledFeaturesExclude;
1457+
1458+
return $this;
1459+
}
1460+
1461+
public function getRecordFullDurationMedia(): bool
1462+
{
1463+
return $this->recordFullDurationMedia;
1464+
}
1465+
1466+
public function setRecordFullDurationMedia(bool $recordFullDurationMedia): CreateMeetingParameters
1467+
{
1468+
$this->recordFullDurationMedia = $recordFullDurationMedia;
1469+
1470+
return $this;
1471+
}
1472+
14391473
public function getBreakoutRoomsGroups(): array
14401474
{
14411475
return $this->breakoutRoomsGroups;
@@ -1557,9 +1591,11 @@ public function getHTTPQuery()
15571591
'meetingExpireWhenLastUserLeftInMinutes' => $this->meetingExpireWhenLastUserLeftInMinutes,
15581592
'preUploadedPresentationOverrideDefault' => $this->preUploadedPresentationOverrideDefault,
15591593
'disabledFeatures' => join(',', $this->disabledFeatures),
1594+
'disabledFeaturesExclude' => join(',', $this->disabledFeaturesExclude),
15601595
'notifyRecordingIsOn' => is_null($this->notifyRecordingIsOn) ? ($this->notifyRecordingIsOn ? 'true' : 'false') : $this->notifyRecordingIsOn,
15611596
'presentationUploadExternalUrl' => $this->presentationUploadExternalUrl,
15621597
'presentationUploadExternalDescription' => $this->presentationUploadExternalDescription,
1598+
'recordFullDurationMedia' => !is_null($this->recordFullDurationMedia) ? ($this->recordFullDurationMedia ? 'true' : 'false') : $this->recordFullDurationMedia,
15631599
];
15641600

15651601
// Add breakout rooms parameters only if the meeting is a breakout room

tests/Parameters/CreateMeetingParametersTest.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,8 @@ public function testCreateMeetingParameters()
8989
$this->assertEquals($params['meetingExpireWhenLastUserLeftInMinutes'], $createMeetingParams->getMeetingExpireWhenLastUserLeftInMinutes());
9090
$this->assertEquals($params['preUploadedPresentationOverrideDefault'], $createMeetingParams->isPreUploadedPresentationOverrideDefault());
9191
$this->assertEquals($params['disabledFeatures'], $createMeetingParams->getDisabledFeatures());
92+
$this->assertEquals($params['disabledFeaturesExclude'], $createMeetingParams->getDisabledFeaturesExclude());
93+
$this->assertEquals($params['recordFullDurationMedia'], $createMeetingParams->getRecordFullDurationMedia());
9294
$this->assertEquals(json_encode($params['groups']), json_encode($createMeetingParams->getBreakoutRoomsGroups()));
9395
$this->assertEquals($params['meta_presenter'], $createMeetingParams->getMeta('presenter'));
9496
$this->assertEquals($params['meta_endCallbackUrl'], $createMeetingParams->getMeta('endCallbackUrl'));

tests/TestCase.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -180,12 +180,14 @@ protected function generateCreateParams()
180180
'preUploadedPresentationOverrideDefault' => $this->faker->boolean,
181181
'groups' => $this->generateBreakoutRoomsGroups(),
182182
'disabledFeatures' => $this->faker->randomElements(Feature::getValues()),
183+
'disabledFeaturesExclude' => $this->faker->randomElements(Feature::getValues()),
183184
'meta_presenter' => $this->faker->name,
184185
'meta_endCallbackUrl' => $this->faker->url,
185186
'meta_bbb-recording-ready-url' => $this->faker->url,
186187
'notifyRecordingIsOn' => $this->faker->boolean(50),
187188
'presentationUploadExternalUrl' => $this->faker->url,
188189
'presentationUploadExternalDescription' => $this->faker->text,
190+
'recordFullDurationMedia' => $this->faker->boolean(50),
189191
];
190192
}
191193

@@ -281,6 +283,8 @@ protected function getCreateMock($params)
281283
->setMeetingExpireWhenLastUserLeftInMinutes($params['meetingExpireWhenLastUserLeftInMinutes'])
282284
->setPreUploadedPresentationOverrideDefault($params['preUploadedPresentationOverrideDefault'])
283285
->setDisabledFeatures($params['disabledFeatures'])
286+
->setDisabledFeaturesExclude($params['disabledFeaturesExclude'])
287+
->setRecordFullDurationMedia($params['recordFullDurationMedia'])
284288
->addMeta('presenter', $params['meta_presenter'])
285289
->addMeta('bbb-recording-ready-url', $params['meta_bbb-recording-ready-url'])
286290
->setNotifyRecordingIsOn($params['notifyRecordingIsOn'])

0 commit comments

Comments
 (0)