From 9a07ed26b0960637911a4f4469e5c64436a6b140 Mon Sep 17 00:00:00 2001 From: Juha Heinanen Date: Sun, 31 Mar 2024 09:19:25 +0300 Subject: [PATCH] Added DTMFMODE_AUTO dtmfmode --- .../main/kotlin/com/tutpro/baresip/Account.kt | 2 ++ .../com/tutpro/baresip/AccountActivity.kt | 19 +++++++++---------- app/src/main/kotlin/com/tutpro/baresip/Api.kt | 1 + app/src/main/res/values-fi/strings.xml | 5 +++-- app/src/main/res/values/strings.xml | 1 + 5 files changed, 16 insertions(+), 12 deletions(-) diff --git a/app/src/main/kotlin/com/tutpro/baresip/Account.kt b/app/src/main/kotlin/com/tutpro/baresip/Account.kt index a8ebb937..496c1c9f 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/Account.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/Account.kt @@ -133,6 +133,8 @@ class Account(val accp: Long) { if (dtmfMode == Api.DTMFMODE_SIP_INFO) res += ";dtmfmode=info" + else if (dtmfMode == Api.DTMFMODE_AUTO) + res += ";dtmfmode=auto" res = if (vmUri == "") "$res;mwi=no" diff --git a/app/src/main/kotlin/com/tutpro/baresip/AccountActivity.kt b/app/src/main/kotlin/com/tutpro/baresip/AccountActivity.kt index e5918bc8..41f5a667 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/AccountActivity.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/AccountActivity.kt @@ -200,19 +200,18 @@ class AccountActivity : AppCompatActivity() { else Api.REL100_DISABLED "dtmf-mode" -> - if (text in arrayOf("rtp-event", "sip-info")) { - acc.dtmfMode = if (text == "rtp-event") - Api.DTMFMODE_RTP_EVENT - else - Api.DTMFMODE_SIP_INFO - } + if (text in arrayOf("rtp-event", "sip-info", "auto")) + acc.dtmfMode = when (text) { + "rtp-event" -> Api.DTMFMODE_RTP_EVENT + "sip-info" -> Api.DTMFMODE_SIP_INFO + else -> Api.DTMFMODE_AUTO + } "answer-mode" -> - if (text in arrayOf("manual", "auto")) { + if (text in arrayOf("manual", "auto")) acc.answerMode = if (text == "manual") Api.ANSWERMODE_MANUAL else Api.ANSWERMODE_AUTO - } "redirect-mode" -> acc.autoRedirect = text == "yes" "voicemail-uri" -> @@ -317,8 +316,8 @@ class AccountActivity : AppCompatActivity() { rel100Check.isChecked = acc.rel100Mode == Api.REL100_ENABLED dtmfMode = acc.dtmfMode - val dtmfModeKeys = arrayListOf(Api.DTMFMODE_RTP_EVENT, Api.DTMFMODE_SIP_INFO) - val dtmfModeVals = arrayListOf(getString(R.string.dtmf_inband), getString(R.string.dtmf_info)) + val dtmfModeKeys = arrayListOf(Api.DTMFMODE_RTP_EVENT, Api.DTMFMODE_SIP_INFO, Api.DTMFMODE_AUTO) + val dtmfModeVals = arrayListOf(getString(R.string.dtmf_inband), getString(R.string.dtmf_info), getString(R.string.dtmf_auto)) keyIx = dtmfModeKeys.indexOf(acc.dtmfMode) keyVal = dtmfModeVals.elementAt(keyIx) dtmfModeKeys.removeAt(keyIx) diff --git a/app/src/main/kotlin/com/tutpro/baresip/Api.kt b/app/src/main/kotlin/com/tutpro/baresip/Api.kt index 5207af16..1ecb36c0 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/Api.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/Api.kt @@ -8,6 +8,7 @@ object Api { const val ANSWERMODE_AUTO = 2 const val DTMFMODE_RTP_EVENT = 0 const val DTMFMODE_SIP_INFO = 1 + const val DTMFMODE_AUTO = 2 const val REL100_DISABLED = 0 const val REL100_ENABLED = 1 // const cal REL100_REQUIRED = 2 diff --git a/app/src/main/res/values-fi/strings.xml b/app/src/main/res/values-fi/strings.xml index aa406820..bb2ea516 100644 --- a/app/src/main/res/values-fi/strings.xml +++ b/app/src/main/res/values-fi/strings.xml @@ -185,8 +185,9 @@ tukemisesta (RFC 3262). DTMF-moodi Valitsee tavan, miten DTMF-merkit 0–9, #, * ja A-D lähetetään. - RTP - SIP INFO + RTP-tapahtuma + SIP INFO -pyyntö + RTP tai SIP INFO Vastaustapa Valitsee tulevien puheluiden vastaustavan. Manuaalinen diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 9318f600..cfdb3a22 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -176,6 +176,7 @@ Selects how DTMF tones 0–9, #, *, and A-D are sent. In-band RTP Events SIP INFO Requests + In-band RTP or SIP INFO Answer Mode Selects how incoming calls are answered. Redirect Mode