Skip to content

Commit 35c757e

Browse files
authored
Merge pull request #210 from andrekutianski/feature-bbb-2.6.9
feat: add new parameters to CreateMeetingParameters for BBB 2.6.9
2 parents 9526417 + 2a1e357 commit 35c757e

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
@@ -157,6 +157,16 @@ class CreateMeetingParameters extends MetaParameters
157157
*/
158158
private $disabledFeatures = [];
159159

160+
/**
161+
* @var array
162+
*/
163+
private $disabledFeaturesExclude = [];
164+
165+
/**
166+
* @var bool
167+
*/
168+
private ?bool $recordFullDurationMedia = null;
169+
160170
/**
161171
* @var array
162172
*/
@@ -1267,6 +1277,30 @@ public function setDisabledFeatures(array $disabledFeatures): CreateMeetingParam
12671277
return $this;
12681278
}
12691279

1280+
public function getDisabledFeaturesExclude(): array
1281+
{
1282+
return $this->disabledFeaturesExclude;
1283+
}
1284+
1285+
public function setDisabledFeaturesExclude(array $disabledFeaturesExclude): CreateMeetingParameters
1286+
{
1287+
$this->disabledFeaturesExclude = $disabledFeaturesExclude;
1288+
1289+
return $this;
1290+
}
1291+
1292+
public function getRecordFullDurationMedia(): bool
1293+
{
1294+
return $this->recordFullDurationMedia;
1295+
}
1296+
1297+
public function setRecordFullDurationMedia(bool $recordFullDurationMedia): CreateMeetingParameters
1298+
{
1299+
$this->recordFullDurationMedia = $recordFullDurationMedia;
1300+
1301+
return $this;
1302+
}
1303+
12701304
public function getBreakoutRoomsGroups(): array
12711305
{
12721306
return $this->breakoutRoomsGroups;
@@ -1388,9 +1422,11 @@ public function getHTTPQuery()
13881422
'meetingExpireWhenLastUserLeftInMinutes' => $this->meetingExpireWhenLastUserLeftInMinutes,
13891423
'preUploadedPresentationOverrideDefault' => $this->preUploadedPresentationOverrideDefault,
13901424
'disabledFeatures' => join(',', $this->disabledFeatures),
1425+
'disabledFeaturesExclude' => join(',', $this->disabledFeaturesExclude),
13911426
'notifyRecordingIsOn' => is_null($this->notifyRecordingIsOn) ? ($this->notifyRecordingIsOn ? 'true' : 'false') : $this->notifyRecordingIsOn,
13921427
'presentationUploadExternalUrl' => $this->presentationUploadExternalUrl,
13931428
'presentationUploadExternalDescription' => $this->presentationUploadExternalDescription,
1429+
'recordFullDurationMedia' => !is_null($this->recordFullDurationMedia) ? ($this->recordFullDurationMedia ? 'true' : 'false') : $this->recordFullDurationMedia,
13941430
];
13951431

13961432
// 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)