示例#1
0
 public function processAction(&$controller, $params)
 {
     $this->checkRequiredParams('processAction', $params);
     $this->assignEmptyParams($params, 1);
     list($uuid) = $params;
     $callManagerObj = new callManager();
     $channelDetail_view = new View('callmanager/channeldetail');
     $channelDetail_view->detailfields = freeswitch_callmanager_Driver::getDetailFields();
     try {
         $channelDetail_view->channeldata = $callManagerObj->getChannelInfo($uuid, true);
         if ($channelDetail_view->channeldata) {
             foreach (freeswitch_callmanager_Driver::getDetailDatetimeFields() as $fieldname) {
                 if (isset($channelDetail_view->channeldata[$fieldname]) && !$channelDetail_view->channeldata[$fieldname] == 0) {
                     $channelDetail_view->channeldata[$fieldname] = date('r', $channelDetail_view->channeldata[$fieldname]);
                 } else {
                     $channelDetail_view->channeldata[$fieldname] = '';
                 }
             }
         }
         $channelDetail_view->render(TRUE);
     } catch (ESL_Exception $e) {
         echo '<div class="error">An error has occured: ' . $e->getMessage() . '<br>';
         if (strpos($e->getMessage(), 'Not connected')) {
             echo 'This indicates that Freeswitch is not running, mod_event_socket is not configured, or the system is unable to log in.';
         }
         echo '</div>';
     } catch (callmanagerException $e) {
         $controller->template->content = new View('callmanager/commandresponse');
         echo 'An error has occured: ' . $e->getMessage();
     }
     exit;
 }
示例#2
0
 public function processAction(&$controller, $params)
 {
     $this->assignEmptyParams($params, 2, array('true'));
     list($showdetail, $filters) = $params;
     $channellist_view = new View('callmanager/channellist');
     $channellist_view->summaryfields = freeswitch_callmanager_Driver::getSummaryFields();
     $channellist_view->detailfields = freeswitch_callmanager_Driver::getDetailFields();
     $callManagerObj = new callManager();
     $input = Input::instance();
     if (!$filters) {
         $filters = array();
         $filters['state'] = $input->post('state_filters');
     }
     try {
         $channellist = $this->executeAction(array());
         arr::alfilter($channellist, $filters);
         arr::alsort($channellist, $input->post('channel_order'));
         foreach (array_keys($channellist) as $curkey) {
             $channellist[$curkey]['actions'] = callmanagerHelper::getFunctionLinksForCall($channellist[$curkey], $channellist[$curkey]['uuid']);
         }
         $channellist_view->channellist = $channellist;
         $channellist_view->updated = date('r');
         $channellist_view->showdetail = $showdetail;
         $channellist_view->render(TRUE);
     } catch (ESL_Exception $e) {
         echo 'An error has occured: ' . $e->getMessage() . '<br>';
         if (strpos($e->getMessage(), 'Not connected')) {
             echo 'This indicates that Freeswitch is not running, mod_event_socket is not configured, or the system is unable to log in.';
         }
     } catch (callmanagerException $e) {
         echo 'An error has occured: ' . $e->getMessage() . '<br>';
     }
     exit;
 }