From a35c12204b2d38fc061f8fa2b4ec0b9d1d31d917 Mon Sep 17 00:00:00 2001 From: Juha Heinanen Date: Wed, 18 Nov 2020 14:56:20 +0200 Subject: [PATCH] Added Setting to turn on/off SIP request/response trace to Logcat --- app/src/main/cpp/baresip.c | 6 ++++ app/src/main/kotlin/com/tutpro/baresip/Api.kt | 1 + .../com/tutpro/baresip/BaresipService.kt | 1 + .../com/tutpro/baresip/ConfigActivity.kt | 25 ++++++++++++----- app/src/main/res/layout/activity_config.xml | 28 +++++++++++++++++++ app/src/main/res/values-fi/strings.xml | 4 +++ app/src/main/res/values/strings.xml | 5 +++- 7 files changed, 62 insertions(+), 8 deletions(-) diff --git a/app/src/main/cpp/baresip.c b/app/src/main/cpp/baresip.c index f24bdb5c..bcd1f8e6 100644 --- a/app/src/main/cpp/baresip.c +++ b/app/src/main/cpp/baresip.c @@ -1657,6 +1657,12 @@ Java_com_tutpro_baresip_Api_uag_1reset_1transp(JNIEnv *env, jobject thiz, jboole (void)uag_reset_transp(reg, reinvite); } +JNIEXPORT void JNICALL +Java_com_tutpro_baresip_Api_uag_1enable_1sip_1trace(JNIEnv *env, jobject thiz, jboolean enable) { + LOGD("enabling sip trace (%d)\n", enable); + (void)uag_enable_sip_trace(enable); +} + JNIEXPORT void JNICALL Java_com_tutpro_baresip_Api_net_1debug(JNIEnv *env, jobject thiz) { net_debug_log(); diff --git a/app/src/main/kotlin/com/tutpro/baresip/Api.kt b/app/src/main/kotlin/com/tutpro/baresip/Api.kt index 4f5e5ff1..70a224c3 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/Api.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/Api.kt @@ -12,6 +12,7 @@ object Api { external fun video_codecs(): String external fun uag_current_set(uap: String) external fun uag_reset_transp(reg: Boolean, reinvite: Boolean) + external fun uag_enable_sip_trace(enable: Boolean) external fun ua_account(ua: String): String external fun ua_alloc(uri: String): String external fun ua_update_account(ua: String): Int diff --git a/app/src/main/kotlin/com/tutpro/baresip/BaresipService.kt b/app/src/main/kotlin/com/tutpro/baresip/BaresipService.kt index 3d9a20a1..43395e14 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/BaresipService.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/BaresipService.kt @@ -1146,6 +1146,7 @@ class BaresipService: Service() { var filesPath = "" var downloadsPath = "" var logLevel = 2 + var sipTrace = false val uas = ArrayList() val status = ArrayList() diff --git a/app/src/main/kotlin/com/tutpro/baresip/ConfigActivity.kt b/app/src/main/kotlin/com/tutpro/baresip/ConfigActivity.kt index d46461ef..e4f20277 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/ConfigActivity.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/ConfigActivity.kt @@ -17,13 +17,14 @@ import android.widget.AdapterView class ConfigActivity : AppCompatActivity() { - internal lateinit var autoStart: CheckBox - internal lateinit var listenAddr: EditText - internal lateinit var dnsServers: EditText - internal lateinit var certificateFile: CheckBox - internal lateinit var caFile: CheckBox - internal lateinit var debug: CheckBox - internal lateinit var reset: CheckBox + private lateinit var autoStart: CheckBox + private lateinit var listenAddr: EditText + private lateinit var dnsServers: EditText + private lateinit var certificateFile: CheckBox + private lateinit var caFile: CheckBox + private lateinit var debug: CheckBox + private lateinit var sipTrace: CheckBox + private lateinit var reset: CheckBox private var oldAutoStart = "" private var oldListenAddr = "" @@ -105,6 +106,9 @@ class ConfigActivity : AppCompatActivity() { oldLogLevel = dbCv[0] debug.isChecked = oldLogLevel == "0" + sipTrace = findViewById(R.id.SipTrace) as CheckBox + sipTrace.isChecked = BaresipService.sipTrace + reset = findViewById(R.id.Reset) as CheckBox reset.isChecked = false @@ -242,6 +246,9 @@ class ConfigActivity : AppCompatActivity() { save = true } + BaresipService.sipTrace = sipTrace.isChecked + Api.uag_enable_sip_trace(sipTrace.isChecked) + if (reset.isChecked) { Config.reset(this) save = false @@ -337,6 +344,10 @@ class ConfigActivity : AppCompatActivity() { findViewById(R.id.DebugTitle) as TextView-> { Utils.alertView(this, getString(R.string.debug), getString(R.string.debug_help)) } + findViewById(R.id.SipTraceTitle) as TextView-> { + Utils.alertView(this, getString(R.string.sip_trace), + getString(R.string.sip_trace_help)) + } findViewById(R.id.ResetTitle) as TextView-> { Utils.alertView(this, getString(R.string.reset_config), getString(R.string.reset_config_help)) diff --git a/app/src/main/res/layout/activity_config.xml b/app/src/main/res/layout/activity_config.xml index b938b91f..360a208a 100644 --- a/app/src/main/res/layout/activity_config.xml +++ b/app/src/main/res/layout/activity_config.xml @@ -207,6 +207,34 @@ + + + + + + + Lokiviestit Jos merkitty, baresip tuottaa debug- ja info-tason Logcat-viestejä. + SIP-sanomien jäljitys + Jos merkitty ja jos Lokiviestit on merkitty, Logcat-viestit + sisältävät myös lähetetyt ja vastaanotetut SIP-sanomat. On aina merkitsemättä sovelluksen + käynnistyessä. Palauta oletusasetukset Jos merkitty, oletusasetukset palautetaan, kun baresip seuraavan kerran käynnistetään. diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 898b2c00..973f4345 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -272,7 +272,10 @@ Size of transmitted video frames (width x height). Factory default is 800x600. Debug - Provides debug and info level log message availability in Logcat. + If checked, provides debug and info level log messages to Logcat. + SIP Trace + If checked and if Debug is checked, provides also SIP + request and response trace to Logcat. Unchecked automatically at baresip start. Reset to Factory Defaults If checked, settings are reset to factory default values. Failed to read file \'cert.pem\' from Download directory.