diff --git a/app/src/main/java/org/linphone/ui/assistant/viewmodel/AccountLoginViewModel.kt b/app/src/main/java/org/linphone/ui/assistant/viewmodel/AccountLoginViewModel.kt
index 6f6055921..3cd685458 100644
--- a/app/src/main/java/org/linphone/ui/assistant/viewmodel/AccountLoginViewModel.kt
+++ b/app/src/main/java/org/linphone/ui/assistant/viewmodel/AccountLoginViewModel.kt
@@ -26,13 +26,16 @@ import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel
import org.linphone.LinphoneApplication.Companion.coreContext
import org.linphone.LinphoneApplication.Companion.corePreferences
+import org.linphone.R
import org.linphone.core.Account
import org.linphone.core.AuthInfo
import org.linphone.core.Core
import org.linphone.core.CoreListenerStub
import org.linphone.core.Factory
+import org.linphone.core.Reason
import org.linphone.core.RegistrationState
import org.linphone.core.tools.Log
+import org.linphone.utils.AppUtils
import org.linphone.utils.Event
class AccountLoginViewModel @UiThread constructor() : ViewModel() {
@@ -82,8 +85,19 @@ class AccountLoginViewModel @UiThread constructor() : ViewModel() {
} else if (state == RegistrationState.Failed) {
registrationInProgress.postValue(false)
core.removeListener(this)
- // TODO: show translated string
- accountLoginErrorEvent.postValue(Event(message))
+
+ val error = when (account.error) {
+ Reason.Forbidden -> {
+ AppUtils.getString(R.string.assistant_account_login_forbidden_error)
+ }
+ else -> {
+ AppUtils.getFormattedString(
+ R.string.assistant_account_login_error,
+ account.error.toInt()
+ )
+ }
+ }
+ accountLoginErrorEvent.postValue(Event(error))
Log.e("$TAG Account failed to REGISTER [$message], removing it")
core.removeAuthInfo(newlyCreatedAuthInfo)
diff --git a/app/src/main/java/org/linphone/ui/assistant/viewmodel/ThirdPartySipAccountLoginViewModel.kt b/app/src/main/java/org/linphone/ui/assistant/viewmodel/ThirdPartySipAccountLoginViewModel.kt
index ac148db4d..eb5cb7a90 100644
--- a/app/src/main/java/org/linphone/ui/assistant/viewmodel/ThirdPartySipAccountLoginViewModel.kt
+++ b/app/src/main/java/org/linphone/ui/assistant/viewmodel/ThirdPartySipAccountLoginViewModel.kt
@@ -26,14 +26,17 @@ import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel
import org.linphone.LinphoneApplication.Companion.coreContext
import org.linphone.LinphoneApplication.Companion.corePreferences
+import org.linphone.R
import org.linphone.core.Account
import org.linphone.core.AuthInfo
import org.linphone.core.Core
import org.linphone.core.CoreListenerStub
import org.linphone.core.Factory
+import org.linphone.core.Reason
import org.linphone.core.RegistrationState
import org.linphone.core.TransportType
import org.linphone.core.tools.Log
+import org.linphone.utils.AppUtils
import org.linphone.utils.Event
class ThirdPartySipAccountLoginViewModel @UiThread constructor() : ViewModel() {
@@ -93,8 +96,19 @@ class ThirdPartySipAccountLoginViewModel @UiThread constructor() : ViewModel() {
} else if (state == RegistrationState.Failed) {
registrationInProgress.postValue(false)
core.removeListener(this)
- // TODO: show translated string
- accountLoginErrorEvent.postValue(Event(message))
+
+ val error = when (account.error) {
+ Reason.Forbidden -> {
+ AppUtils.getString(R.string.assistant_account_login_forbidden_error)
+ }
+ else -> {
+ AppUtils.getFormattedString(
+ R.string.assistant_account_login_error,
+ account.error.toInt()
+ )
+ }
+ }
+ accountLoginErrorEvent.postValue(Event(error))
Log.e("$TAG Account failed to REGISTER [$message], removing it")
core.removeAuthInfo(newlyCreatedAuthInfo)
@@ -118,7 +132,7 @@ class ThirdPartySipAccountLoginViewModel @UiThread constructor() : ViewModel() {
loginEnabled.value = isLoginButtonEnabled()
}
- // TODO: handle formatting errors
+ // TODO: handle formatting errors ?
availableTransports.add(UDP)
availableTransports.add(TCP)
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 16d7cc43c..58f29aa83 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -129,6 +129,8 @@
Failed to create account, error %i
Push notification with auth token not received in 5 seconds, please try again later
Unexpected error occurred, please try again later
+ Wrong username or password
+ Failed to login: error code is %i
Manage the profile
Connected