/** * Subscribe to the EVENT signal * * @see Engine/Streamwide_Engine_Widget#_subscribeToEngineEvents() */ protected function _subscribeToEngineEvents() { $controller = $this->getController(); $eventNotifyFilter = Streamwide_Engine_NotifyFilter_Factory::factory(Streamwide_Engine_NotifyFilter_Factory::T_EVT_SIG_PARAM_PARAM, Streamwide_Engine_NotifyFilter_Factory::FILTER_EQUAL_TO, array('name', $this->_eventSignalTypeParameter)); $controller->addEventListener(Streamwide_Engine_Events_Event::EVENT, array('callback' => array($this, 'onEvent'), 'options' => array('autoRemove' => 'before', 'notifyFilter' => $eventNotifyFilter))); $childNotifyFilter = Streamwide_Engine_NotifyFilter_Factory::factory(Streamwide_Engine_NotifyFilter_Factory::T_EVT_SIG_PARAM_REMOTE, Streamwide_Engine_NotifyFilter_Factory::FILTER_EQUAL_TO, $this->_msCallLeg->getName()); $controller->addEventListener(Streamwide_Engine_Events_Event::CHILD, array('callback' => array($this, 'onCallLegDeath'), 'options' => array('autoRemove' => 'before', 'notifyFilter' => $childNotifyFilter))); }
/** * Start receiving the fax * * @return void */ protected function _faxReceive() { $signal = Streamwide_Engine_Signal::factory(Streamwide_Engine_Signal::FAXRECEIVE, $this->_msCallLeg->getName(), array('filename' => $this->_savePath)); if (false === $signal->send()) { return $this->dispatchErrorEvent(self::FAXRECEIVE_SIGNAL_SEND_ERR_CODE); } $this->_subscribeToEngineEvents(); return $this->dispatchEvent(new Streamwide_Engine_Events_Event(Streamwide_Engine_Events_Event::FAX_RECEIVING_STARTED)); }
/** * Send the filter settings to the engine for activation, deactivation or update * * @param boolean $activate */ protected function _applyFilterSettings($activate = true) { $name = Streamwide_Engine_Signal::SET; $remote = $this->_mediaServerCallLeg->getName(); $params = array(); $params['name'] = $this->_getFilterFullName(); $params['activate'] = 'false'; if (true === $activate) { $params['activate'] = 'true'; $params = array_merge($params, $this->_params); } $set = Streamwide_Engine_Signal::factory($name, $remote, $params); return $set->send(); }
/** * Subscribe to the ENDOFFAX signal * * @see Engine/Streamwide_Engine_Widget#_subscribeToEngineEvents() */ protected function _subscribeToEngineEvents() { $controller = $this->getController(); $endOfFaxNotifyFilter = Streamwide_Engine_NotifyFilter_Factory::factory(Streamwide_Engine_NotifyFilter_Factory::T_EVT_SIG_PARAM_REMOTE, Streamwide_Engine_NotifyFilter_Factory::FILTER_EQUAL_TO, $this->_msCallLeg->getName()); $controller->addEventListener(Streamwide_Engine_Events_Event::ENDOFFAX, array('callback' => array($this, 'onEndOfFax'), 'options' => array('autoRemove' => 'before', 'notifyFilter' => $endOfFaxNotifyFilter))); }