void AmB2ABCallerSession::relayEvent(AmEvent* ev) { if(other_id.empty()){ B2ABConnectLegEvent* co_ev = dynamic_cast<B2ABConnectLegEvent*>(ev); if( co_ev ) { setupCalleeSession(createCalleeSession(), co_ev); } } AmB2ABSession::relayEvent(ev); }
void AmB2ABCallerSession::relayEvent(AmEvent* ev) { if(other_id.empty()){ B2ABConnectLegEvent* co_ev = dynamic_cast<B2ABConnectLegEvent*>(ev); if( co_ev ) { setupCalleeSession(createCalleeSession(), co_ev); if (other_id.length()) { MONITORING_LOG(getLocalTag().c_str(), "b2b_leg", other_id.c_str()); } } } AmB2ABSession::relayEvent(ev); }
void AmB2BCallerSession::relayEvent(AmEvent* ev) { if(other_id.empty()){ if(dynamic_cast<B2BEvent*>(ev)){ B2BSipEvent* sip_ev = dynamic_cast<B2BSipEvent*>(ev); B2BConnectEvent* co_ev = dynamic_cast<B2BConnectEvent*>(ev); if( (sip_ev && sip_ev->forward) || co_ev ) createCalleeSession(); } } AmB2BSession::relayEvent(ev); }
void AmB2BCallerSession::relayEvent(AmEvent* ev) { if(other_id.empty()){ if(dynamic_cast<B2BEvent*>(ev)){ B2BSipEvent* sip_ev = dynamic_cast<B2BSipEvent*>(ev); B2BConnectEvent* co_ev = dynamic_cast<B2BConnectEvent*>(ev); if( (sip_ev && sip_ev->forward) || co_ev ) { createCalleeSession(); if (other_id.length()) { MONITORING_LOG(getLocalTag().c_str(), "b2b_leg", other_id.c_str()); } } } } AmB2BSession::relayEvent(ev); }
int AmB2BCallerSession::relayEvent(AmEvent* ev) { if(getOtherId().empty() && !getStopped()){ bool create_callee = false; B2BSipEvent* sip_ev = dynamic_cast<B2BSipEvent*>(ev); if (sip_ev && sip_ev->forward) create_callee = true; else create_callee = dynamic_cast<B2BConnectEvent*>(ev) != NULL; if (create_callee) { createCalleeSession(); if (getOtherId().length()) { MONITORING_LOG(getLocalTag().c_str(), "b2b_leg", getOtherId().c_str()); } } } return AmB2BSession::relayEvent(ev); }