Example #1
0
 /**
  * Join meeting.
  *
  * Joins a user to the meeting.
  *
  * @param string $fullName
  *   The full name that is to be used to identify this user to other
  *   conference attendees.
  * @param bool $moderator
  *   The role of the user is moderator.
  * @param array $options
  *   - createTime (string): Third-party apps using the API can now pass
  *     createTime parameter (which was created in the create call),
  *     BigBlueButton will ensure it matches the ‘createTime’ for the
  *     session. If they differ, BigBlueButton will not proceed with the join
  *     request. This prevents a user from reusing their join URL for a
  *     subsequent session with the same meetingID.
  *   - userID (string): An identifier for this user that will help your
  *     application to identify which person this is. This user ID will be
  *     returned for this user in the getMeetingInfo API call so that you can
  *     check.
  *   - webVoiceConf (string): If you want to pass in a custom
  *     voice-extension when a user joins the voice conference using voip.
  *     This is useful if you want to collect more info in you Call Detail
  *     Records about the user joining the conference. You need to modify
  *     your /etc/asterisk/bbb-extensions.conf to handle this new extensions.
  *   - configToken (string): The token returned by a setConfigXML API call.
  *     This causes the BigBlueButton client to load the config.xml
  *     associated with the token (not the default config.xml)
  *   - avatarURL (string): The link for the user’s avatar to be displayed
  *     when displayAvatar in config.xml is set to true.
  *   - redirect (string): The default behaviour of the JOIN API is to
  *     redirect the browser to the Flash client when the JOIN call succeeds.
  *     There have been requests if it’s possible to embed the Flash client
  *     in a “container” page and that the client starts as a hidden DIV tag
  *     which becomes visible on the successful JOIN. Setting this variable
  *     to FALSE will not redirect the browser but returns an XML instead
  *     whether the JOIN call has succeeded or not. The third party app is
  *     responsible for displaying the client to the user.
  *   - clientURL (string): Some third party apps what to display their own
  *     custom client. These apps can pass the URL containing the custom
  *     client and when redirect is not set to false, the browser will get
  *     redirected to the value of clientURL.
  *
  * @return string
  *   The meeting join URL to redirect to.
  */
 public function join($fullName, $moderator = false, $options = [])
 {
     $options += ['fullName' => $fullName, 'meetingID' => $this->meetingID, 'password' => $moderator ? $this->moderatorPW : $this->attendeePW];
     $uri = $this->client->generateURI('join', $options);
     return $uri;
 }