/** * @see Engine/Call/Leg/Streamwide_Engine_Call_Leg_Connexant#onSignalReceived() */ public function onSignalReceived(Streamwide_Engine_Events_Event $event) { $eventType = $event->getEventType(); $signal = $event->getParam('signal'); switch ($eventType) { case Streamwide_Engine_Events_Event::MOVED: return $this->_handleMovedSignal($signal); case Streamwide_Engine_Events_Event::SDP: return $this->_handleSdpSignal($signal); case Streamwide_Engine_Events_Event::OKMOVED: return $this->_handleOkMovedSignal($signal); case Streamwide_Engine_Events_Event::FAILMOVED: return $this->_handleFailMovedSignal($signal); case Streamwide_Engine_Events_Event::CHILD: return $this->_handleChildSignal($signal); } return null; }
/** * Handle the receival of a signal from SW Engine * * @param Streamwide_Engine_Events_Event $event * @return void */ public function onSignalReceived(Streamwide_Engine_Events_Event $event) { $eventType = $event->getEventType(); $signal = $event->getParam('signal'); switch ($eventType) { case Streamwide_Engine_Events_Event::FAIL: return $this->_handleFailSignal($signal); case Streamwide_Engine_Events_Event::OK: return $this->_handleOkSignal($signal); case Streamwide_Engine_Events_Event::PROK: return $this->_handleProkSignal($signal); case Streamwide_Engine_Events_Event::RING: return $this->_handleRingSignal($signal); case Streamwide_Engine_Events_Event::PROGRESS: return $this->_handleProgressSignal($signal); case Streamwide_Engine_Events_Event::CHILD: return $this->_handleChildSignal($signal); } return null; }
/** * @see Engine/Call/Leg/Streamwide_Engine_Call_Leg_Connexant#onSignalReceived() */ public function onSignalReceived(Streamwide_Engine_Events_Event $event) { $eventType = $event->getEventType(); $signal = $event->getParam('signal'); // delegate to internal methods to handle the OK and FAIL signals switch ($eventType) { case Streamwide_Engine_Events_Event::OK: return $this->_handleOkSignal($signal); case Streamwide_Engine_Events_Event::FAIL: return $this->_handleFailSignal($signal); case Streamwide_Engine_Events_Event::CHILD: return $this->_handleChildSignal($signal); case Streamwide_Engine_Events_Event::SDP: return $this->_handleSdpSignal($signal); case Streamwide_Engine_Events_Event::OKSDP: return $this->_handleOkSdpSignal($signal); case Streamwide_Engine_Events_Event::FAILSDP: return $this->_handleFailSdpSignal($signal); } return null; }
/** * Handles a key press (delegates to internal methods) * * @param Streamwide_Engine_Events_Event $event * @return void */ public function onKeyPressed(Streamwide_Engine_Events_Event $event) { $eventType = $event->getEventType(); $key = $event->getParam('receivedKey'); $promptType = $event->getContextParam('promptType'); switch ($eventType) { case Streamwide_Engine_Events_Event::KEY: $this->_handleValidKey($key, $promptType); break; case Streamwide_Engine_Events_Event::UNEXPECTED_KEY: $this->_handleInvalidKey($key, $promptType); break; } }
/** * Handles FAIL, PRSDP/SDP/RING/PROGRESS events * * @param Streamwide_Engine_Events_Event $event * @return void */ public function onSignalReceived(Streamwide_Engine_Events_Event $event) { $eventType = $event->getEventType(); if ($eventType === Streamwide_Engine_Events_Event::FAIL) { return $this->_handleFailEvent($event); } if (in_array($eventType, $this->_provisionalResponses)) { return $this->_handleProvisionalResponse($event); } }
/** * Checks to see if a relay session can be ended by searching the received * event type in the relay session parameters array. * If found the relay session is ended, if not nothing happens. * * @param Streamwide_Engine_Events_Event $event * @return void */ protected function _endRelaySession(Streamwide_Engine_Events_Event $event) { if ($this->_isRelaySessionEndingEvent($event->getEventType())) { $this->_isRelaySessionStarted = false; $relaySessionEndedEvt = new Streamwide_Engine_Events_Event(Streamwide_Engine_Events_Event::RELAY_SESSION_ENDED); $relaySessionEndedEvt->setParam('signal', $event->getParam('signal')); return $this->dispatchEvent($relaySessionEndedEvt); } }