void Opal::Sip::EndPoint::setup (std::string setting) { if (setting.empty () || setting == "listen-port") { set_listen_port (settings->get_int ("listen-port")); } if (setting.empty () || setting == "binding-timeout") { set_nat_binding_delay (settings->get_int ("binding-timeout")); } if (setting.empty () || setting == "outbound-proxy-host") { set_outbound_proxy (settings->get_string ("outbound-proxy-host")); } if (setting.empty () || setting == "dtmf-mode") { set_dtmf_mode (settings->get_enum ("dtmf-mode")); } if (setting.empty () || setting == "forward-host") { set_forward_uri (settings->get_string ("forward-host")); } }
void Opal::Sip::CallManager::setup (const std::string & setting) { if (!endpoint.IsReady ()) { endpoint.ready.connect (boost::bind (&Opal::Sip::CallManager::setup, this, "")); return; } if (setting.empty () || setting == "instance-id") { std::string instance_id = sip_settings->get_string ("instance-id"); if (!instance_id.empty ()) sip_endpoint.SetInstanceID (instance_id); } if (setting.empty () || setting == "listen-port") set_listen_port (sip_settings->get_int ("listen-port")); if (setting.empty () || setting == "keepalive-interval") { int delay = sip_settings->get_int ("keepalive-interval"); PTRACE (4, "Opal::Sip::CallManager\tKeepalive interval set to " << delay); sip_endpoint.SetKeepAlive (PTimeInterval (0, delay), SIPEndPoint::KeepAliveByOPTION); } if (setting.empty () || setting == "dtmf-mode") set_dtmf_mode (sip_settings->get_enum ("dtmf-mode")); /* Setup the various forwarding targets. * The no answer delay is defined in the opal-call-manager (our parent). */ if (setting.empty () || setting == "forward-on-no-anwer" || setting == "forward-host") sip_endpoint.SetNoAnswerForwardTarget (call_forwarding_settings->get_bool ("forward-on-no-answer") ? sip_settings->get_string ("forward-host") : ""); if (setting.empty () || setting == "forward-on-busy" || setting == "forward-host") sip_endpoint.SetBusyForwardTarget (call_forwarding_settings->get_bool ("forward-on-busy") ? sip_settings->get_string ("forward-host") : ""); if (setting.empty () || setting == "always-forward" || setting == "forward-host") sip_endpoint.SetUnconditionalForwardTarget (call_forwarding_settings->get_bool ("always-forward") ? sip_settings->get_string ("forward-host") : ""); Opal::CallManager::setup (setting); }
void Opal::H323::CallManager::setup (const std::string & setting) { if (!endpoint.IsReady ()) { endpoint.ready.connect (boost::bind (&Opal::H323::CallManager::setup, this, "")); return; } if (setting.empty () || setting == "listen-port") set_listen_port (h323_settings->get_int ("listen-port")); if (setting.empty () || setting == "maximum-video-tx-bitrate") { // maximum_video_tx_bitrate is the max video bitrate specified by the user // add to it 10% (approx.) accounting for audio, // and multiply it by 10 as needed by SetInitialBandwidth int maximum_video_tx_bitrate = video_codecs_settings->get_int ("maximum-video-tx-bitrate"); h323_endpoint.SetInitialBandwidth (OpalBandwidth::Tx, maximum_video_tx_bitrate > 0 ? maximum_video_tx_bitrate * 11 : 100000); PTRACE (4, "Opal::H323::EndPoint\tSet maximum/initial tx bandwidth to " << maximum_video_tx_bitrate * 11); } if (setting.empty () || setting == "enable-h245-tunneling") { h323_endpoint.DisableH245Tunneling (!h323_settings->get_bool ("enable-h245-tunneling")); PTRACE (4, "Opal::H323::EndPoint\tH.245 Tunneling: " << h323_settings->get_bool ("enable-h245-tunneling")); } if (setting.empty () || setting == "enable-early-h245") { h323_endpoint.DisableH245inSetup (!h323_settings->get_bool ("enable-early-h245")); PTRACE (4, "Opal::H323::EndPoint\tEarly H.245: " << h323_settings->get_bool ("enable-early-h245")); } if (setting.empty () || setting == "enable-fast-connect") { h323_endpoint.DisableFastStart (!h323_settings->get_bool ("enable-fast-connect")); PTRACE (4, "Opal::H323::EndPoint\tFast Connect: " << h323_settings->get_bool ("enable-fast-connect")); } if (setting.empty () || setting == "dtmf-mode") { set_dtmf_mode (h323_settings->get_enum ("dtmf-mode")); } /* Setup the various forwarding targets. * The no answer delay is defined in the opal-call-manager (our parent). */ if (setting.empty () || setting == "forward-on-no-anwer" || setting == "forward-host") h323_endpoint.SetNoAnswerForwardTarget (call_forwarding_settings->get_bool ("forward-on-no-answer") ? h323_settings->get_string ("forward-host") : ""); if (setting.empty () || setting == "forward-on-busy" || setting == "forward-host") h323_endpoint.SetBusyForwardTarget (call_forwarding_settings->get_bool ("forward-on-busy") ? h323_settings->get_string ("forward-host") : ""); if (setting.empty () || setting == "always-forward" || setting == "forward-host") h323_endpoint.SetUnconditionalForwardTarget (call_forwarding_settings->get_bool ("always-forward") ? h323_settings->get_string ("forward-host") : ""); if (setting.empty () || setting == "video-role") { /* CallManager::VideoOptions options; endpoint.get_video_options (options); options.extended_video_roles = h323_settings->get_enum ("video-role"); endpoint.set_video_options (options); */ std::cout << "FIXME" << std::endl; } if (setting.empty () || setting == "enable-h239") { h323_endpoint.SetDefaultH239Control(h323_settings->get_bool ("enable-h239")); PTRACE (4, "Opal::H323::EndPoint\tH.239 Control: " << h323_settings->get_bool ("enable-h239")); } // We do not call the parent setup () method as it is also handled // by our Opal::Sip::CallManager }