diff --git a/apps/click2dial/Click2Dial.cpp b/apps/click2dial/Click2Dial.cpp index cef89f9e..4c4aa2fe 100644 --- a/apps/click2dial/Click2Dial.cpp +++ b/apps/click2dial/Click2Dial.cpp @@ -45,6 +45,8 @@ EXPORT_SESSION_FACTORY(Click2DialFactory, MOD_NAME); string Click2DialFactory::AnnouncePath; string Click2DialFactory::AnnounceFile; +bool Click2DialFactory::relay_early_media_sdp = true; + Click2DialFactory::Click2DialFactory(const string& _app_name) : AmSessionFactory(_app_name) { @@ -74,6 +76,9 @@ int Click2DialFactory::onLoad() return -1; } + if (cfg.getParameter("relay_early_media") == "no") + relay_early_media_sdp = false; + return 0; } @@ -188,7 +193,8 @@ const string& filename, const string& c_uri, UACAuthCred* credentials) : filename(filename), callee_uri(c_uri), cred(credentials), AmB2BCallerSession() { - set_sip_relay_only(false); + set_sip_relay_only(false); + set_sip_relay_early_media_sdp(Click2DialFactory::relay_early_media_sdp); } diff --git a/apps/click2dial/Click2Dial.h b/apps/click2dial/Click2Dial.h index 49f5ab82..0dc547e0 100644 --- a/apps/click2dial/Click2Dial.h +++ b/apps/click2dial/Click2Dial.h @@ -49,6 +49,8 @@ class Click2DialFactory: public AmSessionFactory static string AnnounceFile; static AmSessionEventHandler* AuthHandler; + static bool relay_early_media_sdp; + Click2DialFactory(const string& _app_name); int onLoad(); diff --git a/apps/click2dial/etc/click2dial.conf b/apps/click2dial/etc/click2dial.conf index 56a38b99..083842b7 100644 --- a/apps/click2dial/etc/click2dial.conf +++ b/apps/click2dial/etc/click2dial.conf @@ -1,2 +1,7 @@ announce_path=/usr/local/lib/sems/audio/ default_announce=default_en.wav + +# relay_early_media=[yes|no] +# sends early media from callee leg into caller leg +# default: yes +relay_early_media=yes