コード例 #1
0
ファイル: TwimlDial.php プロジェクト: rhyselsmore/OpenVBX
 public function getDial()
 {
     if (empty($this->dial)) {
         $this->dial = $this->response->dial(NULL, array('action' => current_url(), 'callerId' => $this->callerId, 'timeout' => !empty($this->timeout) ? $this->timeout : $this->default_timeout, 'sequential' => $this->sequential ? 'true' : 'false'));
     }
     return $this->dial;
 }
コード例 #2
0
ファイル: twiml.php プロジェクト: wiserweb/OpenVBX
$defaultWaitUrl = 'http://twimlets.com/holdmusic?Bucket=com.twilio.music.ambient';
$waitUrl = AppletInstance::getValue('wait-url', $defaultWaitUrl);
$record = AppletInstance::getValue('record', 'do-not-record');
$hasModerator = false;
if (!is_null($moderator)) {
    $hasModerator = true;
    switch (get_class($moderator)) {
        case 'VBX_User':
            foreach ($moderator->devices as $device) {
                if ($device->value == $caller) {
                    $isModerator = true;
                }
            }
            break;
        case 'VBX_Group':
            foreach ($moderator->users as $user) {
                $user = VBX_User::get($user->user_id);
                foreach ($user->devices as $device) {
                    if ($device->value == $caller) {
                        $isModerator = true;
                    }
                }
            }
            break;
    }
}
$confOptions = array('muted' => !$hasModerator || $isModerator ? 'false' : 'true', 'startConferenceOnEnter' => !$hasModerator || $isModerator ? 'true' : 'false', 'endConferenceOnExit' => $hasModerator && $isModerator ? 'true' : 'false', 'waitUrl' => $waitUrl, 'record' => $record);
$response = new TwimlResponse();
$dial = $response->dial(null, array('timeout' => $ci->vbx_settings->get('dial_timeout', $ci->tenant->id), 'timeLimit' => 14400));
$dial->conference($confName, $confOptions);
$response->respond();
コード例 #3
0
ファイル: twiml.php プロジェクト: ryanlarrabure/OpenVBX
$defaultWaitUrl = 'http://twimlets.com/holdmusic?Bucket=com.twilio.music.ambient';
$waitUrl = AppletInstance::getValue('wait-url', $defaultWaitUrl);
$hasModerator = false;
if (!is_null($moderator)) {
    switch (get_class($moderator)) {
        case 'VBX_User':
            foreach ($moderator->devices as $device) {
                if ($device->value == $caller) {
                    $hasModerator = true;
                    $isModerator = true;
                }
            }
            break;
        case 'VBX_Group':
            foreach ($moderator->users as $user) {
                $user = VBX_User::get($user->user_id);
                foreach ($user->devices as $device) {
                    if ($device->value == $caller) {
                        $hasModerator = true;
                        $isModerator = true;
                    }
                }
            }
            break;
    }
}
$confOptions = array('muted' => !$hasModerator || $isModerator ? 'false' : 'true', 'startConferenceOnEnter' => !$hasModerator || $isModerator ? 'true' : 'false', 'endConferenceOnExit' => $hasModerator && $isModerator ? 'true' : 'false', 'waitUrl' => $waitUrl);
$response = new TwimlResponse();
$dial = $response->dial();
$dial->conference($confName, $confOptions);
$response->respond();