diff --git a/app/src/main/cpp/baresip.c b/app/src/main/cpp/baresip.c
index 9216b74d..00bbfc7b 100644
--- a/app/src/main/cpp/baresip.c
+++ b/app/src/main/cpp/baresip.c
@@ -586,6 +586,22 @@ Java_com_tutpro_baresip_AccountKt_account_1aor(JNIEnv *env, jobject thiz, jstrin
return (*env)->NewStringUTF(env, "");
}
+JNIEXPORT jstring JNICALL
+Java_com_tutpro_baresip_AccountKt_account_1uri(JNIEnv *env, jobject thiz, jstring javaAcc) {
+ const char *native_acc = (*env)->GetStringUTFChars(env, javaAcc, 0);
+ struct account *acc = (struct account *)strtoul(native_acc, NULL, 10);
+ (*env)->ReleaseStringUTFChars(env, javaAcc, native_acc);
+ const struct sip_addr *addr = account_laddr(acc);
+ char uri_buf[512];
+ int l;
+ l = re_snprintf(&(uri_buf[0]), 511, "%H", uri_encode, addr->uri);
+ if (l != -1)
+ uri_buf[l] = '\0';
+ else
+ uri_buf[0] = '\0';
+ return (*env)->NewStringUTF(env, uri_buf);
+}
+
JNIEXPORT jstring JNICALL
Java_com_tutpro_baresip_AccountKt_account_1auth_1user(JNIEnv *env, jobject thiz, jstring javaAcc) {
const char *native_acc = (*env)->GetStringUTFChars(env, javaAcc, 0);
diff --git a/app/src/main/kotlin/com/tutpro/baresip/Account.kt b/app/src/main/kotlin/com/tutpro/baresip/Account.kt
index 0aa3d1ec..cebe8833 100644
--- a/app/src/main/kotlin/com/tutpro/baresip/Account.kt
+++ b/app/src/main/kotlin/com/tutpro/baresip/Account.kt
@@ -8,6 +8,7 @@ class Account(val accp: String) {
var displayName = account_display_name(accp)
val aor = account_aor(accp)
+ val uri = account_uri(accp)
var authUser = account_auth_user(accp)
var authPass = account_auth_pass(accp)
var outbound = ArrayList()
@@ -207,12 +208,21 @@ class Account(val accp: String) {
return false
}
+ fun aor(accp: String): String {
+ return account_aor(accp)
+ }
+
+ fun uri(accp: String): String {
+ return account_uri(accp)
+ }
+
}
}
external fun account_set_display_name(acc: String, dn: String): Int
external fun account_display_name(acc: String): String
external fun account_aor(acc: String): String
+external fun account_uri(acc: String): String
external fun account_auth_user(acc: String): String
external fun account_set_auth_user(acc: String, user: String): Int
external fun account_auth_pass(acc: String): String
diff --git a/app/src/main/kotlin/com/tutpro/baresip/AccountActivity.kt b/app/src/main/kotlin/com/tutpro/baresip/AccountActivity.kt
index 972b3875..44a683f4 100644
--- a/app/src/main/kotlin/com/tutpro/baresip/AccountActivity.kt
+++ b/app/src/main/kotlin/com/tutpro/baresip/AccountActivity.kt
@@ -16,6 +16,7 @@ class AccountActivity : AppCompatActivity() {
internal lateinit var acc: Account
internal lateinit var ua: UserAgent
+ internal lateinit var uri: TextView
internal lateinit var displayName: EditText
internal lateinit var aor: String
internal lateinit var authUser: EditText
@@ -47,7 +48,10 @@ class AccountActivity : AppCompatActivity() {
uaIndex = UserAgent.findAorIndex(aor)!!
ua = UserAgent.uas()[uaIndex]
- setTitle(aor.replace("sip:", ""))
+ setTitle(aor.split(":")[1])
+
+ uri = findViewById(R.id.Uri) as TextView
+ uri.setText(acc.uri)
displayName = findViewById(R.id.DisplayName) as EditText
displayName.setText(acc.displayName)
diff --git a/app/src/main/kotlin/com/tutpro/baresip/AccountListAdapter.kt b/app/src/main/kotlin/com/tutpro/baresip/AccountListAdapter.kt
index e68efb70..b679b0f3 100644
--- a/app/src/main/kotlin/com/tutpro/baresip/AccountListAdapter.kt
+++ b/app/src/main/kotlin/com/tutpro/baresip/AccountListAdapter.kt
@@ -22,7 +22,7 @@ class AccountListAdapter(private val cxt: Context, private val rows: ArrayList
diff --git a/app/src/main/kotlin/com/tutpro/baresip/AccountsActivity.kt b/app/src/main/kotlin/com/tutpro/baresip/AccountsActivity.kt
index 91514c67..cf4f6422 100644
--- a/app/src/main/kotlin/com/tutpro/baresip/AccountsActivity.kt
+++ b/app/src/main/kotlin/com/tutpro/baresip/AccountsActivity.kt
@@ -4,6 +4,7 @@ import android.app.Activity
import android.content.Intent
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
+import android.view.Menu
import android.view.MenuItem
import android.widget.*
@@ -65,10 +66,16 @@ class AccountsActivity : AppCompatActivity() {
}
+
override fun onOptionsItemSelected(item: MenuItem): Boolean {
when (item.itemId) {
+ R.id.help -> {
+ Utils.alertView(this@AccountsActivity, "New Account",
+ getString(R.string.accounts_help))
+ }
+
android.R.id.home -> {
Log.d("Baresip", "Back array was pressed at Accounts")
BaresipService.activities.removeAt(0)
@@ -76,10 +83,15 @@ class AccountsActivity : AppCompatActivity() {
setResult(RESULT_OK, i)
finish()
}
-
}
return true
+ }
+
+ override fun onCreateOptionsMenu(menu: Menu): Boolean {
+
+ menuInflater.inflate(R.menu.accounts_menu, menu)
+ return true
}
diff --git a/app/src/main/kotlin/com/tutpro/baresip/CallsActivity.kt b/app/src/main/kotlin/com/tutpro/baresip/CallsActivity.kt
index 6e5fe490..3c92a740 100644
--- a/app/src/main/kotlin/com/tutpro/baresip/CallsActivity.kt
+++ b/app/src/main/kotlin/com/tutpro/baresip/CallsActivity.kt
@@ -35,7 +35,7 @@ class CallsActivity : AppCompatActivity() {
account = ua.account
val headerView = findViewById(R.id.account) as TextView
- val headerText = "${getString(R.string.account)} ${aor.substringAfter(":")}"
+ val headerText = "${getString(R.string.account)} ${aor.split(":")[1]}"
headerView.text = headerText
val listView = findViewById(R.id.calls) as ListView
diff --git a/app/src/main/kotlin/com/tutpro/baresip/ChatsActivity.kt b/app/src/main/kotlin/com/tutpro/baresip/ChatsActivity.kt
index d1afa1e5..00870ce0 100644
--- a/app/src/main/kotlin/com/tutpro/baresip/ChatsActivity.kt
+++ b/app/src/main/kotlin/com/tutpro/baresip/ChatsActivity.kt
@@ -34,7 +34,7 @@ class ChatsActivity: AppCompatActivity() {
BaresipService.activities.add(0, "chats,$aor")
val headerView = findViewById(R.id.account) as TextView
- val headerText = "${getString(R.string.account)} ${aor.substringAfter(":")}"
+ val headerText = "${getString(R.string.account)} ${aor.split(":")[1]}"
headerView.text = headerText
uaMessages = uaMessages(aor)
diff --git a/app/src/main/kotlin/com/tutpro/baresip/UaSpinnerAdapter.kt b/app/src/main/kotlin/com/tutpro/baresip/UaSpinnerAdapter.kt
index 39d8b451..4365ad7c 100644
--- a/app/src/main/kotlin/com/tutpro/baresip/UaSpinnerAdapter.kt
+++ b/app/src/main/kotlin/com/tutpro/baresip/UaSpinnerAdapter.kt
@@ -26,7 +26,7 @@ class UaSpinnerAdapter(private val cxt: Context, private val uas: ArrayList
+
+
+
diff --git a/app/src/main/res/menu/accounts_menu.xml b/app/src/main/res/menu/accounts_menu.xml
new file mode 100644
index 00000000..9d5fd68b
--- /dev/null
+++ b/app/src/main/res/menu/accounts_menu.xml
@@ -0,0 +1,6 @@
+
diff --git a/app/src/main/res/values-fi/strings.xml b/app/src/main/res/values-fi/strings.xml
index 2895ffeb..8478cd07 100644
--- a/app/src/main/res/values-fi/strings.xml
+++ b/app/src/main/res/values-fi/strings.xml
@@ -104,8 +104,16 @@
Tilit
- käyttäjä@domain[:portti]
- Virheellinen käyttäjä@domain[:portti] \'%1$s\'
+ Valinnaisesti voidaan uutta tiliä luotaessa antaa myös porttinumero
+ ja tiedonsiirtoprokolla: käyttäjä@domain[:portti][;transport=udp|tcp|tls]. Jos portti on
+ annettu, mutta protolollaa ei ole annettu, protokolla on udp. Jos porttia ei ole annettu,
+ mutta protokolla on annettu, portti on joko 5060 tai 5061 (tls). Jos kumpaakaan ei ole
+ annettu eikä välityspalvelinta ole määritelty, tilin mahdollinen rekisteröintipalvelin
+ päätellään pelkästään domainin DNS-informaation perusteella.
+
+ käyttäjä@domain
+ Virheellinen käyttäjä@domain[:portti][;transport=udp|tcp|tls] \'%1$s\'
+
Tili \'%1$s\' on jo olemassa.
"Uuden tilin luonti
epäonnistui.
@@ -262,6 +270,8 @@
Lähetä
Tila
Virhe
+ Apua
+
Tallenna
Palauta
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 9e72c079..a0b90928 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -98,8 +98,15 @@
Accounts
- user@domain[:port]
- Invalid user@domain[:port] \'%1$s\'
+ Account\'s port number and transport protocol may be optionally
+ given when a new account is created: username@domain[:port][;transport=udp|tcp|tls]. If port
+ is given and transport protocol is not given, transport protocol defaults to udp. If port is
+ not given and transport protocol is given, port defaults to 5060 or 5061 (tls). If neither
+ is given and no outbound proxy is specified, account\'s registrar (if any) is determined
+ solely based on domain\'s DNS information.
+
+ user@domain
+ Invalid user@domain[:port][;transport=udp|tcp|tls] \'%1$s\'
Account \'%1$s\' already exists.
"Failed to allocate new account.
Encrypt Password
@@ -246,6 +253,7 @@
Send
Status
Error
+ Help
…
diff --git a/fastlane/metadata/android/en-US/changelogs/15.1.0.txt b/fastlane/metadata/android/en-US/changelogs/15.1.0.txt
new file mode 100644
index 00000000..a39e4ccd
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/15.1.0.txt
@@ -0,0 +1,2 @@
+- Added possibility to give transport protocol for account's AoR.
+- Do not show account's port or transport protocol except in Account Activity.