/** * Create a meeting. * * @return \sanduhrs\BigBlueButton\Member\Meeting */ private function createMeeting($attributes = []) { $attributes += ['id' => $this->generateMeetingId()]; $meeting = new Meeting($attributes, $this->client); $meeting->create(); return $meeting; }
/** * Add meeting. * * Creates a BigBlueButton meeting. * The create call is idempotent: you can call it multiple times with the * same parameters without side effects. This simplifies the logic for * joining a user into a session, your application can always call create * before returning the join URL. This way, regardless of the order in which * users join, the meeting will always exist but won’t be empty. The * BigBlueButton server will automatically remove empty meetings that were * created but have never had any users after a number of minutes specified * by defaultMeetingCreateJoinDuration defined in bigbluebutton.properties. * * @param array $options * - meetingID (string): The meeting ID. * - attendeePW (string): The attendee password. * - moderatorPW (string): The moderator password. * - name (string): A name for the meeting. * - welcome (string): A welcome message that gets displayed on the chat * window when the participant joins. You can include keywords * (%%CONFNAME%%, %%DIALNUM%%, %%CONFNUM%%) which will be substituted * automatically. You can set a default welcome message on * bigbluebutton.properties * - dialNumber (string): The dial access number that participants can * call in using regular phone. You can set a default dial number on * bigbluebutton.properties * - voiceBridge (string): Voice conference number that participants enter * to join the voice conference. The default pattern for this is a * 5-digit number. This is the PIN that a dial-in user must enter to * join the conference. If you want to change this pattern, you have to * edit FreeSWITCH dialplan and defaultNumDigitsForTelVoice of * bigbluebutton.properties. When using the default setup, we recommend * you always pass a 5-digit voiceBridge parameter. Finally, if you * don’t pass a value for voiceBridge, then users will not be able to * join a voice conference for the session. * - webVoice (string): Voice conference alphanumeric that participants * enter to join the voice conference. * - logoutURL (string): The URL that the BigBlueButton client will go to * after users click the OK button on the ‘You have been logged out * message’. This overrides, the value for * bigbluebutton.web.loggedOutURL if defined in bigbluebutton.properties * - record (string): Setting ‘record=true’ instructs the BigBlueButton * server to record the media and events in the session for later * playback. Available values are true or false. Default value is false. * - duration (number): The maximum length (in minutes) for the meeting. * Normally, the BigBlueButton server will end the meeting when either * the last person leaves (it takes a minute or two for the server to * clear the meeting from memory) or when the server receives an end API * request with the associated meetingID (everyone is kicked and the * meeting is immediately cleared from memory). BigBlueButton begins * tracking the length of a meeting when the first person joins. If * duration contains a non-zero value, then when the length of the * meeting exceeds the duration value the server will immediately end * the meeting (same as receiving an end API request). * - meta (string): You can pass one or more metadata values for create a * meeting. These will be stored by BigBlueButton and later retrievable * via the getMeetingInfo call and getRecordings. Examples of meta * parameters are meta_Presenter, meta_category, meta_LABEL, etc. All * parameters are converted to lower case, so meta_Presenter would be * the same as meta_PRESENTER. * - moderatorOnlyMessage (string): Display a message to all moderators in * the public chat. * - autoStartRecording (boolean): Automatically starts recording when * first user joins. NOTE: Don’t set to autoStartRecording =false and * allowStartStopRecording=false as the user won’t be able to record. * - allowStartStopRecording (boolean): Allow the user to start/stop * recording. This means the meeting can start recording automatically * (autoStartRecording=true) with the user able to stop/start recording * from the client. * * @return \sanduhrs\BigBlueButton\Member\Meeting * A meeting object. */ public function addMeeting($options) { $meeting = new Meeting($options, $this->client); return $meeting->create(); }