Skip to content

Commit ec0a70f

Browse files
authored
Merge pull request #221 from DigitalTimK/feature/isMeetingExisting
isMeetingExisting (new feature)
2 parents 568ae13 + 2df09e4 commit ec0a70f

File tree

2 files changed

+34
-1
lines changed

2 files changed

+34
-1
lines changed

src/BigBlueButton.php

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,19 @@ public function isMeetingRunning(IsMeetingRunningParameters $meetingParams): IsM
225225
return new IsMeetingRunningResponse($xml);
226226
}
227227

228+
/**
229+
* Checks weather a meeting is existing.
230+
*
231+
* @throws BadResponseException
232+
*/
233+
public function isMeetingExisting(string $meetingId): bool
234+
{
235+
$getMeetingInfoParameters = new GetMeetingInfoParameters($meetingId);
236+
$meetingInfoResponse = $this->getMeetingInfo($getMeetingInfoParameters);
237+
238+
return $meetingInfoResponse->success();
239+
}
240+
228241
/**
229242
* @deprecated Replaced by same function-name provided by UrlBuilder-class
230243
*/
@@ -569,7 +582,9 @@ private function sendRequest(string $url, string $payload = '', string $contentT
569582
*/
570583
private function processXmlResponse(string $url, string $payload = ''): \SimpleXMLElement
571584
{
572-
return new \SimpleXMLElement($this->sendRequest($url, $payload, 'application/xml'));
585+
$response = $this->sendRequest($url, $payload, $contentType);
586+
587+
return new \SimpleXMLElement($response);
573588
}
574589

575590
/**

tests/BigBlueButtonTest.php

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,24 @@ public function testIsMeetingRunning(): void
270270
$this->assertEquals(false, $result->isRunning());
271271
}
272272

273+
public function testIsMeetingExisting(): void
274+
{
275+
$meetingId = $this->faker->uuid;
276+
277+
// check existence of non-existing meeting
278+
$isMeetingExisting = $this->bbb->isMeetingExisting($meetingId);
279+
$this->assertFalse($isMeetingExisting);
280+
281+
// create meeting
282+
$createMeetingResponse = $this->bbb->createMeeting(new CreateMeetingParameters($meetingId, $this->faker->word));
283+
$this->assertEquals('SUCCESS', $createMeetingResponse->getReturnCode());
284+
$this->assertTrue($createMeetingResponse->success());
285+
286+
// check existence of existing meeting
287+
$isMeetingExisting = $this->bbb->isMeetingExisting($meetingId);
288+
$this->assertTrue($isMeetingExisting);
289+
}
290+
273291
// Get Meetings
274292

275293
/**

0 commit comments

Comments
 (0)