/** * A MOVED/OKMOVED/FAILMOVED signal has been relayed. * * @param Streamwide_Engine_Events_Event $event * @return void */ public function onFaxEnvDetectionUpdate(Streamwide_Engine_Events_Event $event) { $signal = $event->getParam('signal'); $signalName = $signal->getName(); switch ($signalName) { case Streamwide_Engine_Signal::MOVED: $this->_waitUpdateConfirmation = true; break; case Streamwide_Engine_Signal::FAILMOVED: $this->_waitUpdateConfirmation = false; if (!$this->_mediaPlayer->isPlaying()) { $this->_relayer->reset(); return $this->_createFaxEnv(); } break; case Streamwide_Engine_Signal::OKMOVED: $this->_waitUpdateConfirmation = false; $specification = Streamwide_Engine_NotifyFilter_Factory::factory(Streamwide_Engine_NotifyFilter_Factory::T_SIG_PARAM, Streamwide_Engine_NotifyFilter_Factory::FILTER_EQUAL_TO, array('policy', 'image')); if ($specification->isSatisfiedBy($signal)) { $this->_mediaPlayer->reset(); $this->_timer->reset(); $this->_relayer->reset(); return $this->_faxSend(); } if (!$this->_mediaPlayer->isPlaying()) { $this->_relayer->reset(); return $this->_createFaxEnv(); } break; } }