/**
  * the singleton pattern
  *
  * @return Voipmanager_Controller_Asterisk_Meetme
  */
 public static function getInstance()
 {
     if (self::$_instance === NULL) {
         self::$_instance = new Voipmanager_Controller_Asterisk_Meetme();
     }
     return self::$_instance;
 }
Esempio n. 2
0
 /**
  * handle update for sip registration
  *
  * @param string $confno
  */
 public function handleUpdate($confno)
 {
     Zend_Registry::get('logger')->debug(__METHOD__ . '::' . __LINE__ . " handle update request " . print_r($_REQUEST, true));
     #Zend_Registry::get('logger')->debug(__METHOD__ . '::' . __LINE__ . " handle update request for " . $confno);
     $valuesToUpdate = $_POST;
     $filter = new Voipmanager_Model_Asterisk_MeetmeFilter(array(array('field' => 'confno', 'operator' => 'equals', 'value' => $confno)));
     $conferences = Voipmanager_Controller_Asterisk_Meetme::getInstance()->search($filter);
     if (count($conferences) == 0) {
         Zend_Registry::get('logger')->warn(__METHOD__ . '::' . __LINE__ . ' conference not found confno: ' . $confno);
         return;
     }
     $conference = $conferences[0];
     #Zend_Registry::get('logger')->debug(__METHOD__ . '::' . __LINE__ . ' found sip peer ' . print_r($sipPeer->toArray(), true));
     foreach ($valuesToUpdate as $key => $value) {
         if ($conference->has($key)) {
             $conference->{$key} = $value;
         }
     }
     Zend_Registry::get('logger')->debug(__METHOD__ . '::' . __LINE__ . ' update conference ' . print_r($conference->toArray(), true));
     try {
         Voipmanager_Controller_Asterisk_Meetme::getInstance()->update($conference);
     } catch (Exception $e) {
         Zend_Registry::get('logger')->debug(__METHOD__ . '::' . __LINE__ . ' update failed' . $e->getMessage());
         Zend_Registry::get('logger')->debug(__METHOD__ . '::' . __LINE__ . ' update failed' . $e->getTraceAsString());
     }
     #Zend_Registry::get('logger')->debug(__METHOD__ . '::' . __LINE__ . ' update done');
     echo "1\n";
 }
 /**
  * Sets up the fixture.
  * This method is called before a test is executed.
  *
  * @access protected
  */
 protected function setUp()
 {
     $this->_backends['Asterisk_Context'] = Voipmanager_Controller_Asterisk_Context::getInstance();
     $this->_backends['Asterisk_Meetme'] = Voipmanager_Controller_Asterisk_Meetme::getInstance();
     $this->_backends['Asterisk_SipPeer'] = Voipmanager_Controller_Asterisk_SipPeer::getInstance();
     $this->_backends['Asterisk_Voicemail'] = Voipmanager_Controller_Asterisk_Voicemail::getInstance();
     $this->_backends['Snom_Line'] = Voipmanager_Controller_Snom_Line::getInstance();
     $this->_backends['Snom_Location'] = Voipmanager_Controller_Snom_Location::getInstance();
     $this->_backends['Snom_Phone'] = Voipmanager_Controller_Snom_Phone::getInstance();
     $this->_backends['Snom_Setting'] = Voipmanager_Controller_Snom_Setting::getInstance();
     $this->_backends['Snom_Software'] = Voipmanager_Controller_Snom_Software::getInstance();
     $this->_backends['Snom_Template'] = Voipmanager_Controller_Snom_Template::getInstance();
 }
Esempio n. 4
0
 /**
  * delete multiple meetmes
  *
  * @param  array $ids list of meetmeId's to delete
  * @return array
  */
 public function deleteAsteriskMeetmes($ids)
 {
     return $this->_delete($ids, Voipmanager_Controller_Asterisk_Meetme::getInstance());
 }
 /**
  * create edit asterisk meetme dialog
  *
  * @param int $lineId
  * 
  */
 public function editAsteriskMeetme($meetmeId = NULL)
 {
     if (!empty($meetmeId)) {
         $meetme = Voipmanager_Controller_Asterisk_Meetme::getInstance()->get($meetmeId);
         $encodedMeetme = Zend_Json::encode($meetme->toArray());
     } else {
         $encodedMeetme = '{}';
     }
     $view = new Zend_View();
     $view->setScriptPath('Tinebase/views');
     $view->title = "edit asterisk meetme data";
     $view->jsExecute = 'Tine.Voipmanager.Asterisk.Meetme.EditDialog.display(' . $encodedMeetme . ');';
     header('Content-Type: text/html; charset=utf-8');
     echo $view->render('jsclient.php');
 }